diff --git a/src/agent/loop/AgentLoop.ts b/src/agent/loop/AgentLoop.ts index 755af3de..5330b049 100644 --- a/src/agent/loop/AgentLoop.ts +++ b/src/agent/loop/AgentLoop.ts @@ -840,7 +840,10 @@ export class AgentLoop { temperature: this.config.temperature, thinking: this.config.thinking, stream: true, - metadata: this.config.metadata, + metadata: { + ...this.config.metadata, + pilotdeck_session: input.sessionId, + }, cacheBreakpoints: prepared.cacheBreakpoints, }; } diff --git a/src/model/streaming/streamModel.ts b/src/model/streaming/streamModel.ts index c0481947..a1421525 100644 --- a/src/model/streaming/streamModel.ts +++ b/src/model/streaming/streamModel.ts @@ -29,7 +29,7 @@ export async function complete( const nonStreamingRequest = { ...request, stream: false }; const { provider } = validateModelRequest(nonStreamingRequest, config); const body = buildModelRequest(nonStreamingRequest, config); - const response = await sendProviderRequest(provider, body, false, options.fetch ?? fetch, options.signal); + const response = await sendProviderRequest(provider, body, false, options.fetch ?? fetch, options.signal, request.metadata); if (!response.ok) { const raw = await safeReadJson(response); @@ -74,7 +74,7 @@ export async function* streamModel( } let response: Response; try { - response = await sendProviderRequest(provider, body, true, options.fetch ?? fetch, options.signal); + response = await sendProviderRequest(provider, body, true, options.fetch ?? fetch, options.signal, currentRequest.metadata); } catch (error) { if (attempt < MAX_STREAM_RETRIES && isRetryableStreamError(error)) { await delay(1000 * (attempt + 1)); @@ -204,6 +204,7 @@ async function sendProviderRequest( stream: boolean, transport: ModelTransport, signal?: AbortSignal, + metadata?: Record, ): Promise { const controller = new AbortController(); const detachAbort = signal ? forwardAbort(signal, controller) : undefined; @@ -211,8 +212,9 @@ async function sendProviderRequest( ? setTimeout(() => controller.abort(), provider.timeoutMs) : undefined; - const finalBody = provider.extraBody - ? { ...(body as Record), ...provider.extraBody } + const resolvedExtraBody = resolveExtraBody(provider.extraBody, metadata); + const finalBody = resolvedExtraBody + ? { ...(body as Record), ...resolvedExtraBody } : body; try { @@ -354,3 +356,46 @@ function isAbortError(error: unknown): boolean { function joinUrl(base: string, path: string): string { return `${base.replace(/\/+$/, "")}/${path.replace(/^\/+/, "")}`; } + +/** + * Resolve `${variable}` template strings in extraBody values against the + * provided metadata record. Supports dot-path lookups like + * `${pilotdeck_session}` or `${user.id}`. + * + * Values that are not strings, or strings without template expressions, + * are returned unchanged. Missing variables resolve to an empty string. + */ +function resolveExtraBody( + extraBody: Record | undefined, + metadata: Record | undefined, +): Record | undefined { + if (!extraBody) return undefined; + + const resolved: Record = {}; + for (const [key, value] of Object.entries(extraBody)) { + if (typeof value === "string") { + resolved[key] = value.replace(/\$\{([^}]+)\}/g, (_match, path: string) => { + const trimmed = path.trim(); + const lookedUp = lookupMetadataPath(metadata, trimmed); + return lookedUp !== undefined ? String(lookedUp) : ""; + }); + } else { + resolved[key] = value; + } + } + return resolved; +} + +function lookupMetadataPath( + metadata: Record | undefined, + path: string, +): unknown { + if (!metadata) return undefined; + const segments = path.split("."); + let current: unknown = metadata; + for (const segment of segments) { + if (typeof current !== "object" || current === null) return undefined; + current = (current as Record)[segment]; + } + return current; +} diff --git a/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 b/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 new file mode 100644 index 00000000..0acaaff0 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-DMm9YOAa.woff b/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-DMm9YOAa.woff new file mode 100644 index 00000000..b804d7b3 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-DMm9YOAa.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-DRggAlZN.ttf b/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-DRggAlZN.ttf new file mode 100644 index 00000000..c6f9a5e7 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_AMS-Regular-DRggAlZN.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf new file mode 100644 index 00000000..9ff4a5e0 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff new file mode 100644 index 00000000..9759710d Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 new file mode 100644 index 00000000..f390922e Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff new file mode 100644 index 00000000..9bdd534f Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 new file mode 100644 index 00000000..75344a1f Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf new file mode 100644 index 00000000..f522294f Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf new file mode 100644 index 00000000..4e98259c Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff new file mode 100644 index 00000000..e7730f66 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 new file mode 100644 index 00000000..395f28be Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-CB_wures.ttf b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-CB_wures.ttf new file mode 100644 index 00000000..b8461b27 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-CB_wures.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 new file mode 100644 index 00000000..735f6948 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff new file mode 100644 index 00000000..acab069f Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-Cx986IdX.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-Cx986IdX.woff2 new file mode 100644 index 00000000..ab2ad21d Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-Cx986IdX.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-Jm3AIy58.woff b/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-Jm3AIy58.woff new file mode 100644 index 00000000..f38136ac Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-Jm3AIy58.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-waoOVXN0.ttf b/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-waoOVXN0.ttf new file mode 100644 index 00000000..4060e627 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Bold-waoOVXN0.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 new file mode 100644 index 00000000..5931794d Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf b/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf new file mode 100644 index 00000000..dc007977 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff b/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff new file mode 100644 index 00000000..67807b0b Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-3WenGoN9.ttf b/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-3WenGoN9.ttf new file mode 100644 index 00000000..0e9b0f35 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-3WenGoN9.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-BMLOBm91.woff b/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-BMLOBm91.woff new file mode 100644 index 00000000..6f43b594 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-BMLOBm91.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 new file mode 100644 index 00000000..b50920e1 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-B22Nviop.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-B22Nviop.woff2 new file mode 100644 index 00000000..eb24a7ba Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-B22Nviop.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-Dr94JaBh.woff b/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-Dr94JaBh.woff new file mode 100644 index 00000000..21f58129 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-Dr94JaBh.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-ypZvNtVU.ttf b/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-ypZvNtVU.ttf new file mode 100644 index 00000000..dd45e1ed Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Main-Regular-ypZvNtVU.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf b/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf new file mode 100644 index 00000000..728ce7a1 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 new file mode 100644 index 00000000..29657023 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff b/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff new file mode 100644 index 00000000..0ae390d7 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-DA0__PXp.woff b/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-DA0__PXp.woff new file mode 100644 index 00000000..eb5159d4 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-DA0__PXp.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-flOr_0UB.ttf b/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-flOr_0UB.ttf new file mode 100644 index 00000000..70d559b4 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-flOr_0UB.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-t53AETM-.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-t53AETM-.woff2 new file mode 100644 index 00000000..215c143f Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Math-Italic-t53AETM-.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf new file mode 100644 index 00000000..2f65a8a3 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 new file mode 100644 index 00000000..cfaa3bda Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff new file mode 100644 index 00000000..8d47c02d Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 new file mode 100644 index 00000000..349c06dc Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff new file mode 100644 index 00000000..7e02df96 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf new file mode 100644 index 00000000..d5850df9 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf new file mode 100644 index 00000000..537279f6 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff new file mode 100644 index 00000000..31b84829 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 new file mode 100644 index 00000000..a90eea85 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-C5JkGWo-.ttf b/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-C5JkGWo-.ttf new file mode 100644 index 00000000..fd679bf3 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-C5JkGWo-.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 new file mode 100644 index 00000000..b3048fc1 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-D5yQViql.woff b/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-D5yQViql.woff new file mode 100644 index 00000000..0e7da821 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Script-Regular-D5yQViql.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-C195tn64.woff b/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-C195tn64.woff new file mode 100644 index 00000000..7f292d91 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-C195tn64.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf b/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf new file mode 100644 index 00000000..871fd7d1 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 new file mode 100644 index 00000000..c5a8462f Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf b/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf new file mode 100644 index 00000000..7a212caf Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 new file mode 100644 index 00000000..e1bccfe2 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-oD1tc_U0.woff b/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-oD1tc_U0.woff new file mode 100644 index 00000000..d241d9be Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size2-Regular-oD1tc_U0.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size3-Regular-CTq5MqoE.woff b/ui/dist.noauth.bak/assets/KaTeX_Size3-Regular-CTq5MqoE.woff new file mode 100644 index 00000000..e6e9b658 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size3-Regular-CTq5MqoE.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf b/ui/dist.noauth.bak/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf new file mode 100644 index 00000000..00bff349 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-BF-4gkZK.woff b/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-BF-4gkZK.woff new file mode 100644 index 00000000..e1ec5457 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-BF-4gkZK.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-DWFBv043.ttf b/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-DWFBv043.ttf new file mode 100644 index 00000000..74f08921 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-DWFBv043.ttf differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 new file mode 100644 index 00000000..680c1308 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff b/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff new file mode 100644 index 00000000..2432419f Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 b/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 new file mode 100644 index 00000000..771f1af7 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 differ diff --git a/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf b/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf new file mode 100644 index 00000000..c83252c5 Binary files /dev/null and b/ui/dist.noauth.bak/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf differ diff --git a/ui/dist.noauth.bak/assets/index-Bdue6VvE.css b/ui/dist.noauth.bak/assets/index-Bdue6VvE.css new file mode 100644 index 00000000..fb13f065 --- /dev/null +++ b/ui/dist.noauth.bak/assets/index-Bdue6VvE.css @@ -0,0 +1 @@ +.xterm{cursor:text;position:relative;-moz-user-select:none;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::-moz-selection{color:transparent}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:InterVariable,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 0 0% 9%;--card: 0 0% 100%;--card-foreground: 0 0% 9%;--popover: 0 0% 100%;--popover-foreground: 0 0% 9%;--primary: 0 0% 9%;--primary-foreground: 0 0% 98%;--secondary: 0 0% 96%;--secondary-foreground: 0 0% 15%;--muted: 0 0% 96%;--muted-foreground: 0 0% 45%;--accent: 0 0% 96%;--accent-foreground: 0 0% 9%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 0 0% 90%;--input: 0 0% 90%;--ring: 0 0% 30%;--radius: .5rem;--nav-glass-bg: 0 0% 100% / .7;--nav-glass-blur: 20px;--nav-glass-saturate: 1.4;--nav-tab-glow: 0 0% 9% / .05;--nav-tab-ring: 0 0% 9% / .06;--nav-float-shadow: 0 0% 0% / .05;--nav-float-ring: 0 0% 90% / .6;--nav-divider-color: 0 0% 90% / .6;--nav-input-bg: 0 0% 96% / .6;--nav-input-focus-ring: 0 0% 30% / .18;--safe-area-inset-top: env(safe-area-inset-top);--safe-area-inset-right: env(safe-area-inset-right);--safe-area-inset-bottom: env(safe-area-inset-bottom);--safe-area-inset-left: env(safe-area-inset-left);--mobile-nav-height: 52px;--mobile-nav-padding: 20px;--mobile-nav-total: calc(var(--mobile-nav-height) + var(--mobile-nav-padding) + env(safe-area-inset-bottom, 0px));--header-safe-area-top: env(safe-area-inset-top, 0px);--header-base-padding: 8px;--header-total-padding: calc(var(--header-safe-area-top) + var(--header-base-padding))}@supports (padding-top: constant(safe-area-inset-top)){:root{--safe-area-inset-top: constant(safe-area-inset-top);--safe-area-inset-right: constant(safe-area-inset-right);--safe-area-inset-bottom: constant(safe-area-inset-bottom);--safe-area-inset-left: constant(safe-area-inset-left)}}.dark{--background: 0 0% 4%;--foreground: 0 0% 96%;--card: 0 0% 4%;--card-foreground: 0 0% 96%;--popover: 0 0% 9%;--popover-foreground: 0 0% 96%;--primary: 0 0% 96%;--primary-foreground: 0 0% 9%;--secondary: 0 0% 15%;--secondary-foreground: 0 0% 96%;--muted: 0 0% 15%;--muted-foreground: 0 0% 64%;--accent: 0 0% 15%;--accent-foreground: 0 0% 96%;--destructive: 0 62.8% 45%;--destructive-foreground: 0 0% 98%;--border: 0 0% 15%;--input: 0 0% 25%;--ring: 0 0% 64%;--nav-glass-bg: 0 0% 9% / .7;--nav-glass-blur: 24px;--nav-glass-saturate: 1.2;--nav-tab-glow: 0 0% 96% / .08;--nav-tab-ring: 0 0% 96% / .06;--nav-float-shadow: 0 0% 0% / .4;--nav-float-ring: 0 0% 15% / .5;--nav-divider-color: 0 0% 15% / .7;--nav-input-bg: 0 0% 15% / .5;--nav-input-focus-ring: 0 0% 96% / .12}*{border-color:hsl(var(--border));box-sizing:border-box;transition:none}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0;padding:0}html,body{height:100%;margin:0;padding:0}#root{min-height:100vh;margin:0;padding:0;box-sizing:border-box}@supports (padding-top: env(safe-area-inset-top)){@media(display-mode:standalone){#root{padding-top:var(--safe-area-inset-top);padding-left:var(--safe-area-inset-left);padding-right:var(--safe-area-inset-right)}}}body.pwa-mode .fixed.inset-0{top:var(--header-total-padding);left:var(--safe-area-inset-left);right:var(--safe-area-inset-right);bottom:0}button,a,input,textarea,select,[role=button],.transition-all{transition:all .15s cubic-bezier(.4,0,.2,1)}body,div,section,article,aside,header,footer,nav,main,h1,h2,h3,h4,h5,h6,p,span,blockquote,ul,ol,li,dl,dt,dd,table,thead,tbody,tfoot,tr,td,th,form,fieldset,legend,label{transition:background-color .2s ease-in-out,border-color .2s ease-in-out,color .2s ease-in-out}.transition-transform{transition:transform .15s cubic-bezier(.4,0,.2,1)}.transition-opacity{transition:opacity .2s ease-in-out}@media(prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.\!container{width:100%!important;margin-right:auto!important;margin-left:auto!important;padding-right:2rem!important;padding-left:2rem!important}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media(min-width:1400px){.\!container{max-width:1400px!important}.container{max-width:1400px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: rgb(17 24 39 / 10%);--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-top:.8888889em;margin-bottom:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;margin-top:0;margin-bottom:.8em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;margin-top:1.6em;margin-bottom:.8em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;margin-top:1.5555556em;margin-bottom:.4444444em;line-height:1.5555556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.4285714em;margin-bottom:.5714286em;line-height:1.4285714}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;border-radius:.3125rem;padding-top:.1428571em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.6666667;margin-top:1.6666667em;margin-bottom:1.6666667em;border-radius:.25rem;padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;margin-bottom:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.8571429em;margin-bottom:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-gray{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: rgb(17 24 39 / 10%);--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151}.prose-neutral{--tw-prose-body: #404040;--tw-prose-headings: #171717;--tw-prose-lead: #525252;--tw-prose-links: #171717;--tw-prose-bold: #171717;--tw-prose-counters: #737373;--tw-prose-bullets: #d4d4d4;--tw-prose-hr: #e5e5e5;--tw-prose-quotes: #171717;--tw-prose-quote-borders: #e5e5e5;--tw-prose-captions: #737373;--tw-prose-kbd: #171717;--tw-prose-kbd-shadows: rgb(23 23 23 / 10%);--tw-prose-code: #171717;--tw-prose-pre-code: #e5e5e5;--tw-prose-pre-bg: #262626;--tw-prose-th-borders: #d4d4d4;--tw-prose-td-borders: #e5e5e5;--tw-prose-invert-body: #d4d4d4;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #a3a3a3;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #a3a3a3;--tw-prose-invert-bullets: #525252;--tw-prose-invert-hr: #404040;--tw-prose-invert-quotes: #f5f5f5;--tw-prose-invert-quote-borders: #404040;--tw-prose-invert-captions: #a3a3a3;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d4d4d4;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #525252;--tw-prose-invert-td-borders: #404040}.prose-red{--tw-prose-links: #dc2626;--tw-prose-invert-links: #ef4444}@media(max-width:768px){*{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.overflow-y-auto,[data-scroll-container]{touch-action:pan-y;-webkit-overflow-scrolling:touch}input[type=checkbox]{-webkit-tap-highlight-color:rgba(0,0,0,.1);opacity:1!important}button,[role=button],.clickable,a,.cursor-pointer{-webkit-tap-highlight-color:transparent;-moz-user-select:none;user-select:none;-webkit-user-select:none;touch-action:manipulation}.mobile-touch-target{min-height:44px;min-width:44px}.chat-message.user{justify-content:flex-end}.chat-message.user>div{max-width:85%}.chat-message.assistant>div,.chat-message.error>div{width:100%}@media(min-width:640px){.chat-message.assistant>div,.chat-message.error>div{max-width:95%}}.session-name-mobile{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100vw - 120px)}.xterm,.xterm .xterm-viewport{-webkit-user-select:text!important;-moz-user-select:text!important;user-select:text!important;-webkit-touch-callout:default!important}.overflow-y-auto{touch-action:pan-y;-webkit-overflow-scrolling:touch}.chat-message{touch-action:pan-y}.group:active .group-hover\:opacity-100,.group .group-hover\:opacity-100{opacity:1!important}@media(hover:none)and (pointer:coarse){.group-hover\:opacity-100{opacity:1!important}.hover\:bg-gray-50:hover,.hover\:bg-gray-100:hover,.hover\:bg-red-200:hover,.dark\:hover\:bg-gray-700:hover,.dark\:hover\:bg-red-900\/50:hover{background-color:inherit}}.chat-message.\!user{justify-content:flex-end}.chat-message.\!user>div{max-width:85%}.\!group:active .group-hover\:opacity-100,.\!group .group-hover\:opacity-100{opacity:1!important}}@media(hover:none)and (pointer:coarse){.touch\:opacity-100{opacity:1!important}*{-webkit-tap-highlight-color:transparent!important}input[type=checkbox]{-webkit-tap-highlight-color:rgba(0,0,0,.1)!important;opacity:1!important}button:hover,[role=button]:hover,.cursor-pointer:hover,a:hover,.hover\:bg-gray-50:hover,.hover\:bg-gray-100:hover,.hover\:text-gray-900:hover,.hover\:opacity-100:hover{background-color:inherit!important;color:inherit!important;opacity:inherit!important;transform:inherit!important}button,[role=button],.cursor-pointer{cursor:pointer!important;pointer-events:auto!important}.active\:scale-\[0\.98\]:active,.active\:scale-95:active{transform:scale(.98)!important}}.chat-message{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.chat-message pre,.chat-message code{white-space:pre-wrap!important;word-break:break-all;overflow-wrap:break-word}.chat-message *{max-width:100%;box-sizing:border-box}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-right-2{right:-.5rem}.-top-2{top:-.5rem}.bottom-0{bottom:0}.bottom-14{bottom:3.5rem}.bottom-4{bottom:1rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-2\.5{left:.625rem}.left-3{left:.75rem}.left-4{left:1rem}.left-auto{left:auto}.left-full{left:100%}.right-0{right:0}.right-1{right:.25rem}.right-1\.5{right:.375rem}.right-2{right:.5rem}.right-2\.5{right:.625rem}.right-3{right:.75rem}.right-4{right:1rem}.right-full{right:100%}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-4{top:1rem}.top-8{top:2rem}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[101\]{z-index:101}.z-\[2147483647\]{z-index:2147483647}.z-\[60\]{z-index:60}.z-\[65\]{z-index:65}.z-\[70\]{z-index:70}.z-\[9999\]{z-index:9999}.col-span-1{grid-column:span 1 / span 1}.col-span-2{grid-column:span 2 / span 2}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-ml-0\.5{margin-left:-.125rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.ml-6{margin-left:1.5rem}.ml-7{margin-left:1.75rem}.ml-\[216px\]{margin-left:216px}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mr-auto{margin-right:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-\[0\.28rem\]{margin-top:.28rem}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}.line-clamp-6{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.\!h-3{height:.75rem!important}.h-0{height:0px}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-3\/4{height:75%}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[18px\]{height:18px}.h-\[3px\]{height:3px}.h-\[560px\]{height:560px}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-28{max-height:7rem}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.max-h-72{max-height:18rem}.max-h-\[240px\]{max-height:240px}.max-h-\[40vh\]{max-height:40vh}.max-h-\[50vh\]{max-height:50vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[88vh\]{max-height:88vh}.max-h-\[92vh\]{max-height:92vh}.max-h-full{max-height:100%}.min-h-0{min-height:0px}.min-h-\[100px\]{min-height:100px}.min-h-\[200px\]{min-height:200px}.min-h-\[260px\]{min-height:260px}.min-h-\[300px\]{min-height:300px}.min-h-\[48px\]{min-height:48px}.min-h-\[66px\]{min-height:66px}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.\!w-3{width:.75rem!important}.\!w-full{width:100%!important}.w-0{width:0px}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[100px\]{width:100px}.w-\[140px\]{width:140px}.w-\[150px\]{width:150px}.w-\[160px\]{width:160px}.w-\[200px\]{width:200px}.w-\[85vw\]{width:85vw}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-36{min-width:9rem}.min-w-\[160px\]{min-width:160px}.min-w-\[180px\]{min-width:180px}.min-w-\[44px\]{min-width:44px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-36{max-width:9rem}.max-w-4xl{max-width:56rem}.max-w-72{max-width:18rem}.max-w-\[108px\]{max-width:108px}.max-w-\[132px\]{max-width:132px}.max-w-\[150px\]{max-width:150px}.max-w-\[28rem\]{max-width:28rem}.max-w-\[380px\]{max-width:380px}.max-w-\[440px\]{max-width:440px}.max-w-\[520px\]{max-width:520px}.max-w-\[70\%\]{max-width:70%}.max-w-\[720px\]{max-width:720px}.max-w-\[760px\]{max-width:760px}.max-w-\[78\%\]{max-width:78%}.max-w-\[820px\]{max-width:820px}.max-w-\[860px\]{max-width:860px}.max-w-\[880px\]{max-width:880px}.max-w-\[92vw\]{max-width:92vw}.max-w-\[960px\]{max-width:960px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.basis-0{flex-basis:0px}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[22px\]{--tw-translate-x: 22px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[2px\]{--tw-translate-x: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.cursor-zoom-in{cursor:zoom-in}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.scroll-mt-4{scroll-margin-top:1rem}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[1fr_1fr_auto\]{grid-template-columns:1fr 1fr auto}.grid-cols-\[56px_62px_58px_86px\]{grid-template-columns:56px 62px 58px 86px}.grid-cols-\[minmax\(0\,1fr\)_112px_112px_112px\]{grid-template-columns:minmax(0,1fr) 112px 112px 112px}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-\[2px\]{gap:2px}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-0\.5{row-gap:.125rem}.gap-y-1{row-gap:.25rem}.space-x-0>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(0px * var(--tw-space-x-reverse));margin-left:calc(0px * calc(1 - var(--tw-space-x-reverse)))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.space-y-px>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1px * var(--tw-space-y-reverse))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-amber-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(254 243 199 / var(--tw-divide-opacity, 1))}.divide-amber-100\/80>:not([hidden])~:not([hidden]){border-color:#fef3c7cc}.divide-border>:not([hidden])~:not([hidden]){border-color:hsl(var(--border))}.divide-emerald-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(209 250 229 / var(--tw-divide-opacity, 1))}.divide-emerald-100\/80>:not([hidden])~:not([hidden]){border-color:#d1fae5cc}.divide-neutral-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(245 245 245 / var(--tw-divide-opacity, 1))}.divide-neutral-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 229 229 / var(--tw-divide-opacity, 1))}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[22px\]{border-radius:22px}.rounded-\[3px\]{border-radius:3px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-l-lg{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.rounded-br-md{border-bottom-right-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[1\.5px\]{border-width:1.5px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-amber-100{--tw-border-opacity: 1;border-color:rgb(254 243 199 / var(--tw-border-opacity, 1))}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-200\/60{border-color:#fde68a99}.border-amber-300{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-amber-400{--tw-border-opacity: 1;border-color:rgb(251 191 36 / var(--tw-border-opacity, 1))}.border-amber-500\/30{border-color:#f59e0b4d}.border-amber-500\/40{border-color:#f59e0b66}.border-amber-600{--tw-border-opacity: 1;border-color:rgb(217 119 6 / var(--tw-border-opacity, 1))}.border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}.border-blue-100\/80{border-color:#dbeafecc}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-200\/60{border-color:#bfdbfe99}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-border{border-color:hsl(var(--border))}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-border\/60{border-color:hsl(var(--border) / .6)}.border-destructive\/30{border-color:hsl(var(--destructive) / .3)}.border-destructive\/40{border-color:hsl(var(--destructive) / .4)}.border-emerald-100{--tw-border-opacity: 1;border-color:rgb(209 250 229 / var(--tw-border-opacity, 1))}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity, 1))}.border-emerald-200\/80{border-color:#a7f3d0cc}.border-foreground{border-color:hsl(var(--foreground))}.border-foreground\/30{border-color:hsl(var(--foreground) / .3)}.border-foreground\/40{border-color:hsl(var(--foreground) / .4)}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-200\/40{border-color:#e5e7eb66}.border-gray-200\/50{border-color:#e5e7eb80}.border-gray-200\/60{border-color:#e5e7eb99}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-600\/30{border-color:#4b55634d}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700\/80{border-color:#374151cc}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-300\/70{border-color:#86efacb3}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-green-500\/30{border-color:#22c55e4d}.border-indigo-100{--tw-border-opacity: 1;border-color:rgb(224 231 255 / var(--tw-border-opacity, 1))}.border-indigo-200{--tw-border-opacity: 1;border-color:rgb(199 210 254 / var(--tw-border-opacity, 1))}.border-input{border-color:hsl(var(--input))}.border-neutral-100{--tw-border-opacity: 1;border-color:rgb(245 245 245 / var(--tw-border-opacity, 1))}.border-neutral-200{--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity, 1))}.border-neutral-200\/70{border-color:#e5e5e5b3}.border-neutral-300{--tw-border-opacity: 1;border-color:rgb(212 212 212 / var(--tw-border-opacity, 1))}.border-neutral-400{--tw-border-opacity: 1;border-color:rgb(163 163 163 / var(--tw-border-opacity, 1))}.border-neutral-50{--tw-border-opacity: 1;border-color:rgb(250 250 250 / var(--tw-border-opacity, 1))}.border-neutral-900{--tw-border-opacity: 1;border-color:rgb(23 23 23 / var(--tw-border-opacity, 1))}.border-primary{border-color:hsl(var(--primary))}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.border-purple-500{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-200\/60{border-color:#fecaca99}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-red-300\/70{border-color:#fca5a5b3}.border-teal-200{--tw-border-opacity: 1;border-color:rgb(153 246 228 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-violet-200\/60{border-color:#ddd6fe99}.border-violet-400{--tw-border-opacity: 1;border-color:rgb(167 139 250 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-400{--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity, 1))}.border-b-gray-900{--tw-border-opacity: 1;border-bottom-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-l-amber-500{--tw-border-opacity: 1;border-left-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-l-blue-500{--tw-border-opacity: 1;border-left-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-l-gray-300{--tw-border-opacity: 1;border-left-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-l-gray-400{--tw-border-opacity: 1;border-left-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.border-l-gray-900{--tw-border-opacity: 1;border-left-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-l-green-500{--tw-border-opacity: 1;border-left-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-l-indigo-500{--tw-border-opacity: 1;border-left-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.border-l-purple-500{--tw-border-opacity: 1;border-left-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-l-red-500{--tw-border-opacity: 1;border-left-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-l-violet-500{--tw-border-opacity: 1;border-left-color:rgb(139 92 246 / var(--tw-border-opacity, 1))}.border-r-gray-900{--tw-border-opacity: 1;border-right-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-t-gray-900{--tw-border-opacity: 1;border-top-color:rgb(17 24 39 / var(--tw-border-opacity, 1))}.border-t-neutral-600{--tw-border-opacity: 1;border-top-color:rgb(82 82 82 / var(--tw-border-opacity, 1))}.border-t-neutral-900{--tw-border-opacity: 1;border-top-color:rgb(23 23 23 / var(--tw-border-opacity, 1))}.border-t-transparent{border-top-color:transparent}.bg-accent{background-color:hsl(var(--accent))}.bg-accent\/40{background-color:hsl(var(--accent) / .4)}.bg-accent\/50{background-color:hsl(var(--accent) / .5)}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-50\/40{background-color:#fffbeb66}.bg-amber-50\/70{background-color:#fffbebb3}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-amber-600{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.bg-background{background-color:hsl(var(--background))}.bg-background\/50{background-color:hsl(var(--background) / .5)}.bg-background\/80{background-color:hsl(var(--background) / .8)}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/40{background-color:#0006}.bg-black\/50{background-color:#00000080}.bg-black\/85{background-color:#000000d9}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-200\/70{background-color:#bfdbfeb3}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-50\/70{background-color:#eff6ffb3}.bg-blue-50\/80{background-color:#eff6ffcc}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/60{background-color:#3b82f699}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-border{background-color:hsl(var(--border))}.bg-border\/60{background-color:hsl(var(--border) / .6)}.bg-card{background-color:hsl(var(--card))}.bg-card\/50{background-color:hsl(var(--card) / .5)}.bg-card\/60{background-color:hsl(var(--card) / .6)}.bg-cyan-100{--tw-bg-opacity: 1;background-color:rgb(207 250 254 / var(--tw-bg-opacity, 1))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\/10{background-color:hsl(var(--destructive) / .1)}.bg-destructive\/15{background-color:hsl(var(--destructive) / .15)}.bg-destructive\/5{background-color:hsl(var(--destructive) / .05)}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-200\/70{background-color:#a7f3d0b3}.bg-emerald-400{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-emerald-50\/70{background-color:#ecfdf5b3}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-foreground\/40{background-color:hsl(var(--foreground) / .4)}.bg-foreground\/60{background-color:hsl(var(--foreground) / .6)}.bg-foreground\/90{background-color:hsl(var(--foreground) / .9)}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-50\/50{background-color:#f9fafb80}.bg-gray-50\/80{background-color:#f9fafbcc}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-700\/80{background-color:#374151cc}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/95{background-color:#1f2937f2}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/95{background-color:#111827f2}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-50\/50{background-color:#f0fdf480}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50\/50{background-color:#eef2ff80}.bg-muted{background-color:hsl(var(--muted))}.bg-muted-foreground\/60{background-color:hsl(var(--muted-foreground) / .6)}.bg-muted\/20{background-color:hsl(var(--muted) / .2)}.bg-muted\/30{background-color:hsl(var(--muted) / .3)}.bg-muted\/40{background-color:hsl(var(--muted) / .4)}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-muted\/60{background-color:hsl(var(--muted) / .6)}.bg-neutral-100{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity, 1))}.bg-neutral-200{--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity, 1))}.bg-neutral-200\/70{background-color:#e5e5e5b3}.bg-neutral-300{--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity, 1))}.bg-neutral-400{--tw-bg-opacity: 1;background-color:rgb(163 163 163 / var(--tw-bg-opacity, 1))}.bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1))}.bg-neutral-50\/50{background-color:#fafafa80}.bg-neutral-50\/70{background-color:#fafafab3}.bg-neutral-50\/80{background-color:#fafafacc}.bg-neutral-500{--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity, 1))}.bg-neutral-800{--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity, 1))}.bg-neutral-900{--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity, 1))}.bg-neutral-950{--tw-bg-opacity: 1;background-color:rgb(10 10 10 / var(--tw-bg-opacity, 1))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-orange-600{--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity, 1))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-400{--tw-bg-opacity: 1;background-color:rgb(192 132 252 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-50\/40{background-color:#fef2f266}.bg-red-50\/50{background-color:#fef2f280}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-500\/50{background-color:#ef444480}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-rose-100{--tw-bg-opacity: 1;background-color:rgb(255 228 230 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-teal-100{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity, 1))}.bg-teal-50{--tw-bg-opacity: 1;background-color:rgb(240 253 250 / var(--tw-bg-opacity, 1))}.bg-teal-600{--tw-bg-opacity: 1;background-color:rgb(13 148 136 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-violet-100{--tw-bg-opacity: 1;background-color:rgb(237 233 254 / var(--tw-bg-opacity, 1))}.bg-violet-50{--tw-bg-opacity: 1;background-color:rgb(245 243 255 / var(--tw-bg-opacity, 1))}.bg-violet-50\/30{background-color:#f5f3ff4d}.bg-violet-50\/40{background-color:#f5f3ff66}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/15{background-color:#ffffff26}.bg-white\/20{background-color:#fff3}.bg-white\/70{background-color:#ffffffb3}.bg-white\/80{background-color:#fffc}.bg-white\/85{background-color:#ffffffd9}.bg-white\/90{background-color:#ffffffe6}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-600{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-90{--tw-bg-opacity: .9}.box-decoration-clone{-webkit-box-decoration-break:clone;box-decoration-break:clone}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[3px\]{padding:3px}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-px{padding-top:1px;padding-bottom:1px}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pl-1\.5{padding-left:.375rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pl-\[18px\]{padding-left:18px}.pl-\[30px\]{padding-left:30px}.pr-0\.5{padding-right:.125rem}.pr-1{padding-right:.25rem}.pr-10{padding-right:2.5rem}.pr-14{padding-right:3.5rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\[3px\]{padding-top:3px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:InterVariable,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[0\.9em\]{font-size:.9em}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13\.5px\]{font-size:13.5px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.text-\[26px\]{font-size:26px}.text-\[28px\]{font-size:28px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.text-xxs{font-size:11px;line-height:14px}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-\[14px\]{line-height:14px}.leading-\[18px\]{line-height:18px}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.04em\]{letter-spacing:.04em}.tracking-normal{letter-spacing:0em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.text-background{color:hsl(var(--background))}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-600\/70{color:#2563ebb3}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-cyan-500{--tw-text-opacity: 1;color:rgb(6 182 212 / var(--tw-text-opacity, 1))}.text-cyan-700{--tw-text-opacity: 1;color:rgb(14 116 144 / var(--tw-text-opacity, 1))}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/80{color:hsl(var(--foreground) / .8)}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-muted-foreground\/50{color:hsl(var(--muted-foreground) / .5)}.text-muted-foreground\/60{color:hsl(var(--muted-foreground) / .6)}.text-muted-foreground\/70{color:hsl(var(--muted-foreground) / .7)}.text-neutral-300{--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity, 1))}.text-neutral-400{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.text-neutral-400\/60{color:#a3a3a399}.text-neutral-400\/75{color:#a3a3a3bf}.text-neutral-400\/80{color:#a3a3a3cc}.text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.text-neutral-500\/90{color:#737373e6}.text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity, 1))}.text-neutral-700{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity, 1))}.text-neutral-800{--tw-text-opacity: 1;color:rgb(38 38 38 / var(--tw-text-opacity, 1))}.text-neutral-900{--tw-text-opacity: 1;color:rgb(23 23 23 / var(--tw-text-opacity, 1))}.text-neutral-950{--tw-text-opacity: 1;color:rgb(10 10 10 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.text-pink-400{--tw-text-opacity: 1;color:rgb(244 114 182 / var(--tw-text-opacity, 1))}.text-pink-500{--tw-text-opacity: 1;color:rgb(236 72 153 / var(--tw-text-opacity, 1))}.text-pink-600{--tw-text-opacity: 1;color:rgb(219 39 119 / var(--tw-text-opacity, 1))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-400\/80{color:#f87171cc}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-700\/90{color:#b91c1ce6}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-rose-400{--tw-text-opacity: 1;color:rgb(251 113 133 / var(--tw-text-opacity, 1))}.text-rose-500{--tw-text-opacity: 1;color:rgb(244 63 94 / var(--tw-text-opacity, 1))}.text-rose-700{--tw-text-opacity: 1;color:rgb(190 18 60 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sky-600{--tw-text-opacity: 1;color:rgb(2 132 199 / var(--tw-text-opacity, 1))}.text-teal-600{--tw-text-opacity: 1;color:rgb(13 148 136 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-violet-400{--tw-text-opacity: 1;color:rgb(167 139 250 / var(--tw-text-opacity, 1))}.text-violet-500{--tw-text-opacity: 1;color:rgb(139 92 246 / var(--tw-text-opacity, 1))}.text-violet-600{--tw-text-opacity: 1;color:rgb(124 58 237 / var(--tw-text-opacity, 1))}.text-violet-700{--tw-text-opacity: 1;color:rgb(109 40 217 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/80{color:#fffc}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.placeholder-neutral-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(163 163 163 / var(--tw-placeholder-opacity, 1))}.placeholder-neutral-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(163 163 163 / var(--tw-placeholder-opacity, 1))}.accent-neutral-900{accent-color:#171717}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-40{opacity:.4}.opacity-45{opacity:.45}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-white{--tw-ring-opacity: 1;--tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}button:hover,a:hover,[role=button]:hover{transition-duration:.1s}button:active,a:active,[role=button]:active{transition-duration:50ms}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{transition:outline-offset .15s ease-out,box-shadow .15s ease-out}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:hsl(var(--muted-foreground)) transparent}.scrollbar-thin::-webkit-scrollbar{width:6px;height:6px}.scrollbar-thin::-webkit-scrollbar-track{background:transparent}.scrollbar-thin::-webkit-scrollbar-thumb{background-color:hsl(var(--muted-foreground));border-radius:3px}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background-color:hsl(var(--muted-foreground) / .8)}.dark .scrollbar-thin{scrollbar-color:rgba(156,163,175,.5) transparent}.dark .scrollbar-thin::-webkit-scrollbar-track{background:#1f29374d}.dark .scrollbar-thin::-webkit-scrollbar-thumb{background-color:#9ca3af80;border-radius:3px}.dark .scrollbar-thin::-webkit-scrollbar-thumb:hover{background-color:#9ca3afb3}.dark::-webkit-scrollbar{width:8px;height:8px}.dark::-webkit-scrollbar-track{background:#1f293780}.dark::-webkit-scrollbar-thumb{background-color:#6b728080;border-radius:4px}.dark::-webkit-scrollbar-thumb:hover{background-color:#6b7280b3}.dark{scrollbar-width:thin;scrollbar-color:rgba(107,114,128,.5) rgba(31,41,55,.5)}input[type=checkbox]{accent-color:#2563eb;opacity:1}input[type=checkbox]:focus{opacity:1;outline:2px solid hsl(var(--ring));outline-offset:2px}.dark input[type=checkbox]{background-color:#1f2937;border-color:#4b5563;color:#2563eb;color-scheme:dark}.dark input[type=checkbox]:checked{background-color:#2563eb;border-color:#2563eb}.dark input[type=checkbox]:focus{--tw-ring-color: rgb(59 130 246);--tw-ring-offset-color: rgb(31 41 55)}.dark input[type=radio]{background-color:#1f2937;border-color:#4b5563;color:#2563eb;color-scheme:dark}.dark input[type=radio]:checked{background-color:#2563eb;border-color:#2563eb}.dark input[type=radio]:focus{--tw-ring-color: rgb(59 130 246);--tw-ring-offset-color: rgb(31 41 55)}textarea{color-scheme:light dark}.dark textarea{color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important;caret-color:#f3f4f6!important}.dark textarea:focus{color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important}@supports (-webkit-touch-callout: none){.dark textarea{background-color:transparent!important;color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important}.dark textarea:focus{background-color:transparent!important;color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important}}.dark .bg-gray-800 textarea{color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important}.dark .focus-within\:ring-2:focus-within{background-color:#1f2937!important}.dark textarea.bg-transparent{background-color:transparent!important;color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important}textarea::placeholder{color:#9ca3af!important;opacity:1!important}.dark textarea::placeholder{color:#4b5563!important;opacity:1!important}.dark .bg-gray-800 textarea::-moz-placeholder,.dark textarea.bg-transparent::-moz-placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.dark .bg-gray-800 textarea::placeholder,.dark textarea.bg-transparent::placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.dark .chat-input-placeholder::-moz-placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.dark .chat-input-placeholder::placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.dark .chat-input-placeholder::-webkit-input-placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}textarea::-webkit-input-placeholder{color:#9ca3af!important;opacity:1!important}.dark textarea::-webkit-input-placeholder{color:#4b5563!important;opacity:1!important}textarea::-moz-placeholder{color:#9ca3af!important;opacity:1!important}.dark textarea::-moz-placeholder{color:#4b5563!important;opacity:1!important}textarea:-ms-input-placeholder{color:#9ca3af!important;opacity:1!important}.dark textarea:-ms-input-placeholder{color:#4b5563!important;opacity:1!important}.animate-spin{animation:spin 1s linear infinite}.dark .chat-input-placeholder{scrollbar-color:rgba(107,114,128,.3) transparent}.dark .chat-input-placeholder::-webkit-scrollbar-thumb{background-color:#6b72804d}.dark .chat-input-placeholder::-webkit-scrollbar-thumb:hover{background-color:#6b728080}.dark .chat-input-expanded{box-shadow:0 -5px 15px -3px #0000004d,0 -4px 6px -2px #0003}.dark [class*=ring-offset]{--tw-ring-offset-color: rgb(31 41 55)}.dark button:focus{--tw-ring-offset-color: rgb(31 41 55)}@supports (-webkit-touch-callout: none){select{font-size:16px!important;-webkit-appearance:none}}.dark select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}select{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}select option{font-size:16px!important;padding:8px!important;background-color:var(--background)!important;color:var(--foreground)!important}.dark select option{background-color:#1f2937!important;color:#f3f4f6!important}details[open] .details-chevron,details[open] summary svg[class*=group-open]{transform:rotate(180deg)}.details-chevron,summary svg[class*=transition-transform]{transition:transform .2s cubic-bezier(.4,0,.2,1)}@keyframes settings-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.search-highlight-flash{animation:search-flash 4s ease-out}@keyframes search-flash{0%,50%{outline:3px solid hsl(var(--primary));outline-offset:4px;border-radius:8px;background-color:hsl(var(--primary) / .06)}to{outline:3px solid transparent;outline-offset:4px;background-color:transparent}}.space-y-8>.ui-v2-legacy-row+.ui-v2-legacy-row{margin-top:.125rem}.space-y-8>:not(.ui-v2-legacy-row)+.ui-v2-legacy-row,.space-y-8>.ui-v2-legacy-row+:not(.ui-v2-legacy-row){margin-top:1rem}.\[-webkit-overflow-scrolling\:touch\]{-webkit-overflow-scrolling:touch}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.\[scrollbar-width\:none\]{scrollbar-width:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.prose code:before,.prose code:after{content:""!important;display:none!important}.dark\:prose-invert:is(.dark *){--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.dark .file\:bg-transparenttextarea::file-selector-button{background-color:transparent!important;color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important}.dark .file\:bg-transparenttextarea::file-selector-button::-moz-placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.dark .file\:bg-transparenttextarea::file-selector-button::placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground\/40::-moz-placeholder{color:hsl(var(--muted-foreground) / .4)}.placeholder\:text-muted-foreground\/40::placeholder{color:hsl(var(--muted-foreground) / .4)}.placeholder\:text-muted-foreground\/50::-moz-placeholder{color:hsl(var(--muted-foreground) / .5)}.placeholder\:text-muted-foreground\/50::placeholder{color:hsl(var(--muted-foreground) / .5)}.placeholder\:text-neutral-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.placeholder\:text-neutral-400::placeholder{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.last\:mb-0:last-child{margin-bottom:0}.last\:border-b-0:last-child{border-bottom-width:0px}.focus-within\:border-neutral-300:focus-within{--tw-border-opacity: 1;border-color:rgb(212 212 212 / var(--tw-border-opacity, 1))}.focus-within\:opacity-100:focus-within{opacity:1}.hover\:border-border:hover{border-color:hsl(var(--border))}.hover\:border-foreground\/30:hover{border-color:hsl(var(--foreground) / .3)}.hover\:border-foreground\/40:hover{border-color:hsl(var(--foreground) / .4)}.hover\:border-neutral-300:hover{--tw-border-opacity: 1;border-color:rgb(212 212 212 / var(--tw-border-opacity, 1))}.hover\:border-red-300:hover{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.hover\:border-ring:hover{border-color:hsl(var(--ring))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-accent\/25:hover{background-color:hsl(var(--accent) / .25)}.hover\:bg-accent\/30:hover{background-color:hsl(var(--accent) / .3)}.hover\:bg-accent\/35:hover{background-color:hsl(var(--accent) / .35)}.hover\:bg-accent\/50:hover{background-color:hsl(var(--accent) / .5)}.hover\:bg-accent\/60:hover{background-color:hsl(var(--accent) / .6)}.hover\:bg-amber-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.hover\:bg-amber-50:hover{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.hover\:bg-amber-500:hover{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.hover\:bg-amber-500\/20:hover{background-color:#f59e0b33}.hover\:bg-amber-700:hover{--tw-bg-opacity: 1;background-color:rgb(180 83 9 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-destructive\/10:hover{background-color:hsl(var(--destructive) / .1)}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-emerald-700:hover{--tw-bg-opacity: 1;background-color:rgb(4 120 87 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-900:hover{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-50:hover{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-neutral-100:hover{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity, 1))}.hover\:bg-neutral-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity, 1))}.hover\:bg-neutral-200\/70:hover{background-color:#e5e5e5b3}.hover\:bg-neutral-300\/70:hover{background-color:#d4d4d4b3}.hover\:bg-neutral-400:hover{--tw-bg-opacity: 1;background-color:rgb(163 163 163 / var(--tw-bg-opacity, 1))}.hover\:bg-neutral-50:hover{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1))}.hover\:bg-neutral-700:hover{--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-700:hover{--tw-bg-opacity: 1;background-color:rgb(194 65 12 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-red-500:hover{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-teal-700:hover{--tw-bg-opacity: 1;background-color:rgb(15 118 110 / var(--tw-bg-opacity, 1))}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/30:hover{background-color:#ffffff4d}.hover\:bg-yellow-700:hover{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-amber-900:hover{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover\:text-destructive:hover{color:hsl(var(--destructive))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.hover\:text-green-900:hover{--tw-text-opacity: 1;color:rgb(20 83 45 / var(--tw-text-opacity, 1))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-neutral-600:hover{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity, 1))}.hover\:text-neutral-700:hover{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity, 1))}.hover\:text-neutral-800:hover{--tw-text-opacity: 1;color:rgb(38 38 38 / var(--tw-text-opacity, 1))}.hover\:text-neutral-900:hover{--tw-text-opacity: 1;color:rgb(23 23 23 / var(--tw-text-opacity, 1))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.hover\:text-red-800:hover{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.hover\:text-red-900:hover{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-blue-300:focus{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.focus\:border-foreground\/40:focus{border-color:hsl(var(--foreground) / .4)}.focus\:border-neutral-300:focus{--tw-border-opacity: 1;border-color:rgb(212 212 212 / var(--tw-border-opacity, 1))}.focus\:border-neutral-400:focus{--tw-border-opacity: 1;border-color:rgb(163 163 163 / var(--tw-border-opacity, 1))}.focus\:border-neutral-500:focus{--tw-border-opacity: 1;border-color:rgb(115 115 115 / var(--tw-border-opacity, 1))}.focus\:border-primary:focus{border-color:hsl(var(--primary))}.focus\:border-ring:focus{border-color:hsl(var(--ring))}.focus\:border-transparent:focus{border-color:transparent}.focus\:bg-card:focus{background-color:hsl(var(--card))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-100:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(219 234 254 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-foreground:focus{--tw-ring-color: hsl(var(--foreground))}.focus\:ring-primary:focus{--tw-ring-color: hsl(var(--primary))}.focus\:ring-red-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-blue-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-neutral-300:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(212 212 212 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-white\/60:focus-visible{--tw-ring-color: rgb(255 255 255 / .6)}.focus-visible\:ring-white\/70:focus-visible{--tw-ring-color: rgb(255 255 255 / .7)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:border-blue-600:active{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.active\:bg-accent\/50:active{background-color:hsl(var(--accent) / .5)}.active\:bg-accent\/80:active{background-color:hsl(var(--accent) / .8)}.active\:bg-background\/50:active{background-color:hsl(var(--background) / .5)}.active\:bg-blue-600:active{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.active\:bg-destructive\/80:active{background-color:hsl(var(--destructive) / .8)}.active\:bg-primary\/80:active{background-color:hsl(var(--primary) / .8)}.active\:bg-secondary\/70:active{background-color:hsl(var(--secondary) / .7)}.active\:text-white:active{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.active\:opacity-100:active{opacity:1}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-blue-400:disabled{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.disabled\:hover\:bg-transparent:hover:disabled{background-color:transparent}.disabled\:hover\:text-neutral-400:hover:disabled{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.dark .disabled\:hover\:bg-transparent:hover:disabledtextarea{background-color:transparent!important;color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important}.dark .disabled\:hover\:bg-transparent:hover:disabledtextarea::-moz-placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.dark .disabled\:hover\:bg-transparent:hover:disabledtextarea::placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.group\/details[open] .group-open\/details\:sticky{position:sticky}.group\/details[open] .group-open\/details\:top-0{top:0}.group\/details[open] .group-open\/details\:z-10{z-index:10}.group\/details[open] .group-open\/details\:-mx-1{margin-left:-.25rem;margin-right:-.25rem}.group\/details[open] .group-open\/details\:rotate-90,.group\/history[open] .group-open\/history\:rotate-90,.group\/raw[open] .group-open\/raw\:rotate-90,.group[open] .group-open\:rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/details[open] .group-open\/details\:bg-background{background-color:hsl(var(--background))}.group\/details[open] .group-open\/details\:px-1{padding-left:.25rem;padding-right:.25rem}.group:hover .group-hover\:inline-flex{display:inline-flex}.group:hover .group-hover\:text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:underline{text-decoration-line:underline}.group\/project:hover .group-hover\/project\:opacity-100,.group\/row:hover .group-hover\/row\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.prose-headings\:mb-2 :is(:where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *))){margin-bottom:.5rem}.prose-headings\:mt-4 :is(:where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:1rem}.prose-headings\:font-semibold :is(:where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *))){font-weight:600}.prose-h2\:text-lg :is(:where(h2):not(:where([class~=not-prose],[class~=not-prose] *))){font-size:1.125rem;line-height:1.75rem}.prose-h3\:text-base :is(:where(h3):not(:where([class~=not-prose],[class~=not-prose] *))){font-size:1rem;line-height:1.5rem}.prose-p\:my-2 :is(:where(p):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:.5rem;margin-bottom:.5rem}.prose-a\:text-neutral-900 :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1;color:rgb(23 23 23 / var(--tw-text-opacity, 1))}.prose-a\:underline :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){text-decoration-line:underline}.prose-code\:text-\[13px\] :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))){font-size:13px}.prose-pre\:my-3 :is(:where(pre):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:.75rem;margin-bottom:.75rem}.prose-pre\:bg-neutral-900 :is(:where(pre):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity, 1))}.prose-ol\:my-2 :is(:where(ol):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:.5rem;margin-bottom:.5rem}.prose-ul\:my-2 :is(:where(ul):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:.5rem;margin-bottom:.5rem}.prose-table\:my-0 :is(:where(table):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:0;margin-bottom:0}.prose-img\:rounded-lg :is(:where(img):not(:where([class~=not-prose],[class~=not-prose] *))){border-radius:var(--radius)}.prose-hr\:my-4 :is(:where(hr):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:1rem;margin-bottom:1rem}.dark\:block:is(.dark *){display:block}.dark\:hidden:is(.dark *){display:none}.dark\:divide-amber-900\/30:is(.dark *)>:not([hidden])~:not([hidden]){border-color:#78350f4d}.dark\:divide-amber-900\/40:is(.dark *)>:not([hidden])~:not([hidden]){border-color:#78350f66}.dark\:divide-emerald-900\/30:is(.dark *)>:not([hidden])~:not([hidden]){border-color:#064e3b4d}.dark\:divide-emerald-900\/40:is(.dark *)>:not([hidden])~:not([hidden]){border-color:#064e3b66}.dark\:divide-neutral-800:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(38 38 38 / var(--tw-divide-opacity, 1))}.dark\:divide-neutral-800\/50:is(.dark *)>:not([hidden])~:not([hidden]){border-color:#26262680}.dark\:divide-neutral-900:is(.dark *)>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(23 23 23 / var(--tw-divide-opacity, 1))}.dark\:border-amber-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.dark\:border-amber-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(180 83 9 / var(--tw-border-opacity, 1))}.dark\:border-amber-700\/30:is(.dark *){border-color:#b453094d}.dark\:border-amber-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(146 64 14 / var(--tw-border-opacity, 1))}.dark\:border-amber-800\/50:is(.dark *){border-color:#92400e80}.dark\:border-amber-800\/60:is(.dark *){border-color:#92400e99}.dark\:border-amber-900\/40:is(.dark *){border-color:#78350f66}.dark\:border-amber-900\/60:is(.dark *){border-color:#78350f99}.dark\:border-blue-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.dark\:border-blue-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.dark\:border-blue-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.dark\:border-blue-800\/40:is(.dark *){border-color:#1e40af66}.dark\:border-blue-900\/70:is(.dark *){border-color:#1e3a8ab3}.dark\:border-emerald-800\/60:is(.dark *){border-color:#065f4699}.dark\:border-emerald-900\/40:is(.dark *){border-color:#064e3b66}.dark\:border-emerald-900\/60:is(.dark *){border-color:#064e3b99}.dark\:border-gray-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.dark\:border-gray-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark\:border-gray-700\/40:is(.dark *){border-color:#37415166}.dark\:border-gray-700\/50:is(.dark *){border-color:#37415180}.dark\:border-green-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.dark\:border-green-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1))}.dark\:border-green-800\/40:is(.dark *){border-color:#16653466}.dark\:border-green-800\/50:is(.dark *){border-color:#16653480}.dark\:border-green-800\/60:is(.dark *){border-color:#16653499}.dark\:border-green-900\/50:is(.dark *){border-color:#14532d80}.dark\:border-indigo-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 48 163 / var(--tw-border-opacity, 1))}.dark\:border-indigo-900\/50:is(.dark *){border-color:#312e8180}.dark\:border-indigo-900\/60:is(.dark *){border-color:#312e8199}.dark\:border-neutral-100:is(.dark *){--tw-border-opacity: 1;border-color:rgb(245 245 245 / var(--tw-border-opacity, 1))}.dark\:border-neutral-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(115 115 115 / var(--tw-border-opacity, 1))}.dark\:border-neutral-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity, 1))}.dark\:border-neutral-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity, 1))}.dark\:border-neutral-700\/60:is(.dark *){border-color:#40404099}.dark\:border-neutral-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(38 38 38 / var(--tw-border-opacity, 1))}.dark\:border-neutral-800\/50:is(.dark *){border-color:#26262680}.dark\:border-neutral-800\/80:is(.dark *){border-color:#262626cc}.dark\:border-neutral-900:is(.dark *){--tw-border-opacity: 1;border-color:rgb(23 23 23 / var(--tw-border-opacity, 1))}.dark\:border-neutral-900\/50:is(.dark *){border-color:#17171780}.dark\:border-purple-400:is(.dark *){--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.dark\:border-purple-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 33 168 / var(--tw-border-opacity, 1))}.dark\:border-red-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.dark\:border-red-800\/40:is(.dark *){border-color:#991b1b66}.dark\:border-red-800\/50:is(.dark *){border-color:#991b1b80}.dark\:border-red-800\/60:is(.dark *){border-color:#991b1b99}.dark\:border-red-900:is(.dark *){--tw-border-opacity: 1;border-color:rgb(127 29 29 / var(--tw-border-opacity, 1))}.dark\:border-red-900\/40:is(.dark *){border-color:#7f1d1d66}.dark\:border-red-900\/50:is(.dark *){border-color:#7f1d1d80}.dark\:border-red-900\/60:is(.dark *){border-color:#7f1d1d99}.dark\:border-teal-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(17 94 89 / var(--tw-border-opacity, 1))}.dark\:border-violet-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(139 92 246 / var(--tw-border-opacity, 1))}.dark\:border-violet-700\/30:is(.dark *){border-color:#6d28d94d}.dark\:border-yellow-800\/50:is(.dark *){border-color:#854d0e80}.dark\:border-b-gray-100:is(.dark *){--tw-border-opacity: 1;border-bottom-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.dark\:border-l-amber-400:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(251 191 36 / var(--tw-border-opacity, 1))}.dark\:border-l-blue-400:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.dark\:border-l-gray-100:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.dark\:border-l-gray-500:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.dark\:border-l-gray-600:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.dark\:border-l-green-400:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(74 222 128 / var(--tw-border-opacity, 1))}.dark\:border-l-indigo-400:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(129 140 248 / var(--tw-border-opacity, 1))}.dark\:border-l-purple-400:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.dark\:border-l-red-400:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.dark\:border-l-violet-400:is(.dark *){--tw-border-opacity: 1;border-left-color:rgb(167 139 250 / var(--tw-border-opacity, 1))}.dark\:border-r-gray-100:is(.dark *){--tw-border-opacity: 1;border-right-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.dark\:border-t-gray-100:is(.dark *){--tw-border-opacity: 1;border-top-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.dark\:border-t-neutral-100:is(.dark *){--tw-border-opacity: 1;border-top-color:rgb(245 245 245 / var(--tw-border-opacity, 1))}.dark\:border-t-neutral-300:is(.dark *){--tw-border-opacity: 1;border-top-color:rgb(212 212 212 / var(--tw-border-opacity, 1))}.dark\:bg-amber-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.dark\:bg-amber-500\/10:is(.dark *){background-color:#f59e0b1a}.dark\:bg-amber-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(180 83 9 / var(--tw-bg-opacity, 1))}.dark\:bg-amber-800\/30:is(.dark *){background-color:#92400e4d}.dark\:bg-amber-800\/40:is(.dark *){background-color:#92400e66}.dark\:bg-amber-800\/50:is(.dark *){background-color:#92400e80}.dark\:bg-amber-900\/10:is(.dark *){background-color:#78350f1a}.dark\:bg-amber-900\/20:is(.dark *){background-color:#78350f33}.dark\:bg-amber-900\/30:is(.dark *){background-color:#78350f4d}.dark\:bg-amber-900\/40:is(.dark *){background-color:#78350f66}.dark\:bg-amber-950\/20:is(.dark *){background-color:#451a0333}.dark\:bg-amber-950\/30:is(.dark *){background-color:#451a034d}.dark\:bg-amber-950\/60:is(.dark *){background-color:#451a0399}.dark\:bg-black:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-300\/40:is(.dark *){background-color:#93c5fd66}.dark\:bg-blue-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-500\/10:is(.dark *){background-color:#3b82f61a}.dark\:bg-blue-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-900\/20:is(.dark *){background-color:#1e3a8a33}.dark\:bg-blue-900\/30:is(.dark *){background-color:#1e3a8a4d}.dark\:bg-blue-900\/40:is(.dark *){background-color:#1e3a8a66}.dark\:bg-blue-900\/50:is(.dark *){background-color:#1e3a8a80}.dark\:bg-blue-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 37 84 / var(--tw-bg-opacity, 1))}.dark\:bg-blue-950\/25:is(.dark *){background-color:#17255440}.dark\:bg-blue-950\/60:is(.dark *){background-color:#17255499}.dark\:bg-cyan-900\/40:is(.dark *){background-color:#164e6366}.dark\:bg-emerald-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.dark\:bg-emerald-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(4 120 87 / var(--tw-bg-opacity, 1))}.dark\:bg-emerald-900\/40:is(.dark *){background-color:#064e3b66}.dark\:bg-emerald-900\/50:is(.dark *){background-color:#064e3b80}.dark\:bg-emerald-950\/20:is(.dark *){background-color:#022c2233}.dark\:bg-emerald-950\/30:is(.dark *){background-color:#022c224d}.dark\:bg-foreground\/80:is(.dark *){background-color:hsl(var(--foreground) / .8)}.dark\:bg-gray-100:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800\/30:is(.dark *){background-color:#1f29374d}.dark\:bg-gray-800\/40:is(.dark *){background-color:#1f293766}.dark\:bg-gray-800\/50:is(.dark *){background-color:#1f293780}.dark\:bg-gray-800\/60:is(.dark *){background-color:#1f293799}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900\/40:is(.dark *){background-color:#11182766}.dark\:bg-gray-900\/50:is(.dark *){background-color:#11182780}.dark\:bg-gray-900\/60:is(.dark *){background-color:#11182799}.dark\:bg-gray-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(3 7 18 / var(--tw-bg-opacity, 1))}.dark\:bg-green-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.dark\:bg-green-900\/10:is(.dark *){background-color:#14532d1a}.dark\:bg-green-900\/20:is(.dark *){background-color:#14532d33}.dark\:bg-green-900\/30:is(.dark *){background-color:#14532d4d}.dark\:bg-green-900\/40:is(.dark *){background-color:#14532d66}.dark\:bg-green-950\/20:is(.dark *){background-color:#052e1633}.dark\:bg-green-950\/30:is(.dark *){background-color:#052e164d}.dark\:bg-indigo-900\/40:is(.dark *){background-color:#312e8166}.dark\:bg-indigo-950\/20:is(.dark *){background-color:#1e1b4b33}.dark\:bg-neutral-100:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-300:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-50:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-900\/30:is(.dark *){background-color:#1717174d}.dark\:bg-neutral-900\/40:is(.dark *){background-color:#17171766}.dark\:bg-neutral-900\/45:is(.dark *){background-color:#17171773}.dark\:bg-neutral-900\/50:is(.dark *){background-color:#17171780}.dark\:bg-neutral-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(10 10 10 / var(--tw-bg-opacity, 1))}.dark\:bg-neutral-950\/40:is(.dark *){background-color:#0a0a0a66}.dark\:bg-orange-900\/40:is(.dark *){background-color:#7c2d1266}.dark\:bg-purple-400:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(192 132 252 / var(--tw-bg-opacity, 1))}.dark\:bg-purple-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.dark\:bg-purple-900\/20:is(.dark *){background-color:#581c8733}.dark\:bg-purple-900\/30:is(.dark *){background-color:#581c874d}.dark\:bg-purple-900\/40:is(.dark *){background-color:#581c8766}.dark\:bg-red-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.dark\:bg-red-500\/10:is(.dark *){background-color:#ef44441a}.dark\:bg-red-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.dark\:bg-red-900\/10:is(.dark *){background-color:#7f1d1d1a}.dark\:bg-red-900\/20:is(.dark *){background-color:#7f1d1d33}.dark\:bg-red-900\/30:is(.dark *){background-color:#7f1d1d4d}.dark\:bg-red-900\/40:is(.dark *){background-color:#7f1d1d66}.dark\:bg-red-950\/10:is(.dark *){background-color:#450a0a1a}.dark\:bg-red-950\/20:is(.dark *){background-color:#450a0a33}.dark\:bg-red-950\/30:is(.dark *){background-color:#450a0a4d}.dark\:bg-rose-900\/40:is(.dark *){background-color:#88133766}.dark\:bg-teal-900\/20:is(.dark *){background-color:#134e4a33}.dark\:bg-teal-900\/30:is(.dark *){background-color:#134e4a4d}.dark\:bg-violet-800\/40:is(.dark *){background-color:#5b21b666}.dark\:bg-violet-900\/10:is(.dark *){background-color:#4c1d951a}.dark\:bg-violet-900\/20:is(.dark *){background-color:#4c1d9533}.dark\:bg-violet-900\/40:is(.dark *){background-color:#4c1d9566}.dark\:bg-yellow-900\/30:is(.dark *){background-color:#713f124d}.dark\:bg-yellow-900\/40:is(.dark *){background-color:#713f1266}.dark\:text-amber-100:is(.dark *){--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity, 1))}.dark\:text-amber-200:is(.dark *){--tw-text-opacity: 1;color:rgb(253 230 138 / var(--tw-text-opacity, 1))}.dark\:text-amber-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.dark\:text-amber-400:is(.dark *){--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.dark\:text-background:is(.dark *){color:hsl(var(--background))}.dark\:text-blue-200:is(.dark *){--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:text-blue-300\/70:is(.dark *){color:#93c5fdb3}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-blue-500:is(.dark *){--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.dark\:text-cyan-300:is(.dark *){--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity, 1))}.dark\:text-emerald-300:is(.dark *){--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity, 1))}.dark\:text-emerald-400:is(.dark *){--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.dark\:text-emerald-500:is(.dark *){--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.dark\:text-gray-600:is(.dark *){--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.dark\:text-gray-900:is(.dark *){--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.dark\:text-green-200:is(.dark *){--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.dark\:text-green-300:is(.dark *){--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.dark\:text-green-400:is(.dark *){--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.dark\:text-green-500:is(.dark *){--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.dark\:text-indigo-300:is(.dark *){--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.dark\:text-neutral-100:is(.dark *){--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity, 1))}.dark\:text-neutral-200:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity, 1))}.dark\:text-neutral-300:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity, 1))}.dark\:text-neutral-400:is(.dark *){--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.dark\:text-neutral-400\/80:is(.dark *){color:#a3a3a3cc}.dark\:text-neutral-50:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity, 1))}.dark\:text-neutral-500:is(.dark *){--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.dark\:text-neutral-500\/60:is(.dark *){color:#73737399}.dark\:text-neutral-500\/75:is(.dark *){color:#737373bf}.dark\:text-neutral-500\/80:is(.dark *){color:#737373cc}.dark\:text-neutral-600:is(.dark *){--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity, 1))}.dark\:text-neutral-700:is(.dark *){--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity, 1))}.dark\:text-neutral-900:is(.dark *){--tw-text-opacity: 1;color:rgb(23 23 23 / var(--tw-text-opacity, 1))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity, 1))}.dark\:text-pink-400:is(.dark *){--tw-text-opacity: 1;color:rgb(244 114 182 / var(--tw-text-opacity, 1))}.dark\:text-purple-300:is(.dark *){--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.dark\:text-red-200:is(.dark *){--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.dark\:text-red-200\/80:is(.dark *){color:#fecacacc}.dark\:text-red-300:is(.dark *){--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.dark\:text-red-300\/60:is(.dark *){color:#fca5a599}.dark\:text-red-300\/90:is(.dark *){color:#fca5a5e6}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-red-500:is(.dark *){--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.dark\:text-rose-300:is(.dark *){--tw-text-opacity: 1;color:rgb(253 164 175 / var(--tw-text-opacity, 1))}.dark\:text-sky-400:is(.dark *){--tw-text-opacity: 1;color:rgb(56 189 248 / var(--tw-text-opacity, 1))}.dark\:text-violet-300:is(.dark *){--tw-text-opacity: 1;color:rgb(196 181 253 / var(--tw-text-opacity, 1))}.dark\:text-violet-400:is(.dark *){--tw-text-opacity: 1;color:rgb(167 139 250 / var(--tw-text-opacity, 1))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:text-yellow-300:is(.dark *){--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.dark\:placeholder-neutral-500:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(115 115 115 / var(--tw-placeholder-opacity, 1))}.dark\:placeholder-neutral-500:is(.dark *)::placeholder{--tw-placeholder-opacity: 1;color:rgb(115 115 115 / var(--tw-placeholder-opacity, 1))}.dark\:accent-neutral-50:is(.dark *){accent-color:#fafafa}.dark\:ring-neutral-950:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(10 10 10 / var(--tw-ring-opacity, 1))}.dark .dark\:bg-gray-800:is(.dark *) textarea{color:#f3f4f6!important;-webkit-text-fill-color:rgb(243 244 246)!important}.dark .dark\:bg-gray-800:is(.dark *) textarea::-moz-placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.dark .dark\:bg-gray-800:is(.dark *) textarea::placeholder{color:#4b5563!important;opacity:1!important;-webkit-text-fill-color:rgb(75 85 99)!important}.dark\:placeholder\:text-neutral-500:is(.dark *)::-moz-placeholder{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.dark\:placeholder\:text-neutral-500:is(.dark *)::placeholder{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.dark\:focus-within\:border-neutral-700:focus-within:is(.dark *){--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity, 1))}.dark\:hover\:border-neutral-700:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity, 1))}.dark\:hover\:border-red-700:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(185 28 28 / var(--tw-border-opacity, 1))}.dark\:hover\:bg-amber-900\/30:hover:is(.dark *){background-color:#78350f4d}.dark\:hover\:bg-amber-950\/30:hover:is(.dark *){background-color:#451a034d}.dark\:hover\:bg-blue-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-blue-950\/30:hover:is(.dark *){background-color:#1725544d}.dark\:hover\:bg-emerald-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800\/50:hover:is(.dark *){background-color:#1f293780}.dark\:hover\:bg-gray-800\/60:hover:is(.dark *){background-color:#1f293799}.dark\:hover\:bg-gray-900\/70:hover:is(.dark *){background-color:#111827b3}.dark\:hover\:bg-indigo-950\/30:hover:is(.dark *){background-color:#1e1b4b4d}.dark\:hover\:bg-neutral-300:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-neutral-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-neutral-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-neutral-700\/70:hover:is(.dark *){background-color:#404040b3}.dark\:hover\:bg-neutral-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-neutral-800\/60:hover:is(.dark *){background-color:#26262699}.dark\:hover\:bg-neutral-800\/70:hover:is(.dark *){background-color:#262626b3}.dark\:hover\:bg-neutral-900:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-neutral-900\/40:hover:is(.dark *){background-color:#17171766}.dark\:hover\:bg-neutral-900\/50:hover:is(.dark *){background-color:#17171780}.dark\:hover\:bg-neutral-900\/60:hover:is(.dark *){background-color:#17171799}.dark\:hover\:bg-red-600:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-red-900\/30:hover:is(.dark *){background-color:#7f1d1d4d}.dark\:hover\:bg-red-950\/30:hover:is(.dark *){background-color:#450a0a4d}.dark\:hover\:bg-red-950\/40:hover:is(.dark *){background-color:#450a0a66}.dark\:hover\:text-amber-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(254 243 199 / var(--tw-text-opacity, 1))}.dark\:hover\:text-blue-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:hover\:text-neutral-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity, 1))}.dark\:hover\:text-neutral-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 229 229 / var(--tw-text-opacity, 1))}.dark\:hover\:text-neutral-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity, 1))}.dark\:hover\:text-red-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.dark\:hover\:text-red-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.dark\:hover\:text-red-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:focus\:border-blue-700:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.dark\:focus\:border-neutral-600:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity, 1))}.dark\:focus\:border-neutral-700:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity, 1))}.dark\:focus\:ring-blue-500:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.dark\:focus\:ring-blue-950:focus:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(23 37 84 / var(--tw-ring-opacity, 1))}.dark\:focus-visible\:ring-neutral-700:focus-visible:is(.dark *){--tw-ring-opacity: 1;--tw-ring-color: rgb(64 64 64 / var(--tw-ring-opacity, 1))}.dark\:disabled\:hover\:text-neutral-500:hover:disabled:is(.dark *){--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.group:hover .dark\:group-hover\:text-neutral-300:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity, 1))}.dark\:prose-a\:text-neutral-100 :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))):is(.dark *){--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity, 1))}@media not all and (min-width:768px){.max-md\:m-0{margin:0}.max-md\:h-full{height:100%}.max-md\:\!w-full{width:100%!important}.max-md\:max-w-none{max-width:none}.max-md\:items-stretch{align-items:stretch}.max-md\:justify-stretch{justify-content:stretch}.max-md\:rounded-none{border-radius:0}}@media(min-width:640px){.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:h-auto{height:auto}.sm\:w-28{width:7rem}.sm\:w-36{width:9rem}.sm\:w-auto{width:auto}.sm\:min-w-max{min-width:-moz-max-content;min-width:max-content}.sm\:max-w-2xl{max-width:42rem}.sm\:max-w-\[140px\]{max-width:140px}.sm\:max-w-\[190px\]{max-width:190px}.sm\:max-w-\[85\%\]{max-width:85%}.sm\:flex-initial{flex:0 1 auto}.sm\:flex-none{flex:none}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[160px_1fr\]{grid-template-columns:160px 1fr}.sm\:grid-cols-\[180px_1fr\]{grid-template-columns:180px 1fr}.sm\:flex-row{flex-direction:row}.sm\:gap-4{gap:1rem}.sm\:space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-xl{border-radius:.75rem}.sm\:border{border-width:1px}.sm\:border-border{border-color:hsl(var(--border))}.sm\:p-4{padding:1rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:opacity-0{opacity:0}.group:hover .sm\:group-hover\:opacity-100{opacity:1}}@media(min-width:768px){.md\:m-4{margin:1rem}.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-3\/4{height:75%}.md\:h-\[80vh\]{height:80vh}.md\:h-\[85vh\]{height:85vh}.md\:h-\[90vh\]{height:90vh}.md\:h-auto{height:auto}.md\:h-full{height:100%}.md\:max-h-\[60vh\]{max-height:60vh}.md\:max-h-\[80vh\]{max-height:80vh}.md\:max-h-\[85vh\]{max-height:85vh}.md\:w-auto{width:auto}.md\:w-full{width:100%}.md\:max-w-2xl{max-width:42rem}.md\:max-w-4xl{max-width:56rem}.md\:max-w-5xl{max-width:64rem}.md\:max-w-6xl{max-width:72rem}.md\:max-w-md{max-width:28rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[minmax\(0\,1fr\)_112px_112px_112px\]{grid-template-columns:minmax(0,1fr) 112px 112px 112px}.md\:flex-row{flex-direction:row}.md\:flex-col{flex-direction:column}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:justify-center{justify-content:center}.md\:justify-between{justify-content:space-between}.md\:gap-4{gap:1rem}.md\:divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse: 0;border-right-width:calc(1px * var(--tw-divide-x-reverse));border-left-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}.md\:divide-y-0>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(0px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(0px * var(--tw-divide-y-reverse))}.md\:rounded-lg{border-radius:var(--radius)}.md\:rounded-none{border-radius:0}.md\:rounded-xl{border-radius:.75rem}.md\:border{border-width:1px}.md\:border-0{border-width:0px}.md\:border-neutral-200{--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity, 1))}.md\:bg-black\/40{background-color:#0006}.md\:p-0{padding:0}.md\:p-4{padding:1rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-8{padding-top:2rem;padding-bottom:2rem}.md\:text-right{text-align:right}.md\:shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.md\:backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.dark\:md\:border-neutral-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(38 38 38 / var(--tw-border-opacity, 1))}}@media(min-width:1024px){.lg\:max-w-lg{max-width:32rem}}@media(min-width:1280px){.xl\:max-w-xl{max-width:36rem}}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}@media(hover:none){.\[\@media\(hover\:none\)\]\:opacity-100{opacity:1}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.47"}.katex .katex-mathml{border:0;clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo} diff --git a/ui/dist.noauth.bak/assets/index-Bz-nAIa4.js b/ui/dist.noauth.bak/assets/index-Bz-nAIa4.js new file mode 100644 index 00000000..cf22ddb4 --- /dev/null +++ b/ui/dist.noauth.bak/assets/index-Bz-nAIa4.js @@ -0,0 +1 @@ +import{A as s,h as a,C as r,D as e,L as i,a as o,P as t,b as n,S as l,c,Y as p,d as m,e as A,f as u,g as S,i as L,j as M,k as Y,l as f,m as C,n as P,o as d,p as g,q as D,r as b,s as v,t as y,v as _,u as j}from"./index-DMmLYClt.js";import"./vendor-codemirror-Cyecodkc.js";import"./vendor-react-QREEBBIX.js";import"./vendor-xterm-BgHoLdPP.js";const E=Object.freeze(Object.defineProperty({__proto__:null,Alias:s,CST:a,Composer:r,Document:e,Lexer:i,LineCounter:o,Pair:t,Parser:n,Scalar:l,Schema:c,YAMLError:p,YAMLMap:m,YAMLParseError:A,YAMLSeq:u,YAMLWarning:S,isAlias:L,isCollection:M,isDocument:Y,isMap:f,isNode:C,isPair:P,isScalar:d,isSeq:g,parse:D,parseAllDocuments:b,parseDocument:v,stringify:y,visit:_,visitAsync:j},Symbol.toStringTag,{value:"Module"}));export{s as Alias,a as CST,r as Composer,e as Document,i as Lexer,o as LineCounter,t as Pair,n as Parser,l as Scalar,c as Schema,p as YAMLError,m as YAMLMap,A as YAMLParseError,u as YAMLSeq,S as YAMLWarning,E as default,L as isAlias,M as isCollection,Y as isDocument,f as isMap,C as isNode,P as isPair,d as isScalar,g as isSeq,D as parse,b as parseAllDocuments,v as parseDocument,y as stringify,_ as visit,j as visitAsync}; diff --git a/ui/dist.noauth.bak/assets/index-DMmLYClt.js b/ui/dist.noauth.bak/assets/index-DMmLYClt.js new file mode 100644 index 00000000..9f2e2695 --- /dev/null +++ b/ui/dist.noauth.bak/assets/index-DMmLYClt.js @@ -0,0 +1,617 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-Bz-nAIa4.js","assets/vendor-codemirror-Cyecodkc.js","assets/vendor-react-QREEBBIX.js","assets/vendor-xterm-BgHoLdPP.js"])))=>i.map(i=>d[i]); +import{t as o,f as T7,_ as A7,T as X5,P as Z5,E as zn,c as wo,n as I7,R as R7,V as wc,F as Sc,S as Jb,a as Bl,G as Qb,W as ex,D as aa,u as J5,o as Tg,p as Q5,C as _7,h as Wi,g as j7,k as O7,B as D7,l as M7,e as Zy,x as L7,j as P7,m as F7,d as B7,v as eT,s as $7,i as U7,q as z7,w as q7,r as H7,y as G7,z as tT,H as nT,A as ve,b as rT}from"./vendor-codemirror-Cyecodkc.js";import{i as V7,g as os,f as h,h as W7,j as aT,R as $n,e as $l,a as K7,r as Y7,u as xu,b as $o,B as X7,d as Z7,c as J7}from"./vendor-react-QREEBBIX.js";import{r as Q7,o as e_,x as t_}from"./vendor-xterm-BgHoLdPP.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))r(a);new MutationObserver(a=>{for(const i of a)if(i.type==="childList")for(const s of i.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(a){const i={};return a.integrity&&(i.integrity=a.integrity),a.referrerPolicy&&(i.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?i.credentials="include":a.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(a){if(a.ep)return;a.ep=!0;const i=n(a);fetch(a.href,i)}})();var Uo={},Jy;function n_(){if(Jy)return Uo;Jy=1;var e=V7();return Uo.createRoot=e.createRoot,Uo.hydrateRoot=e.hydrateRoot,Uo}var r_=n_();const a_=os(r_),mt=e=>typeof e=="string",ws=()=>{let e,t;const n=new Promise((r,a)=>{e=r,t=a});return n.resolve=e,n.reject=t,n},Qy=e=>e==null?"":String(e),i_=(e,t,n)=>{e.forEach(r=>{t[r]&&(n[r]=t[r])})},s_=/###/g,e1=e=>e&&e.includes("###")?e.replace(s_,"."):e,t1=e=>!e||mt(e),Qs=(e,t,n)=>{const r=mt(t)?t.split("."):t;let a=0;for(;a{const{obj:r,k:a}=Qs(e,t,Object);if(r!==void 0||t.length===1){r[a]=n;return}let i=t[t.length-1],s=t.slice(0,t.length-1),l=Qs(e,s,Object);for(;l.obj===void 0&&s.length;)i=`${s[s.length-1]}.${i}`,s=s.slice(0,s.length-1),l=Qs(e,s,Object),l?.obj&&typeof l.obj[`${l.k}.${i}`]<"u"&&(l.obj=void 0);l.obj[`${l.k}.${i}`]=n},o_=(e,t,n,r)=>{const{obj:a,k:i}=Qs(e,t,Object);a[i]=a[i]||[],a[i].push(n)},Ul=(e,t)=>{const{obj:n,k:r}=Qs(e,t);if(n&&Object.prototype.hasOwnProperty.call(n,r))return n[r]},l_=(e,t,n)=>{const r=Ul(e,n);return r!==void 0?r:Ul(t,n)},iT=(e,t,n)=>{for(const r in t)r!=="__proto__"&&r!=="constructor"&&(r in e?mt(e[r])||e[r]instanceof String||mt(t[r])||t[r]instanceof String?n&&(e[r]=t[r]):iT(e[r],t[r],n):e[r]=t[r]);return e},Gr=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),c_={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},u_=e=>mt(e)?e.replace(/[&<>"'\/]/g,t=>c_[t]):e;class d_{constructor(t){this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(t){const n=this.regExpMap.get(t);if(n!==void 0)return n;const r=new RegExp(t);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(t,r),this.regExpQueue.push(t),r}}const p_=[" ",",","?","!",";"],m_=new d_(20),f_=(e,t,n)=>{t=t||"",n=n||"";const r=p_.filter(s=>!t.includes(s)&&!n.includes(s));if(r.length===0)return!0;const a=m_.getRegExp(`(${r.map(s=>s==="?"?"\\?":s).join("|")})`);let i=!a.test(e);if(!i){const s=e.indexOf(n);s>0&&!a.test(e.substring(0,s))&&(i=!0)}return i},Ag=(e,t,n=".")=>{if(!e)return;if(e[t])return Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0;const r=t.split(n);let a=e;for(let i=0;ie?.replace(/_/g,"-"),h_={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console?.[e]?.apply?.(console,t)}};class zl{constructor(t,n={}){this.init(t,n)}init(t,n={}){this.prefix=n.prefix||"i18next:",this.logger=t||h_,this.options=n,this.debug=n.debug}log(...t){return this.forward(t,"log","",!0)}warn(...t){return this.forward(t,"warn","",!0)}error(...t){return this.forward(t,"error","")}deprecate(...t){return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}forward(t,n,r,a){return a&&!this.debug?null:(t=t.map(i=>mt(i)?i.replace(/[\r\n\x00-\x1F\x7F]/g," "):i),mt(t[0])&&(t[0]=`${r}${this.prefix} ${t[0]}`),this.logger[n](t))}create(t){return new zl(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new zl(this.logger,t)}}var Mr=new zl;class Ec{constructor(){this.observers={}}on(t,n){return t.split(" ").forEach(r=>{this.observers[r]||(this.observers[r]=new Map);const a=this.observers[r].get(n)||0;this.observers[r].set(n,a+1)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t].delete(n)}}once(t,n){const r=(...a)=>{n(...a),this.off(t,r)};return this.on(t,r),this}emit(t,...n){this.observers[t]&&Array.from(this.observers[t].entries()).forEach(([a,i])=>{for(let s=0;s{for(let s=0;s-1&&this.options.ns.splice(n,1)}getResource(t,n,r,a={}){const i=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator,s=a.ignoreJSONStructure!==void 0?a.ignoreJSONStructure:this.options.ignoreJSONStructure;let l;t.includes(".")?l=t.split("."):(l=[t,n],r&&(Array.isArray(r)?l.push(...r):mt(r)&&i?l.push(...r.split(i)):l.push(r)));const c=Ul(this.data,l);return!c&&!n&&!r&&t.includes(".")&&(t=l[0],n=l[1],r=l.slice(2).join(".")),c||!s||!mt(r)?c:Ag(this.data?.[t]?.[n],r,i)}addResource(t,n,r,a,i={silent:!1}){const s=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator;let l=[t,n];r&&(l=l.concat(s?r.split(s):r)),t.includes(".")&&(l=t.split("."),a=n,n=l[1]),this.addNamespaces(n),n1(this.data,l,a),i.silent||this.emit("added",t,n,r,a)}addResources(t,n,r,a={silent:!1}){for(const i in r)(mt(r[i])||Array.isArray(r[i]))&&this.addResource(t,n,i,r[i],{silent:!0});a.silent||this.emit("added",t,n,r)}addResourceBundle(t,n,r,a,i,s={silent:!1,skipCopy:!1}){let l=[t,n];t.includes(".")&&(l=t.split("."),a=r,r=n,n=l[1]),this.addNamespaces(n);let c=Ul(this.data,l)||{};s.skipCopy||(r=JSON.parse(JSON.stringify(r))),a?iT(c,r,i):c={...c,...r},n1(this.data,l,c),s.silent||this.emit("added",t,n,r)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(a=>n[a]&&Object.keys(n[a]).length>0)}toJSON(){return this.data}}var sT={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,a){return e.forEach(i=>{t=this.processors[i]?.process(t,n,r,a)??t}),t}};const oT=Symbol("i18next/PATH_KEY");function g_(){const e=[],t=Object.create(null);let n;return t.get=(r,a)=>(n?.revoke?.(),a===oT?e:(e.push(a),n=Proxy.revocable(r,t),n.proxy)),Proxy.revocable(Object.create(null),t).proxy}function Fi(e,t){const{[oT]:n}=e(g_()),r=t?.keySeparator??".",a=t?.nsSeparator??":",i=t?.enableSelector==="strict";if(n.length>1&&a){const s=t?.ns,l=i?Array.isArray(s)?s:s?[s]:null:Array.isArray(s)?s:null;if(l&&(i?l:l.length>1?l.slice(1):[]).includes(n[0]))return`${n[0]}${a}${n.slice(1).join(r)}`}return n.join(r)}const yu=e=>!mt(e)&&typeof e!="boolean"&&typeof e!="number";class ql extends Ec{constructor(t,n={}){super(),i_(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=Mr.create("translator"),this.checkedLoadedFor={}}changeLanguage(t){t&&(this.language=t)}exists(t,n={interpolation:{}}){const r={...n};if(t==null)return!1;const a=this.resolve(t,r);if(a?.res===void 0)return!1;const i=yu(a.res);return!(r.returnObjects===!1&&i)}extractFromKey(t,n){let r=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const a=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let i=n.ns||this.options.defaultNS||[];const s=r&&t.includes(r),l=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!f_(t,r,a);if(s&&!l){const c=t.match(this.interpolator.nestingRegexp);if(c&&c.length>0)return{key:t,namespaces:mt(i)?[i]:i};const u=t.split(r);(r!==a||r===a&&this.options.ns.includes(u[0]))&&(i=u.shift()),t=u.join(a)}return{key:t,namespaces:mt(i)?[i]:i}}translate(t,n,r){let a=typeof n=="object"?{...n}:n;if(typeof a!="object"&&this.options.overloadTranslationOptionHandler&&(a=this.options.overloadTranslationOptionHandler(arguments)),typeof a=="object"&&(a={...a}),a||(a={}),t==null)return"";typeof t=="function"&&(t=Fi(t,{...this.options,...a})),Array.isArray(t)||(t=[String(t)]),t=t.map(z=>typeof z=="function"?Fi(z,{...this.options,...a}):String(z));const i=a.returnDetails!==void 0?a.returnDetails:this.options.returnDetails,s=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator,{key:l,namespaces:c}=this.extractFromKey(t[t.length-1],a),u=c[c.length-1];let d=a.nsSeparator!==void 0?a.nsSeparator:this.options.nsSeparator;d===void 0&&(d=":");const p=a.lng||this.language,m=a.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(p?.toLowerCase()==="cimode")return m?i?{res:`${u}${d}${l}`,usedKey:l,exactUsedKey:l,usedLng:p,usedNS:u,usedParams:this.getUsedParamsDetails(a)}:`${u}${d}${l}`:i?{res:l,usedKey:l,exactUsedKey:l,usedLng:p,usedNS:u,usedParams:this.getUsedParamsDetails(a)}:l;const f=this.resolve(t,a);let g=f?.res;const b=f?.usedKey||l,x=f?.exactUsedKey||l,k=["[object Number]","[object Function]","[object RegExp]"],y=a.joinArrays!==void 0?a.joinArrays:this.options.joinArrays,v=!this.i18nFormat||this.i18nFormat.handleAsObject,E=a.count!==void 0&&!mt(a.count),N=ql.hasDefaultValue(a),w=E?this.pluralResolver.getSuffix(p,a.count,a):"",T=a.ordinal&&E?this.pluralResolver.getSuffix(p,a.count,{ordinal:!1}):"",j=E&&!a.ordinal&&a.count===0,_=j&&a[`defaultValue${this.options.pluralSeparator}zero`]||a[`defaultValue${w}`]||a[`defaultValue${T}`]||a.defaultValue;let C=g;v&&!g&&N&&(C=_);const O=yu(C),I=Object.prototype.toString.apply(C);if(v&&C&&O&&!k.includes(I)&&!(mt(y)&&Array.isArray(C))){if(!a.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const z=this.options.returnedObjectHandler?this.options.returnedObjectHandler(b,C,{...a,ns:c}):`key '${l} (${this.language})' returned an object instead of string.`;return i?(f.res=z,f.usedParams=this.getUsedParamsDetails(a),f):z}if(s){const z=Array.isArray(C),M=z?[]:{},P=z?x:b;for(const B in C)if(Object.prototype.hasOwnProperty.call(C,B)){const $=`${P}${s}${B}`;N&&!g?M[B]=this.translate($,{...a,defaultValue:yu(_)?_[B]:void 0,joinArrays:!1,ns:c}):M[B]=this.translate($,{...a,joinArrays:!1,ns:c}),M[B]===$&&(M[B]=C[B])}g=M}}else if(v&&mt(y)&&Array.isArray(g))g=g.join(y),g&&(g=this.extendTranslation(g,t,a,r));else{let z=!1,M=!1;!this.isValidLookup(g)&&N&&(z=!0,g=_),this.isValidLookup(g)||(M=!0,g=l);const B=(a.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&M?void 0:g,$=N&&_!==g&&this.options.updateMissing;if(M||z||$){if(this.logger.log($?"updateKey":"missingKey",p,u,E&&!$?`${l}${this.pluralResolver.getSuffix(p,a.count,a)}`:l,$?_:g),s){const K=this.resolve(l,{...a,keySeparator:!1});K&&K.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let U=[];const q=this.languageUtils.getFallbackCodes(this.options.fallbackLng,a.lng||this.language);if(this.options.saveMissingTo==="fallback"&&q&&q[0])for(let K=0;K{const le=N&&L!==g?L:B;this.options.missingKeyHandler?this.options.missingKeyHandler(K,u,V,le,$,a):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(K,u,V,le,$,a),this.emit("missingKey",K,u,V,g)};this.options.saveMissing&&(this.options.saveMissingPlurals&&E?U.forEach(K=>{const V=this.pluralResolver.getSuffixes(K,a);j&&a[`defaultValue${this.options.pluralSeparator}zero`]&&!V.includes(`${this.options.pluralSeparator}zero`)&&V.push(`${this.options.pluralSeparator}zero`),V.forEach(L=>{A([K],l+L,a[`defaultValue${L}`]||_)})}):A(U,l,_))}g=this.extendTranslation(g,t,a,f,r),M&&g===l&&this.options.appendNamespaceToMissingKey&&(g=`${u}${d}${l}`),(M||z)&&this.options.parseMissingKeyHandler&&(g=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${u}${d}${l}`:l,z?g:void 0,a))}return i?(f.res=g,f.usedParams=this.getUsedParamsDetails(a),f):g}extendTranslation(t,n,r,a,i){if(this.i18nFormat?.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...r},r.lng||this.language||a.usedLng,a.usedNS,a.usedKey,{resolved:a});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const c=mt(t)&&(r?.interpolation?.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let u;if(c){const p=t.match(this.interpolator.nestingRegexp);u=p&&p.length}let d=r.replace&&!mt(r.replace)?r.replace:r;if(this.options.interpolation.defaultVariables&&(d={...this.options.interpolation.defaultVariables,...d}),t=this.interpolator.interpolate(t,d,r.lng||this.language||a.usedLng,r),c){const p=t.match(this.interpolator.nestingRegexp),m=p&&p.length;ui?.[0]===p[0]&&!r.context?(this.logger.warn(`It seems you are nesting recursively key: ${p[0]} in key: ${n[0]}`),null):this.translate(...p,n),r)),r.interpolation&&this.interpolator.reset()}const s=r.postProcess||this.options.postProcess,l=mt(s)?[s]:s;return t!=null&&l?.length&&r.applyPostProcessor!==!1&&(t=sT.handle(l,t,n,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...a,usedParams:this.getUsedParamsDetails(r)},...r}:r,this)),t}resolve(t,n={}){let r,a,i,s,l;return mt(t)&&(t=[t]),Array.isArray(t)&&(t=t.map(c=>typeof c=="function"?Fi(c,{...this.options,...n}):c)),t.forEach(c=>{if(this.isValidLookup(r))return;const u=this.extractFromKey(c,n),d=u.key;a=d;let p=u.namespaces;this.options.fallbackNS&&(p=p.concat(this.options.fallbackNS));const m=n.count!==void 0&&!mt(n.count),f=m&&!n.ordinal&&n.count===0,g=n.context!==void 0&&(mt(n.context)||typeof n.context=="number")&&n.context!=="",b=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);p.forEach(x=>{this.isValidLookup(r)||(l=x,!this.checkedLoadedFor[`${b[0]}-${x}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(l)&&(this.checkedLoadedFor[`${b[0]}-${x}`]=!0,this.logger.warn(`key "${a}" for languages "${b.join(", ")}" won't get resolved as namespace "${l}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),b.forEach(k=>{if(this.isValidLookup(r))return;s=k;const y=[d];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(y,d,k,x,n);else{let E;m&&(E=this.pluralResolver.getSuffix(k,n.count,n));const N=`${this.options.pluralSeparator}zero`,w=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(m&&(n.ordinal&&E.startsWith(w)&&y.push(d+E.replace(w,this.options.pluralSeparator)),y.push(d+E),f&&y.push(d+N)),g){const T=`${d}${this.options.contextSeparator||"_"}${n.context}`;y.push(T),m&&(n.ordinal&&E.startsWith(w)&&y.push(T+E.replace(w,this.options.pluralSeparator)),y.push(T+E),f&&y.push(T+N))}}let v;for(;v=y.pop();)this.isValidLookup(r)||(i=v,r=this.getResource(k,x,v,n))}))})}),{res:r,usedKey:a,exactUsedKey:i,usedLng:s,usedNS:l}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,r,a={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(t,n,r,a):this.resourceStore.getResource(t,n,r,a)}getUsedParamsDetails(t={}){const n=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],r=t.replace&&!mt(t.replace);let a=r?t.replace:t;if(r&&typeof t.count<"u"&&(a.count=t.count),this.options.interpolation.defaultVariables&&(a={...this.options.interpolation.defaultVariables,...a}),!r){a={...a};for(const i of n)delete a[i]}return a}static hasDefaultValue(t){const n="defaultValue";for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&r.startsWith(n)&&t[r]!==void 0)return!0;return!1}}class a1{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Mr.create("languageUtils")}getScriptPartFromCode(t){if(t=lo(t),!t||!t.includes("-"))return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=lo(t),!t||!t.includes("-"))return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(mt(t)&&t.includes("-")){let n;try{n=Intl.getCanonicalLocales(t)[0]}catch{}return n&&this.options.lowerCaseLng&&(n=n.toLowerCase()),n||(this.options.lowerCaseLng?t.toLowerCase():t)}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.includes(t)}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(r=>{if(n)return;const a=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(a))&&(n=a)}),!n&&this.options.supportedLngs&&t.forEach(r=>{if(n)return;const a=this.getScriptPartFromCode(r);if(this.isSupportedCode(a))return n=a;const i=this.getLanguagePartFromCode(r);if(this.isSupportedCode(i))return n=i;n=this.options.supportedLngs.find(s=>s===i?!0:!s.includes("-")&&!i.includes("-")?!1:!!(s.includes("-")&&!i.includes("-")&&s.slice(0,s.indexOf("-"))===i||s.startsWith(i)&&i.length>1))}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),mt(t)&&(t=[t]),Array.isArray(t))return t;if(!n)return t.default||[];let r=t[n];return r||(r=t[this.getScriptPartFromCode(n)]),r||(r=t[this.formatLanguageCode(n)]),r||(r=t[this.getLanguagePartFromCode(n)]),r||(r=t.default),r||[]}toResolveHierarchy(t,n){const r=this.getFallbackCodes((n===!1?[]:n)||this.options.fallbackLng||[],t),a=[],i=s=>{s&&(this.isSupportedCode(s)?a.push(s):this.logger.warn(`rejecting language code not found in supportedLngs: ${s}`))};return mt(t)&&(t.includes("-")||t.includes("_"))?(this.options.load!=="languageOnly"&&i(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&i(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&i(this.getLanguagePartFromCode(t))):mt(t)&&i(this.formatLanguageCode(t)),r.forEach(s=>{a.includes(s)||i(this.formatLanguageCode(s))}),a}}const i1={zero:0,one:1,two:2,few:3,many:4,other:5},s1={select:e=>e===1?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class b_{constructor(t,n={}){this.languageUtils=t,this.options=n,this.logger=Mr.create("pluralResolver"),this.pluralRulesCache={}}clearCache(){this.pluralRulesCache={}}getRule(t,n={}){const r=lo(t==="dev"?"en":t),a=n.ordinal?"ordinal":"cardinal",i=JSON.stringify({cleanedCode:r,type:a});if(i in this.pluralRulesCache)return this.pluralRulesCache[i];let s;try{s=new Intl.PluralRules(r,{type:a})}catch{if(typeof Intl>"u")return this.logger.error("No Intl support, please use an Intl polyfill!"),s1;if(!t.match(/-|_/))return s1;const c=this.languageUtils.getLanguagePartFromCode(t);s=this.getRule(c,n)}return this.pluralRulesCache[i]=s,s}needsPlural(t,n={}){let r=this.getRule(t,n);return r||(r=this.getRule("dev",n)),r?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(t,n,r={}){return this.getSuffixes(t,r).map(a=>`${n}${a}`)}getSuffixes(t,n={}){let r=this.getRule(t,n);return r||(r=this.getRule("dev",n)),r?r.resolvedOptions().pluralCategories.sort((a,i)=>i1[a]-i1[i]).map(a=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${a}`):[]}getSuffix(t,n,r={}){const a=this.getRule(t,r);return a?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${a.select(n)}`:(this.logger.warn(`no plural rule found for: ${t}`),this.getSuffix("dev",n,r))}}const o1=(e,t,n,r=".",a=!0)=>{let i=l_(e,t,n);return!i&&a&&mt(n)&&(i=Ag(e,n,r),i===void 0&&(i=Ag(t,n,r))),i},vu=e=>e.replace(/\$/g,"$$$$");class l1{constructor(t={}){this.logger=Mr.create("interpolator"),this.options=t,this.format=t?.interpolation?.format||(n=>n),this.init(t)}init(t={}){t.interpolation||(t.interpolation={escapeValue:!0});const{escape:n,escapeValue:r,useRawValueToEscape:a,prefix:i,prefixEscaped:s,suffix:l,suffixEscaped:c,formatSeparator:u,unescapeSuffix:d,unescapePrefix:p,nestingPrefix:m,nestingPrefixEscaped:f,nestingSuffix:g,nestingSuffixEscaped:b,nestingOptionsSeparator:x,maxReplaces:k,alwaysFormat:y}=t.interpolation;this.escape=n!==void 0?n:u_,this.escapeValue=r!==void 0?r:!0,this.useRawValueToEscape=a!==void 0?a:!1,this.prefix=i?Gr(i):s||"{{",this.suffix=l?Gr(l):c||"}}",this.formatSeparator=u||",",this.unescapePrefix=d?"":p?Gr(p):"-",this.unescapeSuffix=this.unescapePrefix?"":d?Gr(d):"",this.nestingPrefix=m?Gr(m):f||Gr("$t("),this.nestingSuffix=g?Gr(g):b||Gr(")"),this.nestingOptionsSeparator=x||",",this.maxReplaces=k||1e3,this.alwaysFormat=y!==void 0?y:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=(n,r)=>n?.source===r?(n.lastIndex=0,n):new RegExp(r,"g");this.regexp=t(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=t(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=t(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(t,n,r,a){let i,s,l;const c=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},u=f=>{if(!f.includes(this.formatSeparator)){const k=o1(n,c,f,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(k,void 0,r,{...a,...n,interpolationkey:f}):k}const g=f.split(this.formatSeparator),b=g.shift().trim(),x=g.join(this.formatSeparator).trim();return this.format(o1(n,c,b,this.options.keySeparator,this.options.ignoreJSONStructure),x,r,{...a,...n,interpolationkey:b})};this.resetRegExp(),!this.escapeValue&&typeof t=="string"&&/\$t\([^)]*\{[^}]*\{\{/.test(t)&&this.logger.warn("nesting options string contains interpolated variables with escapeValue: false — if any of those values are attacker-controlled they can inject additional nesting options (e.g. redirect lng/ns). Sanitise untrusted input before passing it to t(), or keep escapeValue: true.");const d=a?.missingInterpolationHandler||this.options.missingInterpolationHandler,p=a?.interpolation?.skipOnVariables!==void 0?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:f=>vu(f)},{regex:this.regexp,safeValue:f=>this.escapeValue?vu(this.escape(f)):vu(f)}].forEach(f=>{for(l=0;i=f.regex.exec(t);){const g=i[1].trim();if(s=u(g),s===void 0)if(typeof d=="function"){const x=d(t,i,a);s=mt(x)?x:""}else if(a&&Object.prototype.hasOwnProperty.call(a,g))s="";else if(p){s=i[0];continue}else this.logger.warn(`missed to pass in variable ${g} for interpolating ${t}`),s="";else!mt(s)&&!this.useRawValueToEscape&&(s=Qy(s));const b=f.safeValue(s);if(t=t.replace(i[0],b),p?(f.regex.lastIndex+=s.length,f.regex.lastIndex-=i[0].length):f.regex.lastIndex=0,l++,l>=this.maxReplaces)break}}),t}nest(t,n,r={}){let a,i,s;const l=(c,u)=>{const d=this.nestingOptionsSeparator;if(!c.includes(d))return c;const p=c.split(new RegExp(`${Gr(d)}[ ]*{`));let m=`{${p[1]}`;c=p[0],m=this.interpolate(m,s);const f=m.match(/'/g),g=m.match(/"/g);((f?.length??0)%2===0&&!g||(g?.length??0)%2!==0)&&(m=m.replace(/'/g,'"'));try{s=JSON.parse(m),u&&(s={...u,...s})}catch(b){return this.logger.warn(`failed parsing options string in nesting for key ${c}`,b),`${c}${d}${m}`}return s.defaultValue&&s.defaultValue.includes(this.prefix)&&delete s.defaultValue,c};for(;a=this.nestingRegexp.exec(t);){let c=[];s={...r},s=s.replace&&!mt(s.replace)?s.replace:s,s.applyPostProcessor=!1,delete s.defaultValue;const u=/{.*}/.test(a[1])?a[1].lastIndexOf("}")+1:a[1].indexOf(this.formatSeparator);if(u!==-1&&(c=a[1].slice(u).split(this.formatSeparator).map(d=>d.trim()).filter(Boolean),a[1]=a[1].slice(0,u)),i=n(l.call(this,a[1].trim(),s),s),i&&a[0]===t&&!mt(i))return i;mt(i)||(i=Qy(i)),i||(this.logger.warn(`missed to resolve ${a[1]} for nesting ${t}`),i=""),c.length&&(i=c.reduce((d,p)=>this.format(d,p,r.lng,{...r,interpolationkey:a[1].trim()}),i.trim())),t=t.replace(a[0],i),this.regexp.lastIndex=0}return t}}const x_=e=>{let t=e.toLowerCase().trim();const n={};if(e.includes("(")){const r=e.split("(");t=r[0].toLowerCase().trim();const a=r[1].slice(0,-1);t==="currency"&&!a.includes(":")?n.currency||(n.currency=a.trim()):t==="relativetime"&&!a.includes(":")?n.range||(n.range=a.trim()):a.split(";").forEach(s=>{if(s){const[l,...c]=s.split(":"),u=c.join(":").trim().replace(/^'+|'+$/g,""),d=l.trim();n[d]||(n[d]=u),u==="false"&&(n[d]=!1),u==="true"&&(n[d]=!0),isNaN(u)||(n[d]=parseInt(u,10))}})}return{formatName:t,formatOptions:n}},c1=e=>{const t={};return(n,r,a)=>{let i=a;a&&a.interpolationkey&&a.formatParams&&a.formatParams[a.interpolationkey]&&a[a.interpolationkey]&&(i={...i,[a.interpolationkey]:void 0});const s=r+JSON.stringify(i);let l=t[s];return l||(l=e(lo(r),a),t[s]=l),l(n)}},y_=e=>(t,n,r)=>e(lo(n),r)(t);class v_{constructor(t={}){this.logger=Mr.create("formatter"),this.options=t,this.init(t)}init(t,n={interpolation:{}}){this.formatSeparator=n.interpolation.formatSeparator||",";const r=n.cacheInBuiltFormats?c1:y_;this.formats={number:r((a,i)=>{const s=new Intl.NumberFormat(a,{...i});return l=>s.format(l)}),currency:r((a,i)=>{const s=new Intl.NumberFormat(a,{...i,style:"currency"});return l=>s.format(l)}),datetime:r((a,i)=>{const s=new Intl.DateTimeFormat(a,{...i});return l=>s.format(l)}),relativetime:r((a,i)=>{const s=new Intl.RelativeTimeFormat(a,{...i});return l=>s.format(l,i.range||"day")}),list:r((a,i)=>{const s=new Intl.ListFormat(a,{...i});return l=>s.format(l)})}}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=c1(n)}format(t,n,r,a={}){if(!n||t==null)return t;const i=n.split(this.formatSeparator);if(i.length>1&&i[0].indexOf("(")>1&&!i[0].includes(")")&&i.find(l=>l.includes(")"))){const l=i.findIndex(c=>c.includes(")"));i[0]=[i[0],...i.splice(1,l)].join(this.formatSeparator)}return i.reduce((l,c)=>{const{formatName:u,formatOptions:d}=x_(c);if(this.formats[u]){let p=l;try{const m=a?.formatParams?.[a.interpolationkey]||{},f=m.locale||m.lng||a.locale||a.lng||r;p=this.formats[u](l,f,{...d,...a,...m})}catch(m){this.logger.warn(m)}return p}else this.logger.warn(`there was no format function for ${u}`);return l},t)}}const k_=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)};class w_ extends Ec{constructor(t,n,r,a={}){super(),this.backend=t,this.store=n,this.services=r,this.languageUtils=r.languageUtils,this.options=a,this.logger=Mr.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=a.maxParallelReads||10,this.readingCalls=0,this.maxRetries=a.maxRetries>=0?a.maxRetries:5,this.retryTimeout=a.retryTimeout>=1?a.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(r,a.backend,a)}queueLoad(t,n,r,a){const i={},s={},l={},c={};return t.forEach(u=>{let d=!0;n.forEach(p=>{const m=`${u}|${p}`;!r.reload&&this.store.hasResourceBundle(u,p)?this.state[m]=2:this.state[m]<0||(this.state[m]===1?s[m]===void 0&&(s[m]=!0):(this.state[m]=1,d=!1,s[m]===void 0&&(s[m]=!0),i[m]===void 0&&(i[m]=!0),c[p]===void 0&&(c[p]=!0)))}),d||(l[u]=!0)}),(Object.keys(i).length||Object.keys(s).length)&&this.queue.push({pending:s,pendingCount:Object.keys(s).length,loaded:{},errors:[],callback:a}),{toLoad:Object.keys(i),pending:Object.keys(s),toLoadLanguages:Object.keys(l),toLoadNamespaces:Object.keys(c)}}loaded(t,n,r){const a=t.split("|"),i=a[0],s=a[1];n&&this.emit("failedLoading",i,s,n),!n&&r&&this.store.addResourceBundle(i,s,r,void 0,void 0,{skipCopy:!0}),this.state[t]=n?-1:2,n&&r&&(this.state[t]=0);const l={};this.queue.forEach(c=>{o_(c.loaded,[i],s),k_(c,t),n&&c.errors.push(n),c.pendingCount===0&&!c.done&&(Object.keys(c.loaded).forEach(u=>{l[u]||(l[u]={});const d=c.loaded[u];d.length&&d.forEach(p=>{l[u][p]===void 0&&(l[u][p]=!0)})}),c.done=!0,c.errors.length?c.callback(c.errors):c.callback())}),this.emit("loaded",l),this.queue=this.queue.filter(c=>!c.done)}read(t,n,r,a=0,i=this.retryTimeout,s){if(!t.length)return s(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:r,tried:a,wait:i,callback:s});return}this.readingCalls++;const l=(u,d)=>{if(this.readingCalls--,this.waitingReads.length>0){const p=this.waitingReads.shift();this.read(p.lng,p.ns,p.fcName,p.tried,p.wait,p.callback)}if(u&&d&&a{this.read(t,n,r,a+1,i*2,s)},i);return}s(u,d)},c=this.backend[r].bind(this.backend);if(c.length===2){try{const u=c(t,n);u&&typeof u.then=="function"?u.then(d=>l(null,d)).catch(l):l(null,u)}catch(u){l(u)}return}return c(t,n,l)}prepareLoading(t,n,r={},a){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),a&&a();mt(t)&&(t=this.languageUtils.toResolveHierarchy(t)),mt(n)&&(n=[n]);const i=this.queueLoad(t,n,r,a);if(!i.toLoad.length)return i.pending.length||a(),null;i.toLoad.forEach(s=>{this.loadOne(s)})}load(t,n,r){this.prepareLoading(t,n,{},r)}reload(t,n,r){this.prepareLoading(t,n,{reload:!0},r)}loadOne(t,n=""){const r=t.split("|"),a=r[0],i=r[1];this.read(a,i,"read",void 0,void 0,(s,l)=>{s&&this.logger.warn(`${n}loading namespace ${i} for language ${a} failed`,s),!s&&l&&this.logger.log(`${n}loaded namespace ${i} for language ${a}`,l),this.loaded(t,s,l)})}saveMissing(t,n,r,a,i,s={},l=()=>{}){if(this.services?.utils?.hasLoadedNamespace&&!this.services?.utils?.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${r}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend?.create){const c={...s,isUpdate:i},u=this.backend.create.bind(this.backend);if(u.length<6)try{let d;u.length===5?d=u(t,n,r,a,c):d=u(t,n,r,a),d&&typeof d.then=="function"?d.then(p=>l(null,p)).catch(l):l(null,d)}catch(d){l(d)}else u(t,n,r,a,l,c)}!t||!t[0]||this.store.addResource(t[0],n,r,a)}}}const ku=()=>({debug:!1,initAsync:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",enableSelector:!1,partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]=="object"&&(t=e[1]),mt(e[1])&&(t.defaultValue=e[1]),mt(e[2])&&(t.tDescription=e[2]),typeof e[2]=="object"||typeof e[3]=="object"){const n=e[3]||e[2];Object.keys(n).forEach(r=>{t[r]=n[r]})}return t},interpolation:{escapeValue:!0,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),u1=e=>(mt(e.ns)&&(e.ns=[e.ns]),mt(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),mt(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&!e.supportedLngs.includes("cimode")&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e),zo=()=>{},S_=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})};class eo extends Ec{constructor(t={},n){if(super(),this.options=u1(t),this.services={},this.logger=Mr,this.modules={external:[]},S_(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initAsync)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(t={},n){this.isInitializing=!0,typeof t=="function"&&(n=t,t={}),t.defaultNS==null&&t.ns&&(mt(t.ns)?t.defaultNS=t.ns:t.ns.includes("translation")||(t.defaultNS=t.ns[0]));const r=ku();this.options={...r,...this.options,...u1(t)},this.options.interpolation={...r.interpolation,...this.options.interpolation},t.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=t.keySeparator),t.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=t.nsSeparator),typeof this.options.overloadTranslationOptionHandler!="function"&&(this.options.overloadTranslationOptionHandler=r.overloadTranslationOptionHandler);const a=u=>u?typeof u=="function"?new u:u:null;if(!this.options.isClone){this.modules.logger?Mr.init(a(this.modules.logger),this.options):Mr.init(null,this.options);let u;this.modules.formatter?u=this.modules.formatter:u=v_;const d=new a1(this.options);this.store=new r1(this.options.resources,this.options);const p=this.services;p.logger=Mr,p.resourceStore=this.store,p.languageUtils=d,p.pluralResolver=new b_(d,{prepend:this.options.pluralSeparator}),u&&(p.formatter=a(u),p.formatter.init&&p.formatter.init(p,this.options),this.options.interpolation.format=p.formatter.format.bind(p.formatter)),p.interpolator=new l1(this.options),p.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},p.backendConnector=new w_(a(this.modules.backend),p.resourceStore,p,this.options),p.backendConnector.on("*",(m,...f)=>{this.emit(m,...f)}),this.modules.languageDetector&&(p.languageDetector=a(this.modules.languageDetector),p.languageDetector.init&&p.languageDetector.init(p,this.options.detection,this.options)),this.modules.i18nFormat&&(p.i18nFormat=a(this.modules.i18nFormat),p.i18nFormat.init&&p.i18nFormat.init(this)),this.translator=new ql(this.services,this.options),this.translator.on("*",(m,...f)=>{this.emit(m,...f)}),this.modules.external.forEach(m=>{m.init&&m.init(this)})}if(this.format=this.options.interpolation.format,n||(n=zo),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const u=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);u.length>0&&u[0]!=="dev"&&(this.options.lng=u[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(u=>{this[u]=(...d)=>this.store[u](...d)}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(u=>{this[u]=(...d)=>(this.store[u](...d),this)});const l=ws(),c=()=>{const u=(d,p)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(p),n(d,p)};if((this.languages||this.isLanguageChangingTo)&&!this.isInitialized)return u(null,this.t.bind(this));this.changeLanguage(this.options.lng,u)};return this.options.resources||!this.options.initAsync?c():setTimeout(c,0),l}loadResources(t,n=zo){let r=n;const a=mt(t)?t:this.language;if(typeof t=="function"&&(r=t),!this.options.resources||this.options.partialBundledLanguages){if(a?.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return r();const i=[],s=l=>{if(!l||l==="cimode")return;this.services.languageUtils.toResolveHierarchy(l).forEach(u=>{u!=="cimode"&&(i.includes(u)||i.push(u))})};a?s(a):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(c=>s(c)),this.options.preload?.forEach?.(l=>s(l)),this.services.backendConnector.load(i,this.options.ns,l=>{!l&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(l)})}else r(null)}reloadResources(t,n,r){const a=ws();return typeof t=="function"&&(r=t,t=void 0),typeof n=="function"&&(r=n,n=void 0),t||(t=this.languages),n||(n=this.options.ns),r||(r=zo),this.services.backendConnector.reload(t,n,i=>{a.resolve(),r(i)}),a}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&sT.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!["cimode","dev"].includes(t)){for(let n=0;n{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},i=(l,c)=>{c?this.isLanguageChangingTo===t&&(a(c),this.translator.changeLanguage(c),this.isLanguageChangingTo=void 0,this.emit("languageChanged",c),this.logger.log("languageChanged",c)):this.isLanguageChangingTo=void 0,r.resolve((...u)=>this.t(...u)),n&&n(l,(...u)=>this.t(...u))},s=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);const c=mt(l)?l:l&&l[0],u=this.store.hasLanguageSomeTranslations(c)?c:this.services.languageUtils.getBestMatchFromCodes(mt(l)?[l]:l);u&&(this.language||a(u),this.translator.language||this.translator.changeLanguage(u),this.services.languageDetector?.cacheUserLanguage?.(u)),this.loadResources(u,d=>{i(d,u)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(t),r}getFixedT(t,n,r,a){const i=a?.scopeNs,s=(l,c,...u)=>{let d;typeof c!="object"?d=this.options.overloadTranslationOptionHandler([l,c].concat(u)):d={...c},d.lng=d.lng||s.lng,d.lngs=d.lngs||s.lngs;const p=d.ns!==void 0&&d.ns!==null;d.ns=d.ns||s.ns,d.keyPrefix!==""&&(d.keyPrefix=d.keyPrefix||r||s.keyPrefix);const m={...this.options,...d};Array.isArray(i)&&!p&&(m.ns=i),typeof d.keyPrefix=="function"&&(d.keyPrefix=Fi(d.keyPrefix,m));const f=this.options.keySeparator||".";let g;return d.keyPrefix&&Array.isArray(l)?g=l.map(b=>(typeof b=="function"&&(b=Fi(b,m)),`${d.keyPrefix}${f}${b}`)):(typeof l=="function"&&(l=Fi(l,m)),g=d.keyPrefix?`${d.keyPrefix}${f}${l}`:l),this.t(g,d)};return mt(t)?s.lng=t:s.lngs=t,s.ns=n,s.keyPrefix=r,s}t(...t){return this.translator?.translate(...t)}exists(...t){return this.translator?.exists(...t)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t,n={}){if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=n.lng||this.resolvedLanguage||this.languages[0],a=this.options?this.options.fallbackLng:!1,i=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const s=(l,c)=>{const u=this.services.backendConnector.state[`${l}|${c}`];return u===-1||u===0||u===2};if(n.precheck){const l=n.precheck(this,s);if(l!==void 0)return l}return!!(this.hasResourceBundle(r,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||s(r,t)&&(!a||s(i,t)))}loadNamespaces(t,n){const r=ws();return this.options.ns?(mt(t)&&(t=[t]),t.forEach(a=>{this.options.ns.includes(a)||this.options.ns.push(a)}),this.loadResources(a=>{r.resolve(),n&&n(a)}),r):(n&&n(),Promise.resolve())}loadLanguages(t,n){const r=ws();mt(t)&&(t=[t]);const a=this.options.preload||[],i=t.filter(s=>!a.includes(s)&&this.services.languageUtils.isSupportedCode(s));return i.length?(this.options.preload=a.concat(i),this.loadResources(s=>{r.resolve(),n&&n(s)}),r):(n&&n(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language)),!t)return"rtl";try{const a=new Intl.Locale(t);if(a&&a.getTextInfo){const i=a.getTextInfo();if(i&&i.direction)return i.direction}}catch{}const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services?.languageUtils||new a1(ku());return t.toLowerCase().indexOf("-latn")>1?"ltr":n.includes(r.getLanguagePartFromCode(t))||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(t={},n){const r=new eo(t,n);return r.createInstance=eo.createInstance,r}cloneInstance(t={},n=zo){const r=t.forkResourceStore;r&&delete t.forkResourceStore;const a={...this.options,...t,isClone:!0},i=new eo(a);if((t.debug!==void 0||t.prefix!==void 0)&&(i.logger=i.logger.clone(t)),["store","services","language"].forEach(l=>{i[l]=this[l]}),i.services={...this.services},i.services.utils={hasLoadedNamespace:i.hasLoadedNamespace.bind(i)},r){const l=Object.keys(this.store.data).reduce((c,u)=>(c[u]={...this.store.data[u]},c[u]=Object.keys(c[u]).reduce((d,p)=>(d[p]={...c[u][p]},d),c[u]),c),{});i.store=new r1(l,a),i.services.resourceStore=i.store}if(t.interpolation){const c={...ku().interpolation,...this.options.interpolation,...t.interpolation},u={...a,interpolation:c};i.services.interpolator=new l1(u)}return i.translator=new ql(i.services,a),i.translator.on("*",(l,...c)=>{i.emit(l,...c)}),i.init(a,n),i.translator.options=a,i.translator.backendConnector.services.utils={hasLoadedNamespace:i.hasLoadedNamespace.bind(i)},i}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const yn=eo.createInstance();yn.createInstance;yn.dir;yn.init;yn.loadResources;yn.reloadResources;yn.use;yn.changeLanguage;yn.getFixedT;yn.t;yn.exists;yn.setDefaultNamespace;yn.hasLoadedNamespace;yn.loadNamespaces;yn.loadLanguages;const E_=(e,t,n,r)=>{const a=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(a,"warn","react-i18next::",!0);ti(a[0])&&(a[0]=`react-i18next:: ${a[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...a):console?.warn&&console.warn(...a)},d1={},Ig=(e,t,n,r)=>{ti(n)&&d1[n]||(ti(n)&&(d1[n]=new Date),E_(e,t,n,r))},lT=(e,t)=>()=>{if(e.isInitialized)t();else{const n=()=>{setTimeout(()=>{e.off("initialized",n)},0),t()};e.on("initialized",n)}},Rg=(e,t,n)=>{e.loadNamespaces(t,lT(e,n))},p1=(e,t,n,r)=>{if(ti(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return Rg(e,n,r);n.forEach(a=>{e.options.ns.indexOf(a)<0&&e.options.ns.push(a)}),e.loadLanguages(t,lT(e,r))},C_=(e,t,n={})=>!t.languages||!t.languages.length?(Ig(t,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(r,a)=>{if(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&r.services.backendConnector.backend&&r.isLanguageChangingTo&&!a(r.isLanguageChangingTo,e))return!1}}),ti=e=>typeof e=="string",N_=e=>typeof e=="object"&&e!==null,T_=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,A_={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},I_=e=>A_[e],R_=e=>e.replace(T_,I_);let _g={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:R_,transDefaultProps:void 0};const __=(e={})=>{_g={..._g,...e}},j_=()=>_g;let cT;const O_=e=>{cT=e},D_=()=>cT,M_={type:"3rdParty",init(e){__(e.options.react),O_(e)}},uT=h.createContext();class L_{constructor(){this.usedNamespaces={}}addUsedNamespaces(t){t.forEach(n=>{this.usedNamespaces[n]||(this.usedNamespaces[n]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}var wu={exports:{}},Su={};var m1;function P_(){if(m1)return Su;m1=1;var e=W7();function t(p,m){return p===m&&(p!==0||1/p===1/m)||p!==p&&m!==m}var n=typeof Object.is=="function"?Object.is:t,r=e.useState,a=e.useEffect,i=e.useLayoutEffect,s=e.useDebugValue;function l(p,m){var f=m(),g=r({inst:{value:f,getSnapshot:m}}),b=g[0].inst,x=g[1];return i(function(){b.value=f,b.getSnapshot=m,c(b)&&x({inst:b})},[p,f,m]),a(function(){return c(b)&&x({inst:b}),p(function(){c(b)&&x({inst:b})})},[p]),s(f),f}function c(p){var m=p.getSnapshot;p=p.value;try{var f=m();return!n(p,f)}catch{return!0}}function u(p,m){return m()}var d=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?u:l;return Su.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:d,Su}var f1;function F_(){return f1||(f1=1,wu.exports=P_()),wu.exports}var B_=F_();const $_=(e,t)=>{if(ti(t))return t;if(N_(t)&&ti(t.defaultValue))return t.defaultValue;if(typeof e=="function")return"";if(Array.isArray(e)){const n=e[e.length-1];return typeof n=="function"?"":n}return e},U_={t:$_,ready:!1},z_=()=>()=>{},Je=(e,t={})=>{const{i18n:n}=t,{i18n:r,defaultNS:a}=h.useContext(uT)||{},i=n||r||D_();i&&!i.reportNamespaces&&(i.reportNamespaces=new L_),i||Ig(i,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const s=h.useMemo(()=>({...j_(),...i?.options?.react,...t}),[i,t]),{useSuspense:l,keyPrefix:c}=s,u=e||a||i?.options?.defaultNS,d=ti(u)?[u]:u||["translation"],p=h.useMemo(()=>d,d);i?.reportNamespaces?.addUsedNamespaces?.(p);const m=h.useRef(0),f=h.useCallback(_=>{if(!i)return z_;const{bindI18n:C,bindI18nStore:O}=s,I=()=>{m.current+=1,_()};return C&&i.on(C,I),O&&i.store.on(O,I),()=>{C&&C.split(" ").forEach(z=>i.off(z,I)),O&&O.split(" ").forEach(z=>i.store.off(z,I))}},[i,s]),g=h.useRef(),b=h.useCallback(()=>{if(!i)return U_;const _=!!(i.isInitialized||i.initializedStoreOnce)&&p.every(P=>C_(P,i,s)),C=t.lng||i.language,O=m.current,I=g.current;if(I&&I.ready===_&&I.lng===C&&I.keyPrefix===c&&I.revision===O)return I;const M={t:i.getFixedT(C,s.nsMode==="fallback"?p:p[0],c),ready:_,lng:C,keyPrefix:c,revision:O};return g.current=M,M},[i,p,c,s,t.lng]),[x,k]=h.useState(0),{t:y,ready:v}=B_.useSyncExternalStore(f,b,b);h.useEffect(()=>{if(i&&!v&&!l){const _=()=>k(C=>C+1);t.lng?p1(i,t.lng,p,_):Rg(i,p,_)}},[i,t.lng,p,v,l,x]);const E=i||{},N=h.useRef(null),w=h.useRef(),T=_=>{const C=Object.getOwnPropertyDescriptors(_);C.__original&&delete C.__original;const O=Object.create(Object.getPrototypeOf(_),C);if(!Object.prototype.hasOwnProperty.call(O,"__original"))try{Object.defineProperty(O,"__original",{value:_,writable:!1,enumerable:!1,configurable:!1})}catch{}return O},j=h.useMemo(()=>{const _=E,C=_?.language;let O=_;_&&(N.current&&N.current.__original===_?w.current!==C?(O=T(_),N.current=O,w.current=C):O=N.current:(O=T(_),N.current=O,w.current=C));const I=!v&&!l?(...M)=>(Ig(i,"USE_T_BEFORE_READY","useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t."),y(...M)):y,z=[I,O,v];return z.t=I,z.i18n=O,z.ready=v,z},[y,E,v,E.resolvedLanguage,E.language,E.languages]);if(i&&l&&!v)throw new Promise(_=>{const C=()=>_();t.lng?p1(i,t.lng,p,C):Rg(i,p,C)});return j};function q_({i18n:e,defaultNS:t,children:n}){const r=h.useMemo(()=>({i18n:e,defaultNS:t}),[e,t]);return h.createElement(uT.Provider,{value:r},n)}const dT=h.createContext(),pT="themeMode",jg="theme",H_=()=>typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches,h1=e=>e==="light"||e==="dark"||e==="system"?e:null,g1=()=>{const e=h1(localStorage.getItem(pT));if(e)return e;const t=h1(localStorage.getItem(jg));return t==="light"||t==="dark"?t:"system"},b1=e=>e==="system"?H_():e==="dark",li=()=>{const e=h.useContext(dT);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e},G_=({children:e})=>{const[t,n]=h.useState(g1),[r,a]=h.useState(()=>b1(g1()));h.useEffect(()=>{const l=b1(t);if(a(l),l){document.documentElement.classList.add("dark");const c=document.querySelector('meta[name="apple-mobile-web-app-status-bar-style"]');c&&c.setAttribute("content","black-translucent");const u=document.querySelector('meta[name="theme-color"]');u&&u.setAttribute("content","#0c1117")}else{document.documentElement.classList.remove("dark");const c=document.querySelector('meta[name="apple-mobile-web-app-status-bar-style"]');c&&c.setAttribute("content","default");const u=document.querySelector('meta[name="theme-color"]');u&&u.setAttribute("content","#ffffff")}localStorage.setItem(pT,t),t==="system"?localStorage.removeItem(jg):localStorage.setItem(jg,t)},[r,t]),h.useEffect(()=>{if(!window.matchMedia)return;const l=window.matchMedia("(prefers-color-scheme: dark)"),c=u=>{t==="system"&&a(u.matches)};return l.addEventListener("change",c),()=>l.removeEventListener("change",c)},[t]);const s={isDarkMode:r,themeMode:t,setThemeMode:n,toggleDarkMode:()=>{n(r?"light":"dark")}};return o.jsx(dT.Provider,{value:s,children:e})},x1=e=>String(e||"").replace(/\\/g,"/"),V_=(e,t)=>{const n=x1(e),r=x1(t).replace(/\/+$/,"");return r&&n===r?"":r&&n.startsWith(r+"/")?n.slice(r.length+1):n.replace(/^\/+/,"")},W_=e=>String(e||"").split("/").filter(Boolean).map(t=>encodeURIComponent(t)).join("/"),y1=e=>{const t=localStorage.getItem("auth-token");if(!t)return e;const n=e.includes("?")?"&":"?";return`${e}${n}token=${encodeURIComponent(t)}`},Oe=(e,t={})=>{localStorage.getItem("auth-token");const n={};return t.body instanceof FormData||(n["Content-Type"]="application/json"),fetch(e,{...t,headers:{...n,...t.headers}}).then(r=>{const a=r.headers.get("X-Refreshed-Token");return a&&localStorage.setItem("auth-token",a),r})},dt={auth:{status:()=>fetch("/api/auth/status"),login:(e,t)=>fetch("/api/auth/login",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:e,password:t})}),register:(e,t)=>fetch("/api/auth/register",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:e,password:t})}),user:()=>Oe("/api/auth/user"),logout:()=>Oe("/api/auth/logout",{method:"POST"})},projects:()=>Oe("/api/projects"),alwaysOnDashboardEvents:(e=200,t)=>Oe(`/api/always-on/events?limit=${encodeURIComponent(e)}${t?`&since=${encodeURIComponent(t)}`:""}`),allCronJobs:()=>Oe("/api/always-on/cron-jobs"),cronRunNow:e=>Oe(`/api/always-on/cron-jobs/${encodeURIComponent(e)}/run-now`,{method:"POST"}),cronStop:e=>Oe(`/api/always-on/cron-jobs/${encodeURIComponent(e)}/stop`,{method:"POST"}),cronDelete:e=>Oe(`/api/always-on/cron-jobs/${encodeURIComponent(e)}`,{method:"DELETE"}),projectDiscoveryContext:e=>Oe(`/api/projects/${encodeURIComponent(e)}/discovery-context`),projectDiscoveryPlans:e=>Oe(`/api/projects/${encodeURIComponent(e)}/discovery-plans`),executeProjectDiscoveryPlan:(e,t,n={})=>Oe(`/api/projects/${encodeURIComponent(e)}/discovery-plans/${encodeURIComponent(t)}/execute`,{method:"POST",body:JSON.stringify(n)}),discoveryPlanReport:(e,t)=>Oe(`/api/projects/${encodeURIComponent(e)}/discovery-plans/${encodeURIComponent(t)}/report`),projectWorkCycles:e=>Oe(`/api/projects/${encodeURIComponent(e)}/work-cycles`),applyWorkCycle:(e,t)=>Oe(`/api/projects/${encodeURIComponent(e)}/work-cycles/${encodeURIComponent(t)}/apply`,{method:"POST"}),archiveWorkCycle:(e,t)=>Oe(`/api/projects/${encodeURIComponent(e)}/work-cycles/${encodeURIComponent(t)}/archive`,{method:"POST"}),sessions:(e,t=5,n=0)=>Oe(`/api/projects/${e}/sessions?limit=${t}&offset=${n}`),unifiedSessionMessages:(e,t="claude",{projectName:n="",projectPath:r="",limit:a=null,offset:i=0}={})=>{const s=new URLSearchParams;s.append("provider",t),n&&s.append("projectName",n),r&&s.append("projectPath",r),a!==null&&(s.append("limit",String(a)),s.append("offset",String(i)));const l=s.toString();return Oe(`/api/sessions/${encodeURIComponent(e)}/messages${l?`?${l}`:""}`)},renameProject:(e,t)=>Oe(`/api/projects/${e}/rename`,{method:"PUT",body:JSON.stringify({displayName:t})}),deleteSession:(e,t,n={})=>{const r=new URLSearchParams;n.sessionKind&&r.append("sessionKind",n.sessionKind),n.parentSessionId&&r.append("parentSessionId",n.parentSessionId),n.relativeTranscriptPath&&r.append("relativeTranscriptPath",n.relativeTranscriptPath);const a=r.toString();return Oe(`/api/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}${a?`?${a}`:""}`,{method:"DELETE"})},renameSession:(e,t,n)=>Oe(`/api/sessions/${e}/rename`,{method:"PUT",body:JSON.stringify({summary:t,provider:n})}),deleteProject:(e,t=!1)=>Oe(`/api/projects/${e}${t?"?force=true":""}`,{method:"DELETE"}),searchConversationsUrl:(e,t=50)=>{const n=localStorage.getItem("auth-token"),r=new URLSearchParams({q:e,limit:String(t)});return n&&r.set("token",n),`/api/search/conversations?${r.toString()}`},createProject:e=>Oe("/api/projects/create",{method:"POST",body:JSON.stringify({path:e})}),createWorkspace:e=>Oe("/api/projects/create-workspace",{method:"POST",body:JSON.stringify(e)}),readFile:(e,t)=>Oe(`/api/projects/${e}/file?filePath=${encodeURIComponent(t)}`),readFileBlob:(e,t)=>Oe(`/api/projects/${e}/files/content?path=${encodeURIComponent(t)}`),saveFile:(e,t,n)=>Oe(`/api/projects/${e}/file`,{method:"PUT",body:JSON.stringify({filePath:t,content:n})}),getFiles:(e,t={})=>Oe(`/api/projects/${e}/files`,t),createFile:(e,{path:t,type:n,name:r})=>Oe(`/api/projects/${e}/files/create`,{method:"POST",body:JSON.stringify({path:t,type:n,name:r})}),renameFile:(e,{oldPath:t,newName:n})=>Oe(`/api/projects/${e}/files/rename`,{method:"PUT",body:JSON.stringify({oldPath:t,newName:n})}),deleteFile:(e,{path:t,type:n})=>Oe(`/api/projects/${e}/files`,{method:"DELETE",body:JSON.stringify({path:t,type:n})}),uploadFiles:(e,t)=>Oe(`/api/projects/${e}/files/upload`,{method:"POST",body:t,headers:{}}),projectPreviewUrl:(e,t,n)=>{const r=V_(t,n),a=W_(r);return y1(`/api/projects/${encodeURIComponent(e)}/preview/${a}`)},downloadProjectZip:e=>Oe(`/api/projects/${encodeURIComponent(e)}/download`),fileDownloadUrl:(e,t)=>y1(`/api/projects/${encodeURIComponent(e)}/files/content?path=${encodeURIComponent(t)}&download=1`),taskmaster:{init:e=>Oe(`/api/taskmaster/init/${e}`,{method:"POST"}),addTask:(e,{prompt:t,title:n,description:r,priority:a,dependencies:i})=>Oe(`/api/taskmaster/add-task/${e}`,{method:"POST",body:JSON.stringify({prompt:t,title:n,description:r,priority:a,dependencies:i})}),parsePRD:(e,{fileName:t,numTasks:n,append:r})=>Oe(`/api/taskmaster/parse-prd/${e}`,{method:"POST",body:JSON.stringify({fileName:t,numTasks:n,append:r})}),getTemplates:()=>Oe("/api/taskmaster/prd-templates"),applyTemplate:(e,{templateId:t,fileName:n,customizations:r})=>Oe(`/api/taskmaster/apply-template/${e}`,{method:"POST",body:JSON.stringify({templateId:t,fileName:n,customizations:r})}),updateTask:(e,t,n)=>Oe(`/api/taskmaster/update-task/${e}/${t}`,{method:"PUT",body:JSON.stringify(n)})},browseFilesystem:(e=null)=>{const t=new URLSearchParams;return e&&t.append("path",e),Oe(`/api/browse-filesystem?${t}`)},createFolder:e=>Oe("/api/create-folder",{method:"POST",body:JSON.stringify({path:e})}),user:{gitConfig:()=>Oe("/api/user/git-config"),updateGitConfig:(e,t)=>Oe("/api/user/git-config",{method:"POST",body:JSON.stringify({gitName:e,gitEmail:t})}),onboardingStatus:()=>Oe("/api/user/onboarding-status"),completeOnboarding:()=>Oe("/api/user/complete-onboarding",{method:"POST"})},get:e=>Oe(`/api${e}`),post:(e,t)=>Oe(`/api${e}`,{method:"POST",...t instanceof FormData?{body:t}:{body:JSON.stringify(t)}}),put:(e,t)=>Oe(`/api${e}`,{method:"PUT",body:JSON.stringify(t)}),delete:(e,t={})=>Oe(`/api${e}`,{method:"DELETE",...t})},Cc="auth-token",Da={authStatusCheckFailed:"Failed to check authentication status",loginFailed:"Login failed",registrationFailed:"Registration failed",networkError:"Network error. Please try again."};async function Ss(e){try{return await e.json()}catch{return null}}function v1(e,t){return e?e.error??e.message??t:t}const mT=h.createContext(null),K_=()=>localStorage.getItem(Cc),Y_=e=>{localStorage.setItem(Cc,e)},X_=()=>{localStorage.removeItem(Cc)};function tx(){const e=h.useContext(mT);if(!e)throw new Error("useAuth must be used within an AuthProvider");return e}function Z_({children:e}){const[t,n]=h.useState(null),[r,a]=h.useState(()=>K_()),[i,s]=h.useState(!0),[l,c]=h.useState(!1),[u,d]=h.useState(!0),[p,m]=h.useState(null),f=h.useCallback((w,T)=>{n(w),a(T),Y_(T)},[]),g=h.useCallback(()=>{n(null),a(null),X_()},[]),b=h.useCallback(async()=>{try{const w=await dt.user.onboardingStatus();if(!w.ok)return;const T=await Ss(w);d(!!T?.hasCompletedOnboarding)}catch(w){console.error("Error checking onboarding status:",w),d(!0)}},[]),x=h.useCallback(async()=>{await b()},[b]),k=h.useCallback(async()=>{try{s(!0),m(null);const w=await dt.auth.status();if((await Ss(w))?.needsSetup){c(!0);return}if(c(!1),!r)return;const j=await dt.auth.user();if(!j.ok){g();return}const _=await Ss(j);if(!_?.user){g();return}n(_.user),await b()}catch(w){console.error("[Auth] Auth status check failed:",w),m(Da.authStatusCheckFailed)}finally{s(!1)}},[b,g,r]);h.useEffect(()=>{{n({username:"local"}),c(!1),b().finally(()=>{s(!1)});return}},[k,b]);const y=h.useCallback(async(w,T)=>{try{m(null);const j=await dt.auth.login(w,T),_=await Ss(j);if(!j.ok||!_?.token||!_.user){const C=v1(_,Da.loginFailed);return m(C),{success:!1,error:C}}return f(_.user,_.token),c(!1),await b(),{success:!0}}catch(j){return console.error("Login error:",j),m(Da.networkError),{success:!1,error:Da.networkError}}},[b,f]),v=h.useCallback(async(w,T)=>{try{m(null);const j=await dt.auth.register(w,T),_=await Ss(j);if(!j.ok||!_?.token||!_.user){const C=v1(_,Da.registrationFailed);return m(C),{success:!1,error:C}}return f(_.user,_.token),c(!1),await b(),{success:!0}}catch(j){return console.error("Registration error:",j),m(Da.networkError),{success:!1,error:Da.networkError}}},[b,f]),E=h.useCallback(()=>{const w=r;g(),w&&dt.auth.logout().catch(T=>{console.error("Logout endpoint error:",T)})},[g,r]),N=h.useMemo(()=>({user:t,token:r,isLoading:i,needsSetup:l,hasCompletedOnboarding:u,error:p,login:y,register:v,logout:E,refreshOnboardingStatus:x}),[p,u,i,y,E,l,x,v,r,t]);return o.jsx(mT.Provider,{value:N,children:e})}const J_="modulepreload",Q_=function(e){return"/"+e},k1={},ej=function(t,n,r){let a=Promise.resolve();if(n&&n.length>0){let c=function(u){return Promise.all(u.map(d=>Promise.resolve(d).then(p=>({status:"fulfilled",value:p}),p=>({status:"rejected",reason:p}))))};document.getElementsByTagName("link");const s=document.querySelector("meta[property=csp-nonce]"),l=s?.nonce||s?.getAttribute("nonce");a=c(n.map(u=>{if(u=Q_(u),u in k1)return;k1[u]=!0;const d=u.endsWith(".css"),p=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${u}"]${p}`))return;const m=document.createElement("link");if(m.rel=d?"stylesheet":J_,d||(m.as="script"),m.crossOrigin="",m.href=u,l&&m.setAttribute("nonce",l),document.head.appendChild(m),d)return new Promise((f,g)=>{m.addEventListener("load",f),m.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${u}`)))})}))}function i(s){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=s,window.dispatchEvent(l),!l.defaultPrevented)throw s}return a.then(s=>{for(const l of s||[])l.status==="rejected"&&i(l.reason);return t().catch(i)})};const tj=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),nj=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase()),w1=e=>{const t=nj(e);return t.charAt(0).toUpperCase()+t.slice(1)},fT=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim(),rj=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};var aj={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const ij=h.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:a="",children:i,iconNode:s,...l},c)=>h.createElement("svg",{ref:c,...aj,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:fT("lucide",a),...!i&&!rj(l)&&{"aria-hidden":"true"},...l},[...s.map(([u,d])=>h.createElement(u,d)),...Array.isArray(i)?i:[i]]));const fe=(e,t)=>{const n=h.forwardRef(({className:r,...a},i)=>h.createElement(ij,{ref:i,iconNode:t,className:fT(`lucide-${tj(w1(e))}`,`lucide-${e}`,r),...a}));return n.displayName=w1(e),n};const sj=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],nx=fe("activity",sj);const oj=[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]],za=fe("archive",oj);const lj=[["path",{d:"M12 17V3",key:"1cwfxf"}],["path",{d:"m6 11 6 6 6-6",key:"12ii2o"}],["path",{d:"M19 21H5",key:"150jfl"}]],cj=fe("arrow-down-to-line",lj);const uj=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],dj=fe("arrow-down",uj);const pj=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],hT=fe("arrow-left",pj);const mj=[["path",{d:"m16 3 4 4-4 4",key:"1x1c3m"}],["path",{d:"M20 7H4",key:"zbl0bi"}],["path",{d:"m8 21-4-4 4-4",key:"h9nckh"}],["path",{d:"M4 17h16",key:"g4d7ey"}]],fj=fe("arrow-right-left",mj);const hj=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],gj=fe("arrow-right",hj);const bj=[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]],xj=fe("arrow-up-down",bj);const yj=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],gT=fe("arrow-up",yj);const vj=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]],kj=fe("at-sign",vj);const wj=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["path",{d:"M20.2 20.2c2.04-2.03.02-7.36-4.5-11.9-4.54-4.52-9.87-6.54-11.9-4.5-2.04 2.03-.02 7.36 4.5 11.9 4.54 4.52 9.87 6.54 11.9 4.5Z",key:"1l2ple"}],["path",{d:"M15.7 15.7c4.52-4.54 6.54-9.87 4.5-11.9-2.03-2.04-7.36-.02-11.9 4.5-4.52 4.54-6.54 9.87-4.5 11.9 2.03 2.04 7.36.02 11.9-4.5Z",key:"1wam0m"}]],Sj=fe("atom",wj);const Ej=[["rect",{x:"14",y:"14",width:"4",height:"6",rx:"2",key:"p02svl"}],["rect",{x:"6",y:"4",width:"4",height:"6",rx:"2",key:"xm4xkj"}],["path",{d:"M6 20h4",key:"1i6q5t"}],["path",{d:"M14 10h4",key:"ru81e7"}],["path",{d:"M6 14h2v6",key:"16z9wg"}],["path",{d:"M14 4h2v6",key:"1idq9u"}]],gi=fe("binary",Ej);const Cj=[["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["path",{d:"M10 21V8a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1H3",key:"1fpvtg"}]],Nj=fe("blocks",Cj);const Tj=[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]],Og=fe("book-open",Tj);const Aj=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],rx=fe("bot",Aj);const Ij=[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]],Hs=fe("box",Ij);const Rj=[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1",key:"ezmyqa"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1",key:"e1hn23"}]],Bi=fe("braces",Rj);const _j=[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z",key:"ep3f8r"}],["path",{d:"M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4",key:"1p4c4q"}],["path",{d:"M17.599 6.5a3 3 0 0 0 .399-1.375",key:"tmeiqw"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M19.938 10.5a4 4 0 0 1 .585.396",key:"1qfode"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M19.967 17.484A4 4 0 0 1 18 18",key:"159ez6"}]],bT=fe("brain",_j);const jj=[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]],xT=fe("chart-column",jj);const Oj=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Er=fe("check",Oj);const Dj=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Sn=fe("chevron-down",Dj);const Mj=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],Nc=fe("chevron-left",Mj);const Lj=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],qn=fe("chevron-right",Lj);const Pj=[["path",{d:"m7 20 5-5 5 5",key:"13a0gw"}],["path",{d:"m7 4 5 5 5-5",key:"1kwcof"}]],yT=fe("chevrons-down-up",Pj);const Fj=[["path",{d:"m9 7-5 5 5 5",key:"j5w590"}],["path",{d:"m15 7 5 5-5 5",key:"1bl6da"}]],Bj=fe("chevrons-left-right",Fj);const $j=[["path",{d:"m20 17-5-5 5-5",key:"30x0n2"}],["path",{d:"m4 17 5-5-5-5",key:"16spf4"}]],Uj=fe("chevrons-right-left",$j);const zj=[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]],qj=fe("chevrons-up-down",zj);const Hj=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],ka=fe("circle-alert",Hj);const Gj=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],vr=fe("circle-check",Gj);const Vj=[["path",{d:"M15.6 2.7a10 10 0 1 0 5.7 5.7",key:"1e0p6d"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}],["path",{d:"M13.4 10.6 19 5",key:"1kr7tw"}]],Wj=fe("circle-gauge",Vj);const Kj=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Yj=fe("circle-help",Kj);const Xj=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],ni=fe("circle-x",Xj);const Zj=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Jj=fe("circle",Zj);const Qj=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]],e8=fe("clipboard-copy",Qj);const t8=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]],vT=fe("clipboard-list",t8);const n8=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}]],r8=fe("clipboard",n8);const a8=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]],kT=fe("clock",a8);const i8=[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]],to=fe("code-xml",i8);const s8=[["path",{d:"M10 2v2",key:"7u0qdc"}],["path",{d:"M14 2v2",key:"6buw04"}],["path",{d:"M16 8a1 1 0 0 1 1 1v8a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1h14a4 4 0 1 1 0 8h-1",key:"pwadti"}],["path",{d:"M6 2v2",key:"colzsn"}]],S1=fe("coffee",s8);const o8=[["path",{d:"M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z",key:"sobvz5"}],["path",{d:"M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z",key:"11i496"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 22v-2",key:"1osdcq"}],["path",{d:"m17 20.66-1-1.73",key:"eq3orb"}],["path",{d:"M11 10.27 7 3.34",key:"16pf9h"}],["path",{d:"m20.66 17-1.73-1",key:"sg0v6f"}],["path",{d:"m3.34 7 1.73 1",key:"1ulond"}],["path",{d:"M14 12h8",key:"4f43i9"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"m20.66 7-1.73 1",key:"1ow05n"}],["path",{d:"m3.34 17 1.73-1",key:"nuk764"}],["path",{d:"m17 3.34-1 1.73",key:"2wel8s"}],["path",{d:"m11 13.73-4 6.93",key:"794ttg"}]],Gs=fe("cog",o8);const l8=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],c8=fe("copy",l8);const u8=[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]],Es=fe("cpu",u8);const d8=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],ax=fe("database",d8);const p8=[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]],m8=fe("dollar-sign",p8);const f8=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],Ja=fe("download",f8);const h8=[["path",{d:"M21.54 15H17a2 2 0 0 0-2 2v4.54",key:"1djwo0"}],["path",{d:"M7 3.34V5a3 3 0 0 0 3 3a2 2 0 0 1 2 2c0 1.1.9 2 2 2a2 2 0 0 0 2-2c0-1.1.9-2 2-2h3.17",key:"1tzkfa"}],["path",{d:"M11 21.95V18a2 2 0 0 0-2-2a2 2 0 0 1-2-2v-1a2 2 0 0 0-2-2H2.05",key:"14pb5j"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],g8=fe("earth",h8);const b8=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],x8=fe("external-link",b8);const y8=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],ix=fe("eye",y8);const v8=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],k8=fe("eye-off",v8);const w8=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m9 15 2 2 4-4",key:"1grp1n"}]],Dg=fe("file-check",w8);const S8=[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m5 12-3 3 3 3",key:"oke12k"}],["path",{d:"m9 18 3-3-3-3",key:"112psh"}]],Cs=fe("file-code-2",S8);const E8=[["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z",key:"1mlx9k"}]],Ns=fe("file-code",E8);const C8=[["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m2.305 15.53.923-.382",key:"yfp9st"}],["path",{d:"m3.228 12.852-.924-.383",key:"bckynb"}],["path",{d:"M4.677 21.5a2 2 0 0 0 1.313.5H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v2.5",key:"1yo3oz"}],["path",{d:"m4.852 11.228-.383-.923",key:"1j88i9"}],["path",{d:"m4.852 16.772-.383.924",key:"sag1dv"}],["path",{d:"m7.148 11.228.383-.923",key:"rj39hk"}],["path",{d:"m7.53 17.696-.382-.924",key:"1uu5cs"}],["path",{d:"m8.772 12.852.923-.383",key:"13811l"}],["path",{d:"m8.772 15.148.923.383",key:"z1a5l0"}],["circle",{cx:"6",cy:"14",r:"3",key:"a1xfv6"}]],sx=fe("file-cog",C8);const N8=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M9 15h6",key:"cctwl0"}],["path",{d:"M12 18v-6",key:"17g6i2"}]],Ts=fe("file-plus",N8);const T8=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]],E1=fe("file-spreadsheet",T8);const A8=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],yr=fe("file-text",A8);const I8=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M9 13v-1h6v1",key:"1bb014"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"M11 18h2",key:"12mj7e"}]],As=fe("file-type",I8);const R8=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}]],wT=fe("file",R8);const _8=[["path",{d:"M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z",key:"96xj49"}]],Mg=fe("flame",_8);const j8=[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]],O8=fe("flask-conical",j8);const D8=[["path",{d:"M2 9V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-1",key:"fm4g5t"}],["path",{d:"M2 13h10",key:"pgb2dq"}],["path",{d:"m9 16 3-3-3-3",key:"6m91ic"}]],Lg=fe("folder-input",D8);const M8=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],Ki=fe("folder-open",M8);const L8=[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],$i=fe("folder-plus",L8);const P8=[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]],F8=fe("folder-search",P8);const B8=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],cr=fe("folder",B8);const $8=[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]],C1=fe("gauge",$8);const U8=[["path",{d:"M6 3h12l4 6-10 13L2 9Z",key:"1pcd5k"}],["path",{d:"M11 3 8 9l4 13 4-13-3-6",key:"1fcu3u"}],["path",{d:"M2 9h20",key:"16fsjt"}]],Pg=fe("gem",U8);const z8=[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]],ST=fe("git-branch",z8);const q8=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Hl=fe("globe",q8);const H8=[["path",{d:"M18 11V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2",key:"1fvzgz"}],["path",{d:"M14 10V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v2",key:"1kc0my"}],["path",{d:"M10 10.5V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2v8",key:"10h0bg"}],["path",{d:"M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15",key:"1s1gnw"}]],G8=fe("hand",H8);const V8=[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]],Ii=fe("hash",V8);const W8=[["path",{d:"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z",key:"yt0hxn"}]],Vs=fe("hexagon",W8);const K8=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]],xr=fe("image",K8);const Y8=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],Tc=fe("info",Y8);const X8=[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]],Z8=fe("key",X8);const J8=[["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}],["path",{d:"M13 6h8",key:"15sg57"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 18h8",key:"oe0vm4"}]],ET=fe("list-checks",J8);const Q8=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],pt=fe("loader-circle",Q8);const eO=[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]],fa=fe("lock",eO);const tO=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]],nO=fe("maximize-2",tO);const rO=[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}],["path",{d:"M12 7v6",key:"lw1j43"}],["path",{d:"M9 10h6",key:"9gxzsh"}]],N1=fe("message-square-plus",rO);const aO=[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}],["path",{d:"M13 8H7",key:"14i4kc"}],["path",{d:"M17 12H7",key:"16if0g"}]],iO=fe("message-square-text",aO);const sO=[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]],CT=fe("message-square",sO);const oO=[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]],lO=fe("minimize-2",oO);const cO=[["circle",{cx:"8",cy:"18",r:"4",key:"1fc0mg"}],["path",{d:"M12 18V2l7 4",key:"g04rme"}]],bi=fe("music-2",cO);const uO=[["path",{d:"M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4",key:"re6nr2"}],["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["path",{d:"M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"pqwjuv"}]],dO=fe("notebook-pen",uO);const pO=[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]],NT=fe("palette",pO);const mO=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]],fO=fe("panel-left-close",mO);const hO=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]],gO=fe("panel-left-open",hO);const bO=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],xO=fe("paperclip",bO);const yO=[["path",{d:"M12 20h9",key:"t2du7b"}],["path",{d:"M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z",key:"1ykcvy"}],["path",{d:"m15 5 3 3",key:"1w25hb"}]],vO=fe("pencil-line",yO);const kO=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],ox=fe("pencil",kO);const wO=[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]],Fg=fe("play",wO);const SO=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],Qt=fe("plus",SO);const EO=[["path",{d:"M4.9 19.1C1 15.2 1 8.8 4.9 4.9",key:"1vaf9d"}],["path",{d:"M7.8 16.2c-2.3-2.3-2.3-6.1 0-8.5",key:"u1ii0m"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}],["path",{d:"M16.2 7.8c2.3 2.3 2.3 6.1 0 8.5",key:"1j5fej"}],["path",{d:"M19.1 4.9C23 8.8 23 15.1 19.1 19",key:"10b0cb"}]],CO=fe("radio",EO);const NO=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],Cr=fe("refresh-cw",NO);const TO=[["circle",{cx:"6",cy:"19",r:"3",key:"1kj8tv"}],["path",{d:"M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15",key:"1d8sl"}],["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}]],AO=fe("route",TO);const IO=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]],Ac=fe("save",IO);const RO=[["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]],Bg=fe("scroll",RO);const _O=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Ic=fe("search",_O);const jO=[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]],lx=fe("server",jO);const OO=[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Zt=fe("settings",OO);const DO=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]],MO=fe("shield-alert",DO);const LO=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],PO=fe("shield-check",LO);const FO=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],Xr=fe("shield",FO);const BO=[["path",{d:"M18 7V5a1 1 0 0 0-1-1H6.5a.5.5 0 0 0-.4.8l4.5 6a2 2 0 0 1 0 2.4l-4.5 6a.5.5 0 0 0 .4.8H17a1 1 0 0 0 1-1v-2",key:"wuwx1p"}]],$O=fe("sigma",BO);const UO=[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]],So=fe("sparkles",UO);const zO=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["path",{d:"M9 17c2 0 2.8-1 2.8-2.8V10c0-2 1-3.3 3.2-3",key:"m1af9g"}],["path",{d:"M9 11.2h5.7",key:"3zgcl2"}]],qO=fe("square-function",zO);const HO=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],TT=fe("square",HO);const GO=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],Or=fe("terminal",GO);const VO=[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]],en=fe("trash-2",VO);const WO=[["path",{d:"M16 7h6v6",key:"box55l"}],["path",{d:"m22 7-8.5 8.5-5-5L2 17",key:"1t1m79"}]],AT=fe("trending-up",WO);const KO=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],co=fe("triangle-alert",KO);const YO=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],cx=fe("upload",YO);const XO=[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]],Is=fe("video",XO);const ZO=[["path",{d:"m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72",key:"ul74o6"}],["path",{d:"m14 7 3 3",key:"1r5n42"}],["path",{d:"M5 6v4",key:"ilb8ba"}],["path",{d:"M19 14v4",key:"blhpug"}],["path",{d:"M10 2v2",key:"7u0qdc"}],["path",{d:"M7 8H3",key:"zfb6yr"}],["path",{d:"M21 16h-4",key:"1cnmox"}],["path",{d:"M11 3H9",key:"1obp7u"}]],JO=fe("wand-sparkles",ZO);const QO=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]],eD=fe("wifi",QO);const tD=[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]],T1=fe("workflow",tD);const nD=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]],rD=fe("wrench",nD);const aD=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Nr=fe("x",aD);const iD=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],ux=fe("zap",iD),Yi=[{id:"anthropic",displayName:"Anthropic",protocol:"anthropic",defaultUrl:"https://api.anthropic.com",models:[{id:"claude-sonnet-4.6",displayName:"Claude Sonnet 4.6",supportsImage:!0,maxContextTokens:2e5},{id:"claude-opus-4-20250514",displayName:"Claude Opus 4",supportsImage:!0,maxContextTokens:2e5},{id:"claude-sonnet-4-20250514",displayName:"Claude Sonnet 4",supportsImage:!0,maxContextTokens:2e5},{id:"claude-sonnet-4-5-20250929",displayName:"Claude Sonnet 4.5",supportsImage:!0,maxContextTokens:2e5},{id:"claude-haiku-3-5-20241022",displayName:"Claude 3.5 Haiku",supportsImage:!0,maxContextTokens:2e5}]},{id:"openai",displayName:"OpenAI",protocol:"openai",defaultUrl:"https://api.openai.com/v1",models:[{id:"gpt-4.1",displayName:"GPT-4.1",supportsImage:!0,maxContextTokens:1047576},{id:"gpt-4.1-mini",displayName:"GPT-4.1 Mini",supportsImage:!0,maxContextTokens:1047576},{id:"gpt-4o",displayName:"GPT-4o",supportsImage:!0,maxContextTokens:128e3},{id:"gpt-4o-mini",displayName:"GPT-4o Mini",supportsImage:!0,maxContextTokens:128e3},{id:"o3",displayName:"o3",supportsImage:!0,maxContextTokens:2e5},{id:"o3-mini",displayName:"o3 Mini",maxContextTokens:2e5}]},{id:"deepseek",displayName:"DeepSeek",protocol:"openai",defaultUrl:"https://api.deepseek.com/v1",models:[{id:"deepseek-v4-pro",displayName:"DeepSeek V4 Pro",maxContextTokens:131072},{id:"deepseek-v4-flash",displayName:"DeepSeek V4 Flash",maxContextTokens:1048576},{id:"deepseek-chat",displayName:"DeepSeek Chat (V3)",maxContextTokens:65536},{id:"deepseek-reasoner",displayName:"DeepSeek Reasoner",maxContextTokens:65536}]},{id:"google",displayName:"Google AI",protocol:"openai",defaultUrl:"https://generativelanguage.googleapis.com/v1beta/openai",models:[{id:"gemini-2.5-pro",displayName:"Gemini 2.5 Pro",supportsImage:!0,maxContextTokens:1048576},{id:"gemini-2.5-flash",displayName:"Gemini 2.5 Flash",supportsImage:!0,maxContextTokens:1048576},{id:"gemini-2.0-flash",displayName:"Gemini 2.0 Flash",supportsImage:!0,maxContextTokens:1048576}]},{id:"openrouter",displayName:"OpenRouter",protocol:"openai",defaultUrl:"https://openrouter.ai/api/v1",models:[{id:"anthropic/claude-sonnet-4.6",displayName:"Claude Sonnet 4.6",supportsImage:!0,maxContextTokens:2e5},{id:"google/gemini-2.5-pro",displayName:"Gemini 2.5 Pro",supportsImage:!0,maxContextTokens:1048576},{id:"deepseek/deepseek-v4-flash",displayName:"DeepSeek V4 Flash",maxContextTokens:1048576},{id:"moonshotai/kimi-k2.6",displayName:"Kimi K2.6",supportsImage:!0,maxContextTokens:262144}]},{id:"minimax",displayName:"MiniMax",protocol:"openai",defaultUrl:"https://api.minimaxi.com/v1",models:[{id:"MiniMax-M2.5",displayName:"MiniMax M2.5",maxContextTokens:1e6},{id:"MiniMax-M2.7-highspeed",displayName:"MiniMax M2.7 Highspeed",maxContextTokens:1e6}]},{id:"moonshot",displayName:"Moonshot AI (Kimi)",protocol:"openai",defaultUrl:"https://api.moonshot.cn/v1",models:[{id:"kimi-k2.6",displayName:"Kimi K2.6",supportsImage:!0,maxContextTokens:262144},{id:"kimi-k1.5",displayName:"Kimi K1.5",supportsImage:!0,maxContextTokens:131072}]},{id:"volc_ark",displayName:"火山方舟 (Volcano Ark)",protocol:"openai",defaultUrl:"https://ark.cn-beijing.volces.com/api/v3",models:[{id:"doubao-1.5-pro-256k",displayName:"Doubao 1.5 Pro 256K",supportsImage:!0,maxContextTokens:262144},{id:"doubao-1.5-pro",displayName:"Doubao 1.5 Pro",supportsImage:!0,maxContextTokens:131072},{id:"doubao-1.5-lite-128k",displayName:"Doubao 1.5 Lite 128K",maxContextTokens:131072},{id:"doubao-1.5-lite",displayName:"Doubao 1.5 Lite",maxContextTokens:32768},{id:"deepseek-r1",displayName:"DeepSeek R1 (Volc)",maxContextTokens:65536}]}];function dx(e){return Yi.find(t=>t.id===e)}function sD(e){return Yi.find(t=>t.defaultUrl===e)}const oD="PLACEHOLDER_RUN_ONBOARDING_TO_REPLACE",lD="********",IT="__custom__",cD={id:IT,displayName:"Custom",protocol:"openai",defaultUrl:"",models:[]},A1=Yi.find(e=>e.id==="openrouter")??Yi[0];function Eu(e){return e?e.models.find(t=>t.id==="deepseek/deepseek-v4-flash")?.id??e.models[0]?.id??"":""}function uD(e){if(typeof e!="string")return!1;const t=e.trim();return!!t&&t!==oD&&t!==lD&&!t.startsWith("PLACEHOLDER_")}function dD({onSaved:e}){const[t,n]=h.useState(A1),[r,a]=h.useState(()=>Eu(A1)),[i,s]=h.useState(""),[l,c]=h.useState(""),[u,d]=h.useState(""),[p,m]=h.useState(!1),[f,g]=h.useState("idle"),[b,x]=h.useState(""),[k,y]=h.useState(!1),[v,E]=h.useState(""),[N,w]=h.useState("openai"),T=t?.id===IT,j=t?.models??[],_=t?.defaultUrl??"";h.useEffect(()=>{(async()=>{try{const U=await Oe("/api/config/provider");if(!U.ok)return;const q=await U.json();if(!q.exists||!q.provider)return;const A=q.provider;if(!uD(A.apiKey))return;if(c(A.apiKey),A.baseUrl){const V=sD(A.baseUrl);V&&(n(V),a(A.model||Eu(V)))}}catch{}})()},[]);const C=u.trim()||t?.defaultUrl||"",O=i.trim()||r,I=T?N:t?.protocol??"openai",z=T?v.trim():t?.id??"",M=!!(t&&l.trim()&&O&&z&&(!T||C.trim())),P=h.useCallback(U=>{n(q=>(q?.id!==U.id&&c(""),U)),a(Eu(U)),s(""),d(""),E(""),w("openai"),g("idle"),x("")},[]),B=h.useCallback(async()=>{if(!(!M||!t)){g("testing"),x("");try{const q=await(await Oe("/api/config/test-connection",{method:"POST",body:JSON.stringify({providerType:I,baseUrl:C,apiKey:l.trim(),model:O})})).json();q.ok?(g("success"),x(q.message||"Connected successfully.")):(g("error"),x(q.error||"Connection failed."))}catch(U){g("error"),x(U instanceof Error?U.message:"Connection failed.")}}},[M,t,C,l,O,I]),$=h.useCallback(async()=>{if(t){y(!0);try{const{stringify:U,parse:q}=await ej(async()=>{const{stringify:Se,parse:he}=await import("./index-Bz-nAIa4.js");return{stringify:Se,parse:he}},__vite__mapDeps([0,1,2,3]));let A={};try{const Se=await Oe("/api/config");if(Se.ok){const he=await Se.json();he.raw&&(A=q(he.raw)||{})}}catch{}const K=z,V=O;if(!K)throw new Error("Provider ID is required.");A.schemaVersion||(A.schemaVersion=1),(!A.model||typeof A.model!="object")&&(A.model={providers:{}});const L=A.model;(!L.providers||typeof L.providers!="object")&&(L.providers={});const le=L.providers,re=le[K]||{},ne=re.models&&typeof re.models=="object"?re.models:{};le[K]={...re,protocol:I,url:C,apiKey:l.trim(),timeoutMs:typeof re.timeoutMs=="number"?re.timeoutMs:12e4,models:{...ne,[V]:ne[V]||{}}},(!A.agent||typeof A.agent!="object")&&(A.agent={}),A.agent.model=`${K}/${V}`,delete A.models,delete A.agents,delete A.version;const de=await Oe("/api/config",{method:"PUT",body:JSON.stringify({raw:U(A,{indent:2,lineWidth:0})})});if(!de.ok){const Se=await de.json();throw new Error(Se.error||"Failed to save configuration")}await e()}catch(U){g("error"),x(U instanceof Error?U.message:"Failed to save.")}finally{y(!1)}}},[t,C,O,l,I,z,e]);return o.jsxs("div",{className:"mx-auto w-full max-w-xl space-y-8",children:[o.jsxs("div",{children:[o.jsx("h2",{className:"text-lg font-semibold text-foreground",children:"LLM Provider Setup"}),o.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:"Select your provider and enter your API key. Model capabilities are auto-configured."})]}),o.jsx("div",{className:"border-t border-border"}),o.jsxs("div",{children:[o.jsx("div",{className:"mb-3 text-xs font-medium uppercase tracking-wide text-muted-foreground",children:"Provider"}),o.jsxs("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-3",children:[Yi.map(U=>o.jsxs("button",{type:"button",onClick:()=>P(U),className:`relative rounded-lg border px-4 py-3 text-left text-sm transition-colors ${t?.id===U.id?"border-foreground bg-muted text-foreground":"border-border bg-background text-muted-foreground hover:border-foreground/30 hover:text-foreground"}`,children:[o.jsx("div",{className:"font-medium",children:U.displayName}),o.jsxs("div",{className:"mt-0.5 text-[11px] opacity-60",children:[U.models.length," model",U.models.length===1?"":"s"]}),t?.id===U.id&&o.jsx(Er,{className:"absolute right-2 top-2 h-4 w-4 text-foreground",strokeWidth:2.5})]},U.id)),o.jsxs("button",{type:"button",onClick:()=>P(cD),className:`relative flex items-center gap-2 rounded-lg border border-dashed px-4 py-3 text-left text-sm transition-colors ${T?"border-foreground bg-muted text-foreground":"border-border bg-background text-muted-foreground hover:border-foreground/30 hover:text-foreground"}`,children:[o.jsx(Qt,{className:"h-4 w-4"}),o.jsxs("div",{children:[o.jsx("div",{className:"font-medium",children:"Custom"}),o.jsx("div",{className:"mt-0.5 text-[11px] opacity-60",children:"Any OpenAI / Anthropic endpoint"})]}),T&&o.jsx(Er,{className:"absolute right-2 top-2 h-4 w-4 text-foreground",strokeWidth:2.5})]})]})]}),T&&o.jsxs("div",{className:"space-y-3 rounded-lg border border-dashed border-border/60 bg-muted/20 p-4",children:[o.jsxs("div",{children:[o.jsx("label",{htmlFor:"custom-provider-id",className:"mb-1 block text-sm font-medium text-foreground",children:"Provider ID"}),o.jsx("input",{id:"custom-provider-id",type:"text",value:v,onChange:U=>{E(U.target.value),g("idle"),x("")},placeholder:"e.g. my-llm",className:"w-full rounded-lg border border-border bg-background px-3 py-2.5 font-mono text-sm text-foreground placeholder:text-muted-foreground/50 focus:border-foreground/40 focus:outline-none",autoComplete:"off",spellCheck:!1}),o.jsx("p",{className:"mt-1 text-[11px] text-muted-foreground",children:"Used as the YAML key. Lowercase, no spaces."})]}),o.jsxs("div",{className:"grid grid-cols-3 gap-3",children:[o.jsxs("div",{className:"col-span-1",children:[o.jsx("label",{htmlFor:"custom-protocol",className:"mb-1 block text-sm font-medium text-foreground",children:"Protocol"}),o.jsxs("div",{className:"relative",children:[o.jsxs("select",{id:"custom-protocol",value:N,onChange:U=>{w(U.target.value),g("idle"),x("")},className:"w-full appearance-none rounded-lg border border-border bg-background px-3 py-2.5 pr-8 text-sm text-foreground focus:border-foreground/40 focus:outline-none",children:[o.jsx("option",{value:"openai",children:"openai"}),o.jsx("option",{value:"anthropic",children:"anthropic"})]}),o.jsx(Sn,{className:"pointer-events-none absolute right-2.5 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"})]})]}),o.jsxs("div",{className:"col-span-2",children:[o.jsx("label",{htmlFor:"custom-base-url",className:"mb-1 block text-sm font-medium text-foreground",children:"Base URL"}),o.jsx("input",{id:"custom-base-url",type:"text",value:u,onChange:U=>{d(U.target.value),g("idle"),x("")},placeholder:"https://api.example.com/v1",className:"w-full rounded-lg border border-border bg-background px-3 py-2.5 font-mono text-sm text-foreground placeholder:text-muted-foreground/50 focus:border-foreground/40 focus:outline-none",autoComplete:"off",spellCheck:!1}),N==="openai"&&o.jsxs("p",{className:"mt-1 text-[11px] text-muted-foreground",children:["OpenAI-compatible base URLs should include the API version path, for example ending in ",o.jsx("span",{className:"font-mono",children:"/v1"}),"."]})]})]})]}),o.jsxs("div",{children:[o.jsx("label",{htmlFor:"llm-api-key",className:"mb-1 block text-sm font-medium text-foreground",children:"API Key"}),o.jsx("input",{id:"llm-api-key",type:"password",value:l,onChange:U=>{c(U.target.value),g("idle"),x("")},placeholder:"sk-...",className:"w-full rounded-lg border border-border bg-background px-3 py-2.5 font-mono text-sm text-foreground placeholder:text-muted-foreground/50 focus:border-foreground/40 focus:outline-none",autoComplete:"off",spellCheck:!1})]}),o.jsxs("div",{children:[o.jsx("label",{htmlFor:"llm-model",className:"mb-1 block text-sm font-medium text-foreground",children:"Model"}),j.length>0?o.jsxs("div",{className:"relative",children:[o.jsx("select",{id:"llm-model",value:r,onChange:U=>{a(U.target.value),s(""),g("idle"),x("")},className:"w-full appearance-none rounded-lg border border-border bg-background px-3 py-2.5 pr-8 text-sm text-foreground focus:border-foreground/40 focus:outline-none",children:j.map(U=>o.jsxs("option",{value:U.id,children:[U.displayName," (",U.id,")"]},U.id))}),o.jsx(Sn,{className:"pointer-events-none absolute right-2.5 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"})]}):o.jsx("input",{id:"llm-model",type:"text",value:i,onChange:U=>{s(U.target.value),g("idle"),x("")},placeholder:"Enter model ID...",className:"w-full rounded-lg border border-border bg-background px-3 py-2.5 text-sm text-foreground placeholder:text-muted-foreground/50 focus:border-foreground/40 focus:outline-none",autoComplete:"off",spellCheck:!1}),j.length>0&&o.jsx("div",{className:"mt-2",children:o.jsx("input",{type:"text",value:i,onChange:U=>{s(U.target.value),g("idle"),x("")},placeholder:"Or type a custom model ID...",className:"w-full rounded-lg border border-border/60 bg-background px-3 py-2 text-xs text-foreground placeholder:text-muted-foreground/40 focus:border-foreground/40 focus:outline-none",autoComplete:"off",spellCheck:!1})})]}),!T&&o.jsxs("div",{children:[o.jsxs("button",{type:"button",onClick:()=>m(!p),className:"text-xs text-muted-foreground hover:text-foreground",children:[p?"Hide":"Show"," advanced settings"]}),p&&o.jsxs("div",{className:"mt-3 space-y-3 rounded-lg border border-border/60 bg-muted/30 p-3",children:[o.jsxs("div",{children:[o.jsx("label",{htmlFor:"llm-url",className:"mb-1 block text-xs font-medium text-muted-foreground",children:"API Base URL"}),o.jsx("input",{id:"llm-url",type:"text",value:u,onChange:U=>{d(U.target.value),g("idle"),x("")},placeholder:_,className:"w-full rounded-lg border border-border/60 bg-background px-3 py-2 text-xs text-foreground placeholder:text-muted-foreground/40 focus:border-foreground/40 focus:outline-none",autoComplete:"off",spellCheck:!1}),(t?.protocol??N)==="openai"&&o.jsxs("p",{className:"mt-1 text-[11px] text-muted-foreground",children:["OpenAI-compatible base URLs should include the API version path, for example ending in ",o.jsx("span",{className:"font-mono",children:"/v1"}),"."]})]}),o.jsxs("div",{className:"text-[11px] text-muted-foreground",children:["Protocol: ",o.jsx("span",{className:"font-mono",children:t?.protocol??N})," · Default URL: ",o.jsx("span",{className:"font-mono",children:_})]})]})]}),o.jsxs("div",{className:"flex flex-wrap items-center justify-end gap-3 border-t border-border pt-6",children:[f!=="success"&&o.jsx("span",{className:"mr-auto text-xs text-muted-foreground",children:"Test connection first."}),o.jsx("button",{type:"button",onClick:B,disabled:!M||f==="testing",className:"rounded-lg border border-border px-4 py-2.5 text-sm font-medium text-foreground transition-colors hover:bg-muted disabled:cursor-not-allowed disabled:opacity-40",children:f==="testing"?o.jsxs("span",{className:"flex items-center gap-2",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin"}),"Testing..."]}):"Test Connection"}),o.jsx("button",{type:"button",onClick:$,disabled:f!=="success"||k,className:"rounded-lg bg-foreground px-5 py-2.5 text-sm font-medium text-background transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-30",children:k?o.jsxs("span",{className:"flex items-center gap-2",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin"}),"Saving..."]}):"Save"})]}),b&&o.jsxs("div",{className:`rounded-lg border px-4 py-3 text-sm ${f==="success"?"border-green-200 bg-green-50 text-green-800 dark:border-green-800/40 dark:bg-green-900/10 dark:text-green-300":"border-red-200 bg-red-50 text-red-800 dark:border-red-800/40 dark:bg-red-900/10 dark:text-red-300"}`,children:[f==="success"?"✓ ":"✗ ",b]})]})}function pD({onComplete:e}){const[t,n]=h.useState(""),r=async()=>{n("");try{const a=await Oe("/api/user/complete-onboarding",{method:"POST"});if(!a.ok){const i=await a.json().catch(()=>({}));throw new Error(i.error||"Failed to complete onboarding")}await e?.()}catch(a){n(a instanceof Error?a.message:"Failed to complete onboarding")}};return o.jsx("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:o.jsx("div",{className:"w-full max-w-2xl",children:o.jsxs("div",{className:"rounded-xl border border-border bg-card p-8",children:[o.jsx(dD,{onSaved:r}),t&&o.jsx("div",{className:"mt-6 rounded-lg border border-red-200 bg-red-50 p-4 dark:border-red-800/40 dark:bg-red-900/10",children:o.jsx("p",{className:"text-sm text-red-700 dark:text-red-300",children:t})})]})})})}const mD=["0s","0.1s","0.2s"];function fD(){return o.jsx("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:o.jsxs("div",{className:"text-center",children:[o.jsx("div",{className:"mb-4 flex justify-center",children:o.jsx("div",{className:"flex h-16 w-16 items-center justify-center rounded-lg bg-primary shadow-sm",children:o.jsx(CT,{className:"h-8 w-8 text-primary-foreground"})})}),o.jsx("h1",{className:"mb-2 text-2xl font-bold text-foreground",children:"PilotDeck"}),o.jsx("div",{className:"flex items-center justify-center space-x-2",children:mD.map(e=>o.jsx("div",{className:"h-2 w-2 animate-bounce rounded-full bg-blue-500",style:{animationDelay:e}},e))}),o.jsx("p",{className:"mt-2 text-muted-foreground",children:"Loading..."})]})})}const hD="/assets/pilotdeck-wordmark-dark-CzkiaGaF.png",gD="/assets/pilotdeck-wordmark-light-Cfvpbdi6.png";function bD({children:e}){const{user:t,isLoading:n,needsSetup:r,hasCompletedOnboarding:a,refreshOnboardingStatus:i}=tx();return n?o.jsx(fD,{}):a?o.jsx(o.Fragment,{children:e}):o.jsx(pD,{onComplete:i})}const RT=h.createContext(null),Rc=()=>{const e=h.useContext(RT);if(!e)throw new Error("useWebSocket must be used within a WebSocketProvider");return e},xD=e=>`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/ws`,yD=()=>{const e=h.useRef(null),t=h.useRef(!1),n=h.useRef(!1),[r,a]=h.useState(null),[i,s]=h.useState(!1),l=h.useRef(null),c=h.useRef(new Set),{token:u}=tx();h.useEffect(()=>(d(),()=>{t.current=!0,l.current&&clearTimeout(l.current),e.current&&e.current.close()}),[u]);const d=h.useCallback(()=>{if(!t.current)try{const g=xD(u);if(!g)return console.warn("No authentication token found for WebSocket connection");const b=new WebSocket(g);b.onopen=()=>{if(s(!0),e.current=b,n.current){const x={type:"websocket-reconnected",timestamp:Date.now()},k=c.current;k.size>0&&k.forEach(y=>{try{y(x)}catch{}}),a(x)}n.current=!0},b.onmessage=x=>{try{const k=JSON.parse(x.data),y=c.current;y.size>0&&y.forEach(v=>{try{v(k)}catch(E){console.error("WebSocket subscriber error:",E)}}),a(k)}catch(k){console.error("Error parsing WebSocket message:",k)}},b.onclose=()=>{s(!1),e.current=null,l.current=setTimeout(()=>{t.current||d()},3e3)},b.onerror=x=>{console.error("WebSocket error:",x)}}catch(g){console.error("Error creating WebSocket connection:",g)}},[u]),p=h.useCallback(g=>{const b=e.current;b&&b.readyState===WebSocket.OPEN?b.send(JSON.stringify(g)):console.warn("WebSocket not connected")},[]),m=h.useCallback(g=>(c.current.add(g),()=>{c.current.delete(g)}),[]);return h.useMemo(()=>({ws:e.current,sendMessage:p,latestMessage:r,isConnected:i,subscribe:m}),[p,r,i,m])},vD=({children:e})=>{const t=yD();return o.jsx(RT.Provider,{value:t,children:e})},_T=h.createContext(null);function kD(e,t){return{message:t instanceof Error?t.message:`Failed to ${e}`,context:e,timestamp:new Date().toISOString()}}function I1(e){return{...e,taskMasterConfigured:e.taskmaster?.hasTaskmaster??!1,taskMasterStatus:e.taskmaster?.status??"not-configured",taskCount:Number(e.taskmaster?.metadata?.taskCount??0),completedCount:Number(e.taskmaster?.metadata?.completed??0)}}function wD(e){return e.find(t=>t.status==="pending"||t.status==="in-progress")??null}function SD(e){return e?.type?e.type.startsWith("taskmaster-"):!1}function jT(){const e=h.useContext(_T);if(!e)throw new Error("useTaskMaster must be used within a TaskMasterProvider");return e}function ED({children:e}){const{latestMessage:t}=Rc(),{user:n,token:r,isLoading:a}=tx(),[i,s]=h.useState([]),[l,c]=h.useState(null),[u,d]=h.useState(null),[p,m]=h.useState(null),[f,g]=h.useState([]),[b,x]=h.useState(null),[k,y]=h.useState(!1),[v,E]=h.useState(!1),[N,w]=h.useState(!1),[T,j]=h.useState(null),_=h.useRef(null);h.useEffect(()=>{_.current=l?.name??null},[l?.name]);const C=h.useCallback(()=>{j(null)},[]),O=h.useCallback(($,U)=>{console.error(`TaskMaster ${$} error:`,U),j(kD($,U))},[]),I=h.useCallback($=>{const U=$?I1($):null;c(U),d(U?.taskmaster??null),g([]),x(null)},[]),z=h.useCallback(async()=>{if(!n||!r){s([]),c(null),d(null),g([]),x(null);return}try{y(!0),C();const $=await dt.get("/projects");if(!$.ok)throw new Error(`Failed to fetch projects: ${$.status}`);const U=await $.json(),A=(Array.isArray(U)?U:[]).map(L=>I1(L));s(A);const K=_.current;if(!K)return;const V=A.find(L=>L.name===K)??null;c(V),d(V?.taskmaster??null)}catch($){O("load projects",$)}finally{y(!1)}},[C,O,r,n]),M=h.useCallback(async()=>{const $=l?.name;if(!$||!n||!r){g([]),x(null);return}try{E(!0),C();const U=await dt.get(`/taskmaster/tasks/${encodeURIComponent($)}`);if(!U.ok){const K=await U.json();throw new Error(K.message??"Failed to load tasks")}const q=await U.json(),A=Array.isArray(q.tasks)?q.tasks:[];g(A),x(wD(A))}catch(U){O("load tasks",U),g([]),x(null)}finally{E(!1)}},[C,l?.name,O,r,n]),P=h.useCallback(async()=>{if(!n||!r){m(null);return}try{w(!0),C();const $=await dt.get("/mcp-utils/taskmaster-server");if(!$.ok)throw new Error(`Failed to load MCP status: ${$.status}`);const U=await $.json();m(U)}catch($){O("check MCP server status",$),m(null)}finally{w(!1)}},[C,O,r,n]);h.useEffect(()=>{!a&&n&&r&&(z(),P())},[a,P,z,r,n]),h.useEffect(()=>{l?.name&&n&&r&&M()},[l?.name,M,r,n]),h.useEffect(()=>{const $=t;if(SD($)){if($.type==="taskmaster-project-updated"&&$.projectName){z();return}if($.type==="taskmaster-tasks-updated"&&$.projectName===l?.name){M();return}$.type==="taskmaster-mcp-status-changed"&&P()}},[l?.name,t,P,z,M]);const B=h.useMemo(()=>({projects:i,currentProject:l,projectTaskMaster:u,mcpServerStatus:p,tasks:f,nextTask:b,isLoading:k,isLoadingTasks:v,isLoadingMCP:N,error:T,refreshProjects:z,setCurrentProject:I,refreshTasks:M,refreshMCPStatus:P,clearError:C}),[C,l,T,k,N,v,p,b,u,i,P,z,M,I,f]);return o.jsx(_T.Provider,{value:B,children:e})}const OT=h.createContext({tasksEnabled:!0,setTasksEnabled:()=>{},toggleTasksEnabled:()=>{},isTaskMasterInstalled:null,isTaskMasterReady:null,installationStatus:null,isCheckingInstallation:!0}),DT=()=>{const e=h.useContext(OT);if(!e)throw new Error("useTasksSettings must be used within a TasksSettingsProvider");return e},CD=({children:e})=>{const[t,n]=h.useState(()=>{const f=localStorage.getItem("tasks-enabled");return f!==null?JSON.parse(f):!0}),[r,a]=h.useState(null),[i,s]=h.useState(null),[l,c]=h.useState(null),[u,d]=h.useState(!0);h.useEffect(()=>{localStorage.setItem("tasks-enabled",JSON.stringify(t))},[t]),h.useEffect(()=>{setTimeout(async()=>{try{const g=await dt.get("/taskmaster/installation-status");if(g.ok){const b=await g.json();c(b),a(b.installation?.isInstalled||!1),s(b.isReady||!1);const x=localStorage.getItem("tasks-enabled");!b.installation?.isInstalled&&!x&&n(!1)}else console.error("Failed to check TaskMaster installation status"),a(!1),s(!1)}catch(g){console.error("Error checking TaskMaster installation:",g),a(!1),s(!1)}finally{d(!1)}},0)},[]);const m={tasksEnabled:t,setTasksEnabled:n,toggleTasksEnabled:()=>{n(f=>!f)},isTaskMasterInstalled:r,isTaskMasterReady:i,installationStatus:l,isCheckingInstallation:u};return o.jsx(OT.Provider,{value:m,children:e})},MT=h.createContext(null);function ND(){const e=h.useContext(MT);if(!e)throw new Error("usePlugins must be used within a PluginsProvider");return e}function TD({children:e}){const[t,n]=h.useState([]),[r,a]=h.useState(!0),[i,s]=h.useState(null),l=h.useCallback(async()=>{try{const m=await Oe("/api/plugins");if(m.ok){const f=await m.json();n(f.plugins||[]),s(null)}else{let f=`Failed to fetch plugins (${m.status})`;try{const g=await m.json();f=g.details||g.error||f}catch{f=m.statusText||f}s(f)}}catch(m){const f=m instanceof Error?m.message:"Failed to fetch plugins";s(f),console.error("[Plugins] Failed to fetch plugins:",m)}finally{a(!1)}},[]);h.useEffect(()=>{l()},[l]);const c=h.useCallback(async m=>{try{const f=await Oe("/api/plugins/install",{method:"POST",body:JSON.stringify({url:m})}),g=await f.json();return f.ok?(await l(),{success:!0}):{success:!1,error:g.details||g.error||"Install failed"}}catch(f){return{success:!1,error:f instanceof Error?f.message:"Install failed"}}},[l]),u=h.useCallback(async m=>{try{const f=await Oe(`/api/plugins/${encodeURIComponent(m)}`,{method:"DELETE"}),g=await f.json();return f.ok?(await l(),{success:!0}):{success:!1,error:g.details||g.error||"Uninstall failed"}}catch(f){return{success:!1,error:f instanceof Error?f.message:"Uninstall failed"}}},[l]),d=h.useCallback(async m=>{try{const f=await Oe(`/api/plugins/${encodeURIComponent(m)}/update`,{method:"POST"}),g=await f.json();return f.ok?(await l(),{success:!0}):{success:!1,error:g.details||g.error||"Update failed"}}catch(f){return{success:!1,error:f instanceof Error?f.message:"Update failed"}}},[l]),p=h.useCallback(async(m,f)=>{try{const g=await Oe(`/api/plugins/${encodeURIComponent(m)}/enable`,{method:"PUT",body:JSON.stringify({enabled:f})});if(!g.ok){let b=`Toggle failed (${g.status})`;try{const x=await g.json();b=x.details||x.error||b}catch{b=g.statusText||b}return{success:!1,error:b}}return await l(),{success:!0,error:null}}catch(g){return{success:!1,error:g instanceof Error?g.message:"Toggle failed"}}},[l]);return o.jsx(MT.Provider,{value:{plugins:t,loading:r,pluginsError:i,refreshPlugins:l,installPlugin:c,uninstallPlugin:u,updatePlugin:d,togglePlugin:p},children:e})}const R1=e=>typeof window>"u"?!1:window.innerWidth{if(typeof window>"u")return!1;const e=window.navigator;return window.matchMedia("(display-mode: standalone)").matches||!!e.standalone||document.referrer.includes("android-app://")};function AD(e={}){const{mobileBreakpoint:t=768,trackMobile:n=!0,trackPWA:r=!0}=e,[a,i]=h.useState(()=>n?R1(t):!1),[s,l]=h.useState(()=>r?_1():!1);return h.useEffect(()=>{if(!n||typeof window>"u")return;const c=()=>{i(R1(t))};return c(),window.addEventListener("resize",c),()=>{window.removeEventListener("resize",c)}},[t,n]),h.useEffect(()=>{if(!r||typeof window>"u")return;const c=window.matchMedia("(display-mode: standalone)"),u=()=>{l(_1())};return u(),typeof c.addEventListener=="function"?(c.addEventListener("change",u),()=>{c.removeEventListener("change",u)}):(c.addListener(u),()=>{c.removeListener(u)})},[r]),{isMobile:a,isPWA:s}}function ID(){const[e,t]=h.useState(new Set),[n,r]=h.useState(new Set),a=h.useCallback(u=>{u&&t(d=>new Set([...d,u]))},[]),i=h.useCallback(u=>{u&&t(d=>{const p=new Set(d);return p.delete(u),p})},[]),s=h.useCallback(u=>{u&&r(d=>new Set([...d,u]))},[]),l=h.useCallback(u=>{u&&r(d=>{const p=new Set(d);return p.delete(u),p})},[]),c=h.useCallback(u=>{u&&t(d=>{const p=new Set;for(const m of d)m.startsWith("new-session-")||p.add(m);return p.add(u),p})},[]);return{activeSessions:e,processingSessions:n,markSessionAsActive:a,markSessionAsInactive:i,markSessionAsProcessing:s,markSessionAsNotProcessing:l,replaceTemporarySession:c}}function ri(e){return e?.sessionKind==="background_task"&&typeof e.parentSessionId=="string"&&e.parentSessionId.length>0&&typeof e.relativeTranscriptPath=="string"&&e.relativeTranscriptPath.length>0}function px(e){return ri(e)?{sessionKind:e.sessionKind,parentSessionId:e.parentSessionId,relativeTranscriptPath:e.relativeTranscriptPath}:{}}const Cu=5,RD=30,vn=e=>JSON.stringify(e??null),$g=(e,t,n)=>e.length!==t.length?!0:t.some((r,a)=>{const i=e[a];return!i||r.name!==i.name||r.displayName!==i.displayName||r.fullPath!==i.fullPath||r.lastActivity!==i.lastActivity||vn(r.alwaysOn)!==vn(i.alwaysOn)||vn(r.sessionMeta)!==vn(i.sessionMeta)||vn(r.sessions)!==vn(i.sessions)||vn(r.taskmaster)!==vn(i.taskmaster)}),Gl=e=>e.sessions??[],Ri=e=>typeof e=="string"&&e.startsWith("new-session-"),Qa=e=>e.replace(/^web:s_/,"web-s_"),_D=e=>`${Qa(e)}.jsonl`,Ug=(e,t)=>t.map(n=>{const r=e.find(d=>d.name===n.name);if(!r)return n;const a=r.sessions??[],i=n.sessions??[],s=new Set(i.map(d=>Qa(d.id))),l=a.filter(d=>Ri(d.id)&&!s.has(Qa(d.id))),c=a.filter(d=>!Ri(d.id));if(c.length<=i.length)return l.length===0?n:{...n,sessions:[...l,...i]};const u=[...l,...i,...c.filter(d=>!s.has(Qa(d.id)))];return{...n,sessions:u,sessionMeta:{...n.sessionMeta,hasMore:r.sessionMeta?.hasMore??n.sessionMeta?.hasMore,total:r.sessionMeta?.total??n.sessionMeta?.total}}});function jD(e,t){if(e.length===0)return t;const n=Ug(e,t);return $g(e,n)?n:e}const Rs=e=>{const t=e.sessions??[];if(t.length<=Cu)return e;const n=typeof e.sessionMeta?.total=="number"?e.sessionMeta.total:t.length;return{...e,sessions:t.slice(0,Cu),sessionMeta:{...e.sessionMeta??{},total:n,hasMore:n>Cu}}},OD=(e,t,n,r)=>{if(!n||!r)return!0;const a=e.find(c=>c.name===n.name),i=t.find(c=>c.name===n.name);if(!a||!i)return!1;const s=Gl(a).find(c=>c.id===r.id),l=Gl(i).find(c=>c.id===r.id);return!s||!l?!1:s.id===l.id&&s.title===l.title&&s.created_at===l.created_at&&s.updated_at===l.updated_at},DD=new Set(["home","chat","always-on","files","shell","git","tasks","memory","skills","preview","dashboard"]),MD=e=>DD.has(e)||e.startsWith("plugin:"),LD=()=>{try{const e=localStorage.getItem("activeTab");if(e==="home")return"chat";if(e&&MD(e))return e}catch{}return"chat"};function PD({sessionId:e,navigate:t,latestMessage:n,isMobile:r,activeSessions:a}){const[i,s]=h.useState([]),[l,c]=h.useState(null),[u,d]=h.useState(null),[p,m]=h.useState(LD);h.useEffect(()=>{try{localStorage.setItem("activeTab",p)}catch{}},[p]);const[f,g]=h.useState(!1),[b,x]=h.useState(!0),[k,y]=h.useState(null),[v,E]=h.useState(!1),[N,w]=h.useState(!1),[T,j]=h.useState("appearance"),[_,C]=h.useState(0),O=h.useRef(null),I=h.useRef(null);u?.id!==I.current&&(I.current=u?.id??null);const z=h.useRef([]);h.useEffect(()=>{z.current=i},[i]);const M=h.useCallback(async({showLoadingState:me=!0}={})=>{try{me&&x(!0);const ce=await(await dt.projects()).json();if(!Array.isArray(ce)){console.error("Error fetching projects: expected array, got",ce);return}s(Ne=>Ne.length===0?ce:$g(Ne,ce,!0)?Ug(Ne,ce):Ne)}catch(xe){console.error("Error fetching projects:",xe)}finally{me&&x(!1)}},[]),P=h.useCallback(async()=>{await M({showLoadingState:!1})},[M]),B=h.useCallback((me="appearance")=>{j(me),w(!0)},[]);h.useEffect(()=>{M()},[M]),h.useEffect(()=>{!b&&i.length===1&&!l&&!e&&c(i[0])},[b,i,l,e]),h.useEffect(()=>{if(!n)return;if(n.type==="loading_progress"){O.current&&(clearTimeout(O.current),O.current=null),y(n),n.phase==="complete"&&(O.current=setTimeout(()=>{y(null),O.current=null},500));return}if(n.type!=="projects_updated")return;const me=n;if(me.changedFile&&u&&l){const X=me.changedFile.replace(/\\/g,"/"),ae=`${l.name}/`,te=X.startsWith(ae)?X.slice(ae.length):"",J=ri(u)&&te===u.relativeTranscriptPath;(!ri(u)&&te===_D(u.id)||J)&&(a.has(u.id)||C(Z=>Z+1))}const xe=u&&a.has(u.id)||a.size>0&&Array.from(a).some(X=>X.startsWith("new-session-")),ce=me.projects,Ne=xe&&!OD(z.current,ce,l,u);if(s(X=>jD(X,ce)),Ne||!l)return;const Te=ce.find(X=>X.name===l.name);if(!Te||(vn(Te)!==vn(l)&&c(Te),!u))return;const Ge=Gl(Te).find(X=>X.id===u.id);if(!Ge)return;const ee=Ge;vn(ee)!==vn(u)&&d(ee)},[n,l,u,a]),h.useEffect(()=>()=>{O.current&&(clearTimeout(O.current),O.current=null)},[]),h.useEffect(()=>{if(!(!e||i.length===0))for(const me of i){const xe=me.sessions?.find(ce=>ce.id===e);if(xe){l?.name!==me.name&&c(me),u?.id!==e&&d(xe);return}}},[e,i,l?.name,u?.id]);const $=h.useCallback(me=>{const xe=Rs(me);c(xe),d(null),s(ce=>ce.map(Rs)),t("/"),r&&g(!1)},[r,t]),U=h.useCallback(me=>{if(d(me),(p==="tasks"||p==="preview")&&m("chat"),r){const xe=me.__projectName,ce=l?.name;xe!==ce&&g(!1)}t(`/session/${me.id}`)},[p,r,t,l?.name]),q=h.useCallback(me=>{c(me),d(null),m("chat"),t("/"),r&&g(!1)},[r,t]),A=h.useCallback(me=>{u?.id===me&&(d(null),t("/")),s(xe=>xe.map(ce=>{const Ne=(ce.sessions??[]).some(Te=>Te.id===me);return{...ce,sessions:ce.sessions?.filter(Te=>Te.id!==me)??[],sessionMeta:{...ce.sessionMeta,total:Ne?Math.max(0,(ce.sessionMeta?.total??0)-1):ce.sessionMeta?.total}}}))},[t,u?.id]),K=h.useRef(new Set),[V,L]=h.useState(new Set),le=h.useCallback((me,xe)=>{xe?K.current.add(me):K.current.delete(me),L(new Set(K.current))},[]),re=h.useCallback(async me=>{if(!me||K.current.has(me))return;const xe=z.current.find(Ne=>Ne.name===me);if(!xe||xe.sessionMeta?.hasMore===!1)return;const ce=(xe.sessions??[]).length;le(me,!0);try{const Ne=await dt.sessions(me,RD,ce);if(!Ne.ok)throw new Error(`Failed to load sessions: ${Ne.status}`);const Te=await Ne.json(),Ge=Array.isArray(Te.sessions)?Te.sessions:[],ee=ae=>{const te=new Set(ae.map(H=>Qa(H.id))),J=[...ae];for(const H of Ge)!H?.id||te.has(Qa(H.id))||(te.add(Qa(H.id)),J.push(H));return J},X=ae=>({...ae,sessions:ee(ae.sessions??[]),sessionMeta:{...ae.sessionMeta??{},hasMore:!!Te.hasMore,total:typeof Te.total=="number"?Te.total:ae.sessionMeta?.total}});s(ae=>ae.map(te=>te.name===me?X(te):te)),c(ae=>ae&&ae.name===me?X(ae):ae)}catch(Ne){console.error("loadMoreSessions failed for project",me,Ne)}finally{le(me,!1)}},[le]),ne=h.useCallback(async()=>{try{const xe=await(await dt.projects()).json();if(s(Te=>$g(Te,xe,!0)?Ug(Te,xe):Te),!l)return;const ce=xe.find(Te=>Te.name===l.name);if(!ce||(vn(ce)!==vn(l)&&c(ce),!u))return;const Ne=Gl(ce).find(Te=>Te.id===u.id);Ne&&vn(Ne)!==vn(u)&&d(Ne)}catch(me){console.error("Error refreshing sidebar:",me)}},[l,u]),de=h.useCallback(me=>{l?.name===me&&(c(null),d(null),t("/")),s(xe=>xe.filter(ce=>ce.name!==me))},[t,l?.name]),Se=h.useCallback(()=>{c(null),d(null),s(me=>me.map(Rs)),t("/")},[t]),he=h.useCallback((me,xe,ce)=>{if(!me||!xe)return;const Ne=new Date().toISOString(),Te=Ge=>{if(Ge.name!==me)return Ge;const ee=Ge.sessions??[],X=ee.findIndex(J=>J.id===xe);if(X>=0){const H=[{...ee[X],updated_at:Ne,lastActivity:Ne},...ee.slice(0,X),...ee.slice(X+1)];return{...Ge,lastActivity:Ne,sessions:H}}const ae=(ce??"").replace(/\s+/g," ").trim(),te={id:xe,title:ae?ae.slice(0,80):"New session",created_at:Ne,updated_at:Ne,lastActivity:Ne,messageCount:0,__projectName:me};return{...Ge,lastActivity:Ne,sessions:[te,...ee],sessionMeta:{...Ge.sessionMeta??{},total:typeof Ge.sessionMeta?.total=="number"?Ge.sessionMeta.total+1:Ge.sessionMeta?.total}}};s(Ge=>Ge.map(Te)),c(Ge=>Ge&&Ge.name===me?Te(Ge):Ge)},[]),tt=h.useCallback(me=>{if(!me||Ri(me))return;const xe=ce=>{const Ne=ce.sessions??[],Te=Ne.findIndex(X=>Ri(X.id));if(Te<0)return ce;if(Ne.some(X=>X.id===me))return{...ce,sessions:Ne.filter(X=>!Ri(X.id))};const ee={...Ne[Te],id:me};return{...ce,sessions:Ne.map((X,ae)=>ae===Te?ee:X)}};s(ce=>ce.map(xe)),c(ce=>ce&&xe(ce))},[]),Me=h.useCallback(me=>{if(!me||!Ri(me))return;const xe=ce=>{const Ne=ce.sessions??[];return Ne.some(Te=>Te.id===me)?{...ce,sessions:Ne.filter(Te=>Te.id!==me)}:ce};s(ce=>ce.map(xe)),c(ce=>ce&&xe(ce))},[]),Fe=h.useCallback(me=>{s(xe=>xe.map(ce=>ce.name===me?Rs(ce):ce)),c(xe=>xe?.name===me?Rs(xe):xe)},[]),ge=h.useMemo(()=>({projects:i,selectedProject:l,selectedSession:u,onProjectSelect:$,onSessionSelect:U,onNewSession:q,onSessionDelete:A,onProjectDelete:de,isLoading:b,loadingProgress:k,onRefresh:ne,onShowSettings:()=>w(!0),showSettings:N,settingsInitialTab:T,onCloseSettings:()=>w(!1),isMobile:r}),[q,de,$,A,U,ne,b,r,k,i,T,l,u,N]);return{projects:i,selectedProject:l,selectedSession:u,activeTab:p,sidebarOpen:f,isLoadingProjects:b,loadingProgress:k,isInputFocused:v,showSettings:N,settingsInitialTab:T,externalMessageUpdate:_,setActiveTab:m,setSelectedSession:d,setSidebarOpen:g,setIsInputFocused:E,setShowSettings:w,openSettings:B,fetchProjects:M,refreshProjectsSilently:P,sidebarSharedProps:ge,handleProjectSelect:$,handleSessionSelect:U,handleNewSession:q,handleSessionDelete:A,handleProjectDelete:de,handleDeselectProject:Se,handleResetProjectSessionPreview:Fe,setSelectedProject:c,handleSidebarRefresh:ne,loadMoreSessions:re,loadingMoreProjectIds:V,bumpSessionActivity:he,replaceOptimisticInProjects:tt,dropOptimisticInProjects:Me}}function LT(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(t=0;ttypeof e=="boolean"?`${e}`:e===0?"0":e,O1=PT,mx=(e,t)=>n=>{var r;if(t?.variants==null)return O1(e,n?.class,n?.className);const{variants:a,defaultVariants:i}=t,s=Object.keys(a).map(u=>{const d=n?.[u],p=i?.[u];if(d===null)return null;const m=j1(d)||j1(p);return a[u][m]}),l=n&&Object.entries(n).reduce((u,d)=>{let[p,m]=d;return m===void 0||(u[p]=m),u},{}),c=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((u,d)=>{let{class:p,className:m,...f}=d;return Object.entries(f).every(g=>{let[b,x]=g;return Array.isArray(x)?x.includes({...i,...l}[b]):{...i,...l}[b]===x})?[...u,p,m]:u},[]);return O1(e,s,c,n?.class,n?.className)},FD=(e,t)=>{const n=new Array(e.length+t.length);for(let r=0;r({classGroupId:e,validator:t}),FT=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Vl="-",D1=[],$D="arbitrary..",UD=e=>{const t=qD(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:s=>{if(s.startsWith("[")&&s.endsWith("]"))return zD(s);const l=s.split(Vl),c=l[0]===""&&l.length>1?1:0;return BT(l,c,t)},getConflictingClassGroupIds:(s,l)=>{if(l){const c=r[s],u=n[s];return c?u?FD(u,c):c:u||D1}return n[s]||D1}}},BT=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const a=e[t],i=n.nextPart.get(a);if(i){const u=BT(e,t+1,i);if(u)return u}const s=n.validators;if(s===null)return;const l=t===0?e.join(Vl):e.slice(t).join(Vl),c=s.length;for(let u=0;ue.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),n=t.indexOf(":"),r=t.slice(0,n);return r?$D+r:void 0})(),qD=e=>{const{theme:t,classGroups:n}=e;return HD(n,t)},HD=(e,t)=>{const n=FT();for(const r in e){const a=e[r];fx(a,n,r,t)}return n},fx=(e,t,n,r)=>{const a=e.length;for(let i=0;i{if(typeof e=="string"){VD(e,t,n);return}if(typeof e=="function"){WD(e,t,n,r);return}KD(e,t,n,r)},VD=(e,t,n)=>{const r=e===""?t:$T(t,e);r.classGroupId=n},WD=(e,t,n,r)=>{if(YD(e)){fx(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(BD(n,e))},KD=(e,t,n,r)=>{const a=Object.entries(e),i=a.length;for(let s=0;s{let n=e;const r=t.split(Vl),a=r.length;for(let i=0;i"isThemeGetter"in e&&e.isThemeGetter===!0,XD=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null);const a=(i,s)=>{n[i]=s,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(i){let s=n[i];if(s!==void 0)return s;if((s=r[i])!==void 0)return a(i,s),s},set(i,s){i in n?n[i]=s:a(i,s)}}},zg="!",M1=":",ZD=[],L1=(e,t,n,r,a)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:a}),JD=e=>{const{prefix:t,experimentalParseClassName:n}=e;let r=a=>{const i=[];let s=0,l=0,c=0,u;const d=a.length;for(let b=0;bc?u-c:void 0;return L1(i,f,m,g)};if(t){const a=t+M1,i=r;r=s=>s.startsWith(a)?i(s.slice(a.length)):L1(ZD,!1,s,void 0,!0)}if(n){const a=r;r=i=>n({className:i,parseClassName:a})}return r},QD=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((n,r)=>{t.set(n,1e6+r)}),n=>{const r=[];let a=[];for(let i=0;i0&&(a.sort(),r.push(...a),a=[]),r.push(s)):a.push(s)}return a.length>0&&(a.sort(),r.push(...a)),r}},eM=e=>({cache:XD(e.cacheSize),parseClassName:JD(e),sortModifiers:QD(e),postfixLookupClassGroupIds:tM(e),...UD(e)}),tM=e=>{const t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let r=0;r{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:a,sortModifiers:i,postfixLookupClassGroupIds:s}=t,l=[],c=e.trim().split(nM);let u="";for(let d=c.length-1;d>=0;d-=1){const p=c[d],{isExternal:m,modifiers:f,hasImportantModifier:g,baseClassName:b,maybePostfixModifierPosition:x}=n(p);if(m){u=p+(u.length>0?" "+u:u);continue}let k=!!x,y;if(k){const T=b.substring(0,x);y=r(T);const j=y&&s[y]?r(b):void 0;j&&j!==y&&(y=j,k=!1)}else y=r(b);if(!y){if(!k){u=p+(u.length>0?" "+u:u);continue}if(y=r(b),!y){u=p+(u.length>0?" "+u:u);continue}k=!1}const v=f.length===0?"":f.length===1?f[0]:i(f).join(":"),E=g?v+zg:v,N=E+y;if(l.indexOf(N)>-1)continue;l.push(N);const w=a(y,k);for(let T=0;T0?" "+u:u)}return u},aM=(...e)=>{let t=0,n,r,a="";for(;t{if(typeof e=="string")return e;let t,n="";for(let r=0;r{let n,r,a,i;const s=c=>{const u=t.reduce((d,p)=>p(d),e());return n=eM(u),r=n.cache.get,a=n.cache.set,i=l,l(c)},l=c=>{const u=r(c);if(u)return u;const d=rM(c,n);return a(c,d),d};return i=s,(...c)=>i(aM(...c))},sM=[],dn=e=>{const t=n=>n[e]||sM;return t.isThemeGetter=!0,t},zT=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,qT=/^\((?:(\w[\w-]*):)?(.+)\)$/i,oM=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,lM=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,cM=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,uM=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,dM=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,pM=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,ca=e=>oM.test(e),wt=e=>!!e&&!Number.isNaN(Number(e)),Ir=e=>!!e&&Number.isInteger(Number(e)),Nu=e=>e.endsWith("%")&&wt(e.slice(0,-1)),Vr=e=>lM.test(e),HT=()=>!0,mM=e=>cM.test(e)&&!uM.test(e),hx=()=>!1,fM=e=>dM.test(e),hM=e=>pM.test(e),gM=e=>!Ye(e)&&!Ze(e),bM=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),xM=e=>Ta(e,WT,hx),Ye=e=>zT.test(e),Ma=e=>Ta(e,KT,mM),P1=e=>Ta(e,NM,wt),yM=e=>Ta(e,XT,HT),vM=e=>Ta(e,YT,hx),F1=e=>Ta(e,GT,hx),kM=e=>Ta(e,VT,hM),qo=e=>Ta(e,ZT,fM),Ze=e=>qT.test(e),_s=e=>ci(e,KT),wM=e=>ci(e,YT),B1=e=>ci(e,GT),SM=e=>ci(e,WT),EM=e=>ci(e,VT),Ho=e=>ci(e,ZT,!0),CM=e=>ci(e,XT,!0),Ta=(e,t,n)=>{const r=zT.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},ci=(e,t,n=!1)=>{const r=qT.exec(e);return r?r[1]?t(r[1]):n:!1},GT=e=>e==="position"||e==="percentage",VT=e=>e==="image"||e==="url",WT=e=>e==="length"||e==="size"||e==="bg-size",KT=e=>e==="length",NM=e=>e==="number",YT=e=>e==="family-name",XT=e=>e==="number"||e==="weight",ZT=e=>e==="shadow",TM=()=>{const e=dn("color"),t=dn("font"),n=dn("text"),r=dn("font-weight"),a=dn("tracking"),i=dn("leading"),s=dn("breakpoint"),l=dn("container"),c=dn("spacing"),u=dn("radius"),d=dn("shadow"),p=dn("inset-shadow"),m=dn("text-shadow"),f=dn("drop-shadow"),g=dn("blur"),b=dn("perspective"),x=dn("aspect"),k=dn("ease"),y=dn("animate"),v=()=>["auto","avoid","all","avoid-page","page","left","right","column"],E=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],N=()=>[...E(),Ze,Ye],w=()=>["auto","hidden","clip","visible","scroll"],T=()=>["auto","contain","none"],j=()=>[Ze,Ye,c],_=()=>[ca,"full","auto",...j()],C=()=>[Ir,"none","subgrid",Ze,Ye],O=()=>["auto",{span:["full",Ir,Ze,Ye]},Ir,Ze,Ye],I=()=>[Ir,"auto",Ze,Ye],z=()=>["auto","min","max","fr",Ze,Ye],M=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],P=()=>["start","end","center","stretch","center-safe","end-safe"],B=()=>["auto",...j()],$=()=>[ca,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...j()],U=()=>[ca,"screen","full","dvw","lvw","svw","min","max","fit",...j()],q=()=>[ca,"screen","full","lh","dvh","lvh","svh","min","max","fit",...j()],A=()=>[e,Ze,Ye],K=()=>[...E(),B1,F1,{position:[Ze,Ye]}],V=()=>["no-repeat",{repeat:["","x","y","space","round"]}],L=()=>["auto","cover","contain",SM,xM,{size:[Ze,Ye]}],le=()=>[Nu,_s,Ma],re=()=>["","none","full",u,Ze,Ye],ne=()=>["",wt,_s,Ma],de=()=>["solid","dashed","dotted","double"],Se=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],he=()=>[wt,Nu,B1,F1],tt=()=>["","none",g,Ze,Ye],Me=()=>["none",wt,Ze,Ye],Fe=()=>["none",wt,Ze,Ye],ge=()=>[wt,Ze,Ye],me=()=>[ca,"full",...j()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Vr],breakpoint:[Vr],color:[HT],container:[Vr],"drop-shadow":[Vr],ease:["in","out","in-out"],font:[gM],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Vr],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Vr],shadow:[Vr],spacing:["px",wt],text:[Vr],"text-shadow":[Vr],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",ca,Ye,Ze,x]}],container:["container"],"container-type":[{"@container":["","normal","size",Ze,Ye]}],"container-named":[bM],columns:[{columns:[wt,Ye,Ze,l]}],"break-after":[{"break-after":v()}],"break-before":[{"break-before":v()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:N()}],overflow:[{overflow:w()}],"overflow-x":[{"overflow-x":w()}],"overflow-y":[{"overflow-y":w()}],overscroll:[{overscroll:T()}],"overscroll-x":[{"overscroll-x":T()}],"overscroll-y":[{"overscroll-y":T()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:_()}],"inset-x":[{"inset-x":_()}],"inset-y":[{"inset-y":_()}],start:[{"inset-s":_(),start:_()}],end:[{"inset-e":_(),end:_()}],"inset-bs":[{"inset-bs":_()}],"inset-be":[{"inset-be":_()}],top:[{top:_()}],right:[{right:_()}],bottom:[{bottom:_()}],left:[{left:_()}],visibility:["visible","invisible","collapse"],z:[{z:[Ir,"auto",Ze,Ye]}],basis:[{basis:[ca,"full","auto",l,...j()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[wt,ca,"auto","initial","none",Ye]}],grow:[{grow:["",wt,Ze,Ye]}],shrink:[{shrink:["",wt,Ze,Ye]}],order:[{order:[Ir,"first","last","none",Ze,Ye]}],"grid-cols":[{"grid-cols":C()}],"col-start-end":[{col:O()}],"col-start":[{"col-start":I()}],"col-end":[{"col-end":I()}],"grid-rows":[{"grid-rows":C()}],"row-start-end":[{row:O()}],"row-start":[{"row-start":I()}],"row-end":[{"row-end":I()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":z()}],"auto-rows":[{"auto-rows":z()}],gap:[{gap:j()}],"gap-x":[{"gap-x":j()}],"gap-y":[{"gap-y":j()}],"justify-content":[{justify:[...M(),"normal"]}],"justify-items":[{"justify-items":[...P(),"normal"]}],"justify-self":[{"justify-self":["auto",...P()]}],"align-content":[{content:["normal",...M()]}],"align-items":[{items:[...P(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...P(),{baseline:["","last"]}]}],"place-content":[{"place-content":M()}],"place-items":[{"place-items":[...P(),"baseline"]}],"place-self":[{"place-self":["auto",...P()]}],p:[{p:j()}],px:[{px:j()}],py:[{py:j()}],ps:[{ps:j()}],pe:[{pe:j()}],pbs:[{pbs:j()}],pbe:[{pbe:j()}],pt:[{pt:j()}],pr:[{pr:j()}],pb:[{pb:j()}],pl:[{pl:j()}],m:[{m:B()}],mx:[{mx:B()}],my:[{my:B()}],ms:[{ms:B()}],me:[{me:B()}],mbs:[{mbs:B()}],mbe:[{mbe:B()}],mt:[{mt:B()}],mr:[{mr:B()}],mb:[{mb:B()}],ml:[{ml:B()}],"space-x":[{"space-x":j()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":j()}],"space-y-reverse":["space-y-reverse"],size:[{size:$()}],"inline-size":[{inline:["auto",...U()]}],"min-inline-size":[{"min-inline":["auto",...U()]}],"max-inline-size":[{"max-inline":["none",...U()]}],"block-size":[{block:["auto",...q()]}],"min-block-size":[{"min-block":["auto",...q()]}],"max-block-size":[{"max-block":["none",...q()]}],w:[{w:[l,"screen",...$()]}],"min-w":[{"min-w":[l,"screen","none",...$()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[s]},...$()]}],h:[{h:["screen","lh",...$()]}],"min-h":[{"min-h":["screen","lh","none",...$()]}],"max-h":[{"max-h":["screen","lh",...$()]}],"font-size":[{text:["base",n,_s,Ma]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,CM,yM]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",Nu,Ye]}],"font-family":[{font:[wM,vM,t]}],"font-features":[{"font-features":[Ye]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[a,Ze,Ye]}],"line-clamp":[{"line-clamp":[wt,"none",Ze,P1]}],leading:[{leading:[i,...j()]}],"list-image":[{"list-image":["none",Ze,Ye]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",Ze,Ye]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:A()}],"text-color":[{text:A()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...de(),"wavy"]}],"text-decoration-thickness":[{decoration:[wt,"from-font","auto",Ze,Ma]}],"text-decoration-color":[{decoration:A()}],"underline-offset":[{"underline-offset":[wt,"auto",Ze,Ye]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:j()}],"tab-size":[{tab:[Ir,Ze,Ye]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Ze,Ye]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",Ze,Ye]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:K()}],"bg-repeat":[{bg:V()}],"bg-size":[{bg:L()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Ir,Ze,Ye],radial:["",Ze,Ye],conic:[Ir,Ze,Ye]},EM,kM]}],"bg-color":[{bg:A()}],"gradient-from-pos":[{from:le()}],"gradient-via-pos":[{via:le()}],"gradient-to-pos":[{to:le()}],"gradient-from":[{from:A()}],"gradient-via":[{via:A()}],"gradient-to":[{to:A()}],rounded:[{rounded:re()}],"rounded-s":[{"rounded-s":re()}],"rounded-e":[{"rounded-e":re()}],"rounded-t":[{"rounded-t":re()}],"rounded-r":[{"rounded-r":re()}],"rounded-b":[{"rounded-b":re()}],"rounded-l":[{"rounded-l":re()}],"rounded-ss":[{"rounded-ss":re()}],"rounded-se":[{"rounded-se":re()}],"rounded-ee":[{"rounded-ee":re()}],"rounded-es":[{"rounded-es":re()}],"rounded-tl":[{"rounded-tl":re()}],"rounded-tr":[{"rounded-tr":re()}],"rounded-br":[{"rounded-br":re()}],"rounded-bl":[{"rounded-bl":re()}],"border-w":[{border:ne()}],"border-w-x":[{"border-x":ne()}],"border-w-y":[{"border-y":ne()}],"border-w-s":[{"border-s":ne()}],"border-w-e":[{"border-e":ne()}],"border-w-bs":[{"border-bs":ne()}],"border-w-be":[{"border-be":ne()}],"border-w-t":[{"border-t":ne()}],"border-w-r":[{"border-r":ne()}],"border-w-b":[{"border-b":ne()}],"border-w-l":[{"border-l":ne()}],"divide-x":[{"divide-x":ne()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":ne()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...de(),"hidden","none"]}],"divide-style":[{divide:[...de(),"hidden","none"]}],"border-color":[{border:A()}],"border-color-x":[{"border-x":A()}],"border-color-y":[{"border-y":A()}],"border-color-s":[{"border-s":A()}],"border-color-e":[{"border-e":A()}],"border-color-bs":[{"border-bs":A()}],"border-color-be":[{"border-be":A()}],"border-color-t":[{"border-t":A()}],"border-color-r":[{"border-r":A()}],"border-color-b":[{"border-b":A()}],"border-color-l":[{"border-l":A()}],"divide-color":[{divide:A()}],"outline-style":[{outline:[...de(),"none","hidden"]}],"outline-offset":[{"outline-offset":[wt,Ze,Ye]}],"outline-w":[{outline:["",wt,_s,Ma]}],"outline-color":[{outline:A()}],shadow:[{shadow:["","none",d,Ho,qo]}],"shadow-color":[{shadow:A()}],"inset-shadow":[{"inset-shadow":["none",p,Ho,qo]}],"inset-shadow-color":[{"inset-shadow":A()}],"ring-w":[{ring:ne()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:A()}],"ring-offset-w":[{"ring-offset":[wt,Ma]}],"ring-offset-color":[{"ring-offset":A()}],"inset-ring-w":[{"inset-ring":ne()}],"inset-ring-color":[{"inset-ring":A()}],"text-shadow":[{"text-shadow":["none",m,Ho,qo]}],"text-shadow-color":[{"text-shadow":A()}],opacity:[{opacity:[wt,Ze,Ye]}],"mix-blend":[{"mix-blend":[...Se(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":Se()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[wt]}],"mask-image-linear-from-pos":[{"mask-linear-from":he()}],"mask-image-linear-to-pos":[{"mask-linear-to":he()}],"mask-image-linear-from-color":[{"mask-linear-from":A()}],"mask-image-linear-to-color":[{"mask-linear-to":A()}],"mask-image-t-from-pos":[{"mask-t-from":he()}],"mask-image-t-to-pos":[{"mask-t-to":he()}],"mask-image-t-from-color":[{"mask-t-from":A()}],"mask-image-t-to-color":[{"mask-t-to":A()}],"mask-image-r-from-pos":[{"mask-r-from":he()}],"mask-image-r-to-pos":[{"mask-r-to":he()}],"mask-image-r-from-color":[{"mask-r-from":A()}],"mask-image-r-to-color":[{"mask-r-to":A()}],"mask-image-b-from-pos":[{"mask-b-from":he()}],"mask-image-b-to-pos":[{"mask-b-to":he()}],"mask-image-b-from-color":[{"mask-b-from":A()}],"mask-image-b-to-color":[{"mask-b-to":A()}],"mask-image-l-from-pos":[{"mask-l-from":he()}],"mask-image-l-to-pos":[{"mask-l-to":he()}],"mask-image-l-from-color":[{"mask-l-from":A()}],"mask-image-l-to-color":[{"mask-l-to":A()}],"mask-image-x-from-pos":[{"mask-x-from":he()}],"mask-image-x-to-pos":[{"mask-x-to":he()}],"mask-image-x-from-color":[{"mask-x-from":A()}],"mask-image-x-to-color":[{"mask-x-to":A()}],"mask-image-y-from-pos":[{"mask-y-from":he()}],"mask-image-y-to-pos":[{"mask-y-to":he()}],"mask-image-y-from-color":[{"mask-y-from":A()}],"mask-image-y-to-color":[{"mask-y-to":A()}],"mask-image-radial":[{"mask-radial":[Ze,Ye]}],"mask-image-radial-from-pos":[{"mask-radial-from":he()}],"mask-image-radial-to-pos":[{"mask-radial-to":he()}],"mask-image-radial-from-color":[{"mask-radial-from":A()}],"mask-image-radial-to-color":[{"mask-radial-to":A()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":E()}],"mask-image-conic-pos":[{"mask-conic":[wt]}],"mask-image-conic-from-pos":[{"mask-conic-from":he()}],"mask-image-conic-to-pos":[{"mask-conic-to":he()}],"mask-image-conic-from-color":[{"mask-conic-from":A()}],"mask-image-conic-to-color":[{"mask-conic-to":A()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:K()}],"mask-repeat":[{mask:V()}],"mask-size":[{mask:L()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",Ze,Ye]}],filter:[{filter:["","none",Ze,Ye]}],blur:[{blur:tt()}],brightness:[{brightness:[wt,Ze,Ye]}],contrast:[{contrast:[wt,Ze,Ye]}],"drop-shadow":[{"drop-shadow":["","none",f,Ho,qo]}],"drop-shadow-color":[{"drop-shadow":A()}],grayscale:[{grayscale:["",wt,Ze,Ye]}],"hue-rotate":[{"hue-rotate":[wt,Ze,Ye]}],invert:[{invert:["",wt,Ze,Ye]}],saturate:[{saturate:[wt,Ze,Ye]}],sepia:[{sepia:["",wt,Ze,Ye]}],"backdrop-filter":[{"backdrop-filter":["","none",Ze,Ye]}],"backdrop-blur":[{"backdrop-blur":tt()}],"backdrop-brightness":[{"backdrop-brightness":[wt,Ze,Ye]}],"backdrop-contrast":[{"backdrop-contrast":[wt,Ze,Ye]}],"backdrop-grayscale":[{"backdrop-grayscale":["",wt,Ze,Ye]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[wt,Ze,Ye]}],"backdrop-invert":[{"backdrop-invert":["",wt,Ze,Ye]}],"backdrop-opacity":[{"backdrop-opacity":[wt,Ze,Ye]}],"backdrop-saturate":[{"backdrop-saturate":[wt,Ze,Ye]}],"backdrop-sepia":[{"backdrop-sepia":["",wt,Ze,Ye]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":j()}],"border-spacing-x":[{"border-spacing-x":j()}],"border-spacing-y":[{"border-spacing-y":j()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",Ze,Ye]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[wt,"initial",Ze,Ye]}],ease:[{ease:["linear","initial",k,Ze,Ye]}],delay:[{delay:[wt,Ze,Ye]}],animate:[{animate:["none",y,Ze,Ye]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[b,Ze,Ye]}],"perspective-origin":[{"perspective-origin":N()}],rotate:[{rotate:Me()}],"rotate-x":[{"rotate-x":Me()}],"rotate-y":[{"rotate-y":Me()}],"rotate-z":[{"rotate-z":Me()}],scale:[{scale:Fe()}],"scale-x":[{"scale-x":Fe()}],"scale-y":[{"scale-y":Fe()}],"scale-z":[{"scale-z":Fe()}],"scale-3d":["scale-3d"],skew:[{skew:ge()}],"skew-x":[{"skew-x":ge()}],"skew-y":[{"skew-y":ge()}],transform:[{transform:[Ze,Ye,"","none","gpu","cpu"]}],"transform-origin":[{origin:N()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:me()}],"translate-x":[{"translate-x":me()}],"translate-y":[{"translate-y":me()}],"translate-z":[{"translate-z":me()}],"translate-none":["translate-none"],zoom:[{zoom:[Ir,Ze,Ye]}],accent:[{accent:A()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:A()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",Ze,Ye]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":A()}],"scrollbar-track-color":[{"scrollbar-track":A()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":j()}],"scroll-mx":[{"scroll-mx":j()}],"scroll-my":[{"scroll-my":j()}],"scroll-ms":[{"scroll-ms":j()}],"scroll-me":[{"scroll-me":j()}],"scroll-mbs":[{"scroll-mbs":j()}],"scroll-mbe":[{"scroll-mbe":j()}],"scroll-mt":[{"scroll-mt":j()}],"scroll-mr":[{"scroll-mr":j()}],"scroll-mb":[{"scroll-mb":j()}],"scroll-ml":[{"scroll-ml":j()}],"scroll-p":[{"scroll-p":j()}],"scroll-px":[{"scroll-px":j()}],"scroll-py":[{"scroll-py":j()}],"scroll-ps":[{"scroll-ps":j()}],"scroll-pe":[{"scroll-pe":j()}],"scroll-pbs":[{"scroll-pbs":j()}],"scroll-pbe":[{"scroll-pbe":j()}],"scroll-pt":[{"scroll-pt":j()}],"scroll-pr":[{"scroll-pr":j()}],"scroll-pb":[{"scroll-pb":j()}],"scroll-pl":[{"scroll-pl":j()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",Ze,Ye]}],fill:[{fill:["none",...A()]}],"stroke-w":[{stroke:[wt,_s,Ma,P1]}],stroke:[{stroke:["none",...A()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},AM=iM(TM);function oe(...e){return AM(PT(e))}function IM(e){if(!e||typeof e!="string")return null;try{return JSON.parse(e)}catch{return null}}const RM=mx("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function _M({className:e,variant:t,...n}){return o.jsx("div",{className:oe(RM({variant:t}),e),...n})}const jM=mx("inline-flex touch-manipulation items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90 active:bg-primary/80",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90 active:bg-destructive/80",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground active:bg-accent/80",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80 active:bg-secondary/70",ghost:"hover:bg-accent hover:text-accent-foreground active:bg-accent/80",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3 text-sm",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),St=h.forwardRef(({className:e,variant:t,size:n,...r},a)=>o.jsx("button",{className:oe(jM({variant:t,size:n,className:e})),ref:a,...r}));St.displayName="Button";const wa=h.forwardRef(({className:e,type:t,...n},r)=>o.jsx("input",{type:t,className:oe("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:r,...n}));wa.displayName="Input";const OM=h.forwardRef(({className:e,children:t,...n},r)=>o.jsx("div",{className:oe(e,"relative overflow-hidden"),...n,children:o.jsx("div",{ref:r,className:"h-full w-full overflow-auto rounded-[inherit]",style:{WebkitOverflowScrolling:"touch",touchAction:"pan-y"},children:t})}));OM.displayName="ScrollArea";const qg=[{value:"en",label:"English",nativeName:"English"},{value:"zh-CN",label:"Simplified Chinese",nativeName:"简体中文"}],Ha={autoExpandTools:!1,showRawParameters:!1,showThinking:!0,autoScrollToBottom:!0,sendByCtrlEnter:!1,sidebarVisible:!0},Wl=Object.keys(Ha),DM=new Set(Wl),Tu="ui-preferences:sync",Kl=(e,t)=>{if(typeof e=="boolean")return e;if(typeof e=="string"){if(e==="true")return!0;if(e==="false")return!1}return t},MM=(e,t)=>{try{const n=localStorage.getItem(e);if(n===null)return t;const r=JSON.parse(n);return Kl(r,t)}catch{return t}},LM=e=>{if(typeof window>"u")return Ha;try{const t=localStorage.getItem(e);if(t){const n=JSON.parse(t);if(n&&typeof n=="object"&&!Array.isArray(n)){const r=n;return Wl.reduce((a,i)=>(a[i]=Kl(r[i],Ha[i]),a),{...Ha})}}}catch{}return Wl.reduce((t,n)=>(t[n]=MM(n,Ha[n]),t),{...Ha})};function PM(e,t){switch(t.type){case"set":{const{key:n,value:r}=t;if(!DM.has(n))return e;const a=Kl(r,e[n]);return e[n]===a?e:{...e,[n]:a}}case"set_many":{const n=t.value||{};let r=!1;const a={...e};for(const i of Wl){if(!(i in n))continue;const s=n[i],l=Kl(s,e[i]);a[i]!==l&&(a[i]=l,r=!0)}return r?a:e}case"reset":return{...Ha,...t.value||{}};default:return e}}function JT(e="uiPreferences"){const t=h.useRef(`ui-preferences-${Math.random().toString(36).slice(2)}`),[n,r]=h.useReducer(PM,e,LM);return h.useEffect(()=>{typeof window>"u"||(localStorage.setItem(e,JSON.stringify(n)),window.dispatchEvent(new CustomEvent(Tu,{detail:{storageKey:e,sourceId:t.current,value:n}})))},[n,e]),h.useEffect(()=>{if(typeof window>"u")return;const l=d=>{!d||typeof d!="object"||Array.isArray(d)||r({type:"set_many",value:d})},c=d=>{if(!(d.key!==e||d.newValue===null))try{const p=JSON.parse(d.newValue);l(p)}catch{}},u=d=>{const m=d.detail;!m||m.storageKey!==e||m.sourceId===t.current||l(m.value)};return window.addEventListener("storage",c),window.addEventListener(Tu,u),()=>{window.removeEventListener("storage",c),window.removeEventListener(Tu,u)}},[e]),{preferences:n,setPreference:(l,c)=>{r({type:"set",key:l,value:c})},setPreferences:l=>{r({type:"set_many",value:l})},resetPreferences:l=>{r({type:"reset",value:l})},dispatch:r}}const FM={fontSize:"14"},BM=["appearance","permissions","config"],$1=e=>BM.includes(e)?e:"appearance",U1=(e,t)=>{if(!e)return t;try{return JSON.parse(e)}catch{return t}},$M=()=>({theme:document.documentElement.classList.contains("dark")?"dark":"light",wordWrap:localStorage.getItem("codeEditorWordWrap")==="true",showMinimap:localStorage.getItem("codeEditorShowMinimap")!=="false",lineNumbers:localStorage.getItem("codeEditorLineNumbers")!=="false",fontSize:localStorage.getItem("codeEditorFontSize")??FM.fontSize});function UM({isOpen:e,initialTab:t}){const[n,r]=h.useState(()=>$1(t)),[a,i]=h.useState(null),[s,l]=h.useState("name"),[c,u]=h.useState(()=>$M());h.useEffect(()=>{if(!e)return;r($1(t));const m=U1(localStorage.getItem("pilotdeck-settings"),{});l(m.projectSortOrder==="date"?"date":"name")},[e,t]),h.useEffect(()=>{localStorage.setItem("codeEditorTheme",c.theme),localStorage.setItem("codeEditorWordWrap",String(c.wordWrap)),localStorage.setItem("codeEditorShowMinimap",String(c.showMinimap)),localStorage.setItem("codeEditorLineNumbers",String(c.lineNumbers)),localStorage.setItem("codeEditorFontSize",c.fontSize),window.dispatchEvent(new Event("codeEditorSettingsChanged"))},[c]);const d=h.useCallback(m=>{l(m);try{const f=U1(localStorage.getItem("pilotdeck-settings"),{});localStorage.setItem("pilotdeck-settings",JSON.stringify({...f,projectSortOrder:m,lastUpdated:new Date().toISOString()})),window.dispatchEvent(new Event("pilotdeck-settings-changed")),i(null)}catch(f){console.error("Failed to persist Appearance settings:",f),i("error")}},[]);h.useEffect(()=>{if(a===null)return;const m=window.setTimeout(()=>i(null),2e3);return()=>window.clearTimeout(m)},[a]);const p=h.useCallback((m,f)=>{u(g=>({...g,[m]:f}))},[]);return{activeTab:n,setActiveTab:r,saveStatus:a,projectSortOrder:s,setProjectSortOrder:d,codeEditorSettings:c,updateCodeEditorSetting:p}}function Rt({children:e,className:t,divided:n}){return o.jsx("div",{className:oe("rounded-xl border border-border bg-card/50",n&&"divide-y divide-border",t),children:e})}function Jt({label:e,description:t,children:n,className:r}){return o.jsxs("div",{className:oe("flex items-center justify-between gap-4 px-4 py-3",r),children:[o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"text-[13px] font-medium leading-5 text-foreground",children:e}),t&&o.jsx("div",{className:"mt-0.5 text-xs leading-5 text-muted-foreground",children:t})]}),o.jsx("div",{className:"flex-shrink-0",children:n})]})}function Wt({title:e,description:t,children:n,className:r}){return o.jsxs("div",{className:oe("space-y-2.5",r),children:[o.jsxs("div",{children:[o.jsx("h3",{className:"text-[12px] font-semibold uppercase tracking-wide text-muted-foreground",children:e}),t&&o.jsx("p",{className:"mt-1 text-xs leading-5 text-muted-foreground",children:t})]}),n]})}function Kt({checked:e,onChange:t,ariaLabel:n,disabled:r}){return o.jsx("button",{type:"button",role:"switch","aria-checked":e,"aria-label":n,disabled:r,onClick:()=>t(!e),className:oe("relative inline-flex h-7 w-12 flex-shrink-0 touch-manipulation cursor-pointer items-center rounded-full border-2 transition-colors duration-200","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background",e?"border-primary bg-primary":"border-border bg-muted",r&&"cursor-not-allowed opacity-50"),children:o.jsx("span",{className:oe("pointer-events-none inline-block h-5 w-5 rounded-full shadow-sm transition-transform duration-200",e?"translate-x-[22px] bg-white":"translate-x-[2px] bg-foreground/60 dark:bg-foreground/80")})})}const gx=Symbol.for("yaml.alias"),Hg=Symbol.for("yaml.document"),va=Symbol.for("yaml.map"),QT=Symbol.for("yaml.pair"),Fr=Symbol.for("yaml.scalar"),ls=Symbol.for("yaml.seq"),pr=Symbol.for("yaml.node.type"),cs=e=>!!e&&typeof e=="object"&&e[pr]===gx,us=e=>!!e&&typeof e=="object"&&e[pr]===Hg,Eo=e=>!!e&&typeof e=="object"&&e[pr]===va,Gt=e=>!!e&&typeof e=="object"&&e[pr]===QT,Lt=e=>!!e&&typeof e=="object"&&e[pr]===Fr,Co=e=>!!e&&typeof e=="object"&&e[pr]===ls;function Yt(e){if(e&&typeof e=="object")switch(e[pr]){case va:case ls:return!0}return!1}function Xt(e){if(e&&typeof e=="object")switch(e[pr]){case gx:case va:case Fr:case ls:return!0}return!1}const e3=e=>(Lt(e)||Yt(e))&&!!e.anchor,Bn=Symbol("break visit"),t3=Symbol("skip children"),Pr=Symbol("remove node");function ds(e,t){const n=n3(t);us(e)?_i(null,e.contents,n,Object.freeze([e]))===Pr&&(e.contents=null):_i(null,e,n,Object.freeze([]))}ds.BREAK=Bn;ds.SKIP=t3;ds.REMOVE=Pr;function _i(e,t,n,r){const a=r3(e,t,n,r);if(Xt(a)||Gt(a))return a3(e,r,a),_i(e,a,n,r);if(typeof a!="symbol"){if(Yt(t)){r=Object.freeze(r.concat(t));for(let i=0;ie.replace(/[!,[\]{}]/g,t=>zM[t]);class Tn{constructor(t,n){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},Tn.defaultYaml,t),this.tags=Object.assign({},Tn.defaultTags,n)}clone(){const t=new Tn(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){const t=new Tn(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:Tn.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},Tn.defaultTags);break}return t}add(t,n){this.atNextDocument&&(this.yaml={explicit:Tn.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},Tn.defaultTags),this.atNextDocument=!1);const r=t.trim().split(/[ \t]+/),a=r.shift();switch(a){case"%TAG":{if(r.length!==2&&(n(0,"%TAG directive should contain exactly two parts"),r.length<2))return!1;const[i,s]=r;return this.tags[i]=s,!0}case"%YAML":{if(this.yaml.explicit=!0,r.length!==1)return n(0,"%YAML directive should contain exactly one part"),!1;const[i]=r;if(i==="1.1"||i==="1.2")return this.yaml.version=i,!0;{const s=/^\d+\.\d+$/.test(i);return n(6,`Unsupported YAML version ${i}`,s),!1}}default:return n(0,`Unknown directive ${a}`,!0),!1}}tagName(t,n){if(t==="!")return"!";if(t[0]!=="!")return n(`Not a valid tag: ${t}`),null;if(t[1]==="<"){const s=t.slice(2,-1);return s==="!"||s==="!!"?(n(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&n("Verbatim tags must end with a >"),s)}const[,r,a]=t.match(/^(.*!)([^!]*)$/s);a||n(`The ${t} tag has no suffix`);const i=this.tags[r];if(i)try{return i+decodeURIComponent(a)}catch(s){return n(String(s)),null}return r==="!"?t:(n(`Could not resolve tag: ${t}`),null)}tagString(t){for(const[n,r]of Object.entries(this.tags))if(t.startsWith(r))return n+qM(t.substring(r.length));return t[0]==="!"?t:`!<${t}>`}toString(t){const n=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],r=Object.entries(this.tags);let a;if(t&&r.length>0&&Xt(t.contents)){const i={};ds(t.contents,(s,l)=>{Xt(l)&&l.tag&&(i[l.tag]=!0)}),a=Object.keys(i)}else a=[];for(const[i,s]of r)i==="!!"&&s==="tag:yaml.org,2002:"||(!t||a.some(l=>l.startsWith(s)))&&n.push(`%TAG ${i} ${s}`);return n.join(` +`)}}Tn.defaultYaml={explicit:!1,version:"1.2"};Tn.defaultTags={"!!":"tag:yaml.org,2002:"};function i3(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){const n=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(n)}return!0}function s3(e){const t=new Set;return ds(e,{Value(n,r){r.anchor&&t.add(r.anchor)}}),t}function o3(e,t){for(let n=1;;++n){const r=`${e}${n}`;if(!t.has(r))return r}}function HM(e,t){const n=[],r=new Map;let a=null;return{onAnchor:i=>{n.push(i),a??(a=s3(e));const s=o3(t,a);return a.add(s),s},setAnchors:()=>{for(const i of n){const s=r.get(i);if(typeof s=="object"&&s.anchor&&(Lt(s.node)||Yt(s.node)))s.node.anchor=s.anchor;else{const l=new Error("Failed to resolve repeated object (this should not happen)");throw l.source=i,l}}},sourceObjects:r}}function Oi(e,t,n,r){if(r&&typeof r=="object")if(Array.isArray(r))for(let a=0,i=r.length;adr(r,String(a),n));if(e&&typeof e.toJSON=="function"){if(!n||!e3(e))return e.toJSON(t,n);const r={aliasCount:0,count:1,res:void 0};n.anchors.set(e,r),n.onCreate=i=>{r.res=i,delete n.onCreate};const a=e.toJSON(t,n);return n.onCreate&&n.onCreate(a),a}return typeof e=="bigint"&&!n?.keep?Number(e):e}class xx{constructor(t){Object.defineProperty(this,pr,{value:t})}clone(){const t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:n,maxAliasCount:r,onAnchor:a,reviver:i}={}){if(!us(t))throw new TypeError("A document argument is required");const s={anchors:new Map,doc:t,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof r=="number"?r:100},l=dr(this,"",s);if(typeof a=="function")for(const{count:c,res:u}of s.anchors.values())a(u,c);return typeof i=="function"?Oi(i,{"":l},"",l):l}}class yx extends xx{constructor(t){super(gx),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t,n){if(n?.maxAliasCount===0)throw new ReferenceError("Alias resolution is disabled");let r;n?.aliasResolveCache?r=n.aliasResolveCache:(r=[],ds(t,{Node:(i,s)=>{(cs(s)||e3(s))&&r.push(s)}}),n&&(n.aliasResolveCache=r));let a;for(const i of r){if(i===this)break;i.anchor===this.source&&(a=i)}return a}toJSON(t,n){if(!n)return{source:this.source};const{anchors:r,doc:a,maxAliasCount:i}=n,s=this.resolve(a,n);if(!s){const c=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(c)}let l=r.get(s);if(l||(dr(s,null,n),l=r.get(s)),l?.res===void 0){const c="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(c)}if(i>=0&&(l.count+=1,l.aliasCount===0&&(l.aliasCount=El(a,s,r)),l.count*l.aliasCount>i)){const c="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(c)}return l.res}toString(t,n,r){const a=`*${this.source}`;if(t){if(i3(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){const i=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(i)}if(t.implicitKey)return`${a} `}return a}}function El(e,t,n){if(cs(t)){const r=t.resolve(e),a=n&&r&&n.get(r);return a?a.count*a.aliasCount:0}else if(Yt(t)){let r=0;for(const a of t.items){const i=El(e,a,n);i>r&&(r=i)}return r}else if(Gt(t)){const r=El(e,t.key,n),a=El(e,t.value,n);return Math.max(r,a)}return 1}const l3=e=>!e||typeof e!="function"&&typeof e!="object";class bt extends xx{constructor(t){super(Fr),this.value=t}toJSON(t,n){return n?.keep?this.value:dr(this.value,t,n)}toString(){return String(this.value)}}bt.BLOCK_FOLDED="BLOCK_FOLDED";bt.BLOCK_LITERAL="BLOCK_LITERAL";bt.PLAIN="PLAIN";bt.QUOTE_DOUBLE="QUOTE_DOUBLE";bt.QUOTE_SINGLE="QUOTE_SINGLE";const GM="tag:yaml.org,2002:";function VM(e,t,n){if(t){const r=n.filter(i=>i.tag===t),a=r.find(i=>!i.format)??r[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return n.find(r=>r.identify?.(e)&&!r.format)}function uo(e,t,n){if(us(e)&&(e=e.contents),Xt(e))return e;if(Gt(e)){const p=n.schema[va].createNode?.(n.schema,null,n);return p.items.push(e),p}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());const{aliasDuplicateObjects:r,onAnchor:a,onTagObj:i,schema:s,sourceObjects:l}=n;let c;if(r&&e&&typeof e=="object"){if(c=l.get(e),c)return c.anchor??(c.anchor=a(e)),new yx(c.anchor);c={anchor:null,node:null},l.set(e,c)}t?.startsWith("!!")&&(t=GM+t.slice(2));let u=VM(e,t,s.tags);if(!u){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){const p=new bt(e);return c&&(c.node=p),p}u=e instanceof Map?s[va]:Symbol.iterator in Object(e)?s[ls]:s[va]}i&&(i(u),delete n.onTagObj);const d=u?.createNode?u.createNode(n.schema,e,n):typeof u?.nodeClass?.from=="function"?u.nodeClass.from(n.schema,e,n):new bt(e);return t?d.tag=t:u.default||(d.tag=u.tag),c&&(c.node=d),d}function Yl(e,t,n){let r=n;for(let a=t.length-1;a>=0;--a){const i=t[a];if(typeof i=="number"&&Number.isInteger(i)&&i>=0){const s=[];s[i]=r,r=s}else r=new Map([[i,r]])}return uo(r,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}const Ws=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done;class c3 extends xx{constructor(t,n){super(t),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(t){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(n.schema=t),n.items=n.items.map(r=>Xt(r)||Gt(r)?r.clone(t):r),this.range&&(n.range=this.range.slice()),n}addIn(t,n){if(Ws(t))this.add(n);else{const[r,...a]=t,i=this.get(r,!0);if(Yt(i))i.addIn(a,n);else if(i===void 0&&this.schema)this.set(r,Yl(this.schema,a,n));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${a}`)}}deleteIn(t){const[n,...r]=t;if(r.length===0)return this.delete(n);const a=this.get(n,!0);if(Yt(a))return a.deleteIn(r);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${r}`)}getIn(t,n){const[r,...a]=t,i=this.get(r,!0);return a.length===0?!n&&Lt(i)?i.value:i:Yt(i)?i.getIn(a,n):void 0}hasAllNullValues(t){return this.items.every(n=>{if(!Gt(n))return!1;const r=n.value;return r==null||t&&Lt(r)&&r.value==null&&!r.commentBefore&&!r.comment&&!r.tag})}hasIn(t){const[n,...r]=t;if(r.length===0)return this.has(n);const a=this.get(n,!0);return Yt(a)?a.hasIn(r):!1}setIn(t,n){const[r,...a]=t;if(a.length===0)this.set(r,n);else{const i=this.get(r,!0);if(Yt(i))i.setIn(a,n);else if(i===void 0&&this.schema)this.set(r,Yl(this.schema,a,n));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${a}`)}}}const WM=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function Zr(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}const Ka=(e,t,n)=>e.endsWith(` +`)?Zr(n,t):n.includes(` +`)?` +`+Zr(n,t):(e.endsWith(" ")?"":" ")+n,u3="flow",Gg="block",Cl="quoted";function _c(e,t,n="flow",{indentAtStart:r,lineWidth:a=80,minContentWidth:i=20,onFold:s,onOverflow:l}={}){if(!a||a<0)return e;aa-Math.max(2,i)?u.push(0):p=a-r);let m,f,g=!1,b=-1,x=-1,k=-1;n===Gg&&(b=z1(e,b,t.length),b!==-1&&(p=b+c));for(let v;v=e[b+=1];){if(n===Cl&&v==="\\"){switch(x=b,e[b+1]){case"x":b+=3;break;case"u":b+=5;break;case"U":b+=9;break;default:b+=1}k=b}if(v===` +`)n===Gg&&(b=z1(e,b,t.length)),p=b+t.length+c,m=void 0;else{if(v===" "&&f&&f!==" "&&f!==` +`&&f!==" "){const E=e[b+1];E&&E!==" "&&E!==` +`&&E!==" "&&(m=b)}if(b>=p)if(m)u.push(m),p=m+c,m=void 0;else if(n===Cl){for(;f===" "||f===" ";)f=v,v=e[b+=1],g=!0;const E=b>k+1?b-2:x-1;if(d[E])return e;u.push(E),d[E]=!0,p=E+c,m=void 0}else g=!0}f=v}if(g&&l&&l(),u.length===0)return e;s&&s();let y=e.slice(0,u[0]);for(let v=0;v({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Oc=e=>/^(%|---|\.\.\.)/m.test(e);function KM(e,t,n){if(!t||t<0)return!1;const r=t-n,a=e.length;if(a<=r)return!1;for(let i=0,s=0;ir)return!0;if(s=i+1,a-s<=r)return!1}return!0}function no(e,t){const n=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return n;const{implicitKey:r}=t,a=t.options.doubleQuotedMinMultiLineLength,i=t.indent||(Oc(e)?" ":"");let s="",l=0;for(let c=0,u=n[c];u;u=n[++c])if(u===" "&&n[c+1]==="\\"&&n[c+2]==="n"&&(s+=n.slice(l,c)+"\\ ",c+=1,l=c,u="\\"),u==="\\")switch(n[c+1]){case"u":{s+=n.slice(l,c);const d=n.substr(c+2,4);switch(d){case"0000":s+="\\0";break;case"0007":s+="\\a";break;case"000b":s+="\\v";break;case"001b":s+="\\e";break;case"0085":s+="\\N";break;case"00a0":s+="\\_";break;case"2028":s+="\\L";break;case"2029":s+="\\P";break;default:d.substr(0,2)==="00"?s+="\\x"+d.substr(2):s+=n.substr(c,6)}c+=5,l=c+1}break;case"n":if(r||n[c+2]==='"'||n.length +`;let p,m;for(m=n.length;m>0;--m){const N=n[m-1];if(N!==` +`&&N!==" "&&N!==" ")break}let f=n.substring(m);const g=f.indexOf(` +`);g===-1?p="-":n===f||g!==f.length-1?(p="+",i&&i()):p="",f&&(n=n.slice(0,-f.length),f[f.length-1]===` +`&&(f=f.slice(0,-1)),f=f.replace(Wg,`$&${u}`));let b=!1,x,k=-1;for(x=0;x{w=!0});const j=_c(`${y}${N}${f}`,u,Gg,T);if(!w)return`>${E} +${u}${j}`}return n=n.replace(/\n+/g,`$&${u}`),`|${E} +${u}${y}${n}${f}`}function YM(e,t,n,r){const{type:a,value:i}=e,{actualString:s,implicitKey:l,indent:c,indentStep:u,inFlow:d}=t;if(l&&i.includes(` +`)||d&&/[[\]{},]/.test(i))return Di(i,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(i))return l||d||!i.includes(` +`)?Di(i,t):Nl(e,t,n,r);if(!l&&!d&&a!==bt.PLAIN&&i.includes(` +`))return Nl(e,t,n,r);if(Oc(i)){if(c==="")return t.forceBlockIndent=!0,Nl(e,t,n,r);if(l&&c===u)return Di(i,t)}const p=i.replace(/\n+/g,`$& +${c}`);if(s){const m=b=>b.default&&b.tag!=="tag:yaml.org,2002:str"&&b.test?.test(p),{compat:f,tags:g}=t.doc.schema;if(g.some(m)||f?.some(m))return Di(i,t)}return l?p:_c(p,c,u3,jc(t,!1))}function No(e,t,n,r){const{implicitKey:a,inFlow:i}=t,s=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)});let{type:l}=e;l!==bt.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(s.value)&&(l=bt.QUOTE_DOUBLE);const c=d=>{switch(d){case bt.BLOCK_FOLDED:case bt.BLOCK_LITERAL:return a||i?Di(s.value,t):Nl(s,t,n,r);case bt.QUOTE_DOUBLE:return no(s.value,t);case bt.QUOTE_SINGLE:return Vg(s.value,t);case bt.PLAIN:return YM(s,t,n,r);default:return null}};let u=c(l);if(u===null){const{defaultKeyType:d,defaultStringType:p}=t.options,m=a&&d||p;if(u=c(m),u===null)throw new Error(`Unsupported default string type ${m}`)}return u}function d3(e,t){const n=Object.assign({blockQuote:!0,commentString:WM,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t);let r;switch(n.collectionStyle){case"block":r=!1;break;case"flow":r=!0;break;default:r=null}return{anchors:new Set,doc:e,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:r,options:n}}function XM(e,t){if(t.tag){const a=e.filter(i=>i.tag===t.tag);if(a.length>0)return a.find(i=>i.format===t.format)??a[0]}let n,r;if(Lt(t)){r=t.value;let a=e.filter(i=>i.identify?.(r));if(a.length>1){const i=a.filter(s=>s.test);i.length>0&&(a=i)}n=a.find(i=>i.format===t.format)??a.find(i=>!i.format)}else r=t,n=e.find(a=>a.nodeClass&&r instanceof a.nodeClass);if(!n){const a=r?.constructor?.name??(r===null?"null":typeof r);throw new Error(`Tag not resolved for ${a} value`)}return n}function ZM(e,t,{anchors:n,doc:r}){if(!r.directives)return"";const a=[],i=(Lt(e)||Yt(e))&&e.anchor;i&&i3(i)&&(n.add(i),a.push(`&${i}`));const s=e.tag??(t.default?null:t.tag);return s&&a.push(r.directives.tagString(s)),a.join(" ")}function Xi(e,t,n,r){if(Gt(e))return e.toString(t,n,r);if(cs(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a;const i=Xt(e)?e:t.doc.createNode(e,{onTagObj:c=>a=c});a??(a=XM(t.doc.schema.tags,i));const s=ZM(i,a,t);s.length>0&&(t.indentAtStart=(t.indentAtStart??0)+s.length+1);const l=typeof a.stringify=="function"?a.stringify(i,t,n,r):Lt(i)?No(i,t,n,r):i.toString(t,n,r);return s?Lt(i)||l[0]==="{"||l[0]==="["?`${s} ${l}`:`${s} +${t.indent}${l}`:l}function JM({key:e,value:t},n,r,a){const{allNullValues:i,doc:s,indent:l,indentStep:c,options:{commentString:u,indentSeq:d,simpleKeys:p}}=n;let m=Xt(e)&&e.comment||null;if(p){if(m)throw new Error("With simple keys, key nodes cannot have comments");if(Yt(e)||!Xt(e)&&typeof e=="object"){const T="With simple keys, collection cannot be used as a key value";throw new Error(T)}}let f=!p&&(!e||m&&t==null&&!n.inFlow||Yt(e)||(Lt(e)?e.type===bt.BLOCK_FOLDED||e.type===bt.BLOCK_LITERAL:typeof e=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!f&&(p||!i),indent:l+c});let g=!1,b=!1,x=Xi(e,n,()=>g=!0,()=>b=!0);if(!f&&!n.inFlow&&x.length>1024){if(p)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");f=!0}if(n.inFlow){if(i||t==null)return g&&r&&r(),x===""?"?":f?`? ${x}`:x}else if(i&&!p||t==null&&f)return x=`? ${x}`,m&&!g?x+=Ka(x,n.indent,u(m)):b&&a&&a(),x;g&&(m=null),f?(m&&(x+=Ka(x,n.indent,u(m))),x=`? ${x} +${l}:`):(x=`${x}:`,m&&(x+=Ka(x,n.indent,u(m))));let k,y,v;Xt(t)?(k=!!t.spaceBefore,y=t.commentBefore,v=t.comment):(k=!1,y=null,v=null,t&&typeof t=="object"&&(t=s.createNode(t))),n.implicitKey=!1,!f&&!m&&Lt(t)&&(n.indentAtStart=x.length+1),b=!1,!d&&c.length>=2&&!n.inFlow&&!f&&Co(t)&&!t.flow&&!t.tag&&!t.anchor&&(n.indent=n.indent.substring(2));let E=!1;const N=Xi(t,n,()=>E=!0,()=>b=!0);let w=" ";if(m||k||y){if(w=k?` +`:"",y){const T=u(y);w+=` +${Zr(T,n.indent)}`}N===""&&!n.inFlow?w===` +`&&v&&(w=` + +`):w+=` +${n.indent}`}else if(!f&&Yt(t)){const T=N[0],j=N.indexOf(` +`),_=j!==-1,C=n.inFlow??t.flow??t.items.length===0;if(_||!C){let O=!1;if(_&&(T==="&"||T==="!")){let I=N.indexOf(" ");T==="&"&&I!==-1&&Ie===Go||typeof e=="symbol"&&e.description===Go,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new bt(Symbol(Go)),{addToJSMap:m3}),stringify:()=>Go},QM=(e,t)=>(Jr.identify(t)||Lt(t)&&(!t.type||t.type===bt.PLAIN)&&Jr.identify(t.value))&&e?.doc.schema.tags.some(n=>n.tag===Jr.tag&&n.default);function m3(e,t,n){const r=f3(e,n);if(Co(r))for(const a of r.items)Au(e,t,a);else if(Array.isArray(r))for(const a of r)Au(e,t,a);else Au(e,t,r)}function Au(e,t,n){const r=f3(e,n);if(!Eo(r))throw new Error("Merge sources must be maps or map aliases");const a=r.toJSON(null,e,Map);for(const[i,s]of a)t instanceof Map?t.has(i)||t.set(i,s):t instanceof Set?t.add(i):Object.prototype.hasOwnProperty.call(t,i)||Object.defineProperty(t,i,{value:s,writable:!0,enumerable:!0,configurable:!0});return t}function f3(e,t){return e&&cs(t)?t.resolve(e.doc,e):t}function h3(e,t,{key:n,value:r}){if(Xt(n)&&n.addToJSMap)n.addToJSMap(e,t,r);else if(QM(e,n))m3(e,t,r);else{const a=dr(n,"",e);if(t instanceof Map)t.set(a,dr(r,a,e));else if(t instanceof Set)t.add(a);else{const i=eL(n,a,e),s=dr(r,i,e);i in t?Object.defineProperty(t,i,{value:s,writable:!0,enumerable:!0,configurable:!0}):t[i]=s}}return t}function eL(e,t,n){if(t===null)return"";if(typeof t!="object")return String(t);if(Xt(e)&&n?.doc){const r=d3(n.doc,{});r.anchors=new Set;for(const i of n.anchors.keys())r.anchors.add(i.anchor);r.inFlow=!0,r.inStringifyKey=!0;const a=e.toString(r);if(!n.mapKeyWarned){let i=JSON.stringify(a);i.length>40&&(i=i.substring(0,36)+'..."'),p3(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${i}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return a}return JSON.stringify(t)}function vx(e,t,n){const r=uo(e,void 0,n),a=uo(t,void 0,n);return new On(r,a)}class On{constructor(t,n=null){Object.defineProperty(this,pr,{value:QT}),this.key=t,this.value=n}clone(t){let{key:n,value:r}=this;return Xt(n)&&(n=n.clone(t)),Xt(r)&&(r=r.clone(t)),new On(n,r)}toJSON(t,n){const r=n?.mapAsMap?new Map:{};return h3(n,r,this)}toString(t,n,r){return t?.doc?JM(this,t,n,r):JSON.stringify(this)}}function g3(e,t,n){return(t.inFlow??e.flow?nL:tL)(e,t,n)}function tL({comment:e,items:t},n,{blockItemPrefix:r,flowChars:a,itemIndent:i,onChompKeep:s,onComment:l}){const{indent:c,options:{commentString:u}}=n,d=Object.assign({},n,{indent:i,type:null});let p=!1;const m=[];for(let g=0;gx=null,()=>p=!0);x&&(k+=Ka(k,i,u(x))),p&&x&&(p=!1),m.push(r+k)}let f;if(m.length===0)f=a.start+a.end;else{f=m[0];for(let g=1;gx=null);u||(u=p.length>d||k.includes(` +`)),g0&&(u||(u=p.reduce((y,v)=>y+v.length+2,2)+(k.length+2)>t.options.lineWidth)),u&&(k+=",")),x&&(k+=Ka(k,r,l(x))),p.push(k),d=p.length}const{start:m,end:f}=n;if(p.length===0)return m+f;if(!u){const g=p.reduce((b,x)=>b+x.length+2,2);u=t.options.lineWidth>0&&g>t.options.lineWidth}if(u){let g=m;for(const b of p)g+=b?` +${i}${a}${b}`:` +`;return`${g} +${a}${f}`}else return`${m}${s}${p.join(" ")}${s}${f}`}function Xl({indent:e,options:{commentString:t}},n,r,a){if(r&&a&&(r=r.replace(/^\n+/,"")),r){const i=Zr(t(r),e);n.push(i.trimStart())}}function Ya(e,t){const n=Lt(t)?t.value:t;for(const r of e)if(Gt(r)&&(r.key===t||r.key===n||Lt(r.key)&&r.key.value===n))return r}class or extends c3{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(va,t),this.items=[]}static from(t,n,r){const{keepUndefined:a,replacer:i}=r,s=new this(t),l=(c,u)=>{if(typeof i=="function")u=i.call(n,c,u);else if(Array.isArray(i)&&!i.includes(c))return;(u!==void 0||a)&&s.items.push(vx(c,u,r))};if(n instanceof Map)for(const[c,u]of n)l(c,u);else if(n&&typeof n=="object")for(const c of Object.keys(n))l(c,n[c]);return typeof t.sortMapEntries=="function"&&s.items.sort(t.sortMapEntries),s}add(t,n){let r;Gt(t)?r=t:!t||typeof t!="object"||!("key"in t)?r=new On(t,t?.value):r=new On(t.key,t.value);const a=Ya(this.items,r.key),i=this.schema?.sortMapEntries;if(a){if(!n)throw new Error(`Key ${r.key} already set`);Lt(a.value)&&l3(r.value)?a.value.value=r.value:a.value=r.value}else if(i){const s=this.items.findIndex(l=>i(r,l)<0);s===-1?this.items.push(r):this.items.splice(s,0,r)}else this.items.push(r)}delete(t){const n=Ya(this.items,t);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(t,n){const a=Ya(this.items,t)?.value;return(!n&&Lt(a)?a.value:a)??void 0}has(t){return!!Ya(this.items,t)}set(t,n){this.add(new On(t,n),!0)}toJSON(t,n,r){const a=r?new r:n?.mapAsMap?new Map:{};n?.onCreate&&n.onCreate(a);for(const i of this.items)h3(n,a,i);return a}toString(t,n,r){if(!t)return JSON.stringify(this);for(const a of this.items)if(!Gt(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),g3(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:r,onComment:n})}}const ps={collection:"map",default:!0,nodeClass:or,tag:"tag:yaml.org,2002:map",resolve(e,t){return Eo(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,n)=>or.from(e,t,n)};class ai extends c3{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(ls,t),this.items=[]}add(t){this.items.push(t)}delete(t){const n=Vo(t);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(t,n){const r=Vo(t);if(typeof r!="number")return;const a=this.items[r];return!n&&Lt(a)?a.value:a}has(t){const n=Vo(t);return typeof n=="number"&&n=0?t:null}const ms={collection:"seq",default:!0,nodeClass:ai,tag:"tag:yaml.org,2002:seq",resolve(e,t){return Co(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,n)=>ai.from(e,t,n)},Dc={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,n,r){return t=Object.assign({actualString:!0},t),No(e,t,n,r)}},Mc={identify:e=>e==null,createNode:()=>new bt(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new bt(null),stringify:({source:e},t)=>typeof e=="string"&&Mc.test.test(e)?e:t.options.nullStr},kx={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new bt(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},n){if(e&&kx.test.test(e)){const r=e[0]==="t"||e[0]==="T";if(t===r)return e}return t?n.options.trueStr:n.options.falseStr}};function Tr({format:e,minFractionDigits:t,tag:n,value:r}){if(typeof r=="bigint")return String(r);const a=typeof r=="number"?r:Number(r);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let i=Object.is(r,-0)?"-0":JSON.stringify(r);if(!e&&t&&(!n||n==="tag:yaml.org,2002:float")&&/^-?\d/.test(i)&&!i.includes("e")){let s=i.indexOf(".");s<0&&(s=i.length,i+=".");let l=t-(i.length-s-1);for(;l-- >0;)i+="0"}return i}const b3={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Tr},x3={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){const t=Number(e.value);return isFinite(t)?t.toExponential():Tr(e)}},y3={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){const t=new bt(parseFloat(e)),n=e.indexOf(".");return n!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-n-1),t},stringify:Tr},Lc=e=>typeof e=="bigint"||Number.isInteger(e),wx=(e,t,n,{intAsBigInt:r})=>r?BigInt(e):parseInt(e.substring(t),n);function v3(e,t,n){const{value:r}=e;return Lc(r)&&r>=0?n+r.toString(t):Tr(e)}const k3={identify:e=>Lc(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,n)=>wx(e,2,8,n),stringify:e=>v3(e,8,"0o")},w3={identify:Lc,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,n)=>wx(e,0,10,n),stringify:Tr},S3={identify:e=>Lc(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,n)=>wx(e,2,16,n),stringify:e=>v3(e,16,"0x")},rL=[ps,ms,Dc,Mc,kx,k3,w3,S3,b3,x3,y3];function q1(e){return typeof e=="bigint"||Number.isInteger(e)}const Wo=({value:e})=>JSON.stringify(e),aL=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:Wo},{identify:e=>e==null,createNode:()=>new bt(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Wo},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:e=>e==="true",stringify:Wo},{identify:q1,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:n})=>n?BigInt(e):parseInt(e,10),stringify:({value:e})=>q1(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:Wo}],iL={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},sL=[ps,ms].concat(aL,iL),Sx={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof atob=="function"){const n=atob(e.replace(/[\n\r]/g,"")),r=new Uint8Array(n.length);for(let a=0;a1&&t("Each pair must have its own sequence indicator");const a=r.items[0]||new On(new bt(null));if(r.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${r.commentBefore} +${a.key.commentBefore}`:r.commentBefore),r.comment){const i=a.value??a.key;i.comment=i.comment?`${r.comment} +${i.comment}`:r.comment}r=a}e.items[n]=Gt(r)?r:new On(r)}}else t("Expected a sequence for this tag");return e}function C3(e,t,n){const{replacer:r}=n,a=new ai(e);a.tag="tag:yaml.org,2002:pairs";let i=0;if(t&&Symbol.iterator in Object(t))for(let s of t){typeof r=="function"&&(s=r.call(t,String(i++),s));let l,c;if(Array.isArray(s))if(s.length===2)l=s[0],c=s[1];else throw new TypeError(`Expected [key, value] tuple: ${s}`);else if(s&&s instanceof Object){const u=Object.keys(s);if(u.length===1)l=u[0],c=s[l];else throw new TypeError(`Expected tuple with one key, not ${u.length} keys`)}else l=s;a.items.push(vx(l,c,n))}return a}const Ex={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:E3,createNode:C3};class Ui extends ai{constructor(){super(),this.add=or.prototype.add.bind(this),this.delete=or.prototype.delete.bind(this),this.get=or.prototype.get.bind(this),this.has=or.prototype.has.bind(this),this.set=or.prototype.set.bind(this),this.tag=Ui.tag}toJSON(t,n){if(!n)return super.toJSON(t);const r=new Map;n?.onCreate&&n.onCreate(r);for(const a of this.items){let i,s;if(Gt(a)?(i=dr(a.key,"",n),s=dr(a.value,i,n)):i=dr(a,"",n),r.has(i))throw new Error("Ordered maps must not include duplicate keys");r.set(i,s)}return r}static from(t,n,r){const a=C3(t,n,r),i=new this;return i.items=a.items,i}}Ui.tag="tag:yaml.org,2002:omap";const Cx={collection:"seq",identify:e=>e instanceof Map,nodeClass:Ui,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){const n=E3(e,t),r=[];for(const{key:a}of n.items)Lt(a)&&(r.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):r.push(a.value));return Object.assign(new Ui,n)},createNode:(e,t,n)=>Ui.from(e,t,n)};function N3({value:e,source:t},n){return t&&(e?T3:A3).test.test(t)?t:e?n.options.trueStr:n.options.falseStr}const T3={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new bt(!0),stringify:N3},A3={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new bt(!1),stringify:N3},oL={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Tr},lL={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){const t=Number(e.value);return isFinite(t)?t.toExponential():Tr(e)}},cL={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){const t=new bt(parseFloat(e.replace(/_/g,""))),n=e.indexOf(".");if(n!==-1){const r=e.substring(n+1).replace(/_/g,"");r[r.length-1]==="0"&&(t.minFractionDigits=r.length)}return t},stringify:Tr},To=e=>typeof e=="bigint"||Number.isInteger(e);function Pc(e,t,n,{intAsBigInt:r}){const a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),r){switch(n){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}const s=BigInt(e);return a==="-"?BigInt(-1)*s:s}const i=parseInt(e,n);return a==="-"?-1*i:i}function Nx(e,t,n){const{value:r}=e;if(To(r)){const a=r.toString(t);return r<0?"-"+n+a.substr(1):n+a}return Tr(e)}const uL={identify:To,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,n)=>Pc(e,2,2,n),stringify:e=>Nx(e,2,"0b")},dL={identify:To,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,n)=>Pc(e,1,8,n),stringify:e=>Nx(e,8,"0")},pL={identify:To,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,n)=>Pc(e,0,10,n),stringify:Tr},mL={identify:To,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,n)=>Pc(e,2,16,n),stringify:e=>Nx(e,16,"0x")};class zi extends or{constructor(t){super(t),this.tag=zi.tag}add(t){let n;Gt(t)?n=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?n=new On(t.key,null):n=new On(t,null),Ya(this.items,n.key)||this.items.push(n)}get(t,n){const r=Ya(this.items,t);return!n&&Gt(r)?Lt(r.key)?r.key.value:r.key:r}set(t,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const r=Ya(this.items,t);r&&!n?this.items.splice(this.items.indexOf(r),1):!r&&n&&this.items.push(new On(t))}toJSON(t,n){return super.toJSON(t,n,Set)}toString(t,n,r){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),n,r);throw new Error("Set items must all have null values")}static from(t,n,r){const{replacer:a}=r,i=new this(t);if(n&&Symbol.iterator in Object(n))for(let s of n)typeof a=="function"&&(s=a.call(n,s,s)),i.items.push(vx(s,null,r));return i}}zi.tag="tag:yaml.org,2002:set";const Tx={collection:"map",identify:e=>e instanceof Set,nodeClass:zi,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,n)=>zi.from(e,t,n),resolve(e,t){if(Eo(e)){if(e.hasAllNullValues(!0))return Object.assign(new zi,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};function Ax(e,t){const n=e[0],r=n==="-"||n==="+"?e.substring(1):e,a=s=>t?BigInt(s):Number(s),i=r.replace(/_/g,"").split(":").reduce((s,l)=>s*a(60)+a(l),a(0));return n==="-"?a(-1)*i:i}function I3(e){let{value:t}=e,n=s=>s;if(typeof t=="bigint")n=s=>BigInt(s);else if(isNaN(t)||!isFinite(t))return Tr(e);let r="";t<0&&(r="-",t*=n(-1));const a=n(60),i=[t%a];return t<60?i.unshift(0):(t=(t-i[0])/a,i.unshift(t%a),t>=60&&(t=(t-i[0])/a,i.unshift(t))),r+i.map(s=>String(s).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const R3={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:n})=>Ax(e,n),stringify:I3},_3={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>Ax(e,!1),stringify:I3},Fc={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){const t=e.match(Fc.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,n,r,a,i,s,l]=t.map(Number),c=t[7]?Number((t[7]+"00").substr(1,3)):0;let u=Date.UTC(n,r-1,a,i||0,s||0,l||0,c);const d=t[8];if(d&&d!=="Z"){let p=Ax(d,!1);Math.abs(p)<30&&(p*=60),u-=6e4*p}return new Date(u)},stringify:({value:e})=>e?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""},H1=[ps,ms,Dc,Mc,T3,A3,uL,dL,pL,mL,oL,lL,cL,Sx,Jr,Cx,Ex,Tx,R3,_3,Fc],G1=new Map([["core",rL],["failsafe",[ps,ms,Dc]],["json",sL],["yaml11",H1],["yaml-1.1",H1]]),V1={binary:Sx,bool:kx,float:y3,floatExp:x3,floatNaN:b3,floatTime:_3,int:w3,intHex:S3,intOct:k3,intTime:R3,map:ps,merge:Jr,null:Mc,omap:Cx,pairs:Ex,seq:ms,set:Tx,timestamp:Fc},fL={"tag:yaml.org,2002:binary":Sx,"tag:yaml.org,2002:merge":Jr,"tag:yaml.org,2002:omap":Cx,"tag:yaml.org,2002:pairs":Ex,"tag:yaml.org,2002:set":Tx,"tag:yaml.org,2002:timestamp":Fc};function Iu(e,t,n){const r=G1.get(t);if(r&&!e)return n&&!r.includes(Jr)?r.concat(Jr):r.slice();let a=r;if(!a)if(Array.isArray(e))a=[];else{const i=Array.from(G1.keys()).filter(s=>s!=="yaml11").map(s=>JSON.stringify(s)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${i} or define customTags array`)}if(Array.isArray(e))for(const i of e)a=a.concat(i);else typeof e=="function"&&(a=e(a.slice()));return n&&(a=a.concat(Jr)),a.reduce((i,s)=>{const l=typeof s=="string"?V1[s]:s;if(!l){const c=JSON.stringify(s),u=Object.keys(V1).map(d=>JSON.stringify(d)).join(", ");throw new Error(`Unknown custom tag ${c}; use one of ${u}`)}return i.includes(l)||i.push(l),i},[])}const hL=(e,t)=>e.keyt.key?1:0;let gL=class j3{constructor({compat:t,customTags:n,merge:r,resolveKnownTags:a,schema:i,sortMapEntries:s,toStringDefaults:l}){this.compat=Array.isArray(t)?Iu(t,"compat"):t?Iu(null,t):null,this.name=typeof i=="string"&&i||"core",this.knownTags=a?fL:{},this.tags=Iu(n,this.name,r),this.toStringOptions=l??null,Object.defineProperty(this,va,{value:ps}),Object.defineProperty(this,Fr,{value:Dc}),Object.defineProperty(this,ls,{value:ms}),this.sortMapEntries=typeof s=="function"?s:s===!0?hL:null}clone(){const t=Object.create(j3.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};function bL(e,t){const n=[];let r=t.directives===!0;if(t.directives!==!1&&e.directives){const c=e.directives.toString(e);c?(n.push(c),r=!0):e.directives.docStart&&(r=!0)}r&&n.push("---");const a=d3(e,t),{commentString:i}=a.options;if(e.commentBefore){n.length!==1&&n.unshift("");const c=i(e.commentBefore);n.unshift(Zr(c,""))}let s=!1,l=null;if(e.contents){if(Xt(e.contents)){if(e.contents.spaceBefore&&r&&n.push(""),e.contents.commentBefore){const d=i(e.contents.commentBefore);n.push(Zr(d,""))}a.forceBlockIndent=!!e.comment,l=e.contents.comment}const c=l?void 0:()=>s=!0;let u=Xi(e.contents,a,()=>l=null,c);l&&(u+=Ka(u,"",i(l))),(u[0]==="|"||u[0]===">")&&n[n.length-1]==="---"?n[n.length-1]=`--- ${u}`:n.push(u)}else n.push(Xi(e.contents,a));if(e.directives?.docEnd)if(e.comment){const c=i(e.comment);c.includes(` +`)?(n.push("..."),n.push(Zr(c,""))):n.push(`... ${c}`)}else n.push("...");else{let c=e.comment;c&&s&&(c=c.replace(/^\n+/,"")),c&&((!s||l)&&n[n.length-1]!==""&&n.push(""),n.push(Zr(i(c),"")))}return n.join(` +`)+` +`}class Ao{constructor(t,n,r){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,pr,{value:Hg});let a=null;typeof n=="function"||Array.isArray(n)?a=n:r===void 0&&n&&(r=n,n=void 0);const i=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},r);this.options=i;let{version:s}=i;r?._directives?(this.directives=r._directives.atDocument(),this.directives.yaml.explicit&&(s=this.directives.yaml.version)):this.directives=new Tn({version:s}),this.setSchema(s,r),this.contents=t===void 0?null:this.createNode(t,a,r)}clone(){const t=Object.create(Ao.prototype,{[pr]:{value:Hg}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=Xt(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){xi(this.contents)&&this.contents.add(t)}addIn(t,n){xi(this.contents)&&this.contents.addIn(t,n)}createAlias(t,n){if(!t.anchor){const r=s3(this);t.anchor=!n||r.has(n)?o3(n||"a",r):n}return new yx(t.anchor)}createNode(t,n,r){let a;if(typeof n=="function")t=n.call({"":t},"",t),a=n;else if(Array.isArray(n)){const x=y=>typeof y=="number"||y instanceof String||y instanceof Number,k=n.filter(x).map(String);k.length>0&&(n=n.concat(k)),a=n}else r===void 0&&n&&(r=n,n=void 0);const{aliasDuplicateObjects:i,anchorPrefix:s,flow:l,keepUndefined:c,onTagObj:u,tag:d}=r??{},{onAnchor:p,setAnchors:m,sourceObjects:f}=HM(this,s||"a"),g={aliasDuplicateObjects:i??!0,keepUndefined:c??!1,onAnchor:p,onTagObj:u,replacer:a,schema:this.schema,sourceObjects:f},b=uo(t,d,g);return l&&Yt(b)&&(b.flow=!0),m(),b}createPair(t,n,r={}){const a=this.createNode(t,null,r),i=this.createNode(n,null,r);return new On(a,i)}delete(t){return xi(this.contents)?this.contents.delete(t):!1}deleteIn(t){return Ws(t)?this.contents==null?!1:(this.contents=null,!0):xi(this.contents)?this.contents.deleteIn(t):!1}get(t,n){return Yt(this.contents)?this.contents.get(t,n):void 0}getIn(t,n){return Ws(t)?!n&&Lt(this.contents)?this.contents.value:this.contents:Yt(this.contents)?this.contents.getIn(t,n):void 0}has(t){return Yt(this.contents)?this.contents.has(t):!1}hasIn(t){return Ws(t)?this.contents!==void 0:Yt(this.contents)?this.contents.hasIn(t):!1}set(t,n){this.contents==null?this.contents=Yl(this.schema,[t],n):xi(this.contents)&&this.contents.set(t,n)}setIn(t,n){Ws(t)?this.contents=n:this.contents==null?this.contents=Yl(this.schema,Array.from(t),n):xi(this.contents)&&this.contents.setIn(t,n)}setSchema(t,n={}){typeof t=="number"&&(t=String(t));let r;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new Tn({version:"1.1"}),r={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new Tn({version:t}),r={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,r=null;break;default:{const a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(n.schema instanceof Object)this.schema=n.schema;else if(r)this.schema=new gL(Object.assign(r,n));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:n,mapAsMap:r,maxAliasCount:a,onAnchor:i,reviver:s}={}){const l={anchors:new Map,doc:this,keep:!t,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},c=dr(this.contents,n??"",l);if(typeof i=="function")for(const{count:u,res:d}of l.anchors.values())i(d,u);return typeof s=="function"?Oi(s,{"":c},"",c):c}toJSON(t,n){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:n})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){const n=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${n}`)}return bL(this,t)}}function xi(e){if(Yt(e))return!0;throw new Error("Expected a YAML collection as document contents")}class O3 extends Error{constructor(t,n,r,a){super(),this.name=t,this.code=r,this.message=a,this.pos=n}}class Mi extends O3{constructor(t,n,r){super("YAMLParseError",t,n,r)}}class xL extends O3{constructor(t,n,r){super("YAMLWarning",t,n,r)}}const Zl=(e,t)=>n=>{if(n.pos[0]===-1)return;n.linePos=n.pos.map(l=>t.linePos(l));const{line:r,col:a}=n.linePos[0];n.message+=` at line ${r}, column ${a}`;let i=a-1,s=e.substring(t.lineStarts[r-1],t.lineStarts[r]).replace(/[\n\r]+$/,"");if(i>=60&&s.length>80){const l=Math.min(i-39,s.length-79);s="…"+s.substring(l),i-=l-1}if(s.length>80&&(s=s.substring(0,79)+"…"),r>1&&/^ *$/.test(s.substring(0,i))){let l=e.substring(t.lineStarts[r-2],t.lineStarts[r-1]);l.length>80&&(l=l.substring(0,79)+`… +`),s=l+s}if(/[^ ]/.test(s)){let l=1;const c=n.linePos[1];c?.line===r&&c.col>a&&(l=Math.max(1,Math.min(c.col-a,80-i)));const u=" ".repeat(i)+"^".repeat(l);n.message+=`: + +${s} +${u} +`}};function Zi(e,{flow:t,indicator:n,next:r,offset:a,onError:i,parentIndent:s,startOnNewline:l}){let c=!1,u=l,d=l,p="",m="",f=!1,g=!1,b=null,x=null,k=null,y=null,v=null,E=null,N=null;for(const j of e)switch(g&&(j.type!=="space"&&j.type!=="newline"&&j.type!=="comma"&&i(j.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),g=!1),b&&(u&&j.type!=="comment"&&j.type!=="newline"&&i(b,"TAB_AS_INDENT","Tabs are not allowed as indentation"),b=null),j.type){case"space":!t&&(n!=="doc-start"||r?.type!=="flow-collection")&&j.source.includes(" ")&&(b=j),d=!0;break;case"comment":{d||i(j,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const _=j.source.substring(1)||" ";p?p+=m+_:p=_,m="",u=!1;break}case"newline":u?p?p+=j.source:(!E||n!=="seq-item-ind")&&(c=!0):m+=j.source,u=!0,f=!0,(x||k)&&(y=j),d=!0;break;case"anchor":x&&i(j,"MULTIPLE_ANCHORS","A node can have at most one anchor"),j.source.endsWith(":")&&i(j.offset+j.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),x=j,N??(N=j.offset),u=!1,d=!1,g=!0;break;case"tag":{k&&i(j,"MULTIPLE_TAGS","A node can have at most one tag"),k=j,N??(N=j.offset),u=!1,d=!1,g=!0;break}case n:(x||k)&&i(j,"BAD_PROP_ORDER",`Anchors and tags must be after the ${j.source} indicator`),E&&i(j,"UNEXPECTED_TOKEN",`Unexpected ${j.source} in ${t??"collection"}`),E=j,u=n==="seq-item-ind"||n==="explicit-key-ind",d=!1;break;case"comma":if(t){v&&i(j,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),v=j,u=!1,d=!1;break}default:i(j,"UNEXPECTED_TOKEN",`Unexpected ${j.type} token`),u=!1,d=!1}const w=e[e.length-1],T=w?w.offset+w.source.length:a;return g&&r&&r.type!=="space"&&r.type!=="newline"&&r.type!=="comma"&&(r.type!=="scalar"||r.source!=="")&&i(r.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),b&&(u&&b.indent<=s||r?.type==="block-map"||r?.type==="block-seq")&&i(b,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:v,found:E,spaceBefore:c,comment:p,hasNewline:f,anchor:x,tag:k,newlineAfterProp:y,end:T,start:N??T}}function po(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(` +`))return!0;if(e.end){for(const t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(const t of e.items){for(const n of t.start)if(n.type==="newline")return!0;if(t.sep){for(const n of t.sep)if(n.type==="newline")return!0}if(po(t.key)||po(t.value))return!0}return!1;default:return!0}}function Kg(e,t,n){if(t?.type==="flow-collection"){const r=t.end[0];r.indent===e&&(r.source==="]"||r.source==="}")&&po(t)&&n(r,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function D3(e,t,n){const{uniqueKeys:r}=e.options;if(r===!1)return!1;const a=typeof r=="function"?r:(i,s)=>i===s||Lt(i)&&Lt(s)&&i.value===s.value;return t.some(i=>a(i.key,n))}const W1="All mapping items must start at the same column";function yL({composeNode:e,composeEmptyNode:t},n,r,a,i){const s=i?.nodeClass??or,l=new s(n.schema);n.atRoot&&(n.atRoot=!1);let c=r.offset,u=null;for(const d of r.items){const{start:p,key:m,sep:f,value:g}=d,b=Zi(p,{indicator:"explicit-key-ind",next:m??f?.[0],offset:c,onError:a,parentIndent:r.indent,startOnNewline:!0}),x=!b.found;if(x){if(m&&(m.type==="block-seq"?a(c,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in m&&m.indent!==r.indent&&a(c,"BAD_INDENT",W1)),!b.anchor&&!b.tag&&!f){u=b.end,b.comment&&(l.comment?l.comment+=` +`+b.comment:l.comment=b.comment);continue}(b.newlineAfterProp||po(m))&&a(m??p[p.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else b.found?.indent!==r.indent&&a(c,"BAD_INDENT",W1);n.atKey=!0;const k=b.end,y=m?e(n,m,b,a):t(n,k,p,null,b,a);n.schema.compat&&Kg(r.indent,m,a),n.atKey=!1,D3(n,l.items,y)&&a(k,"DUPLICATE_KEY","Map keys must be unique");const v=Zi(f??[],{indicator:"map-value-ind",next:g,offset:y.range[2],onError:a,parentIndent:r.indent,startOnNewline:!m||m.type==="block-scalar"});if(c=v.end,v.found){x&&(g?.type==="block-map"&&!v.hasNewline&&a(c,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),n.options.strict&&b.starte&&(e.type==="block-map"||e.type==="block-seq");function kL({composeNode:e,composeEmptyNode:t},n,r,a,i){const s=r.start.source==="{",l=s?"flow map":"flow sequence",c=i?.nodeClass??(s?or:ai),u=new c(n.schema);u.flow=!0;const d=n.atRoot;d&&(n.atRoot=!1),n.atKey&&(n.atKey=!1);let p=r.offset+r.start.source.length;for(let x=0;x0){const x=Io(g,b,n.options.strict,a);x.comment&&(u.comment?u.comment+=` +`+x.comment:u.comment=x.comment),u.range=[r.offset,b,x.offset]}else u.range=[r.offset,b,b];return u}function ju(e,t,n,r,a,i){const s=n.type==="block-map"?yL(e,t,n,r,i):n.type==="block-seq"?vL(e,t,n,r,i):kL(e,t,n,r,i),l=s.constructor;return a==="!"||a===l.tagName?(s.tag=l.tagName,s):(a&&(s.tag=a),s)}function wL(e,t,n,r,a){const i=r.tag,s=i?t.directives.tagName(i.source,m=>a(i,"TAG_RESOLVE_FAILED",m)):null;if(n.type==="block-seq"){const{anchor:m,newlineAfterProp:f}=r,g=m&&i?m.offset>i.offset?m:i:m??i;g&&(!f||f.offsetm.tag===s&&m.collection===l);if(!c){const m=t.schema.knownTags[s];if(m?.collection===l)t.schema.tags.push(Object.assign({},m,{default:!1})),c=m;else return m?a(i,"BAD_COLLECTION_TYPE",`${m.tag} used for ${l} collection, but expects ${m.collection??"scalar"}`,!0):a(i,"TAG_RESOLVE_FAILED",`Unresolved tag: ${s}`,!0),ju(e,t,n,a,s)}const u=ju(e,t,n,a,s,c),d=c.resolve?.(u,m=>a(i,"TAG_RESOLVE_FAILED",m),t.options)??u,p=Xt(d)?d:new bt(d);return p.range=u.range,p.tag=s,c?.format&&(p.format=c.format),p}function M3(e,t,n){const r=t.offset,a=SL(t,e.options.strict,n);if(!a)return{value:"",type:null,comment:"",range:[r,r,r]};const i=a.mode===">"?bt.BLOCK_FOLDED:bt.BLOCK_LITERAL,s=t.source?EL(t.source):[];let l=s.length;for(let b=s.length-1;b>=0;--b){const x=s[b][1];if(x===""||x==="\r")l=b;else break}if(l===0){const b=a.chomp==="+"&&s.length>0?` +`.repeat(Math.max(1,s.length-1)):"";let x=r+a.length;return t.source&&(x+=t.source.length),{value:b,type:i,comment:a.comment,range:[r,x,x]}}let c=t.indent+a.indent,u=t.offset+a.length,d=0;for(let b=0;bc&&(c=x.length);else{x.length=l;--b)s[b][0].length>c&&(l=b+1);let p="",m="",f=!1;for(let b=0;bc||k[0]===" "?(m===" "?m=` +`:!f&&m===` +`&&(m=` + +`),p+=m+x.slice(c)+k,m=` +`,f=!0):k===""?m===` +`?p+=` +`:m=` +`:(p+=m+k,m=" ",f=!1)}switch(a.chomp){case"-":break;case"+":for(let b=l;bn(r+m,f,g);switch(a){case"scalar":l=bt.PLAIN,c=CL(i,u);break;case"single-quoted-scalar":l=bt.QUOTE_SINGLE,c=NL(i,u);break;case"double-quoted-scalar":l=bt.QUOTE_DOUBLE,c=TL(i,u);break;default:return n(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[r,r+i.length,r+i.length]}}const d=r+i.length,p=Io(s,d,t,n);return{value:c,type:l,comment:p.comment,range:[r,d,p.offset]}}function CL(e,t){let n="";switch(e[0]){case" ":n="a tab character";break;case",":n="flow indicator character ,";break;case"%":n="directive indicator character %";break;case"|":case">":{n=`block scalar indicator ${e[0]}`;break}case"@":case"`":{n=`reserved character ${e[0]}`;break}}return n&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${n}`),P3(e)}function NL(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),P3(e.slice(1,-1)).replace(/''/g,"'")}function P3(e){let t,n;try{t=new RegExp(`(.*?)(?i?e.slice(i,r+1):a)}else n+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),n}function AL(e,t){let n="",r=e[t+1];for(;(r===" "||r===" "||r===` +`||r==="\r")&&!(r==="\r"&&e[t+2]!==` +`);)r===` +`&&(n+=` +`),t+=1,r=e[t+1];return n||(n=" "),{fold:n,offset:t}}const IL={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` +`,r:"\r",t:" ",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function RL(e,t,n,r){const a=e.substr(t,n),s=a.length===n&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;try{return String.fromCodePoint(s)}catch{const l=e.substr(t-2,n+2);return r(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${l}`),l}}function F3(e,t,n,r){const{value:a,type:i,comment:s,range:l}=t.type==="block-scalar"?M3(e,t,r):L3(t,e.options.strict,r),c=n?e.directives.tagName(n.source,p=>r(n,"TAG_RESOLVE_FAILED",p)):null;let u;e.options.stringKeys&&e.atKey?u=e.schema[Fr]:c?u=_L(e.schema,a,c,n,r):t.type==="scalar"?u=jL(e,a,t,r):u=e.schema[Fr];let d;try{const p=u.resolve(a,m=>r(n??t,"TAG_RESOLVE_FAILED",m),e.options);d=Lt(p)?p:new bt(p)}catch(p){const m=p instanceof Error?p.message:String(p);r(n??t,"TAG_RESOLVE_FAILED",m),d=new bt(a)}return d.range=l,d.source=a,i&&(d.type=i),c&&(d.tag=c),u.format&&(d.format=u.format),s&&(d.comment=s),d}function _L(e,t,n,r,a){if(n==="!")return e[Fr];const i=[];for(const l of e.tags)if(!l.collection&&l.tag===n)if(l.default&&l.test)i.push(l);else return l;for(const l of i)if(l.test?.test(t))return l;const s=e.knownTags[n];return s&&!s.collection?(e.tags.push(Object.assign({},s,{default:!1,test:void 0})),s):(a(r,"TAG_RESOLVE_FAILED",`Unresolved tag: ${n}`,n!=="tag:yaml.org,2002:str"),e[Fr])}function jL({atKey:e,directives:t,schema:n},r,a,i){const s=n.tags.find(l=>(l.default===!0||e&&l.default==="key")&&l.test?.test(r))||n[Fr];if(n.compat){const l=n.compat.find(c=>c.default&&c.test?.test(r))??n[Fr];if(s.tag!==l.tag){const c=t.tagString(s.tag),u=t.tagString(l.tag),d=`Value may be parsed as either ${c} or ${u}`;i(a,"TAG_RESOLVE_FAILED",d,!0)}}return s}function OL(e,t,n){if(t){n??(n=t.length);for(let r=n-1;r>=0;--r){let a=t[r];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++r];a?.type==="space";)e+=a.source.length,a=t[++r];break}}return e}const DL={composeNode:B3,composeEmptyNode:Ix};function B3(e,t,n,r){const a=e.atKey,{spaceBefore:i,comment:s,anchor:l,tag:c}=n;let u,d=!0;switch(t.type){case"alias":u=ML(e,t,r),(l||c)&&r(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":u=F3(e,t,c,r),l&&(u.anchor=l.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":try{u=wL(DL,e,t,n,r),l&&(u.anchor=l.source.substring(1))}catch(p){const m=p instanceof Error?p.message:String(p);r(t,"RESOURCE_EXHAUSTION",m)}break;default:{const p=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;r(t,"UNEXPECTED_TOKEN",p),d=!1}}return u??(u=Ix(e,t.offset,void 0,null,n,r)),l&&u.anchor===""&&r(l,"BAD_ALIAS","Anchor cannot be an empty string"),a&&e.options.stringKeys&&(!Lt(u)||typeof u.value!="string"||u.tag&&u.tag!=="tag:yaml.org,2002:str")&&r(c??t,"NON_STRING_KEY","With stringKeys, all keys must be strings"),i&&(u.spaceBefore=!0),s&&(t.type==="scalar"&&t.source===""?u.comment=s:u.commentBefore=s),e.options.keepSourceTokens&&d&&(u.srcToken=t),u}function Ix(e,t,n,r,{spaceBefore:a,comment:i,anchor:s,tag:l,end:c},u){const d={type:"scalar",offset:OL(t,n,r),indent:-1,source:""},p=F3(e,d,l,u);return s&&(p.anchor=s.source.substring(1),p.anchor===""&&u(s,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(p.spaceBefore=!0),i&&(p.comment=i,p.range[2]=c),p}function ML({options:e},{offset:t,source:n,end:r},a){const i=new yx(n.substring(1));i.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),i.source.endsWith(":")&&a(t+n.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const s=t+n.length,l=Io(r,s,e.strict,a);return i.range=[t,s,l.offset],l.comment&&(i.comment=l.comment),i}function LL(e,t,{offset:n,start:r,value:a,end:i},s){const l=Object.assign({_directives:t},e),c=new Ao(void 0,l),u={atKey:!1,atRoot:!0,directives:c.directives,options:c.options,schema:c.schema},d=Zi(r,{indicator:"doc-start",next:a??i?.[0],offset:n,onError:s,parentIndent:0,startOnNewline:!0});d.found&&(c.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!d.hasNewline&&s(d.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),c.contents=a?B3(u,a,d,s):Ix(u,d.end,r,null,d,s);const p=c.contents.range[2],m=Io(i,p,!1,s);return m.comment&&(c.comment=m.comment),c.range=[n,p,m.offset],c}function js(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];const{offset:t,source:n}=e;return[t,t+(typeof n=="string"?n.length:1)]}function K1(e){let t="",n=!1,r=!1;for(let a=0;a{const s=js(n);i?this.warnings.push(new xL(s,r,a)):this.errors.push(new Mi(s,r,a))},this.directives=new Tn({version:t.version||"1.2"}),this.options=t}decorate(t,n){const{comment:r,afterEmptyLine:a}=K1(this.prelude);if(r){const i=t.contents;if(n)t.comment=t.comment?`${t.comment} +${r}`:r;else if(a||t.directives.docStart||!i)t.commentBefore=r;else if(Yt(i)&&!i.flow&&i.items.length>0){let s=i.items[0];Gt(s)&&(s=s.key);const l=s.commentBefore;s.commentBefore=l?`${r} +${l}`:r}else{const s=i.commentBefore;i.commentBefore=s?`${r} +${s}`:r}}if(n){for(let i=0;i{const i=js(t);i[0]+=n,this.onError(i,"BAD_DIRECTIVE",r,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{const n=LL(this.options,this.directives,t,this.onError);this.atDirectives&&!n.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(n,!1),this.doc&&(yield this.doc),this.doc=n,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{const n=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,r=new Mi(js(t),"UNEXPECTED_TOKEN",n);this.atDirectives||!this.doc?this.errors.push(r):this.doc.errors.push(r);break}case"doc-end":{if(!this.doc){const r="Unexpected doc-end without preceding document";this.errors.push(new Mi(js(t),"UNEXPECTED_TOKEN",r));break}this.doc.directives.docEnd=!0;const n=Io(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),n.comment){const r=this.doc.comment;this.doc.comment=r?`${r} +${n.comment}`:n.comment}this.doc.range[2]=n.offset;break}default:this.errors.push(new Mi(js(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,n=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){const r=Object.assign({_directives:this.directives},this.options),a=new Ao(void 0,r);this.atDirectives&&this.onError(n,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,n,n],this.decorate(a,!1),yield a}}}function PL(e,t=!0,n){if(e){const r=(a,i,s)=>{const l=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(n)n(l,i,s);else throw new Mi([l,l+1],i,s)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return L3(e,t,r);case"block-scalar":return M3({options:{strict:t}},e,r)}}return null}function FL(e,t){const{implicitKey:n=!1,indent:r,inFlow:a=!1,offset:i=-1,type:s="PLAIN"}=t,l=No({type:s,value:e},{implicitKey:n,indent:r>0?" ".repeat(r):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),c=t.end??[{type:"newline",offset:-1,indent:r,source:` +`}];switch(l[0]){case"|":case">":{const u=l.indexOf(` +`),d=l.substring(0,u),p=l.substring(u+1)+` +`,m=[{type:"block-scalar-header",offset:i,indent:r,source:d}];return U3(m,c)||m.push({type:"newline",offset:-1,indent:r,source:` +`}),{type:"block-scalar",offset:i,indent:r,props:m,source:p}}case'"':return{type:"double-quoted-scalar",offset:i,indent:r,source:l,end:c};case"'":return{type:"single-quoted-scalar",offset:i,indent:r,source:l,end:c};default:return{type:"scalar",offset:i,indent:r,source:l,end:c}}}function BL(e,t,n={}){let{afterKey:r=!1,implicitKey:a=!1,inFlow:i=!1,type:s}=n,l="indent"in e?e.indent:null;if(r&&typeof l=="number"&&(l+=2),!s)switch(e.type){case"single-quoted-scalar":s="QUOTE_SINGLE";break;case"double-quoted-scalar":s="QUOTE_DOUBLE";break;case"block-scalar":{const u=e.props[0];if(u.type!=="block-scalar-header")throw new Error("Invalid block scalar header");s=u.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:s="PLAIN"}const c=No({type:s,value:t},{implicitKey:a||l===null,indent:l!==null&&l>0?" ".repeat(l):"",inFlow:i,options:{blockQuote:!0,lineWidth:-1}});switch(c[0]){case"|":case">":$L(e,c);break;case'"':Ou(e,c,"double-quoted-scalar");break;case"'":Ou(e,c,"single-quoted-scalar");break;default:Ou(e,c,"scalar")}}function $L(e,t){const n=t.indexOf(` +`),r=t.substring(0,n),a=t.substring(n+1)+` +`;if(e.type==="block-scalar"){const i=e.props[0];if(i.type!=="block-scalar-header")throw new Error("Invalid block scalar header");i.source=r,e.source=a}else{const{offset:i}=e,s="indent"in e?e.indent:-1,l=[{type:"block-scalar-header",offset:i,indent:s,source:r}];U3(l,"end"in e?e.end:void 0)||l.push({type:"newline",offset:-1,indent:s,source:` +`});for(const c of Object.keys(e))c!=="type"&&c!=="offset"&&delete e[c];Object.assign(e,{type:"block-scalar",indent:s,props:l,source:a})}}function U3(e,t){if(t)for(const n of t)switch(n.type){case"space":case"comment":e.push(n);break;case"newline":return e.push(n),!0}return!1}function Ou(e,t,n){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=n,e.source=t;break;case"block-scalar":{const r=e.props.slice(1);let a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(const i of r)i.offset+=a;delete e.props,Object.assign(e,{type:n,source:t,end:r});break}case"block-map":case"block-seq":{const a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:` +`};delete e.items,Object.assign(e,{type:n,source:t,end:[a]});break}default:{const r="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(i=>i.type==="space"||i.type==="comment"||i.type==="newline"):[];for(const i of Object.keys(e))i!=="type"&&i!=="offset"&&delete e[i];Object.assign(e,{type:n,indent:r,source:t,end:a})}}}const UL=e=>"type"in e?Jl(e):Tl(e);function Jl(e){switch(e.type){case"block-scalar":{let t="";for(const n of e.props)t+=Jl(n);return t+e.source}case"block-map":case"block-seq":{let t="";for(const n of e.items)t+=Tl(n);return t}case"flow-collection":{let t=e.start.source;for(const n of e.items)t+=Tl(n);for(const n of e.end)t+=n.source;return t}case"document":{let t=Tl(e);if(e.end)for(const n of e.end)t+=n.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(const n of e.end)t+=n.source;return t}}}function Tl({start:e,key:t,sep:n,value:r}){let a="";for(const i of e)a+=i.source;if(t&&(a+=Jl(t)),n)for(const i of n)a+=i.source;return r&&(a+=Jl(r)),a}const Yg=Symbol("break visit"),zL=Symbol("skip children"),z3=Symbol("remove item");function ii(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),q3(Object.freeze([]),e,t)}ii.BREAK=Yg;ii.SKIP=zL;ii.REMOVE=z3;ii.itemAtPath=(e,t)=>{let n=e;for(const[r,a]of t){const i=n?.[r];if(i&&"items"in i)n=i.items[a];else return}return n};ii.parentCollection=(e,t)=>{const n=ii.itemAtPath(e,t.slice(0,-1)),r=t[t.length-1][0],a=n?.[r];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function q3(e,t,n){let r=n(t,e);if(typeof r=="symbol")return r;for(const a of["key","value"]){const i=t[a];if(i&&"items"in i){for(let s=0;s!!e&&"items"in e,HL=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function GL(e){switch(e){case Bc:return"";case $c:return"";case Uc:return"";case mo:return"";default:return JSON.stringify(e)}}function H3(e){switch(e){case Bc:return"byte-order-mark";case $c:return"doc-mode";case Uc:return"flow-error-end";case mo:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case` +`:case`\r +`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}const kme=Object.freeze(Object.defineProperty({__proto__:null,BOM:Bc,DOCUMENT:$c,FLOW_END:Uc,SCALAR:mo,createScalarToken:FL,isCollection:qL,isScalar:HL,prettyToken:GL,resolveAsScalar:PL,setScalarValue:BL,stringify:UL,tokenType:H3,visit:ii},Symbol.toStringTag,{value:"Module"}));function br(e){switch(e){case void 0:case" ":case` +`:case"\r":case" ":return!0;default:return!1}}const Y1=new Set("0123456789ABCDEFabcdef"),VL=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),Ko=new Set(",[]{}"),WL=new Set(` ,[]{} +\r `),Du=e=>!e||WL.has(e);let KL=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,n=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!n;let r=this.next??"stream";for(;r&&(n||this.hasChars(1));)r=yield*this.parseNext(r)}atLineEnd(){let t=this.pos,n=this.buffer[t];for(;n===" "||n===" ";)n=this.buffer[++t];return!n||n==="#"||n===` +`?!0:n==="\r"?this.buffer[t+1]===` +`:!1}charAt(t){return this.buffer[this.pos+t]}continueScalar(t){let n=this.buffer[t];if(this.indentNext>0){let r=0;for(;n===" ";)n=this.buffer[++r+t];if(n==="\r"){const a=this.buffer[r+t+1];if(a===` +`||!a&&!this.atEnd)return t+r+1}return n===` +`||r>=this.indentNext||!n&&!this.atEnd?t+r:-1}if(n==="-"||n==="."){const r=this.buffer.substr(t,3);if((r==="---"||r==="...")&&br(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&tthis.indentValue&&!br(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){const[t,n]=this.peek(2);if(!n&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&br(n)){const r=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=r,"block-start"}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);const t=this.getLine();if(t===null)return this.setNext("doc");let n=yield*this.pushIndicators();switch(t[n]){case"#":yield*this.pushCount(t.length-n);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(Du),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return n+=yield*this.parseBlockScalarHeader(),n+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-n),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,n,r=-1;do t=yield*this.pushNewline(),t>0?(n=yield*this.pushSpaces(!1),this.indentValue=r=n):n=0,n+=yield*this.pushSpaces(!0);while(t+n>0);const a=this.getLine();if(a===null)return this.setNext("flow");if((r!==-1&&r"0"&&n<="9")this.blockScalarIndent=Number(n)-1;else if(n!=="-")break}return yield*this.pushUntil(n=>br(n)||n==="#")}*parseBlockScalar(){let t=this.pos-1,n=0,r;e:for(let i=this.pos;r=this.buffer[i];++i)switch(r){case" ":n+=1;break;case` +`:t=i,n=0;break;case"\r":{const s=this.buffer[i+1];if(!s&&!this.atEnd)return this.setNext("block-scalar");if(s===` +`)break}default:break e}if(!r&&!this.atEnd)return this.setNext("block-scalar");if(n>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=n:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{const i=this.continueScalar(t+1);if(i===-1)break;t=this.buffer.indexOf(` +`,i)}while(t!==-1);if(t===-1){if(!this.atEnd)return this.setNext("block-scalar");t=this.buffer.length}}let a=t+1;for(r=this.buffer[a];r===" ";)r=this.buffer[++a];if(r===" "){for(;r===" "||r===" "||r==="\r"||r===` +`;)r=this.buffer[++a];t=a-1}else if(!this.blockScalarKeep)do{let i=t-1,s=this.buffer[i];s==="\r"&&(s=this.buffer[--i]);const l=i;for(;s===" ";)s=this.buffer[--i];if(s===` +`&&i>=this.pos&&i+1+n>l)t=i;else break}while(!0);return yield mo,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){const t=this.flowLevel>0;let n=this.pos-1,r=this.pos-1,a;for(;a=this.buffer[++r];)if(a===":"){const i=this.buffer[r+1];if(br(i)||t&&Ko.has(i))break;n=r}else if(br(a)){let i=this.buffer[r+1];if(a==="\r"&&(i===` +`?(r+=1,a=` +`,i=this.buffer[r+1]):n=r),i==="#"||t&&Ko.has(i))break;if(a===` +`){const s=this.continueScalar(r+1);if(s===-1)break;r=Math.max(r,s-2)}}else{if(t&&Ko.has(a))break;n=r}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield mo,yield*this.pushToIndex(n+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,n){const r=this.buffer.slice(this.pos,t);return r?(yield r,this.pos+=r.length,r.length):(n&&(yield""),0)}*pushIndicators(){let t=0;e:for(;;){switch(this.charAt(0)){case"!":t+=yield*this.pushTag(),t+=yield*this.pushSpaces(!0);continue e;case"&":t+=yield*this.pushUntil(Du),t+=yield*this.pushSpaces(!0);continue e;case"-":case"?":case":":{const n=this.flowLevel>0,r=this.charAt(1);if(br(r)||n&&Ko.has(r)){n?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,t+=yield*this.pushCount(1),t+=yield*this.pushSpaces(!0);continue e}}}break e}return t}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,n=this.buffer[t];for(;!br(n)&&n!==">";)n=this.buffer[++t];return yield*this.pushToIndex(n===">"?t+1:t,!1)}else{let t=this.pos+1,n=this.buffer[t];for(;n;)if(VL.has(n))n=this.buffer[++t];else if(n==="%"&&Y1.has(this.buffer[t+1])&&Y1.has(this.buffer[t+2]))n=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){const t=this.buffer[this.pos];return t===` +`?yield*this.pushCount(1):t==="\r"&&this.charAt(1)===` +`?yield*this.pushCount(2):0}*pushSpaces(t){let n=this.pos-1,r;do r=this.buffer[++n];while(r===" "||t&&r===" ");const a=n-this.pos;return a>0&&(yield this.buffer.substr(this.pos,a),this.pos=n),a}*pushUntil(t){let n=this.pos,r=this.buffer[n];for(;!t(r);)r=this.buffer[++n];return yield*this.pushToIndex(n,!1)}};class YL{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let n=0,r=this.lineStarts.length;for(;n>1;this.lineStarts[i]=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function Ql(e,t){if(t.length<1e5)Array.prototype.push.apply(e,t);else for(let n=0;n0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){const t=this.peek(1);if(this.type==="doc-end"&&t?.type!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){const n=t??this.stack.pop();if(!n)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield n;else{const r=this.peek(1);switch(n.type==="block-scalar"?n.indent="indent"in r?r.indent:0:n.type==="flow-collection"&&r.type==="document"&&(n.indent=0),n.type==="flow-collection"&&Z1(n),r.type){case"document":r.value=n;break;case"block-scalar":r.props.push(n);break;case"block-map":{const a=r.items[r.items.length-1];if(a.value){r.items.push({start:[],key:n,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=n;else{Object.assign(a,{key:n,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{const a=r.items[r.items.length-1];a.value?r.items.push({start:[],value:n}):a.value=n;break}case"flow-collection":{const a=r.items[r.items.length-1];!a||a.value?r.items.push({start:[],key:n,sep:[]}):a.sep?a.value=n:Object.assign(a,{key:n,sep:[]});return}default:yield*this.pop(),yield*this.pop(n)}if((r.type==="document"||r.type==="block-map"||r.type==="block-seq")&&(n.type==="block-map"||n.type==="block-seq")){const a=n.items[n.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&X1(a.start)===-1&&(n.indent===0||a.start.every(i=>i.type!=="comment"||i.indent=t.indent){const r=!this.onKeyLine&&this.indent===t.indent,a=r&&(n.sep||n.explicitKey)&&this.type!=="seq-item-ind";let i=[];if(a&&n.sep&&!n.value){const s=[];for(let l=0;lt.indent&&(s.length=0);break;default:s.length=0}}s.length>=2&&(i=n.sep.splice(s[1]))}switch(this.type){case"anchor":case"tag":a||n.value?(i.push(this.sourceToken),t.items.push({start:i}),this.onKeyLine=!0):n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"explicit-key-ind":!n.sep&&!n.explicitKey?(n.start.push(this.sourceToken),n.explicitKey=!0):a||n.value?(i.push(this.sourceToken),t.items.push({start:i,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(n.explicitKey)if(n.sep)if(n.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(ha(n.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:i,key:null,sep:[this.sourceToken]}]});else if(G3(n.key)&&!ha(n.sep,"newline")){const s=yi(n.start),l=n.key,c=n.sep;c.push(this.sourceToken),delete n.key,delete n.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:l,sep:c}]})}else i.length>0?n.sep=n.sep.concat(i,this.sourceToken):n.sep.push(this.sourceToken);else if(ha(n.start,"newline"))Object.assign(n,{key:null,sep:[this.sourceToken]});else{const s=yi(n.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]})}else n.sep?n.value||a?t.items.push({start:i,key:null,sep:[this.sourceToken]}):ha(n.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):n.sep.push(this.sourceToken):Object.assign(n,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const s=this.flowScalar(this.type);a||n.value?(t.items.push({start:i,key:s,sep:[]}),this.onKeyLine=!0):n.sep?this.stack.push(s):(Object.assign(n,{key:s,sep:[]}),this.onKeyLine=!0);return}default:{const s=this.startBlockValue(t);if(s){if(s.type==="block-seq"){if(!n.explicitKey&&n.sep&&!ha(n.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else r&&t.items.push({start:i});this.stack.push(s);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){const n=t.items[t.items.length-1];switch(this.type){case"newline":if(n.value){const r="end"in n.value?n.value.end:void 0;(Array.isArray(r)?r[r.length-1]:void 0)?.type==="comment"?r?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(n.start,t.indent)){const a=t.items[t.items.length-2]?.value?.end;if(Array.isArray(a)){Ql(a,n.start),a.push(this.sourceToken),t.items.pop();return}}n.start.push(this.sourceToken)}return;case"anchor":case"tag":if(n.value||this.indent<=t.indent)break;n.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;n.value||ha(n.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return}if(this.indent>t.indent){const r=this.startBlockValue(t);if(r){this.stack.push(r);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){const n=t.items[t.items.length-1];if(this.type==="flow-error-end"){let r;do yield*this.pop(),r=this.peek(1);while(r?.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!n||n.sep?t.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return;case"map-value-ind":!n||n.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):n.sep?n.sep.push(this.sourceToken):Object.assign(n,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!n||n.value?t.items.push({start:[this.sourceToken]}):n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const a=this.flowScalar(this.type);!n||n.value?t.items.push({start:[],key:a,sep:[]}):n.sep?this.stack.push(a):Object.assign(n,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}const r=this.startBlockValue(t);r?this.stack.push(r):(yield*this.pop(),yield*this.step())}else{const r=this.peek(2);if(r.type==="block-map"&&(this.type==="map-value-ind"&&r.indent===t.indent||this.type==="newline"&&!r.items[r.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&r.type!=="flow-collection"){const a=Yo(r),i=yi(a);Z1(t);const s=t.end.splice(1,t.end.length);s.push(this.sourceToken);const l={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:i,key:t,sep:s}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=l}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let n=this.source.indexOf(` +`)+1;for(;n!==0;)this.onNewLine(this.offset+n),n=this.source.indexOf(` +`,n)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const n=Yo(t),r=yi(n);return r.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const n=Yo(t),r=yi(n);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,n){return this.type!=="comment"||this.indent<=n?!1:t.every(r=>r.type==="newline"||r.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};function W3(e){const t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new YL||null,prettyErrors:t}}function Eme(e,t={}){const{lineCounter:n,prettyErrors:r}=W3(t),a=new V3(n?.addNewLine),i=new $3(t),s=Array.from(i.compose(a.parse(e)));if(r&&n)for(const l of s)l.errors.forEach(Zl(e,n)),l.warnings.forEach(Zl(e,n));return s.length>0?s:Object.assign([],{empty:!0},i.streamInfo())}function XL(e,t={}){const{lineCounter:n,prettyErrors:r}=W3(t),a=new V3(n?.addNewLine),i=new $3(t);let s=null;for(const l of i.compose(a.parse(e),!0,e.length))if(!s)s=l;else if(s.options.logLevel!=="silent"){s.errors.push(new Mi(l.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return r&&n&&(s.errors.forEach(Zl(e,n)),s.warnings.forEach(Zl(e,n))),s}function K3(e,t,n){let r;typeof t=="function"?r=t:n===void 0&&t&&typeof t=="object"&&(n=t);const a=XL(e,n);if(!a)return null;if(a.warnings.forEach(i=>p3(a.options.logLevel,i)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:r},n))}function Y3(e,t,n){let r=null;if(typeof t=="function"||Array.isArray(t)?r=t:n===void 0&&t&&(n=t),typeof n=="string"&&(n=n.length),typeof n=="number"){const a=Math.round(n);n=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){const{keepUndefined:a}=n??t??{};if(!a)return}return us(e)&&!r?e.toString(n):new Ao(e,r,n).toString(n)}const Xo=229;function ZL(e){const t=e.nativeEvent;return!!(e.isComposing||t?.isComposing||e.keyCode===Xo||e.which===Xo||t?.keyCode===Xo||t?.which===Xo)}function En(e){return e.key==="Enter"&&ZL(e)}function JL(){const[e,t]=h.useState(""),[n,r]=h.useState(""),[a,i]=h.useState(!1),[s,l]=h.useState(null),[c,u]=h.useState(null),[d,p]=h.useState(null),[m,f]=h.useState(!0),[g,b]=h.useState(!1),[x,k]=h.useState(!1),[y,v]=h.useState(null),[E,N]=h.useState(null),[w,T]=h.useState(null),j=h.useRef(""),_=h.useRef(n);_.current=n;const C=n!==j.current,O=h.useRef(C);O.current=C;const{subscribe:I}=Rc(),z=h.useRef(!1),M=h.useRef(null),P=h.useCallback((re,ne="refresh")=>{t(re.path),r(re.raw),j.current=re.raw,i(re.exists),l(re.validation),u(re.reload??null),p({source:ne,at:Date.now()})},[]),B=h.useRef(P);B.current=P;const $=h.useCallback(re=>{M.current&&clearTimeout(M.current),M.current=setTimeout(()=>{(async()=>{try{const de=await(await Oe("/api/config/validate",{method:"POST",body:JSON.stringify({raw:re})})).json();de&&typeof de.valid=="boolean"&&l(de)}catch{}})()},400)},[]),U=h.useCallback(re=>{r(re),$(re)},[$]),q=h.useRef(),A=h.useCallback(async()=>{f(!0),v(null);try{const re=await Oe("/api/config"),ne=await re.json();if(!re.ok)throw new Error(ne.error||"Failed to load config");P(ne,"refresh"),z.current=!0}catch(re){v(re instanceof Error?re.message:"Failed to load config")}finally{f(!1)}},[P]);q.current=A,h.useEffect(()=>{A()},[A]),h.useEffect(()=>()=>{M.current&&clearTimeout(M.current)},[]),h.useEffect(()=>I(ne=>{if(ne?.type==="websocket-reconnected"){z.current&&q.current?.();return}if(ne?.type!=="config:reloaded"||!z.current)return;const de=ne,Se=de.source??"watcher";if(O.current&&Se==="watcher"){T("Config was changed on disk by an external edit. Your unsaved draft is kept — click Refresh to discard and load the new version."),l(de.validation),u(de.reload??null),t(de.path),i(!0),p({source:Se,at:Date.now()});return}B.current({exists:!0,path:de.path,raw:de.raw??"",validation:de.validation,reload:de.reload},Se),T(Se==="watcher"?"Config was updated on disk — the new version is now loaded.":null)}),[I]);const K=h.useCallback(async()=>{const re=_.current;b(!0),v(null),N(null);try{const ne=await Oe("/api/config",{method:"PUT",body:JSON.stringify({raw:re})}),de=await ne.json();if(!ne.ok)throw new Error(de.error||de.validation?.errors?.join(", ")||"Failed to save config");P(de,"ui-save"),N("Saved and reloaded"),T(null)}catch(ne){v(ne instanceof Error?ne.message:"Failed to save config")}finally{b(!1)}},[P]),V=h.useCallback(async()=>{b(!0),v(null),N(null);try{const re=await Oe("/api/config/reload",{method:"POST"}),ne=await re.json();if(!re.ok)throw new Error(ne.error||"Failed to reload config");P(ne,"ui-reload"),N("Reloaded current config")}catch(re){v(re instanceof Error?re.message:"Failed to reload config")}finally{b(!1)}},[P]),L=h.useCallback(async()=>{k(!0),v(null);try{const ne=await(await Oe("/api/config/open",{method:"POST"})).json();if(!ne.success&&ne.error)throw new Error(ne.error);N(`Config file: ${ne.path}`)}catch(re){v(re instanceof Error?re.message:"Failed to open config file")}finally{k(!1)}},[]),le=h.useCallback(()=>T(null),[]);return{path:e,raw:n,setRaw:U,exists:a,validation:s,reload:c,lastReloadInfo:d,isDirty:C,externalChangeNotice:w,dismissExternalNotice:le,loading:m,saving:g,opening:x,error:y,message:E,refresh:A,save:K,reloadConfig:V,openFile:L}}function Rx(e){const t=e.fullPath||e.path||"";return typeof t=="string"?t.trim().replace(/[\\/]+$/,""):""}function QL(e,t){const n=Rx(t);return!!(n&&e.alwaysOn?.projects?.[n]?.enabled===!0)}function e9(e,t,n){const r=Rx(t);return r?{...e,alwaysOn:{...e.alwaysOn,projects:{...e.alwaysOn?.projects,[r]:{...e.alwaysOn?.projects?.[r],enabled:n}}}}:e}const t9=[{id:"advanced",labelKey:"runtime",descriptionKey:"runtime"},{id:"models",labelKey:"models",descriptionKey:"models"},{id:"agents",labelKey:"agents",descriptionKey:"agents"},{id:"alwaysOn",labelKey:"alwaysOn",descriptionKey:"alwaysOn"},{id:"memory",labelKey:"memory",descriptionKey:"memory"},{id:"tools",labelKey:"tools",descriptionKey:"tools"},{id:"router",labelKey:"router",descriptionKey:"router"},{id:"gateway",labelKey:"gateway",descriptionKey:"gateway"},{id:"customEnv",labelKey:"customEnv",descriptionKey:"customEnv"}],n9=[{id:"basic",sections:["models","agents"]},{id:"features",sections:["router","memory","tools","alwaysOn","gateway"]},{id:"advanced",sections:["advanced","customEnv"]}],r9={models:ax,agents:rx,router:AO,memory:bT,tools:Ic,alwaysOn:ux,gateway:eD,advanced:lx,customEnv:sx},a9=[{key:"processEnv",labelKey:"processEnv"},{key:"memory",labelKey:"memory"},{key:"router",labelKey:"router"},{key:"gateway",labelKey:"gateway"}];function i9(e){return e?e.error?"error":e.reloaded?"ok":e.skipped?"skipped":"unknown":"unknown"}function s9(e){return e==="ok"?"bg-green-500":e==="error"?"bg-destructive":"bg-muted-foreground/60"}function o9(e,t){return t?e==="processEnv"?{state:"ok",detailKey:"processEnv.applied"}:e==="memory"?t?.memory?.enabled===!1?{state:"skipped",detailKey:"memory.disabled"}:{state:"ok",detailKey:"memory.enabled"}:e==="router"?t?.router?.enabled===!1?{state:"skipped",detailKey:"router.disabled"}:{state:"ok",detailKey:"router.enabled"}:t?.gateway?.enabled?{state:"ok",detailKey:"gateway.enabled"}:{state:"skipped",detailKey:"gateway.disabled"}:{state:"unknown",detailKey:"pending"}}function l9(e,t,n){const r=o9(e,t),a=n?.[e];if(!a)return r;if(a.error)return{state:"error",detailKey:r.detailKey,detail:a.error};if((e==="memory"||e==="router"||e==="gateway")&&r.state==="skipped")return r;const i=i9(a);return i==="unknown"||i==="skipped"?r:{state:i,detailKey:r.detailKey,detail:a.note}}function c9({config:e,reload:t}){const{t:n}=Je("settings");return o.jsx("div",{className:"grid grid-cols-1 gap-3 md:grid-cols-3",children:a9.map(r=>{const a=l9(r.key,e,t);return o.jsxs("div",{className:"rounded-lg bg-muted/30 px-3.5 py-2.5",children:[o.jsxs("div",{className:"flex items-center gap-2 text-[13px] font-semibold leading-5 text-foreground",children:[o.jsx("span",{className:oe("h-2.5 w-2.5 rounded-full",s9(a.state))}),o.jsx("span",{children:n(`pilotDeckConfig.status.subsystems.${r.labelKey}.label`)})]}),o.jsx("div",{className:oe("mt-0.5 text-[11px] leading-4",a.state==="error"?"text-destructive":"text-muted-foreground"),children:a.detail??n(`pilotDeckConfig.status.subsystems.${a.detailKey}`)})]},r.key)})})}function u9(e){try{const t=K3(e);return t&&typeof t=="object"&&!Array.isArray(t)?t:null}catch{return null}}function d9(e){return Y3(e,{indent:2,lineWidth:0})}function je(e,t,n){if(t.length===0)return n;const[r,...a]=t,i=typeof r=="number",s=e??(i?[]:{}),l=i?[...s]:{...s};return l[r]=a.length===0?n:je(s?.[r]??(typeof a[0]=="number"?[]:{}),a,n),l}function La(e,t,n){const r=`${t}/`;return typeof e!="string"||!e.startsWith(r)?e:`${n}/${e.slice(r.length)}`}function p9(e,t,n){let r=e;const a=La(r.agent?.model,t,n);a!==r.agent?.model&&(r=je(r,["agent","model"],a));const i=La(r.agent?.subagents?.default,t,n);i!==r.agent?.subagents?.default&&(r=je(r,["agent","subagents","default"],i));const s=La(r.memory?.model,t,n);s!==r.memory?.model&&(r=je(r,["memory","model"],s));const l=r.memory?.llm;l&&typeof l=="object"&&!Array.isArray(l)&&l.provider===t&&(r=je(r,["memory","llm","provider"],n));const c=r.router?.scenarios;if(c){const m=Object.fromEntries(Object.entries(c).map(([f,g])=>[f,La(g,t,n)]));Object.entries(c).some(([f,g])=>m[f]!==g)&&(r=je(r,["router","scenarios"],m))}const u=r.router?.fallback;if(u){const m=Object.fromEntries(Object.entries(u).map(([f,g])=>[f,g.map(b=>La(b,t,n))]));Object.entries(u).some(([f,g])=>m[f].some((b,x)=>b!==g[x]))&&(r=je(r,["router","fallback"],m))}const d=La(r.router?.tokenSaver?.judge,t,n);d!==r.router?.tokenSaver?.judge&&(r=je(r,["router","tokenSaver","judge"],d));const p=r.router?.tokenSaver?.tiers;if(p){const m=Object.fromEntries(Object.entries(p).map(([f,g])=>[f,{...g,model:La(g.model,t,n)}]));Object.entries(p).some(([f,g])=>m[f].model!==g.model)&&(r=je(r,["router","tokenSaver","tiers"],m))}return r}const m9="********";function fs(e){return e===m9}function f9(e){return!e||fs(e)||e==="PLACEHOLDER_RUN_ONBOARDING_TO_REPLACE"||e.startsWith("PLACEHOLDER_")?"":e}function J1(e){const t=(e??"").trim();return!!t&&!fs(t)&&t!=="PLACEHOLDER_RUN_ONBOARDING_TO_REPLACE"&&!t.startsWith("PLACEHOLDER_")}function h9(e,t,n="Custom Provider"){if(t?.displayName)return t.displayName;const r=e.trim();return r?r.split(/[-_\s]+/).filter(Boolean).map(a=>a.charAt(0).toUpperCase()+a.slice(1)).join(" "):n}function rn({value:e,onChange:t,placeholder:n,type:r="text",className:a,monospace:i}){return o.jsx("input",{type:r,value:e===void 0?"":String(e),onChange:s=>t(s.target.value),placeholder:n,spellCheck:!1,className:oe("w-full rounded-md border border-border bg-background px-2 py-1.5 text-[13px] leading-5 text-foreground outline-none","focus:ring-1 focus:ring-ring",i&&"font-mono text-xs",a)})}function _x({value:e,onChange:t,placeholder:n,emptyPlaceholder:r,maskedPlaceholder:a,className:i,monospace:s}){const l=fs(e);return o.jsx(rn,{type:"password",value:f9(e),placeholder:n??(l?a??"Existing key kept — type to replace":r),monospace:s,className:i,onChange:t})}function fn({value:e,onChange:t,placeholder:n}){return o.jsx(rn,{type:"number",value:e,placeholder:n,onChange:r=>{if(r==="")return t(void 0);const a=Number(r);Number.isFinite(a)&&t(a)}})}function kr({value:e,onChange:t,options:n}){const r=n.find(a=>a.value===e)?.label??"";return o.jsxs("div",{className:"relative min-w-0",children:[o.jsx("div",{className:"pointer-events-none flex w-full min-w-0 items-center rounded-md border border-border bg-background px-2 py-1.5 pr-8 text-[13px] leading-5 text-foreground",children:o.jsx("span",{className:"block min-w-0 truncate",title:r,children:r})}),o.jsx("span",{className:"pointer-events-none absolute right-2 top-1/2 -translate-y-1/2 text-xs text-muted-foreground",children:"▾"}),o.jsx("select",{value:e??"",onChange:a=>t(a.target.value),className:"absolute inset-0 h-full w-full cursor-pointer opacity-0","aria-label":r,children:n.map(a=>o.jsx("option",{value:a.value,children:a.label},a.value))})]})}function ro({value:e,onChange:t,options:n,placeholder:r}){const a=e??"",i=!a||n.some(l=>l.value===a),s=[{value:"",label:r??"Select a configured model"},...n,...i?[]:[{value:a,label:`Missing: ${a}`}]];return o.jsx(kr,{value:a,onChange:t,options:s})}function kt({label:e,description:t,children:n}){return o.jsxs("div",{className:"grid grid-cols-1 items-start gap-2 px-4 py-2.5 sm:grid-cols-[180px_1fr] sm:gap-4",children:[o.jsxs("div",{className:"min-w-0",children:[o.jsx("div",{className:"text-[13px] font-medium leading-5 text-foreground",children:e}),t&&o.jsx("div",{className:"mt-0.5 text-[11px] leading-4 text-muted-foreground",children:t})]}),o.jsx("div",{className:"min-w-0",children:n})]})}function g9({config:e,onChange:t}){const{t:n}=Je("settings"),[r,a]=h.useState(!1),i=e.webui?.runtime??{},s=(l,c)=>t(je(e,["webui","runtime",l],c));return o.jsx(Wt,{title:n("pilotDeckConfig.panels.runtime.title"),description:n("pilotDeckConfig.panels.runtime.description"),children:o.jsxs(Rt,{children:[o.jsxs("div",{className:"divide-y divide-border",children:[o.jsx(kt,{label:n("pilotDeckConfig.panels.runtime.fields.host.label"),description:n("pilotDeckConfig.panels.runtime.fields.host.description"),children:o.jsx(rn,{value:i.host,placeholder:"0.0.0.0",onChange:l=>s("host",l)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.runtime.fields.serverPort.label"),description:n("pilotDeckConfig.panels.runtime.fields.serverPort.description"),children:o.jsx(fn,{value:i.serverPort,placeholder:"3001",onChange:l=>s("serverPort",l)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.runtime.fields.proxyPort.label"),description:n("pilotDeckConfig.panels.runtime.fields.proxyPort.description"),children:o.jsx(fn,{value:i.proxyPort,placeholder:"18080",onChange:l=>s("proxyPort",l)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.runtime.fields.workspacesRoot.label"),description:n("pilotDeckConfig.panels.runtime.fields.workspacesRoot.description"),children:o.jsx(rn,{value:i.workspacesRoot,placeholder:"~",monospace:!0,onChange:l=>s("workspacesRoot",l)})})]}),o.jsx("div",{className:"border-t border-border px-4 py-2.5",children:o.jsxs("button",{type:"button",onClick:()=>a(l=>!l),"aria-expanded":r,className:"inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-[12px] font-medium leading-5 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:[o.jsx(Sn,{className:oe("h-3.5 w-3.5 transition-transform",r&&"rotate-180")}),n("pilotDeckConfig.panels.runtime.advancedToggle")]})}),r&&o.jsxs("div",{className:"divide-y divide-border border-t border-border",children:[o.jsx(kt,{label:n("pilotDeckConfig.panels.runtime.fields.vitePort.label"),description:n("pilotDeckConfig.panels.runtime.fields.vitePort.description"),children:o.jsx(fn,{value:i.vitePort,placeholder:"5173",onChange:l=>s("vitePort",l)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.runtime.fields.apiTimeout.label"),description:n("pilotDeckConfig.panels.runtime.fields.apiTimeout.description"),children:o.jsx(fn,{value:i.apiTimeoutMs,placeholder:"120000",onChange:l=>s("apiTimeoutMs",l)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.runtime.fields.databasePath.label"),description:n("pilotDeckConfig.panels.runtime.fields.databasePath.description"),children:o.jsx(rn,{value:i.databasePath,placeholder:"~/.pilotdeck/auth.db",monospace:!0,onChange:l=>s("databasePath",l)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.runtime.fields.httpsProxy.label"),description:n("pilotDeckConfig.panels.runtime.fields.httpsProxy.description"),children:o.jsx(rn,{value:i.httpsProxy,placeholder:"http://127.0.0.1:7890",monospace:!0,onChange:l=>s("httpsProxy",l)})})]})]})})}function b9({providerId:e,provider:t,onChange:n,onRemove:r,onRename:a,catalogEntry:i}){const{t:s}=Je("settings"),l=fs(t.apiKey),c=t.protocol??i?.protocol??"openai",u=t.url||i?.defaultUrl||"",d=Object.keys(t.models??{}),[p,m]=h.useState(""),[f,g]=h.useState(e),[b,x]=h.useState(""),k=h9(f||e,i,s("pilotDeckConfig.panels.models.customProvider"));h.useEffect(()=>{g(e),x("")},[e]);const y=T=>n({...t,...T}),v=()=>{const T=f.trim();if(!T||T===e){g(e),x("");return}a(T)?x(""):(g(e),x(s("pilotDeckConfig.panels.models.providerIdDuplicate")))},E=T=>{const j=T.trim();j&&(t.models&&j in t.models||(y({models:{...t.models??{},[j]:{}}}),m("")))},N=T=>{const j={...t.models??{}};delete j[T],y({models:j})},w=T=>{t.models&&T in t.models?N(T):E(T)};return o.jsxs("div",{className:"space-y-3 rounded-lg border border-border bg-background/50 p-4 transition-colors",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"flex items-center gap-2",children:o.jsx("div",{className:"text-sm font-semibold text-foreground",children:k})}),o.jsxs("div",{className:"mt-1 flex items-center gap-2",children:[o.jsx("span",{className:"text-[11px] text-muted-foreground",children:s("pilotDeckConfig.panels.models.providerId")}),o.jsx("input",{value:f,onChange:T=>{g(T.target.value),x("")},onBlur:v,onKeyDown:T=>{T.key==="Enter"?T.currentTarget.blur():T.key==="Escape"&&(g(e),x(""),T.currentTarget.blur())},className:"rounded-md border border-border bg-background px-2 py-0.5 font-mono text-[11px] text-foreground outline-none focus:ring-1 focus:ring-ring"})]}),b&&o.jsx("div",{className:"mt-1 text-[10px] text-destructive",children:b})]}),o.jsx(St,{variant:"ghost",size:"sm",onClick:r,className:"text-destructive hover:text-destructive",children:o.jsx(en,{className:"h-3.5 w-3.5"})})]}),o.jsxs("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-[160px_1fr]",children:[o.jsxs("label",{className:"text-xs text-muted-foreground",children:[o.jsx("span",{className:"mb-1 block",children:s("pilotDeckConfig.panels.models.protocol")}),o.jsx(kr,{value:c,onChange:T=>y({protocol:T}),options:[{value:"openai",label:s("pilotDeckConfig.panels.models.protocolOptions.openai")},{value:"anthropic",label:s("pilotDeckConfig.panels.models.protocolOptions.anthropic")}]})]}),o.jsxs("label",{className:"text-xs text-muted-foreground",children:[o.jsx("span",{className:"mb-1 block",children:s("pilotDeckConfig.panels.models.baseUrl")}),o.jsx(rn,{value:t.url,placeholder:i?.defaultUrl||"https://api.example.com/v1",monospace:!0,onChange:T=>y({url:T})}),o.jsx("span",{className:"mt-0.5 block text-[10px] text-muted-foreground/70",children:s("pilotDeckConfig.panels.models.baseUrlHint")}),!t.url&&i&&o.jsxs("span",{className:"mt-0.5 block text-[10px] text-muted-foreground/70",children:[s("pilotDeckConfig.panels.models.defaultsTo")," ",o.jsx("code",{className:"font-mono",children:i.defaultUrl})," ",s("pilotDeckConfig.panels.models.fromCatalog")]}),u&&t.url&&o.jsxs("span",{className:"mt-0.5 block text-[10px] text-muted-foreground/70",children:[s("pilotDeckConfig.panels.models.effective")," ",o.jsx("code",{className:"font-mono",children:u})]})]})]}),o.jsxs("label",{className:"block text-xs text-muted-foreground",children:[o.jsx("span",{className:"mb-1 block",children:s("pilotDeckConfig.panels.models.apiKey")}),o.jsx(_x,{value:t.apiKey,emptyPlaceholder:"sk-...",maskedPlaceholder:s("pilotDeckConfig.panels.models.maskedKeyPlaceholder"),onChange:T=>y({apiKey:T})}),l&&o.jsxs("span",{className:"mt-1 inline-flex items-center gap-1 text-[11px] text-muted-foreground",children:[o.jsx(Tc,{className:"h-3 w-3"}),s("pilotDeckConfig.panels.models.keyHidden")]})]}),o.jsxs("div",{children:[o.jsxs("div",{className:"mb-1.5 flex flex-wrap items-center gap-x-2 gap-y-0.5 text-xs text-muted-foreground",children:[o.jsx("span",{children:s("pilotDeckConfig.panels.models.enabledModels")}),o.jsxs("span",{className:"text-[10px] text-muted-foreground/60",children:["· ",o.jsx(xr,{className:"inline h-2.5 w-2.5"})," ",s("pilotDeckConfig.panels.models.supportsImageInput")]})]}),i&&i.models.length>0&&o.jsx("div",{className:"mb-2 flex flex-wrap gap-1.5",children:i.models.map(T=>{const j=t.models&&T.id in t.models;return o.jsx("div",{className:oe("group inline-flex items-center rounded-md border text-[11px] transition-colors",j?"border-foreground/30 bg-muted/60 text-foreground":"border-border bg-muted text-muted-foreground hover:border-foreground/30 hover:text-foreground"),children:o.jsxs("button",{type:"button",onClick:()=>w(T.id),className:"inline-flex items-center gap-1 px-2 py-1",title:s(j?"pilotDeckConfig.panels.models.clickDisable":"pilotDeckConfig.panels.models.clickEnable"),children:[j&&o.jsx(Er,{className:"h-3 w-3 text-foreground",strokeWidth:2.5}),T.displayName,T.supportsImage&&o.jsx(xr,{className:"h-3 w-3 text-muted-foreground/70",strokeWidth:2})]})},T.id)})}),d.filter(T=>!i||!i.models.some(j=>j.id===T)).map(T=>o.jsxs("div",{className:"mb-1 flex items-center gap-2 rounded-md border border-border bg-muted/40 px-2 py-1 text-[11px]",children:[o.jsx("code",{className:"flex-1 truncate font-mono",children:T}),o.jsx("button",{type:"button",onClick:()=>N(T),className:"text-muted-foreground hover:text-destructive",title:s("pilotDeckConfig.actions.remove"),children:o.jsx(en,{className:"h-3 w-3"})})]},T)),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{value:p,onChange:T=>m(T.target.value),placeholder:s("pilotDeckConfig.panels.models.customModelPlaceholder"),className:"min-w-0 flex-1 rounded-md border border-border bg-background px-2 py-1 font-mono text-[11px] text-foreground outline-none focus:ring-1 focus:ring-ring",onKeyDown:T=>{T.key==="Enter"&&!En(T)&&E(p)}}),o.jsxs(St,{variant:"outline",size:"sm",className:"shrink-0",onClick:()=>E(p),disabled:!p.trim(),children:[o.jsx(Qt,{className:"mr-1 h-3 w-3"}),s("pilotDeckConfig.actions.add")]})]})]})]})}function x9({existingIds:e,onPick:t,onCustom:n}){const{t:r}=Je("settings"),[a,i]=h.useState(!1),s=Yi.filter(l=>!e.has(l.id));return a?o.jsxs("div",{className:"space-y-3 rounded-lg border border-border bg-muted/30 p-4",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsx("div",{className:"text-sm font-medium text-foreground",children:r("pilotDeckConfig.panels.models.addProviderTitle")}),o.jsx(St,{variant:"ghost",size:"sm",onClick:()=>i(!1),children:r("pilotDeckConfig.panels.models.cancel")})]}),o.jsxs("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-3",children:[s.map(l=>o.jsxs("button",{type:"button",onClick:()=>{t(l),i(!1)},className:"rounded-md border border-border bg-background px-3 py-2 text-left text-sm transition-colors hover:border-foreground/40 hover:bg-muted",children:[o.jsx("div",{className:"font-medium text-foreground",children:l.displayName}),o.jsx("div",{className:"mt-0.5 text-[10px] text-muted-foreground",children:r("pilotDeckConfig.panels.models.modelCount",{count:l.models.length})})]},l.id)),o.jsxs("button",{type:"button",onClick:()=>{n(),i(!1)},className:"rounded-md border border-dashed border-border bg-background px-3 py-2 text-left text-sm transition-colors hover:border-foreground/40 hover:bg-muted",children:[o.jsxs("div",{className:"font-medium text-foreground",children:["+ ",r("pilotDeckConfig.panels.models.customProvider")]}),o.jsx("div",{className:"mt-0.5 text-[10px] text-muted-foreground",children:r("pilotDeckConfig.panels.models.manualSetup")})]})]})]}):o.jsxs(St,{variant:"outline",size:"sm",onClick:()=>i(!0),children:[o.jsx(Qt,{className:"mr-1 h-3.5 w-3.5"}),r("pilotDeckConfig.panels.models.addProvider")]})}function y9({config:e,onChange:t}){const{t:n}=Je("settings"),r=e.model?.providers??{},a=Object.keys(r),i=(d,p)=>t(je(e,["model","providers",d],p)),s=d=>{const p={...r};delete p[d],t(je(e,["model","providers"],p))},l=(d,p)=>{const m=p.trim();if(!m||m===d)return!0;if(r[m])return!1;const f={};for(const[g,b]of Object.entries(r))f[g===d?m:g]=b;return t(p9(je(e,["model","providers"],f),d,m)),!0},c=d=>{r[d.id]||i(d.id,{apiKey:"",protocol:d.protocol,url:d.defaultUrl,models:{}})},u=()=>{let d=1;for(;r[`provider${d}`];)d++;i(`provider${d}`,{protocol:"openai",url:"",apiKey:"",models:{}})};return o.jsx(Wt,{title:n("pilotDeckConfig.panels.models.title"),description:n("pilotDeckConfig.panels.models.description"),children:o.jsxs("div",{className:"space-y-3",children:[o.jsx("div",{className:"flex justify-start",children:o.jsx(x9,{existingIds:new Set(a),onPick:c,onCustom:u})}),a.length===0&&o.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-6 text-center text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.models.emptyProviders")}),a.map(d=>o.jsx(b9,{providerId:d,provider:r[d]??{},catalogEntry:dx(d),onChange:p=>i(d,p),onRemove:()=>s(d),onRename:p=>l(d,p)},d))]})})}function v9(e){const t=e?.trim()??"",n=t.indexOf("/");return n<=0||n===t.length-1?null:{providerId:t.slice(0,n),modelId:t.slice(n+1)}}function wr(e,t){const n=v9(t);if(!n)return e;const r=e.model?.providers?.[n.providerId];return!r||r.models&&Object.prototype.hasOwnProperty.call(r.models,n.modelId)?e:je(e,["model","providers",n.providerId,"models",n.modelId],{})}function k9(e,t){return t.reduce((n,r)=>wr(n,r),e)}function hs(e){const t=[],n=e.model?.providers??{};for(const[r,a]of Object.entries(n)){const i=dx(r),s=new Set;if(i)for(const l of i.models)s.add(l.id),t.push({value:`${r}/${l.id}`,label:`${i.displayName}: ${l.displayName}`});for(const l of Object.keys(a.models??{}))s.has(l)||t.push({value:`${r}/${l}`,label:i?`${i.displayName}: ${l}`:`${r}/${l}`})}return t}function w9(e){const t=e.agent?.model??"";if(!t)return null;const n=t.indexOf("/");if(n<=0||n===t.length-1)return null;const r=t.slice(0,n),a=t.slice(n+1),i=e.model?.providers?.[r];if(!i)return null;const s=i.models?.[a],l=s&&typeof s=="object"?s.multimodal:null;let c=null;if(l&&typeof l=="object"){const f=l.input;Array.isArray(f)&&(c=f.filter(g=>typeof g=="string"))}const u=s&&typeof s=="object"?s.capabilities:null;let d;if(u&&typeof u=="object"){const f=u.maxOutputTokens;typeof f=="number"&&Number.isFinite(f)&&f>0&&(d=f)}const p=dx(r),m=p?.models.find(f=>f.id===a);return{ref:t,providerId:r,modelId:a,catalogModel:m,catalogProvider:p,multimodalInput:c,maxOutputTokensOverride:d}}function S9({config:e,onChange:t}){const{t:n}=Je("settings"),[r,a]=h.useState(!1),i=hs(e),s=e.agent?.model??"",l=e.agent?.subagents?.default??"inherit",c=[{value:"",label:"— pick a model —"},...i],u=[{value:"inherit",label:n("pilotDeckConfig.panels.agents.subagents.inherit")},...i],d=w9(e),p=d?d.multimodalInput?d.multimodalInput.includes("image"):!!d.catalogModel?.supportsImage:!1,m=d?.multimodalInput!=null,f=b=>{if(!d)return;const{providerId:x,modelId:k}=d,E={...((e.model?.providers??{})[x]??{}).models??{}},N=E[k],w=N&&typeof N=="object"?{...N}:{},T=!!d.catalogModel?.supportsImage;b===T?delete w.multimodal:w.multimodal={input:b?["text","image"]:["text"]},E[k]=w,t(je(e,["model","providers",x,"models"],E))},g=b=>{if(!d)return;const{providerId:x,modelId:k}=d,E={...((e.model?.providers??{})[x]??{}).models??{}},N=E[k],w=N&&typeof N=="object"?{...N}:{},T=w.capabilities&&typeof w.capabilities=="object"?{...w.capabilities}:{};b===void 0?delete T.maxOutputTokens:T.maxOutputTokens=b,Object.keys(T).length>0?w.capabilities=T:delete w.capabilities,E[k]=w,t(je(e,["model","providers",x,"models"],E))};return o.jsx(Wt,{title:n("pilotDeckConfig.panels.agents.title"),description:n("pilotDeckConfig.panels.agents.description"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(kt,{label:n("pilotDeckConfig.panels.agents.mainModel.label"),description:n("pilotDeckConfig.panels.agents.mainModel.description"),children:o.jsx(kr,{value:s,options:c,onChange:b=>t(je(wr(e,b),["agent","model"],b))})}),d&&o.jsx("div",{className:"px-4 py-3",children:o.jsxs("div",{className:"rounded-md border border-border/60 bg-muted/30 p-3",children:[o.jsx("div",{className:"mb-2 text-xs font-medium text-foreground",children:n("pilotDeckConfig.panels.agents.capabilities.title")}),o.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-xs",children:[o.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[o.jsx(xr,{className:"h-3.5 w-3.5"}),n("pilotDeckConfig.panels.agents.capabilities.imageInput")]}),o.jsxs("label",{className:"inline-flex items-center gap-2",children:[o.jsx("input",{type:"checkbox",checked:p,onChange:b=>f(b.target.checked),className:"h-3.5 w-3.5 rounded border-border"}),o.jsx("span",{className:oe("rounded px-1.5 py-0.5 text-[10px] font-medium",p?"border border-green-500/30 bg-green-500/10 text-green-700 dark:text-green-300":"border border-border bg-muted text-muted-foreground"),children:n(p?"pilotDeckConfig.panels.agents.capabilities.enabled":"pilotDeckConfig.panels.agents.capabilities.disabled")})]})]}),o.jsxs("p",{className:"mt-2 text-[10px] leading-relaxed text-muted-foreground",children:[m?n("pilotDeckConfig.panels.agents.capabilities.overrideActive"):d.catalogModel?d.catalogModel.supportsImage?n("pilotDeckConfig.panels.agents.capabilities.catalogSupportsImage"):n("pilotDeckConfig.panels.agents.capabilities.catalogTextOnly"):n("pilotDeckConfig.panels.agents.capabilities.noCatalog")," ",n("pilotDeckConfig.panels.agents.capabilities.imageWarning")]}),o.jsxs("div",{className:"mt-3 border-t border-border/60 pt-3",children:[o.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-xs",children:[o.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[o.jsx(C1,{className:"h-3.5 w-3.5"}),n("pilotDeckConfig.panels.agents.capabilities.maxOutputTokens")]}),o.jsx("input",{type:"number",min:1,value:d.maxOutputTokensOverride??"",placeholder:"8192",onChange:b=>{const x=b.target.value;if(x==="")return g(void 0);const k=Number(x);Number.isFinite(k)&&k>0&&g(Math.floor(k))},className:"w-28 rounded-md border border-border bg-background px-2 py-1 text-xs text-foreground outline-none focus:ring-1 focus:ring-ring"})]}),o.jsx("p",{className:"mt-2 text-[10px] leading-relaxed text-muted-foreground",children:n("pilotDeckConfig.panels.agents.capabilities.maxOutputDescription")})]}),o.jsxs("div",{className:"mt-3 border-t border-border/60 pt-3",children:[o.jsxs("div",{className:"flex flex-wrap items-center gap-3 text-xs",children:[o.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[o.jsx(C1,{className:"h-3.5 w-3.5"}),n("pilotDeckConfig.panels.agents.capabilities.maxContextTokens")]}),o.jsx("input",{type:"number",min:1,value:e.agent?.maxContextTokens??"",placeholder:String(d.catalogModel?.maxContextTokens??2e5),onChange:b=>{const x=b.target.value;if(x===""){const y={...e.agent??{}};delete y.maxContextTokens,t(je(e,["agent"],y));return}const k=Number(x);Number.isFinite(k)&&k>0&&t(je(e,["agent","maxContextTokens"],Math.floor(k)))},className:"w-28 rounded-md border border-border bg-background px-2 py-1 text-xs text-foreground outline-none focus:ring-1 focus:ring-ring"})]}),o.jsx("p",{className:"mt-2 text-[10px] leading-relaxed text-muted-foreground",children:n("pilotDeckConfig.panels.agents.capabilities.maxContextDescription")})]})]})}),o.jsx("div",{className:"px-4 py-2.5",children:o.jsxs("button",{type:"button",onClick:()=>a(b=>!b),"aria-expanded":r,className:"inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-[12px] font-medium leading-5 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:[o.jsx(Sn,{className:oe("h-3.5 w-3.5 transition-transform",r&&"rotate-180")}),n("pilotDeckConfig.panels.agents.advancedToggle")]})}),r&&o.jsxs("div",{className:"divide-y divide-border",children:[o.jsx(kt,{label:n("pilotDeckConfig.panels.agents.subagents.label"),description:n("pilotDeckConfig.panels.agents.subagents.description"),children:o.jsx(kr,{value:l,options:u,onChange:b=>t(je(wr(e,b),["agent","subagents","default"],b))})}),o.jsxs("div",{className:"flex gap-2 px-4 py-3 text-[11px] leading-5 text-muted-foreground",children:[o.jsx(Tc,{className:"mt-0.5 h-3.5 w-3.5 shrink-0 text-primary"}),o.jsx("p",{children:n("pilotDeckConfig.panels.agents.subagents.routerNote")})]})]})]})})}const E9=[{key:"TAVILY_API_KEY",hint:"Tavily web search API key"},{key:"FIRECRAWL_API_KEY",hint:"Firecrawl web scraping API key"},{key:"SERPER_API_KEY",hint:"Serper search API key"},{key:"BROWSERBASE_API_KEY",hint:"Browserbase API key"}];function C9({config:e,onChange:t}){const{t:n}=Je("settings"),r=e.customEnv??{},a=Object.entries(r),[i,s]=h.useState(""),[l,c]=h.useState(""),u=(g,b)=>{t(je(e,["customEnv",g],b))},d=g=>{const b={...r};delete b[g],t(je(e,["customEnv"],b))},p=()=>{const g=i.trim();g&&(t(je(e,["customEnv",g],l)),s(""),c(""))},m=g=>{r[g]===void 0&&t(je(e,["customEnv",g],""))},f=E9.filter(g=>r[g.key]===void 0);return o.jsx(Wt,{title:n("pilotDeckConfig.panels.customEnv.title"),description:n("pilotDeckConfig.panels.customEnv.description"),children:o.jsxs(Rt,{className:"space-y-3 p-4",children:[a.length===0&&o.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-6 text-center text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.customEnv.empty")}),a.map(([g,b])=>{const x=fs(b);return o.jsxs("div",{className:"space-y-1",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{value:g,readOnly:!0,className:"w-[200px] shrink-0 rounded-md border border-border bg-muted px-2 py-1.5 font-mono text-xs text-foreground outline-none"}),o.jsx("span",{className:"text-muted-foreground",children:"="}),o.jsx(_x,{value:b,placeholder:x?n("pilotDeckConfig.panels.customEnv.existingValueKept"):"value",monospace:!0,className:"min-w-0 flex-1",onChange:k=>u(g,k)}),o.jsx("button",{type:"button",onClick:()=>d(g),className:"shrink-0 rounded p-1.5 text-muted-foreground hover:bg-destructive/10 hover:text-destructive",title:n("pilotDeckConfig.actions.remove"),children:o.jsx(en,{className:"h-3.5 w-3.5"})})]}),x&&o.jsxs("div",{className:"ml-[216px] flex items-center gap-1 text-[11px] text-muted-foreground",children:[o.jsx(Tc,{className:"h-3 w-3"}),n("pilotDeckConfig.panels.customEnv.valueHidden")]})]},g)}),o.jsxs("div",{className:"border-t border-border pt-3",children:[o.jsx("div",{className:"mb-2 text-xs font-medium text-foreground",children:n("pilotDeckConfig.panels.customEnv.addVariable")}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{value:i,onChange:g=>s(g.target.value.toUpperCase().replace(/[^A-Z0-9_]/g,"")),placeholder:"KEY_NAME",className:"w-[200px] shrink-0 rounded-md border border-border bg-background px-2 py-1.5 font-mono text-xs text-foreground outline-none focus:ring-1 focus:ring-ring"}),o.jsx("span",{className:"text-muted-foreground",children:"="}),o.jsx("input",{value:l,onChange:g=>c(g.target.value),placeholder:"value",type:"password",className:"min-w-0 flex-1 rounded-md border border-border bg-background px-2 py-1.5 font-mono text-xs text-foreground outline-none focus:ring-1 focus:ring-ring",onKeyDown:g=>{g.key==="Enter"&&!En(g)&&p()}}),o.jsxs(St,{variant:"outline",size:"sm",className:"shrink-0",onClick:p,disabled:!i.trim(),children:[o.jsx(Qt,{className:"mr-1 h-3.5 w-3.5"}),n("pilotDeckConfig.panels.customEnv.add")]})]})]}),f.length>0&&o.jsxs("div",{className:"border-t border-border pt-3",children:[o.jsx("div",{className:"mb-2 text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.customEnv.quickAddKeys")}),o.jsx("div",{className:"flex flex-wrap gap-1.5",children:f.map(g=>o.jsxs("button",{type:"button",onClick:()=>m(g.key),className:"inline-flex items-center gap-1 rounded-md border border-border bg-muted px-2 py-1 text-[11px] text-muted-foreground transition-colors hover:border-ring hover:text-foreground",title:g.hint,children:[o.jsx(Qt,{className:"h-3 w-3"}),g.key]},g.key))})]})]})})}function N9({config:e,projects:t,onChange:n}){const{t:r}=Je("settings"),a=e.alwaysOn??{},i=a.trigger??{},s=a.dormancy??{},l=a.workspace??{},c=a.execution??{},u=a.enabled===!0,d=t.map(p=>({project:p,root:Rx(p)})).filter(p=>p.root.length>0);return o.jsx(Wt,{title:r("pilotDeckConfig.panels.alwaysOn.title"),description:r("pilotDeckConfig.panels.alwaysOn.description"),children:o.jsxs("div",{className:"space-y-4",children:[o.jsx(Rt,{children:o.jsx(Jt,{label:r("pilotDeckConfig.panels.alwaysOn.enabled.label"),description:r("pilotDeckConfig.panels.alwaysOn.enabled.description"),children:o.jsx(Kt,{checked:u,ariaLabel:r("pilotDeckConfig.panels.alwaysOn.enabled.label"),onChange:p=>n(je(e,["alwaysOn","enabled"],p))})})}),u&&o.jsxs(o.Fragment,{children:[o.jsx(Wt,{title:r("pilotDeckConfig.panels.alwaysOn.trigger.title"),description:r("pilotDeckConfig.panels.alwaysOn.trigger.description"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(Jt,{label:r("pilotDeckConfig.panels.alwaysOn.trigger.autoDiscovery.label"),description:r("pilotDeckConfig.panels.alwaysOn.trigger.autoDiscovery.description"),children:o.jsx(Kt,{checked:i.enabled===!0,ariaLabel:r("pilotDeckConfig.panels.alwaysOn.trigger.autoDiscovery.label"),onChange:p=>n(je(e,["alwaysOn","trigger","enabled"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.trigger.tickInterval.label"),description:r("pilotDeckConfig.panels.alwaysOn.trigger.tickInterval.description"),children:o.jsx(fn,{value:i.tickIntervalMinutes,placeholder:"5",onChange:p=>n(je(e,["alwaysOn","trigger","tickIntervalMinutes"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.trigger.cooldown.label"),description:r("pilotDeckConfig.panels.alwaysOn.trigger.cooldown.description"),children:o.jsx(fn,{value:i.cooldownMinutes,placeholder:"60",onChange:p=>n(je(e,["alwaysOn","trigger","cooldownMinutes"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.trigger.dailyBudget.label"),description:r("pilotDeckConfig.panels.alwaysOn.trigger.dailyBudget.description"),children:o.jsx(fn,{value:i.dailyBudget,placeholder:"4",onChange:p=>n(je(e,["alwaysOn","trigger","dailyBudget"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.trigger.heartbeatStale.label"),description:r("pilotDeckConfig.panels.alwaysOn.trigger.heartbeatStale.description"),children:o.jsx(fn,{value:i.heartbeatStaleSeconds,placeholder:"90",onChange:p=>n(je(e,["alwaysOn","trigger","heartbeatStaleSeconds"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.trigger.recentUserMsg.label"),description:r("pilotDeckConfig.panels.alwaysOn.trigger.recentUserMsg.description"),children:o.jsx(fn,{value:i.recentUserMsgMinutes,placeholder:"5",onChange:p=>n(je(e,["alwaysOn","trigger","recentUserMsgMinutes"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.trigger.preferChannel.label"),description:r("pilotDeckConfig.panels.alwaysOn.trigger.preferChannel.description"),children:o.jsx(kr,{value:i.preferChannel,onChange:p=>n(je(e,["alwaysOn","trigger","preferChannel"],p)),options:[{value:"web",label:"Web UI"},{value:"tui",label:"TUI"}]})})]})}),o.jsx(Wt,{title:r("pilotDeckConfig.panels.alwaysOn.dormancy.title"),description:r("pilotDeckConfig.panels.alwaysOn.dormancy.description"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(Jt,{label:r("pilotDeckConfig.panels.alwaysOn.dormancy.enabled.label"),description:r("pilotDeckConfig.panels.alwaysOn.dormancy.enabled.description"),children:o.jsx(Kt,{checked:s.enabled!==!1,ariaLabel:r("pilotDeckConfig.panels.alwaysOn.dormancy.enabled.label"),onChange:p=>n(je(e,["alwaysOn","dormancy","enabled"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.dormancy.debounce.label"),description:r("pilotDeckConfig.panels.alwaysOn.dormancy.debounce.description"),children:o.jsx(fn,{value:s.debounceMs,placeholder:"2000",onChange:p=>n(je(e,["alwaysOn","dormancy","debounceMs"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.dormancy.ignoreGlobs.label"),description:r("pilotDeckConfig.panels.alwaysOn.dormancy.ignoreGlobs.description"),children:o.jsx("textarea",{value:(s.ignoreGlobs??[]).join(` +`),placeholder:`**/.git/** +**/node_modules/** +**/.pilotdeck/** +**/dist/** +**/.DS_Store`,onChange:p=>{const m=p.target.value.split(` +`).filter(f=>f.trim().length>0);n(je(e,["alwaysOn","dormancy","ignoreGlobs"],m))},spellCheck:!1,className:"min-h-[100px] w-full resize-y rounded-md border border-border bg-background px-2 py-1.5 font-mono text-xs leading-5 text-foreground outline-none focus:ring-1 focus:ring-ring"})})]})}),o.jsx(Wt,{title:r("pilotDeckConfig.panels.alwaysOn.workspace.title"),description:r("pilotDeckConfig.panels.alwaysOn.workspace.description"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.workspace.gitWorktree.label"),description:r("pilotDeckConfig.panels.alwaysOn.workspace.gitWorktree.description"),children:o.jsx(rn,{value:l.gitWorktreeBaseDir,placeholder:"(auto)",monospace:!0,onChange:p=>n(je(e,["alwaysOn","workspace","gitWorktreeBaseDir"],p||void 0))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.workspace.snapshotDir.label"),description:r("pilotDeckConfig.panels.alwaysOn.workspace.snapshotDir.description"),children:o.jsx(rn,{value:l.snapshotBaseDir,placeholder:"(auto)",monospace:!0,onChange:p=>n(je(e,["alwaysOn","workspace","snapshotBaseDir"],p||void 0))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.workspace.snapshotMaxBytes.label"),description:r("pilotDeckConfig.panels.alwaysOn.workspace.snapshotMaxBytes.description"),children:o.jsx(fn,{value:l.snapshotMaxBytes,placeholder:"1073741824",onChange:p=>n(je(e,["alwaysOn","workspace","snapshotMaxBytes"],p))})}),o.jsx(Jt,{label:r("pilotDeckConfig.panels.alwaysOn.workspace.gitLfs.label"),description:r("pilotDeckConfig.panels.alwaysOn.workspace.gitLfs.description"),children:o.jsx(Kt,{checked:l.gitLfs===!0,ariaLabel:r("pilotDeckConfig.panels.alwaysOn.workspace.gitLfs.label"),onChange:p=>n(je(e,["alwaysOn","workspace","gitLfs"],p))})})]})}),o.jsx(Wt,{title:r("pilotDeckConfig.panels.alwaysOn.execution.title"),description:r("pilotDeckConfig.panels.alwaysOn.execution.description"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.execution.maxTurns.label"),description:r("pilotDeckConfig.panels.alwaysOn.execution.maxTurns.description"),children:o.jsx(fn,{value:c.maxTurns,placeholder:"30",onChange:p=>n(je(e,["alwaysOn","execution","maxTurns"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.execution.maxToolCalls.label"),description:r("pilotDeckConfig.panels.alwaysOn.execution.maxToolCalls.description"),children:o.jsx(fn,{value:c.maxToolCalls,placeholder:"200",onChange:p=>n(je(e,["alwaysOn","execution","maxToolCalls"],p))})}),o.jsx(kt,{label:r("pilotDeckConfig.panels.alwaysOn.execution.timeout.label"),description:r("pilotDeckConfig.panels.alwaysOn.execution.timeout.description"),children:o.jsx(fn,{value:c.timeoutMinutes,placeholder:"20",onChange:p=>n(je(e,["alwaysOn","execution","timeoutMinutes"],p))})})]})}),o.jsx(Wt,{title:r("pilotDeckConfig.panels.alwaysOn.workspaceOptIn.title"),description:r("pilotDeckConfig.panels.alwaysOn.workspaceOptIn.description"),children:o.jsx(Rt,{divided:!0,children:d.length===0?o.jsx("div",{className:"px-4 py-6 text-sm text-muted-foreground",children:r("pilotDeckConfig.panels.alwaysOn.workspaceOptIn.empty")}):d.map(({project:p,root:m})=>o.jsx(Jt,{label:p.displayName||p.name,description:m,children:o.jsx(Kt,{checked:QL(e,p),ariaLabel:`Toggle Always-On for ${p.displayName||p.name}`,onChange:f=>n(e9(e,p,f))})},m))})})]})]})})}function T9({config:e,onChange:t}){const{t:n}=Je("settings"),r=e.memory??{},a=hs(e),i=[{value:"inherit",label:n("pilotDeckConfig.panels.memory.model.inherit")},...a],s=r.model&&r.model.trim()?r.model:"inherit";return o.jsx(Wt,{title:n("pilotDeckConfig.panels.memory.title"),description:n("pilotDeckConfig.panels.memory.description"),children:o.jsxs(Rt,{children:[o.jsx(Jt,{label:n("pilotDeckConfig.panels.memory.enabled.label"),description:n("pilotDeckConfig.panels.memory.enabled.description"),children:o.jsx(Kt,{checked:!!r.enabled,ariaLabel:n("pilotDeckConfig.panels.memory.enabled.label"),onChange:l=>t(je(e,["memory","enabled"],l))})}),r.enabled&&o.jsx(kt,{label:n("pilotDeckConfig.panels.memory.model.label"),description:n("pilotDeckConfig.panels.memory.model.description"),children:o.jsx(kr,{value:s,options:i,onChange:l=>{const c=l==="inherit"?"":l;t(je(wr(e,c),["memory","model"],c))}})})]})})}function A9({config:e,onChange:t}){const{t:n}=Je("settings"),r="https://api.z.ai/api/paas/v4/web_search",a=e.tools?.webSearch??{},i=a.provider==="tavily"||a.provider==="custom"?a.provider:"glm",s=typeof a.apiKey=="string"?a.apiKey:"",l=typeof a.endpoint=="string"?a.endpoint:"",c=a.customProvider??{},u=l||(i==="glm"?r:""),d=i==="custom"?"https://example.com/search":i==="tavily"?"https://api.tavily.com/search":r,[p,m]=h.useState("idle"),[f,g]=h.useState(""),b=()=>{m("idle"),g("")},x=E=>{const N={webSearch:{provider:E,...E==="glm"?{endpoint:r}:{}}};t(je(e,["tools"],N)),b()},k=(E,N)=>{const w=N,T={...a};T.provider=i,w===""?delete T[E]:T[E]=w;const j=Object.keys(T).length>0?{webSearch:T}:void 0;t(je(e,["tools"],j)),b()},y=(E,N)=>{const w={...a,provider:"custom",customProvider:{...a.customProvider??{}}};N===""?delete w.customProvider?.[E]:w.customProvider[E]=N,Object.keys(w.customProvider??{}).length===0&&delete w.customProvider,t(je(e,["tools"],{webSearch:w})),b()},v=async()=>{const E=J1(s)?s.trim():"";if(!E){m("error"),g(n("pilotDeckConfig.panels.tools.test.needsKey"));return}m("testing"),g("");try{const w=await(await Oe("/api/config/test-web-search",{method:"POST",body:JSON.stringify({provider:i,apiKey:E,endpoint:u.trim(),customProvider:c})})).json();w.ok?(m("success"),g(n("pilotDeckConfig.panels.tools.test.success",{count:w.organicCount??0,latency:w.latencyMs??0}))):(m("error"),g(n("pilotDeckConfig.panels.tools.test.failedPrefix",{error:w.error||"unknown"})))}catch(N){m("error"),g(n("pilotDeckConfig.panels.tools.test.failedPrefix",{error:N instanceof Error?N.message:String(N)}))}};return o.jsx(Wt,{title:n("pilotDeckConfig.panels.tools.title"),description:n("pilotDeckConfig.panels.tools.description"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(kt,{label:n("pilotDeckConfig.panels.tools.provider.label"),description:n("pilotDeckConfig.panels.tools.provider.description"),children:o.jsx(kr,{value:i,options:[{value:"glm",label:n("pilotDeckConfig.panels.tools.provider.glm")},{value:"tavily",label:n("pilotDeckConfig.panels.tools.provider.tavily")},{value:"custom",label:n("pilotDeckConfig.panels.tools.provider.custom")}],onChange:E=>x(E==="custom"?"custom":E==="tavily"?"tavily":"glm")})}),o.jsxs(kt,{label:n("pilotDeckConfig.panels.tools.apiKey.label"),description:n("pilotDeckConfig.panels.tools.apiKey.description"),children:[o.jsx(_x,{value:s,emptyPlaceholder:n("pilotDeckConfig.panels.tools.apiKey.placeholder"),maskedPlaceholder:n("pilotDeckConfig.panels.tools.apiKey.maskedPlaceholder"),monospace:!0,onChange:E=>k("apiKey",E)}),fs(s)&&o.jsxs("p",{className:"mt-1 flex items-center gap-1 text-[11px] text-muted-foreground",children:[o.jsx(Tc,{className:"h-3 w-3"}),n("pilotDeckConfig.panels.tools.apiKey.keyHidden")]})]}),o.jsx(kt,{label:n("pilotDeckConfig.panels.tools.endpoint.label"),description:n("pilotDeckConfig.panels.tools.endpoint.description"),children:o.jsx(rn,{value:u,placeholder:d,monospace:!0,onChange:E=>k("endpoint",E)})}),i==="custom"&&o.jsxs(o.Fragment,{children:[o.jsx(kt,{label:n("pilotDeckConfig.panels.tools.custom.name.label"),description:n("pilotDeckConfig.panels.tools.custom.name.description"),children:o.jsx(rn,{value:c.name??"",placeholder:"My Search",onChange:E=>y("name",E)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.tools.custom.auth.label"),description:n("pilotDeckConfig.panels.tools.custom.auth.description"),children:o.jsx(kr,{value:c.auth??"bearer",options:[{value:"bearer",label:n("pilotDeckConfig.panels.tools.custom.auth.bearer")},{value:"bodyApiKey",label:n("pilotDeckConfig.panels.tools.custom.auth.bodyApiKey")},{value:"queryApiKey",label:n("pilotDeckConfig.panels.tools.custom.auth.queryApiKey")},{value:"none",label:n("pilotDeckConfig.panels.tools.custom.auth.none")}],onChange:E=>y("auth",E)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.tools.custom.method.label"),description:n("pilotDeckConfig.panels.tools.custom.method.description"),children:o.jsx(kr,{value:c.method??"POST",options:[{value:"POST",label:"POST"},{value:"GET",label:"GET"}],onChange:E=>y("method",E)})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.tools.custom.params.label"),description:n("pilotDeckConfig.panels.tools.custom.params.description"),children:o.jsxs("div",{className:"grid gap-2 md:grid-cols-2",children:[o.jsx(rn,{value:c.queryParam??"",placeholder:"query",monospace:!0,onChange:E=>y("queryParam",E)}),o.jsx(rn,{value:c.apiKeyParam??"",placeholder:"api_key",monospace:!0,onChange:E=>y("apiKeyParam",E)})]})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.tools.custom.mapping.label"),description:n("pilotDeckConfig.panels.tools.custom.mapping.description"),children:o.jsxs("div",{className:"grid gap-2 md:grid-cols-2",children:[o.jsx(rn,{value:c.resultsPath??"",placeholder:"data.items",monospace:!0,onChange:E=>y("resultsPath",E)}),o.jsx(rn,{value:c.titleField??"",placeholder:"title",monospace:!0,onChange:E=>y("titleField",E)}),o.jsx(rn,{value:c.urlField??"",placeholder:"url",monospace:!0,onChange:E=>y("urlField",E)}),o.jsx(rn,{value:c.snippetField??"",placeholder:"snippet",monospace:!0,onChange:E=>y("snippetField",E)}),o.jsx(rn,{value:c.sourceField??"",placeholder:"source",monospace:!0,onChange:E=>y("sourceField",E)}),o.jsx(rn,{value:c.publishedAtField??"",placeholder:"publishedAt",monospace:!0,onChange:E=>y("publishedAtField",E)})]})})]}),o.jsx("div",{className:"flex flex-col gap-2 px-4 py-3",children:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs(St,{variant:"outline",size:"sm",onClick:v,disabled:p==="testing"||!J1(s),children:[p==="testing"?o.jsx(pt,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}):o.jsx(Cr,{className:"mr-1.5 h-3.5 w-3.5"}),n(p==="testing"?"pilotDeckConfig.panels.tools.test.testing":"pilotDeckConfig.panels.tools.test.button")]}),p==="success"&&o.jsxs("span",{className:"inline-flex items-center gap-1.5 text-xs text-green-700 dark:text-green-400",children:[o.jsx(vr,{className:"h-3.5 w-3.5"}),f]}),p==="error"&&o.jsxs("span",{className:"inline-flex items-center gap-1.5 text-xs text-destructive",children:[o.jsx(ni,{className:"h-3.5 w-3.5"}),f]})]})})]})})}function I9({config:e,onChange:t}){const{t:n}=Je("settings"),r=e.router?.stats?.modelPricing??{},a=Object.keys(r),[i,s]=h.useState(""),l=(d,p,m)=>{const f=r[d]??{};t(je(e,["router","stats","modelPricing",d],{...f,[p]:m}))},c=d=>{const p={...r};delete p[d],t(je(e,["router","stats","modelPricing"],p))},u=()=>{const d=i.trim();!d||r[d]||(t(je(e,["router","stats","modelPricing",d],{input:0,output:0})),s(""))};return o.jsxs(Rt,{className:"space-y-3 p-4",children:[o.jsxs("div",{children:[o.jsx("div",{className:"text-sm font-semibold text-foreground",children:n("pilotDeckConfig.panels.router.pricing.title")}),o.jsx("div",{className:"mt-0.5 text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.router.pricing.description")})]}),a.length===0&&o.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-4 text-center text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.router.pricing.empty")}),a.map(d=>{const p=r[d]??{};return o.jsxs("div",{className:"space-y-2 rounded-lg border border-border bg-background/50 p-3",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("code",{className:"flex-1 truncate rounded bg-muted px-2 py-1 text-xs text-foreground",children:d}),o.jsx("button",{type:"button",onClick:()=>c(d),className:"shrink-0 rounded p-1.5 text-muted-foreground hover:bg-destructive/10 hover:text-destructive",title:n("pilotDeckConfig.actions.remove"),children:o.jsx(en,{className:"h-3.5 w-3.5"})})]}),o.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[o.jsxs("label",{className:"text-xs text-muted-foreground",children:[o.jsx("span",{className:"mb-1 block",children:n("pilotDeckConfig.panels.router.pricing.inputPerM")}),o.jsx(fn,{value:p.input,placeholder:"0.50",onChange:m=>l(d,"input",m)})]}),o.jsxs("label",{className:"text-xs text-muted-foreground",children:[o.jsx("span",{className:"mb-1 block",children:n("pilotDeckConfig.panels.router.pricing.outputPerM")}),o.jsx(fn,{value:p.output,placeholder:"1.50",onChange:m=>l(d,"output",m)})]}),o.jsxs("label",{className:"text-xs text-muted-foreground",children:[o.jsx("span",{className:"mb-1 block",children:n("pilotDeckConfig.panels.router.pricing.cachePerM")}),o.jsx(fn,{value:p.cacheRead,placeholder:"0",onChange:m=>l(d,"cacheRead",m)})]})]})]},d)}),o.jsxs("div",{className:"border-t border-border pt-3",children:[o.jsx("div",{className:"mb-2 text-xs font-medium text-foreground",children:n("pilotDeckConfig.panels.router.pricing.addTitle")}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{value:i,onChange:d=>s(d.target.value),placeholder:"provider/model-name",className:"min-w-0 flex-1 rounded-md border border-border bg-background px-2 py-1.5 font-mono text-xs text-foreground outline-none focus:ring-1 focus:ring-ring",onKeyDown:d=>{d.key==="Enter"&&!En(d)&&u()}}),o.jsxs(St,{variant:"outline",size:"sm",className:"shrink-0",onClick:u,disabled:!i.trim(),children:[o.jsx(Qt,{className:"mr-1 h-3.5 w-3.5"}),n("pilotDeckConfig.panels.router.pricing.add")]})]})]})]})}function R9({config:e,onChange:t}){const{t:n}=Je("settings"),r=e.router?.fallback??{},a=Object.entries(r),i=hs(e),[s,l]=h.useState(""),c=(p,m)=>t(je(k9(e,m),["router","fallback",p],m)),u=p=>{const m={...r};delete m[p],t(je(e,["router","fallback"],m))},d=()=>{const p=s.trim();if(!p||r[p])return;const m=i[0]?.value??"";t(je(wr(e,m),["router","fallback",p],[m])),l("")};return o.jsxs(Rt,{className:"space-y-3 p-4",children:[o.jsxs("div",{children:[o.jsx("div",{className:"text-sm font-semibold text-foreground",children:n("pilotDeckConfig.panels.router.fallback.title")}),o.jsx("div",{className:"mt-0.5 text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.router.fallback.description")})]}),a.length===0&&o.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-4 text-center text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.router.fallback.empty")}),a.map(([p,m])=>o.jsxs("div",{className:"space-y-2 rounded-lg border border-border bg-background/50 p-3",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("code",{className:"flex-1 truncate rounded bg-muted px-2 py-1 text-xs text-foreground",children:p}),o.jsx("button",{type:"button",onClick:()=>u(p),className:"shrink-0 rounded p-1.5 text-muted-foreground hover:bg-destructive/10 hover:text-destructive",title:n("pilotDeckConfig.actions.remove"),children:o.jsx(en,{className:"h-3.5 w-3.5"})})]}),o.jsxs("div",{className:"space-y-1.5",children:[(m??[]).map((f,g)=>o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"w-5 shrink-0 text-right text-[10px] font-semibold text-muted-foreground",children:g+1}),o.jsx("div",{className:"min-w-0 flex-1",children:o.jsx(ro,{value:f,options:i,onChange:b=>{const x=[...m];x[g]=b,c(p,x)}})}),o.jsx("button",{type:"button",onClick:()=>c(p,m.filter((b,x)=>x!==g)),className:"shrink-0 rounded p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive",title:n("pilotDeckConfig.actions.removeModel"),children:o.jsx(en,{className:"h-3 w-3"})})]},g)),o.jsxs("button",{type:"button",onClick:()=>c(p,[...m??[],i[0]?.value??""]),className:"flex items-center gap-1 rounded px-2 py-1 text-xs text-muted-foreground hover:bg-muted",children:[o.jsx(Qt,{className:"h-3 w-3"}),n("pilotDeckConfig.panels.router.fallback.addModel")]})]})]},p)),o.jsx("div",{className:"border-t border-border pt-3",children:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{value:s,onChange:p=>l(p.target.value),placeholder:"scenario name (e.g. default)",className:"min-w-0 flex-1 rounded-md border border-border bg-background px-2 py-1.5 font-mono text-xs text-foreground outline-none focus:ring-1 focus:ring-ring",onKeyDown:p=>{p.key==="Enter"&&!En(p)&&d()}}),o.jsxs(St,{variant:"outline",size:"sm",className:"shrink-0",onClick:d,disabled:!s.trim(),children:[o.jsx(Qt,{className:"mr-1 h-3.5 w-3.5"}),n("pilotDeckConfig.panels.router.fallback.add")]})]})})]})}const Al=["simple","medium","complex","reasoning"],jx={simple:{description:"Simple greetings, confirmations, single-step Q&A, trivial file writes, remembering rules"},medium:{description:"Single tool call, short text generation, 1-2 file read/write, code generation"},complex:{description:"Needs sub-agent orchestration: parallel workstreams, delegation to specialized agents"},reasoning:{description:"Deep single-agent work: multi-file operations, data analysis, multi-step workflows, web research, structured reports from many sources"}},_9=["complex is ONLY for tasks that need sub-agent orchestration or parallel delegation — do NOT use it for single-agent multi-step work","Multi-file operations, data analysis, and multi-step workflows without orchestration should be reasoning","Simple file creation (1-2 files) or single code generation is medium","Trivial greetings, confirmations, remembering rules, or reading one file and answering a short question is simple"];function j9({config:e,onChange:t}){const{t:n}=Je("settings"),r=e.router?.tokenSaver?.tiers??{},a=Object.entries(r),i=hs(e),[s,l]=h.useState(""),c=(p,m,f)=>t(je(m==="model"?wr(e,f):e,["router","tokenSaver","tiers",p,m],f)),u=p=>{const m={...r};delete m[p],t(je(e,["router","tokenSaver","tiers"],m))},d=()=>{const p=s.trim();if(!p||r[p])return;const m=jx[p],f=i[0]?.value??"";t(je(wr(e,f),["router","tokenSaver","tiers",p],{model:f,description:m?.description??""})),l("")};return o.jsxs("div",{className:"space-y-3",children:[o.jsxs("div",{children:[o.jsx("div",{className:"text-xs font-semibold text-foreground",children:n("pilotDeckConfig.panels.router.tiers.title")}),o.jsx("div",{className:"mt-0.5 text-[11px] text-muted-foreground",children:n("pilotDeckConfig.panels.router.tiers.description")})]}),a.map(([p,m])=>o.jsxs("div",{className:"space-y-2 rounded-lg border border-border bg-background/50 p-3",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("code",{className:"shrink-0 rounded bg-muted px-2 py-1 text-xs font-semibold text-foreground",children:p}),o.jsx("div",{className:"min-w-0 flex-1",children:o.jsx(ro,{value:m.model??"",options:i,onChange:f=>c(p,"model",f)})}),o.jsx("button",{type:"button",onClick:()=>u(p),className:"shrink-0 rounded p-1.5 text-muted-foreground hover:bg-destructive/10 hover:text-destructive",title:n("pilotDeckConfig.actions.remove"),children:o.jsx(en,{className:"h-3.5 w-3.5"})})]}),o.jsx("textarea",{value:m.description??"",onChange:f=>c(p,"description",f.target.value),placeholder:n("pilotDeckConfig.panels.router.tiers.placeholder"),rows:2,className:"w-full resize-y rounded-md border border-border bg-background px-2 py-1.5 text-xs text-foreground outline-none focus:ring-1 focus:ring-ring"})]},p)),o.jsx("div",{className:"border-t border-border pt-3",children:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{value:s,onChange:p=>l(p.target.value),placeholder:"tier name (e.g. simple, medium, complex)",className:"min-w-0 flex-1 rounded-md border border-border bg-background px-2 py-1.5 font-mono text-xs text-foreground outline-none focus:ring-1 focus:ring-ring",onKeyDown:p=>{p.key==="Enter"&&!En(p)&&d()}}),o.jsxs(St,{variant:"outline",size:"sm",className:"shrink-0",onClick:d,disabled:!s.trim(),children:[o.jsx(Qt,{className:"mr-1 h-3.5 w-3.5"}),n("pilotDeckConfig.panels.router.tiers.add")]})]})})]})}function O9({config:e,onChange:t}){const{t:n}=Je("settings"),r=e.router?.tokenSaver?.rules??[],[a,i]=h.useState(""),s=(u,d)=>{const p=[...r];p[u]=d,t(je(e,["router","tokenSaver","rules"],p))},l=u=>t(je(e,["router","tokenSaver","rules"],r.filter((d,p)=>p!==u))),c=()=>{const u=a.trim();u&&(t(je(e,["router","tokenSaver","rules"],[...r,u])),i(""))};return o.jsxs("div",{className:"space-y-2",children:[o.jsx("div",{className:"text-xs font-semibold text-foreground",children:n("pilotDeckConfig.panels.router.rules.title")}),r.length===0&&o.jsx("div",{className:"rounded-md border border-dashed border-border px-3 py-3 text-center text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.router.rules.empty")}),r.map((u,d)=>o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx("textarea",{value:u,onChange:p=>s(d,p.target.value),rows:2,className:"min-w-0 flex-1 resize-y rounded-md border border-border bg-background px-2 py-1.5 text-xs text-foreground outline-none focus:ring-1 focus:ring-ring"}),o.jsx("button",{type:"button",onClick:()=>l(d),className:"mt-1 shrink-0 rounded p-1.5 text-muted-foreground hover:bg-destructive/10 hover:text-destructive",title:n("pilotDeckConfig.actions.remove"),children:o.jsx(en,{className:"h-3.5 w-3.5"})})]},d)),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{value:a,onChange:u=>i(u.target.value),placeholder:n("pilotDeckConfig.panels.router.rules.placeholder"),className:"min-w-0 flex-1 rounded-md border border-border bg-background px-2 py-1.5 text-xs text-foreground outline-none focus:ring-1 focus:ring-ring",onKeyDown:u=>{u.key==="Enter"&&!En(u)&&c()}}),o.jsxs(St,{variant:"outline",size:"sm",className:"shrink-0",onClick:c,disabled:!a.trim(),children:[o.jsx(Qt,{className:"mr-1 h-3.5 w-3.5"}),n("pilotDeckConfig.panels.router.rules.add")]})]})]})}function D9({config:e,onChange:t}){const{t:n}=Je("settings"),r=hs(e),a=e.router?.scenarios?.default??"",i=e.router?.tokenSaver?.judge??"",s=e.router?.tokenSaver?.tiers??{},l=d=>{let p=je(wr(e,d),["router","scenarios","default"],d);const m=e.router?.fallback?.default??[];(m.length===0||m.length===1&&m[0]===a)&&(p=je(p,["router","fallback","default"],d?[d]:[])),t(p)},c=(d,p)=>{const m=s[d]??{};t(je(wr(e,p),["router","tokenSaver","tiers",d],{...m,model:p,description:m.description??jx[d].description}))},u=d=>{t(je(wr(e,d),["router","tokenSaver","judge"],d))};return o.jsxs(Rt,{divided:!0,children:[o.jsx(kt,{label:n("pilotDeckConfig.panels.router.levels.default.label"),description:n("pilotDeckConfig.panels.router.levels.default.description"),children:o.jsx(ro,{value:a,options:r,placeholder:n("pilotDeckConfig.panels.router.levels.modelPlaceholder"),onChange:l})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.router.levels.judge.label"),description:n("pilotDeckConfig.panels.router.levels.judge.description"),children:o.jsx(ro,{value:i,options:r,placeholder:n("pilotDeckConfig.panels.router.levels.modelPlaceholder"),onChange:u})}),Al.map(d=>o.jsx(kt,{label:n(`pilotDeckConfig.panels.router.levels.${d}.label`),description:n(`pilotDeckConfig.panels.router.levels.${d}.description`),children:o.jsx(ro,{value:s[d]?.model??"",options:r,placeholder:n("pilotDeckConfig.panels.router.levels.modelPlaceholder"),onChange:p=>c(d,p)})},d))]})}function M9({config:e,onChange:t}){const{t:n}=Je("settings"),[r,a]=h.useState(!1),i=e.router??{},s=i.enabled!==!1,l=hs(e),c=i.tokenSaver??{},u=i.autoOrchestrate??{},d=i.zeroUsageRetry??{},p=i.stats?.enabled!==!1,m=d.enabled!==!1,f=c.enabled!==!1,g=u.enabled!==!1,b=Object.keys(c.tiers??{}),x=y=>typeof y.router?.scenarios?.default=="string"&&y.router.scenarios.default.trim()||typeof y.agent?.model=="string"&&y.agent.model.trim()||l[0]?.value||"",k=y=>{let v=y;const E=x(v);v=wr(v,E),E&&!v.router?.scenarios?.default&&(v=je(v,["router","scenarios","default"],E)),E&&!v.router?.fallback?.default?.length&&(v=je(v,["router","fallback","default"],[E])),v.router?.zeroUsageRetry?.enabled!==!0&&(v=je(v,["router","zeroUsageRetry","enabled"],!0)),v.router?.zeroUsageRetry?.maxAttempts==null&&(v=je(v,["router","zeroUsageRetry","maxAttempts"],2)),v.router?.tokenSaver?.enabled!==!0&&(v=je(v,["router","tokenSaver","enabled"],!0)),E&&!v.router?.tokenSaver?.judge&&(v=je(v,["router","tokenSaver","judge"],E)),v.router?.tokenSaver?.defaultTier||(v=je(v,["router","tokenSaver","defaultTier"],"medium")),v.router?.tokenSaver?.judgeTimeoutMs||(v=je(v,["router","tokenSaver","judgeTimeoutMs"],15e3));for(const N of Al){const w=v.router?.tokenSaver?.tiers?.[N]??{};(!w.model||!w.description)&&(v=je(v,["router","tokenSaver","tiers",N],{...w,model:w.model??E,description:w.description??jx[N].description}))}return(v.router?.tokenSaver?.rules??[]).length===0&&(v=je(v,["router","tokenSaver","rules"],[..._9])),v.router?.autoOrchestrate?.enabled!==!0&&(v=je(v,["router","autoOrchestrate","enabled"],!0)),(v.router?.autoOrchestrate?.triggerTiers??[]).length===0&&(v=je(v,["router","autoOrchestrate","triggerTiers"],["complex"])),v.router?.autoOrchestrate?.slimSystemPrompt==null&&(v=je(v,["router","autoOrchestrate","slimSystemPrompt"],!0)),v.router?.stats?.enabled!==!0&&(v=je(v,["router","stats","enabled"],!0)),v};return o.jsx(Wt,{title:n("pilotDeckConfig.panels.router.title"),description:n("pilotDeckConfig.panels.router.description"),children:o.jsxs("div",{className:"space-y-4",children:[o.jsx(Rt,{divided:!0,children:o.jsx(Jt,{label:n("pilotDeckConfig.panels.router.enabled.label"),description:n("pilotDeckConfig.panels.router.enabled.description"),children:o.jsx(Kt,{checked:s,ariaLabel:n("pilotDeckConfig.panels.router.enabled.label"),onChange:y=>{let v=je(e,["router","enabled"],y);y&&(v=k(v)),t(v)}})})}),s&&o.jsxs(o.Fragment,{children:[o.jsx(D9,{config:e,onChange:t}),o.jsxs("button",{type:"button",onClick:()=>a(y=>!y),"aria-expanded":r,className:"inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-[12px] font-medium leading-5 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:[o.jsx(Sn,{className:oe("h-3.5 w-3.5 transition-transform",r&&"rotate-180")}),n("pilotDeckConfig.panels.router.advancedToggle")]}),r&&o.jsxs(o.Fragment,{children:[o.jsx(R9,{config:e,onChange:t}),o.jsxs(Rt,{divided:!0,children:[o.jsx(Jt,{label:n("pilotDeckConfig.panels.router.zeroUsageRetry.label"),description:n("pilotDeckConfig.panels.router.zeroUsageRetry.description"),children:o.jsx(Kt,{checked:m,ariaLabel:n("pilotDeckConfig.panels.router.zeroUsageRetry.label"),onChange:y=>t(je(e,["router","zeroUsageRetry","enabled"],y))})}),m&&o.jsx(kt,{label:n("pilotDeckConfig.panels.router.zeroUsageRetry.maxAttempts.label"),description:n("pilotDeckConfig.panels.router.zeroUsageRetry.maxAttempts.description"),children:o.jsx(fn,{value:d.maxAttempts,placeholder:"2",onChange:y=>t(je(e,["router","zeroUsageRetry","maxAttempts"],y))})})]}),o.jsxs(Rt,{className:"space-y-4 p-4",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{children:[o.jsx("div",{className:"text-sm font-semibold text-foreground",children:n("pilotDeckConfig.panels.router.tokenSaver.title")}),o.jsx("div",{className:"mt-0.5 text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.router.tokenSaver.description")})]}),o.jsx(Kt,{checked:f,ariaLabel:n("pilotDeckConfig.panels.router.tokenSaver.title"),onChange:y=>{let v=je(e,["router","tokenSaver","enabled"],y);y&&(v=k(v)),t(v)}})]}),f&&o.jsxs("div",{className:"space-y-4 border-t border-border pt-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"mb-1 block text-xs font-medium text-foreground",children:n("pilotDeckConfig.panels.router.tokenSaver.defaultTier")}),o.jsx(kr,{value:c.defaultTier??"medium",options:b.length>0?b.map(y=>({value:y,label:y})):Al.map(y=>({value:y,label:y})),onChange:y=>t(je(e,["router","tokenSaver","defaultTier"],y))})]}),o.jsx(kt,{label:n("pilotDeckConfig.panels.router.tokenSaver.judgeTimeout.label"),description:n("pilotDeckConfig.panels.router.tokenSaver.judgeTimeout.description"),children:o.jsx(fn,{value:c.judgeTimeoutMs,placeholder:"15000",onChange:y=>t(je(e,["router","tokenSaver","judgeTimeoutMs"],y))})}),o.jsx(kt,{label:n("pilotDeckConfig.panels.router.tokenSaver.subagentPolicy.label"),description:n("pilotDeckConfig.panels.router.tokenSaver.subagentPolicy.description"),children:o.jsx(kr,{value:c.subagent?.policy??"judge",options:[{value:"judge",label:"judge"},{value:"skip",label:"skip"}],onChange:y=>t(je(e,["router","tokenSaver","subagent","policy"],y))})}),o.jsx(j9,{config:e,onChange:t}),o.jsx(O9,{config:e,onChange:t})]})]}),o.jsxs(Rt,{className:"space-y-4 p-4",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{children:[o.jsx("div",{className:"text-sm font-semibold text-foreground",children:n("pilotDeckConfig.panels.router.autoOrchestrate.title")}),o.jsx("div",{className:"mt-0.5 text-xs text-muted-foreground",children:n("pilotDeckConfig.panels.router.autoOrchestrate.description")})]}),o.jsx(Kt,{checked:g,ariaLabel:n("pilotDeckConfig.panels.router.autoOrchestrate.title"),onChange:y=>t(je(e,["router","autoOrchestrate","enabled"],y))})]}),g&&o.jsxs("div",{className:"space-y-3 border-t border-border pt-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"mb-1 block text-xs font-medium text-foreground",children:n("pilotDeckConfig.panels.router.autoOrchestrate.triggerTiers")}),o.jsx("div",{className:"mt-1 flex flex-wrap gap-2",children:(b.length>0?b:[...Al]).map(y=>{const v=(u.triggerTiers??["complex"]).includes(y);return o.jsx("button",{type:"button",className:oe("rounded-full border px-3 py-1 text-xs font-medium transition-colors",v?"border-primary bg-primary/10 text-primary":"border-border bg-background text-muted-foreground hover:bg-muted"),onClick:()=>{const E=u.triggerTiers??["complex"],N=v?E.filter(w=>w!==y):[...E,y];t(je(e,["router","autoOrchestrate","triggerTiers"],N))},children:y},y)})})]}),o.jsx(Jt,{label:n("pilotDeckConfig.panels.router.autoOrchestrate.slimPrompt.label"),description:n("pilotDeckConfig.panels.router.autoOrchestrate.slimPrompt.description"),children:o.jsx(Kt,{checked:u.slimSystemPrompt!==!1,ariaLabel:n("pilotDeckConfig.panels.router.autoOrchestrate.slimPrompt.label"),onChange:y=>t(je(e,["router","autoOrchestrate","slimSystemPrompt"],y))})})]})]}),o.jsx(Rt,{divided:!0,children:o.jsx(Jt,{label:n("pilotDeckConfig.panels.router.stats.label"),description:n("pilotDeckConfig.panels.router.stats.description"),children:o.jsx(Kt,{checked:p,ariaLabel:n("pilotDeckConfig.panels.router.stats.label"),onChange:y=>t(je(e,["router","stats","enabled"],y))})})}),p&&o.jsx(I9,{config:e,onChange:t})]})]})]})})}function L9({config:e,onChange:t}){const{t:n}=Je("settings"),r=e.gateway??{};return o.jsx(Wt,{title:n("pilotDeckConfig.panels.gateway.title"),description:n("pilotDeckConfig.panels.gateway.description"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(Jt,{label:n("pilotDeckConfig.panels.gateway.enabled.label"),description:n("pilotDeckConfig.panels.gateway.enabled.description"),children:o.jsx(Kt,{checked:!!r.enabled,ariaLabel:n("pilotDeckConfig.panels.gateway.enabled.label"),onChange:a=>t(je(e,["gateway","enabled"],a))})}),r.enabled&&o.jsx(kt,{label:n("pilotDeckConfig.panels.gateway.home.label"),description:n("pilotDeckConfig.panels.gateway.home.description"),children:o.jsx(rn,{value:r.home,placeholder:"~/.pilotdeck/gateway",monospace:!0,onChange:a=>t(je(e,["gateway","home"],a))})})]})})}function P9({title:e,description:t,children:n}){return o.jsxs("section",{className:"space-y-2.5",children:[o.jsxs("div",{children:[o.jsx("h3",{className:"text-[15px] font-semibold leading-5 text-foreground",children:e}),t&&o.jsx("p",{className:"mt-1 text-xs leading-5 text-muted-foreground",children:t})]}),n]})}function F9({children:e,divided:t}){return o.jsx("div",{className:oe("overflow-hidden rounded-lg border border-border bg-card/60",t&&"divide-y divide-border"),children:e})}function B9({section:e,onSelect:t}){const{t:n}=Je("settings"),r=r9[e],a=t9.find(i=>i.id===e);return a?o.jsxs("button",{type:"button",onClick:()=>t(e),className:"flex min-h-[66px] w-full items-center gap-3.5 px-5 py-3 text-left transition-colors hover:bg-accent/35 active:bg-accent/50",children:[o.jsx(r,{className:"h-4 w-4 flex-shrink-0 text-muted-foreground"}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"text-[15px] font-semibold leading-5 text-foreground",children:n(`pilotDeckConfig.sections.${a.labelKey}.label`)}),o.jsx("div",{className:"mt-0.5 text-xs leading-5 text-muted-foreground",children:n(`pilotDeckConfig.sections.${a.descriptionKey}.description`)})]}),o.jsx(qn,{className:"h-4 w-4 flex-shrink-0 text-muted-foreground"})]}):null}function $9({onSelect:e}){const{t}=Je("settings");return o.jsx("div",{className:"space-y-8",children:n9.map(n=>o.jsx(P9,{title:t(`pilotDeckConfig.sectionGroups.${n.id}`),description:n.id==="basic"?t("pilotDeckConfig.sectionGroups.basicDescription"):void 0,children:o.jsx(F9,{divided:n.sections.length>1,children:n.sections.map(r=>o.jsx(B9,{section:r,onSelect:e},r))})},n.id))})}function U9({projects:e=[]}){const{t}=Je("settings"),{path:n,raw:r,setRaw:a,exists:i,validation:s,reload:l,isDirty:c,externalChangeNotice:u,dismissExternalNotice:d,loading:p,saving:m,opening:f,error:g,refresh:b,save:x,reloadConfig:k,openFile:y}=JL(),[v,E]=h.useState(null),[N,w]=h.useState(!1),T=h.useMemo(()=>u9(r),[r]),j=!T&&r.trim().length>0,_=I=>{try{a(d9(I))}catch(z){console.error("Failed to serialise config patch",z)}},C=j||s?.valid===!1,O=t(C?"pilotDeckConfig.rawYaml.configInvalid":c?"pilotDeckConfig.status.unsavedChanges":"pilotDeckConfig.status.noUnsavedChanges");return p?o.jsx("div",{className:"flex items-center justify-center py-12 text-xs text-muted-foreground",children:t("pilotDeckConfig.loading")}):o.jsxs("div",{className:"space-y-6",children:[o.jsxs(Rt,{className:"p-3",children:[o.jsxs("div",{className:"flex flex-col gap-3 md:flex-row md:items-center",children:[o.jsxs("button",{type:"button",onClick:()=>w(I=>!I),className:"flex min-w-0 flex-1 items-start gap-3 rounded-lg px-1.5 py-1 text-left transition-colors hover:bg-accent/35","aria-expanded":N,children:[o.jsx(sx,{className:"mt-0.5 h-5 w-5 flex-shrink-0 text-muted-foreground"}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"text-[15px] font-semibold leading-5 text-foreground",children:t(i?"pilotDeckConfig.header.configFile":"pilotDeckConfig.header.configPreview")}),o.jsx("code",{className:"mt-1.5 block truncate rounded-md bg-muted px-2.5 py-1.5 font-mono text-[11px] leading-4 text-muted-foreground",children:n})]})]}),o.jsxs("div",{className:"flex flex-wrap items-center gap-2 md:justify-end",children:[o.jsxs("span",{className:oe("inline-flex h-8 items-center gap-1.5 rounded-md px-2.5 text-[11px] font-medium leading-4",C?"bg-destructive/10 text-destructive":c?"bg-amber-500/10 text-amber-700 dark:text-amber-300":"bg-muted text-muted-foreground"),children:[o.jsx("span",{className:oe("h-2 w-2 rounded-full",C?"bg-destructive":c?"bg-amber-500":"bg-green-500")}),O]}),o.jsxs(St,{type:"button",size:"sm",onClick:x,disabled:m||!c,className:"h-8 gap-1.5 px-2.5 text-xs",children:[o.jsx(Ac,{className:"mr-1.5 h-3.5 w-3.5"}),t(m?"pilotDeckConfig.actions.saving":"pilotDeckConfig.actions.saveAndReloadShort")]}),o.jsx("button",{type:"button",onClick:()=>w(I=>!I),className:"inline-flex h-8 w-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground","aria-label":t(N?"pilotDeckConfig.actions.hideDetails":"pilotDeckConfig.actions.showDetails"),title:t(N?"pilotDeckConfig.actions.hideDetails":"pilotDeckConfig.actions.showDetails"),children:o.jsx(Sn,{className:oe("h-4 w-4 transition-transform",N&&"rotate-180")})})]})]}),N&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"mt-3 space-y-3 border-t border-border pt-3",children:[o.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[o.jsxs(St,{variant:"outline",size:"sm",onClick:y,disabled:f,className:"h-8 gap-1.5 px-2.5 text-xs",children:[o.jsx(Ki,{className:"mr-1.5 h-3.5 w-3.5"}),t(f?"pilotDeckConfig.actions.opening":"pilotDeckConfig.actions.revealFile")]}),o.jsxs(St,{variant:"outline",size:"sm",onClick:()=>{b()},className:"h-8 gap-1.5 px-2.5 text-xs",children:[o.jsx(Cr,{className:"mr-1.5 h-3.5 w-3.5"}),t("pilotDeckConfig.actions.refresh")]}),o.jsxs(St,{type:"button",variant:"outline",size:"sm",onClick:k,disabled:m,className:"h-8 gap-1.5 px-2.5 text-xs",children:[o.jsx(Cr,{className:"mr-1.5 h-3.5 w-3.5"}),t("pilotDeckConfig.actions.reloadCurrent")]})]}),s?.valid?o.jsxs("div",{className:"rounded-lg bg-muted/30 px-3.5 py-2.5",children:[o.jsxs("div",{className:"flex items-center gap-2 text-[13px] font-semibold leading-5 text-foreground",children:[o.jsx("span",{className:"h-2.5 w-2.5 rounded-full bg-green-500"}),t("pilotDeckConfig.rawYaml.configValid")]}),o.jsx("div",{className:"mt-0.5 pl-4 text-[11px] leading-4 text-muted-foreground",children:t(c?"pilotDeckConfig.status.unsavedChanges":"pilotDeckConfig.status.noUnsavedChanges")})]}):o.jsxs("div",{className:"rounded-lg border border-destructive/30 bg-destructive/10 px-3.5 py-2.5 text-destructive",children:[o.jsxs("div",{className:"flex items-center gap-2 text-[13px] font-semibold leading-5",children:[o.jsx(ka,{className:"h-4 w-4"}),t("pilotDeckConfig.rawYaml.configInvalid")]}),o.jsx("div",{className:"mt-0.5 pl-6 text-[11px] leading-4",children:t("pilotDeckConfig.status.fixYamlInFilesystem")})]}),o.jsx(c9,{config:T,reload:l}),s&&s.errors.length>0&&o.jsxs("div",{className:"rounded-lg border border-destructive/30 bg-destructive/10 p-3 text-xs text-destructive",children:[o.jsx("div",{className:"mb-1 font-semibold",children:t("pilotDeckConfig.rawYaml.errors")}),o.jsx("ul",{className:"list-disc space-y-1 pl-4",children:s.errors.map(I=>o.jsx("li",{children:I},I))})]}),s&&s.warnings.length>0&&o.jsxs("div",{className:"rounded-lg border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:[o.jsx("div",{className:"mb-1 font-semibold",children:t("pilotDeckConfig.rawYaml.warnings")}),o.jsx("ul",{className:"list-disc space-y-1 pl-4",children:s.warnings.map(I=>o.jsx("li",{children:I},I))})]}),g&&o.jsx("div",{className:"rounded-lg border border-destructive/30 bg-destructive/10 p-3 text-xs text-destructive",children:g})]}),u&&o.jsxs("div",{className:"mt-3 flex items-start justify-between gap-3 rounded-lg border border-amber-500/40 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:[o.jsx("div",{className:"flex-1",children:u}),o.jsx("button",{type:"button",onClick:d,className:"rounded px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide hover:bg-amber-500/20",children:t("pilotDeckConfig.actions.dismiss")})]}),j&&o.jsx("div",{className:"mt-3 rounded-lg border border-destructive/30 bg-destructive/10 p-3 text-xs text-destructive",children:t("pilotDeckConfig.rawYaml.yamlParseError")})]})]}),T?v?o.jsxs("div",{className:"space-y-4",children:[o.jsxs("button",{type:"button",onClick:()=>E(null),className:"inline-flex items-center gap-1 text-xs font-medium text-muted-foreground transition-colors hover:text-foreground",children:[o.jsx(Nc,{className:"h-4 w-4"}),t("pilotDeckConfig.sections.backToMenu")]}),o.jsxs("div",{className:"min-w-0 space-y-6",children:[v==="models"&&o.jsx(y9,{config:T,onChange:_}),v==="agents"&&o.jsx(S9,{config:T,onChange:_}),v==="memory"&&o.jsx(T9,{config:T,onChange:_}),v==="tools"&&o.jsx(A9,{config:T,onChange:_}),v==="router"&&o.jsx(M9,{config:T,onChange:_}),v==="gateway"&&o.jsx(L9,{config:T,onChange:_}),v==="customEnv"&&o.jsx(C9,{config:T,onChange:_}),v==="alwaysOn"&&o.jsx(N9,{config:T,projects:e,onChange:_}),v==="advanced"&&o.jsx(g9,{config:T,onChange:_})]})]}):o.jsx($9,{onSelect:E}):o.jsx(Rt,{className:"p-5 text-xs text-muted-foreground",children:t("pilotDeckConfig.rawYaml.cannotParse")})]})}const Il=JSON.stringify({mcpServers:{}},null,2),qi="h-9 w-full rounded-lg border border-border bg-background px-3 text-sm text-foreground outline-none transition-colors placeholder:text-muted-foreground focus:border-ring focus:ring-1 focus:ring-ring",z9={command:"npx",args:["-y","some-mcp-server"],env:{API_KEY:"${env:API_KEY}"}},q9={url:"https://example.com/mcp",headers:{Authorization:"Bearer ${env:MCP_TOKEN}"}};function H9({projects:e=[]}){const{t}=Je("settings"),n=h.useMemo(()=>e.map($=>({label:$.displayName||$.name||$.fullPath||$.path||"",value:$.fullPath||$.path||""})).filter($=>$.value),[e]),[r,a]=h.useState(n[0]?.value??""),[i,s]=h.useState("global"),[l,c]=h.useState(null),[u,d]=h.useState({global:Il,project:Il}),[p,m]=h.useState({global:[],project:[]}),[f,g]=h.useState(!0),[b,x]=h.useState(!1),[k,y]=h.useState(null),[v,E]=h.useState(null);h.useEffect(()=>{!r&&n[0]?.value&&a(n[0].value)},[n,r]);const N=async()=>{g(!0),y(null);try{const $=r?`?projectPath=${encodeURIComponent(r)}`:"",U=await Oe(`/api/mcp/config${$}`),q=await U.json();if(!U.ok)throw new Error(q.details||q.error||"Failed to load MCP config");c({global:q.global,project:q.project}),d({global:q.global.raw,project:q.project.raw}),m({global:Os(q.global.raw).servers,project:Os(q.project.raw).servers})}catch($){y($ instanceof Error?$.message:"Failed to load MCP config")}finally{g(!1)}};h.useEffect(()=>{N()},[r]);const w=l?.[i],T=u[i],j=p[i],_=h.useMemo(()=>Os(T).error,[T]),C=j.length,O=async()=>{x(!0),y(null),E(null);try{if(j.some(A=>A.name.trim().length===0))throw new Error(t("mcpConfig.nameRequired"));const $=rv(j),U=await Oe(`/api/mcp/config/${i}`,{method:"PUT",body:JSON.stringify({raw:$,projectPath:r})}),q=await U.json();if(!U.ok)throw new Error(q.details||q.error||"Failed to save MCP config");c(A=>A&&{...A,[i]:q}),d(A=>({...A,[i]:q.raw})),m(A=>({...A,[i]:Os(q.raw).servers})),E(t("mcpConfig.saved"))}catch($){y($ instanceof Error?$.message:"Failed to save MCP config")}finally{x(!1)}},I=$=>{m(U=>({...U,[i]:$})),d(U=>({...U,[i]:rv($)}))},z=($,U)=>{I(j.map(q=>q.id===$?{...q,...U}:q))},M=$=>{try{const U=JSON.parse(T||Il),q=U.mcpServers&&typeof U.mcpServers=="object"?U.mcpServers:{},A=$==="stdio"?"new-stdio-server":"new-remote-server";let K=A,V=2;for(;q[K];)K=`${A}-${V}`,V+=1;const L=Z3(K,$==="stdio"?z9:q9);I([...j,L])}catch{y(t("mcpConfig.fixJsonBeforeTemplate"))}},P=$=>{I(j.filter(U=>U.id!==$))},B=$=>{d(q=>({...q,[i]:$}));const U=Os($);U.error||m(q=>({...q,[i]:U.servers}))};return o.jsxs("div",{className:"space-y-5",children:[o.jsx("div",{className:"rounded-lg border border-border bg-card/60 p-4",children:o.jsxs("div",{className:"flex flex-col gap-3 md:flex-row md:items-center md:justify-between",children:[o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsx(lx,{className:"h-5 w-5 text-muted-foreground"}),o.jsxs("div",{children:[o.jsx("div",{className:"text-sm font-semibold text-foreground",children:t("mcpConfig.title")}),o.jsx("div",{className:"text-xs leading-5 text-muted-foreground",children:t("mcpConfig.description")})]})]}),o.jsxs(St,{variant:"outline",size:"sm",onClick:()=>{N()},disabled:f,children:[o.jsx(Cr,{className:oe("h-4 w-4",f&&"animate-spin")}),t("pilotDeckConfig.actions.refresh")]})]})}),n.length>0&&o.jsxs("label",{className:"block space-y-2",children:[o.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:t("mcpConfig.project")}),o.jsx("select",{value:r,onChange:$=>a($.target.value),className:"h-9 w-full rounded-lg border border-border bg-background px-3 text-sm text-foreground outline-none focus:ring-1 focus:ring-ring",children:n.map($=>o.jsx("option",{value:$.value,children:$.label},$.value))})]}),o.jsx("div",{className:"flex rounded-lg border border-border bg-muted/40 p-1",children:["global","project"].map($=>o.jsx("button",{type:"button",onClick:()=>s($),disabled:$==="project"&&!r,className:oe("flex-1 rounded-md px-3 py-2 text-sm font-medium transition-colors",i===$?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground",$==="project"&&!r&&"cursor-not-allowed opacity-50"),children:t(`mcpConfig.scopes.${$}`)},$))}),o.jsxs("div",{className:"rounded-lg border border-border bg-card/60",children:[o.jsxs("div",{className:"flex flex-col gap-3 border-b border-border p-4 md:flex-row md:items-center md:justify-between",children:[o.jsxs("div",{className:"min-w-0",children:[o.jsx("div",{className:"text-sm font-semibold text-foreground",children:t("mcpConfig.serverCount",{count:C})}),o.jsx("div",{className:"truncate text-xs text-muted-foreground",children:w?.path||t("mcpConfig.noPath")})]}),o.jsxs("div",{className:"flex flex-wrap gap-2",children:[o.jsxs(St,{variant:"outline",size:"sm",onClick:()=>M("stdio"),children:[o.jsx(Qt,{className:"h-4 w-4"}),t("mcpConfig.addStdio")]}),o.jsxs(St,{variant:"outline",size:"sm",onClick:()=>M("remote"),children:[o.jsx(Qt,{className:"h-4 w-4"}),t("mcpConfig.addRemote")]})]})]}),f?o.jsxs("div",{className:"flex h-64 items-center justify-center text-sm text-muted-foreground",children:[o.jsx(pt,{className:"mr-2 h-4 w-4 animate-spin"}),t("pilotDeckConfig.loading")]}):_?o.jsxs("div",{className:"space-y-4 p-4",children:[o.jsx("div",{className:"rounded-lg border border-destructive/40 bg-destructive/5 px-4 py-3 text-sm text-destructive",children:_}),o.jsx(nv,{value:T,onChange:B})]}):o.jsxs("div",{className:"space-y-4 p-4",children:[j.length===0?o.jsx("div",{className:"rounded-lg border border-dashed border-border px-4 py-10 text-center text-sm text-muted-foreground",children:t("mcpConfig.empty")}):j.map($=>o.jsx(G9,{server:$,onChange:U=>z($.id,U),onRemove:()=>P($.id)},$.id)),o.jsx(nv,{value:T,onChange:B})]})]}),(k||v)&&o.jsx("div",{className:oe("rounded-lg border px-4 py-3 text-sm",k?"border-destructive/40 text-destructive":"border-border text-muted-foreground"),children:k||v}),o.jsx("div",{className:"flex justify-end",children:o.jsxs(St,{onClick:()=>{O()},disabled:b||f||i==="project"&&!r,children:[b?o.jsx(pt,{className:"h-4 w-4 animate-spin"}):o.jsx(Ac,{className:"h-4 w-4"}),t("pilotDeckConfig.actions.saveAndReload")]})})]})}function G9({server:e,onChange:t,onRemove:n}){const{t:r}=Je("settings"),a=e.transport==="stdio"?[e.command,...e.args].filter(Boolean).join(" "):e.url,i=e.name.startsWith("new-stdio-server")||e.name.startsWith("new-remote-server"),[s,l]=h.useState(i);return o.jsxs("details",{className:"overflow-hidden rounded-lg border border-border bg-background",open:s,onToggle:c=>l(c.currentTarget.open),children:[o.jsx("summary",{className:"cursor-pointer list-none px-4 py-3 transition-colors hover:bg-accent/25 [&::-webkit-details-marker]:hidden",children:o.jsxs("div",{className:"flex items-center justify-between gap-3",children:[o.jsxs("div",{className:"min-w-0",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"truncate text-sm font-semibold text-foreground",children:e.name||r("mcpConfig.unnamed")}),o.jsx("span",{className:"rounded-full bg-muted px-2 py-0.5 text-[11px] font-semibold uppercase text-muted-foreground",children:e.transport==="stdio"?"STDIO":r("mcpConfig.transport.http")})]}),o.jsx("div",{className:"mt-1 truncate text-xs text-muted-foreground",children:a||r("mcpConfig.noSummary")})]}),o.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:r("mcpConfig.expand")})]})}),o.jsxs("div",{className:"space-y-4 border-t border-border p-4",children:[o.jsx(Mu,{label:r("mcpConfig.fields.name"),children:o.jsx("input",{value:e.name,onChange:c=>t({name:c.target.value}),placeholder:"MCP server name",className:qi})}),o.jsxs("div",{className:"grid grid-cols-2 overflow-hidden rounded-lg border border-border bg-muted/40 p-1",children:[o.jsx(Q1,{active:e.transport==="stdio",onClick:()=>t({transport:"stdio"}),children:"STDIO"}),o.jsx(Q1,{active:e.transport==="http",onClick:()=>t({transport:"http"}),children:r("mcpConfig.transport.http")})]}),e.transport==="stdio"?o.jsxs("div",{className:"space-y-4",children:[o.jsx(Mu,{label:r("mcpConfig.fields.command"),children:o.jsx("input",{value:e.command,onChange:c=>t({command:c.target.value}),placeholder:"npx",className:qi})}),o.jsx(ev,{label:r("mcpConfig.fields.args"),values:e.args,placeholder:"-y",addLabel:r("mcpConfig.actions.addArg"),onChange:c=>t({args:c})}),o.jsx(tv,{label:r("mcpConfig.fields.env"),rows:e.env,keyPlaceholder:r("mcpConfig.placeholders.key"),valuePlaceholder:r("mcpConfig.placeholders.value"),addLabel:r("mcpConfig.actions.addEnv"),onChange:c=>t({env:c})}),o.jsx(ev,{label:r("mcpConfig.fields.envPassThrough"),values:e.envPassThrough,placeholder:"GITHUB_TOKEN",addLabel:r("mcpConfig.actions.addVariable"),onChange:c=>t({envPassThrough:c})}),o.jsxs("label",{className:"flex items-center justify-between gap-3 rounded-lg border border-border bg-muted/20 px-3 py-2",children:[o.jsxs("span",{children:[o.jsx("span",{className:"block text-sm font-medium text-foreground",children:r("mcpConfig.fields.perSession")}),o.jsx("span",{className:"block text-xs text-muted-foreground",children:r("mcpConfig.fields.perSessionHelp")})]}),o.jsx("input",{type:"checkbox",checked:e.perSession,onChange:c=>t({perSession:c.target.checked}),className:"h-4 w-4"})]})]}):o.jsxs("div",{className:"space-y-4",children:[o.jsx(Mu,{label:r("mcpConfig.fields.url"),children:o.jsx("input",{value:e.url,onChange:c=>t({url:c.target.value}),placeholder:"https://example.com/mcp",className:qi})}),o.jsx(tv,{label:r("mcpConfig.fields.headers"),rows:e.headers,keyPlaceholder:"Authorization",valuePlaceholder:"Bearer ${env:MCP_TOKEN}",addLabel:r("mcpConfig.actions.addHeader"),onChange:c=>t({headers:c})})]})]}),o.jsx("div",{className:"flex justify-end border-t border-border bg-muted/20 px-4 py-3",children:o.jsxs(St,{variant:"ghost",size:"sm",onClick:n,className:"text-destructive hover:text-destructive",children:[o.jsx(en,{className:"h-4 w-4"}),r("pilotDeckConfig.actions.remove")]})})]})}function Mu({label:e,children:t}){return o.jsxs("label",{className:"block space-y-2",children:[o.jsx("span",{className:"text-sm font-medium text-foreground",children:e}),t]})}function Q1({active:e,onClick:t,children:n}){return o.jsx("button",{type:"button",onClick:t,className:oe("rounded-md px-3 py-2 text-sm font-semibold transition-colors",e?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:n})}function ev({label:e,values:t,placeholder:n,addLabel:r,onChange:a}){return o.jsxs("div",{className:"space-y-2",children:[o.jsx("div",{className:"text-sm font-medium text-foreground",children:e}),o.jsxs("div",{className:"space-y-2",children:[t.map((i,s)=>o.jsxs("div",{className:"flex gap-2",children:[o.jsx("input",{value:i,onChange:l=>a(t.map((c,u)=>u===s?l.target.value:c)),placeholder:n,className:qi}),o.jsx(X3,{onClick:()=>a(t.filter((l,c)=>c!==s))})]},s)),o.jsxs(St,{variant:"secondary",size:"sm",className:"w-full",onClick:()=>a([...t,""]),children:[o.jsx(Qt,{className:"h-4 w-4"}),r]})]})]})}function tv({label:e,rows:t,keyPlaceholder:n,valuePlaceholder:r,addLabel:a,onChange:i}){return o.jsxs("div",{className:"space-y-2",children:[o.jsx("div",{className:"text-sm font-medium text-foreground",children:e}),o.jsxs("div",{className:"space-y-2",children:[t.map(s=>o.jsxs("div",{className:"grid grid-cols-[1fr_1fr_auto] gap-2",children:[o.jsx("input",{value:s.key,onChange:l=>i(t.map(c=>c.id===s.id?{...c,key:l.target.value}:c)),placeholder:n,className:qi}),o.jsx("input",{value:s.value,onChange:l=>i(t.map(c=>c.id===s.id?{...c,value:l.target.value}:c)),placeholder:r,className:qi}),o.jsx(X3,{onClick:()=>i(t.filter(l=>l.id!==s.id))})]},s.id)),o.jsxs(St,{variant:"secondary",size:"sm",className:"w-full",onClick:()=>i([...t,{id:Ox(),key:"",value:""}]),children:[o.jsx(Qt,{className:"h-4 w-4"}),a]})]})]})}function X3({onClick:e}){return o.jsx("button",{type:"button",onClick:e,className:"inline-flex h-9 w-9 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:o.jsx(en,{className:"h-4 w-4"})})}function nv({value:e,onChange:t}){const{t:n}=Je("settings");return o.jsxs("details",{className:"rounded-lg border border-border bg-background",children:[o.jsx("summary",{className:"cursor-pointer px-4 py-3 text-sm font-semibold text-foreground",children:n("mcpConfig.advanced")}),o.jsx("textarea",{value:e,onChange:r=>t(r.target.value),spellCheck:!1,className:"min-h-[260px] w-full resize-y border-t border-border bg-background p-4 font-mono text-xs leading-5 text-foreground outline-none"})]})}function Os(e){try{const t=JSON.parse(e||Il),n=t?.mcpServers&&typeof t.mcpServers=="object"&&!Array.isArray(t.mcpServers)?t.mcpServers:{};return{servers:Object.entries(n).map(([r,a],i)=>Z3(r,a,String(i)))}}catch(t){return{servers:[],error:t instanceof Error?t.message:"Invalid JSON"}}}function Z3(e,t,n=Ox()){const r=t&&typeof t=="object"&&!Array.isArray(t)?t:{},a=av(r.env),i=a.filter(s=>s.value===`\${env:${s.key}}`).map(s=>s.key);return{id:n,name:e,transport:typeof r.command=="string"?"stdio":"http",command:typeof r.command=="string"?r.command:"",args:Array.isArray(r.args)?r.args.filter(s=>typeof s=="string"):[],env:a.filter(s=>s.value!==`\${env:${s.key}}`),envPassThrough:i,perSession:r.perSession===!0,url:typeof r.url=="string"?r.url:typeof r.httpUrl=="string"?r.httpUrl:"",headers:av(r.headers)}}function rv(e){const t={};for(const n of e){const r=n.name.trim();if(r)if(n.transport==="stdio"){const a=Object.fromEntries([...n.env.filter(i=>i.key.trim()).map(i=>[i.key.trim(),i.value]),...n.envPassThrough.filter(Boolean).map(i=>[i.trim(),`\${env:${i.trim()}}`])]);t[r]={command:n.command,...n.args.filter(Boolean).length>0?{args:n.args.filter(Boolean)}:{},...Object.keys(a).length>0?{env:a}:{},...n.perSession?{perSession:!0}:{}}}else{const a=Object.fromEntries(n.headers.filter(i=>i.key.trim()).map(i=>[i.key.trim(),i.value]));t[r]={url:n.url,...Object.keys(a).length>0?{headers:a}:{}}}}return JSON.stringify({mcpServers:t},null,2)}function av(e){return!e||typeof e!="object"||Array.isArray(e)?[]:Object.entries(e).map(([t,n])=>({id:Ox(),key:t,value:typeof n=="string"?n:String(n??"")}))}function Ox(){return Math.random().toString(36).slice(2)}const Ji="pilotdeck-settings",Xn={setItem:(e,t)=>{try{localStorage.setItem(e,t)}catch(n){if(n?.name==="QuotaExceededError"){console.warn("localStorage quota exceeded, clearing old data"),Object.keys(localStorage).filter(i=>i.startsWith("draft_input_")).forEach(i=>{localStorage.removeItem(i)});try{localStorage.setItem(e,t)}catch(i){console.error("Failed to save to localStorage even after cleanup:",i)}}else console.error("localStorage error:",n)}},getItem:e=>{try{return localStorage.getItem(e)}catch(t){return console.error("localStorage getItem error:",t),null}},removeItem:e=>{try{localStorage.removeItem(e)}catch(t){console.error("localStorage removeItem error:",t)}}};function Br(){const e=Xn.getItem(Ji);if(!e)return{allowedTools:[],disallowedTools:[],skipPermissions:!1,projectSortOrder:"name"};try{const t=JSON.parse(e);return{...t,allowedTools:Array.isArray(t.allowedTools)?t.allowedTools:[],disallowedTools:Array.isArray(t.disallowedTools)?t.disallowedTools:[],skipPermissions:typeof t.skipPermissions=="boolean"?t.skipPermissions:!1,projectSortOrder:t.projectSortOrder||"name"}}catch{return{allowedTools:[],disallowedTools:[],skipPermissions:!1,projectSortOrder:"name"}}}async function V9(){const e=await Oe("/api/settings/permissions");if(!e.ok)throw new Error(`Failed to fetch permission settings: HTTP ${e.status}`);const t=await e.json();return Q3(t.permissions)}async function J3(e){const t=await Oe("/api/settings/permissions",{method:"PUT",body:JSON.stringify(e)});if(!t.ok)throw new Error(`Failed to save permission settings: HTTP ${t.status}`);const n=await t.json(),r=Q3(n.permissions);return Xn.setItem(Ji,JSON.stringify({...Br(),...r})),window.dispatchEvent(new Event("pilotdeck-settings-changed")),r}function Q3(e){const t=Br(),n=e&&typeof e=="object"?e:{};return{...t,...n,allowedTools:Array.isArray(n.allowedTools)?n.allowedTools:[],disallowedTools:Array.isArray(n.disallowedTools)?n.disallowedTools:[],skipPermissions:!!n.skipPermissions,projectSortOrder:t.projectSortOrder||"name"}}const eA=typeof navigator<"u"&&/win/i.test(navigator.userAgent)&&!/darwin/i.test(navigator.userAgent),W9=["bash:git log:*","bash:git diff:*","bash:git status:*","read_file","write_file","edit_file","glob","grep","agent","task_create","web_fetch","web_search"],K9=["bash:rm:*","bash:sudo:*"],Y9=["bash:rm:*","bash:Remove-Item:*","bash:del /s:*","bash:rd /s:*","bash:Format-Volume:*","bash:Start-Process:*"],X9=eA?Y9:K9,iv=(e,t)=>{const n=t.trim();return!n||e.includes(n)?e:[...e,n]},sv=(e,t)=>e.filter(n=>n!==t);function vi(e){const n={...Br(),...e,lastUpdated:new Date().toISOString()};return Xn.setItem(Ji,JSON.stringify(n)),window.dispatchEvent(new Event("pilotdeck-settings-changed")),J3(e).catch(r=>{console.error("Failed to persist permission settings to backend:",r)}),n}function Z9(){const e=Br();return{version:2,exportedAt:new Date().toISOString(),source:"pilotdeck",allowedTools:e.allowedTools,disallowedTools:e.disallowedTools,skipPermissions:e.skipPermissions}}function J9(e,t){const n=new Blob([JSON.stringify(t,null,2)],{type:"application/json;charset=utf-8"}),r=URL.createObjectURL(n),a=document.createElement("a");a.href=r,a.download=e,a.rel="noopener",document.body.appendChild(a),a.click(),document.body.removeChild(a),setTimeout(()=>URL.revokeObjectURL(r),1e3)}function Q9(e){let t;try{t=JSON.parse(e)}catch{return null}if(!t||typeof t!="object")return null;const n=t,r=s=>Array.isArray(s)?s.filter(l=>typeof l=="string"&&l.trim().length>0):[],a=r(n.allowedTools),i=r(n.disallowedTools);return a.length===0&&i.length===0&&typeof n.skipPermissions!="boolean"?null:{allowedTools:a,disallowedTools:i,skipPermissions:typeof n.skipPermissions=="boolean"?n.skipPermissions:void 0}}const ov=(e,t)=>{const n=new Set(e),r=[...e];for(const a of t)n.has(a)||(n.add(a),r.push(a));return r};function eP(){const{t:e}=Je("settings"),[t,n]=h.useState([]),[r,a]=h.useState([]),[i,s]=h.useState(!1),[l,c]=h.useState(""),[u,d]=h.useState(""),[p,m]=h.useState(null),f=h.useRef(null),g=h.useCallback(()=>{const T=Br();n(T.allowedTools),a(T.disallowedTools),s(T.skipPermissions)},[]);h.useEffect(()=>{g(),V9().then(_=>{Xn.setItem(Ji,JSON.stringify(_)),n(_.allowedTools),a(_.disallowedTools),s(_.skipPermissions)}).catch(_=>{console.error("Failed to load permission settings from backend:",_)});const T=_=>{_.key===Ji&&g()},j=()=>g();return window.addEventListener("storage",T),window.addEventListener("pilotdeck-settings-changed",j),()=>{window.removeEventListener("storage",T),window.removeEventListener("pilotdeck-settings-changed",j)}},[g]);const b=T=>{const j=iv(t,T);j!==t&&(n(j),vi({allowedTools:j}),c(""))},x=T=>{const j=sv(t,T);n(j),vi({allowedTools:j})},k=T=>{const j=iv(r,T);j!==r&&(a(j),vi({disallowedTools:j}),d(""))},y=T=>{const j=sv(r,T);a(j),vi({disallowedTools:j})},v=T=>{s(T),vi({skipPermissions:T})};h.useEffect(()=>{if(!p)return;const T=window.setTimeout(()=>m(null),4e3);return()=>window.clearTimeout(T)},[p]);const E=()=>{try{const T=Z9(),j=new Date().toISOString().slice(0,10);J9(`pilotdeck-permissions-${j}.json`,T),m({kind:"success",message:e("permissions.exportSuccess",{allowed:T.allowedTools.length,blocked:T.disallowedTools.length,defaultValue:"Exported {{allowed}} allowed and {{blocked}} blocked tools."})})}catch(T){console.error("Failed to export permissions:",T),m({kind:"error",message:e("permissions.exportError",{defaultValue:"Failed to export permissions."})})}},N=()=>{f.current?.click()},w=async T=>{const j=T.target.files?.[0];if(T.target.value="",!j)return;let _;try{_=await j.text()}catch(U){console.error("Failed to read import file:",U),m({kind:"error",message:e("permissions.importReadError",{defaultValue:"Could not read the selected file."})});return}const C=Q9(_);if(!C){m({kind:"error",message:e("permissions.importInvalid",{defaultValue:"Not a valid permissions export. Expected JSON with allowedTools / disallowedTools."})});return}const O=e("permissions.importConfirmBody",{allowed:C.allowedTools.length,blocked:C.disallowedTools.length,defaultValue:"Merge {{allowed}} allowed and {{blocked}} blocked tools into your existing permissions?"});if(!window.confirm(O)){m(null);return}const I=Br(),z=ov(I.allowedTools,C.allowedTools),M=ov(I.disallowedTools,C.disallowedTools),P={allowedTools:z,disallowedTools:M,...C.skipPermissions!==void 0?{skipPermissions:C.skipPermissions}:{}};vi(P),n(z),a(M),C.skipPermissions!==void 0&&s(C.skipPermissions);const B=z.length-I.allowedTools.length,$=M.length-I.disallowedTools.length;m({kind:"success",message:e("permissions.importSuccess",{addedAllowed:B,addedBlocked:$,defaultValue:"Imported. Added {{addedAllowed}} allowed and {{addedBlocked}} blocked tools."})})};return o.jsxs("div",{className:"space-y-8",children:[o.jsxs(Wt,{title:e("permissions.title",{defaultValue:"Permissions"}),description:e("permissions.description",{defaultValue:'Manage which tools the assistant can run without asking. Grants from the chat "Add permission" button land here too.'}),children:[o.jsx("input",{ref:f,type:"file",accept:"application/json,.json",className:"hidden",onChange:w}),o.jsxs("div",{className:"mb-3 flex flex-wrap items-center gap-2",children:[o.jsxs(St,{variant:"outline",size:"sm",onClick:E,className:"h-8 gap-1.5 text-xs",children:[o.jsx(Ja,{className:"h-3.5 w-3.5"}),e("permissions.export",{defaultValue:"Export"})]}),o.jsxs(St,{variant:"outline",size:"sm",onClick:N,className:"h-8 gap-1.5 text-xs",children:[o.jsx(cx,{className:"h-3.5 w-3.5"}),e("permissions.import",{defaultValue:"Import"})]}),o.jsx("span",{className:"text-xs text-muted-foreground",children:e("permissions.importExportHint",{defaultValue:"Share or back up your tool permissions as JSON."})})]}),p?o.jsx("div",{role:"status",className:p.kind==="success"?"mb-3 rounded-lg border border-green-200 bg-green-50 px-3 py-2 text-xs text-green-800 dark:border-green-900/50 dark:bg-green-950/30 dark:text-green-200":"mb-3 rounded-lg border border-red-200 bg-red-50 px-3 py-2 text-xs text-red-800 dark:border-red-900/50 dark:bg-red-950/30 dark:text-red-200",children:p.message}):null,o.jsxs(Rt,{divided:!0,children:[o.jsx(Jt,{label:o.jsxs("span",{className:"inline-flex items-center gap-2",children:[o.jsx(co,{className:"h-4 w-4 text-amber-600 dark:text-amber-400"}),e("permissions.skipPermissions.title",{defaultValue:"Skip permission prompts"})]}),description:e("permissions.skipPermissions.description",{defaultValue:"Run tool calls without asking for confirmation. This maps to bypassPermissions and should only be used in trusted workspaces."}),children:o.jsx(Kt,{checked:i,ariaLabel:e("permissions.skipPermissions.title",{defaultValue:"Skip permission prompts"}),onChange:v})}),i?o.jsx("div",{className:"border-t border-border px-4 py-2.5 text-xs leading-relaxed text-amber-700 dark:text-amber-300",children:e("permissions.skipPermissions.warning",{defaultValue:"Permission prompts are currently bypassed. Allowed and blocked rules below are still saved, but this global mode lets the agent run without asking."})}):null]})]}),o.jsx(Wt,{title:o.jsxs("span",{className:"inline-flex items-center gap-2",children:[o.jsx(Xr,{className:"h-4 w-4 text-green-600 dark:text-green-400"}),e("permissions.allowedTools.title",{defaultValue:"Allowed tools"})]}),description:e("permissions.allowedTools.description",{defaultValue:"Tools that auto-run without prompting."}),children:o.jsxs(Rt,{className:"space-y-3 p-3",children:[o.jsxs("div",{className:"flex flex-col gap-2 sm:flex-row",children:[o.jsx(wa,{value:l,onChange:T=>c(T.target.value),placeholder:e("permissions.allowedTools.placeholder",{defaultValue:'e.g. "bash:git log:*" or "write_file"'}),onKeyDown:T=>{if(T.key==="Enter"){if(En(T))return;T.preventDefault(),b(l)}},className:"h-10 flex-1"}),o.jsxs(St,{onClick:()=>b(l),disabled:!l.trim(),size:"sm",className:"h-10 px-4",children:[o.jsx(Qt,{className:"mr-1.5 h-4 w-4"}),e("permissions.actions.add",{defaultValue:"Add"})]})]}),o.jsxs("div",{children:[o.jsx("p",{className:"mb-2 text-xs font-medium text-muted-foreground",children:e("permissions.allowedTools.quickAdd",{defaultValue:"Quick add:"})}),o.jsx("div",{className:"flex flex-wrap gap-2",children:W9.map(T=>o.jsx(St,{variant:"outline",size:"sm",onClick:()=>b(T),disabled:t.includes(T),className:"h-7 text-xs",children:T},T))})]}),o.jsx("div",{className:"space-y-2",children:t.length===0?o.jsx("div",{className:"rounded-lg border border-dashed border-border py-5 text-center text-xs text-muted-foreground",children:e("permissions.allowedTools.empty",{defaultValue:"No allowed tools configured yet."})}):t.map(T=>o.jsxs("div",{className:"flex items-center justify-between rounded-lg border border-green-200 bg-green-50 px-3 py-2 dark:border-green-900/50 dark:bg-green-950/30",children:[o.jsx("code",{className:"font-mono text-xs text-green-800 dark:text-green-200",children:T}),o.jsx(St,{variant:"ghost",size:"sm",onClick:()=>x(T),className:"h-7 w-7 p-0 text-green-700 hover:text-green-900 dark:text-green-300","aria-label":e("permissions.actions.remove",{defaultValue:"Remove"}),children:o.jsx(Nr,{className:"h-4 w-4"})})]},T))})]})}),o.jsx(Wt,{title:o.jsxs("span",{className:"inline-flex items-center gap-2",children:[o.jsx(co,{className:"h-4 w-4 text-red-600 dark:text-red-400"}),e("permissions.blockedTools.title",{defaultValue:"Blocked tools"})]}),description:e("permissions.blockedTools.description",{defaultValue:"Tools the assistant is never allowed to use."}),children:o.jsxs(Rt,{className:"space-y-3 p-3",children:[o.jsxs("div",{className:"flex flex-col gap-2 sm:flex-row",children:[o.jsx(wa,{value:u,onChange:T=>d(T.target.value),placeholder:e("permissions.blockedTools.placeholder",{defaultValue:'e.g. "Bash(rm:*)"'}),onKeyDown:T=>{if(T.key==="Enter"){if(En(T))return;T.preventDefault(),k(u)}},className:"h-10 flex-1"}),o.jsxs(St,{onClick:()=>k(u),disabled:!u.trim(),size:"sm",className:"h-10 px-4",children:[o.jsx(Qt,{className:"mr-1.5 h-4 w-4"}),e("permissions.actions.add",{defaultValue:"Add"})]})]}),o.jsxs("div",{children:[o.jsx("p",{className:"mb-2 text-xs font-medium text-muted-foreground",children:e("permissions.allowedTools.quickAdd",{defaultValue:"Quick add:"})}),o.jsx("div",{className:"flex flex-wrap gap-2",children:X9.map(T=>o.jsx(St,{variant:"outline",size:"sm",onClick:()=>k(T),disabled:r.includes(T),className:"h-7 text-xs",children:T},T))})]}),o.jsx("div",{className:"space-y-2",children:r.length===0?o.jsx("div",{className:"rounded-lg border border-dashed border-border py-5 text-center text-xs text-muted-foreground",children:e("permissions.blockedTools.empty",{defaultValue:"No blocked tools configured."})}):r.map(T=>o.jsxs("div",{className:"flex items-center justify-between rounded-lg border border-red-200 bg-red-50 px-3 py-2 dark:border-red-900/50 dark:bg-red-950/30",children:[o.jsx("code",{className:"font-mono text-xs text-red-800 dark:text-red-200",children:T}),o.jsx(St,{variant:"ghost",size:"sm",onClick:()=>y(T),className:"h-7 w-7 p-0 text-red-700 hover:text-red-900 dark:text-red-300","aria-label":e("permissions.actions.remove",{defaultValue:"Remove"}),children:o.jsx(Nr,{className:"h-4 w-4"})})]},T))})]})}),o.jsx(Wt,{title:e("permissions.toolExamples.title",{defaultValue:"Pattern examples"}),children:o.jsx(Rt,{className:"p-4",children:o.jsxs("ul",{className:"space-y-1.5 text-xs text-muted-foreground",children:[o.jsxs("li",{children:[o.jsx("code",{className:"rounded bg-muted px-1 py-0.5 text-foreground",children:"bash:git log:*"})," ",e("permissions.toolExamples.bashGitLog",{defaultValue:"— allow all git log commands"})]}),o.jsxs("li",{children:[o.jsx("code",{className:"rounded bg-muted px-1 py-0.5 text-foreground",children:"bash:git diff:*"})," ",e("permissions.toolExamples.bashGitDiff",{defaultValue:"— allow all git diff commands"})]}),o.jsxs("li",{children:[o.jsx("code",{className:"rounded bg-muted px-1 py-0.5 text-foreground",children:"write_file"})," ",e("permissions.toolExamples.write",{defaultValue:"— allow all writes"})]}),o.jsxs("li",{children:[o.jsx("code",{className:"rounded bg-muted px-1 py-0.5 text-foreground",children:"bash:rm:*"})," ",e("permissions.toolExamples.bashRm",{defaultValue:"— block all rm commands (dangerous)"})]}),eA?o.jsxs(o.Fragment,{children:[o.jsxs("li",{children:[o.jsx("code",{className:"rounded bg-muted px-1 py-0.5 text-foreground",children:"bash:Remove-Item:*"})," ",e("permissions.toolExamples.bashRemoveItem",{defaultValue:"— block PowerShell Remove-Item"})]}),o.jsxs("li",{children:[o.jsx("code",{className:"rounded bg-muted px-1 py-0.5 text-foreground",children:"bash:del /s:*"})," ",e("permissions.toolExamples.bashDel",{defaultValue:"— block CMD recursive delete"})]})]}):null]})})})]})}const lv=e=>e==="config"?"config":e==="mcp"?"mcp":e==="permissions"?"permissions":"main";function tP({isOpen:e,onClose:t,projects:n=[],initialTab:r="appearance"}){const{t:a}=Je("settings"),{saveStatus:i,projectSortOrder:s,setProjectSortOrder:l,codeEditorSettings:c,updateCodeEditorSetting:u}=UM({isOpen:e,initialTab:r}),[d,p]=h.useState(()=>lv(r));if(h.useEffect(()=>{e&&p(lv(r))},[e,r]),!e)return null;const m={main:a("title"),config:a("mainTabs.config"),mcp:a("mcpConfig.title"),permissions:a("mainTabs.permissions"),chatInput:a("settingsHome.chatInput.title"),codeEditor:a("appearanceSettings.codeEditor.title")}[d],f=d==="config"?"max-w-[820px]":"max-w-[760px]";return o.jsx("div",{className:"modal-backdrop fixed inset-0 z-[9999] flex items-center justify-center bg-background/80 backdrop-blur-sm md:p-4",children:o.jsxs("div",{className:"relative flex h-full w-full flex-col overflow-hidden border border-border bg-background shadow-2xl md:h-[90vh] md:max-w-4xl md:rounded-xl",children:[o.jsx(St,{variant:"ghost",size:"sm",onClick:t,className:"absolute right-4 top-4 z-20 h-9 w-9 touch-manipulation p-0 text-muted-foreground hover:text-foreground active:bg-accent/50","aria-label":a("settingsHome.close"),children:o.jsx(Nr,{className:"h-4 w-4"})}),o.jsx("main",{className:"min-h-0 flex-1 overflow-y-auto",children:o.jsxs("div",{className:oe("mx-auto w-full px-5 py-7 md:px-8 md:py-8",f),children:[d!=="main"&&o.jsxs("button",{type:"button",onClick:()=>p("main"),className:"mb-6 inline-flex items-center gap-1 text-xs font-medium text-muted-foreground transition-colors hover:text-foreground",children:[o.jsx(Nc,{className:"h-4 w-4"}),a("settingsHome.back")]}),o.jsxs("div",{className:"mb-7 flex items-center justify-between gap-6 pr-10",children:[o.jsx("h2",{className:"text-[26px] font-semibold leading-tight tracking-normal text-foreground",children:m}),i==="success"&&o.jsx("span",{className:"animate-in fade-in text-xs text-muted-foreground",children:a("saveStatus.success")})]}),d==="main"&&o.jsx(nP,{projectSortOrder:s,onProjectSortOrderChange:l,onOpenPage:p}),d==="config"&&o.jsx(U9,{projects:n}),d==="mcp"&&o.jsx(H9,{projects:n}),d==="permissions"&&o.jsx(eP,{}),d==="chatInput"&&o.jsx(rP,{}),d==="codeEditor"&&o.jsx(aP,{settings:c,onWordWrapChange:g=>u("wordWrap",g),onShowMinimapChange:g=>u("showMinimap",g),onLineNumbersChange:g=>u("lineNumbers",g),onFontSizeChange:g=>u("fontSize",g)})]})})]})})}function nP({projectSortOrder:e,onProjectSortOrderChange:t,onOpenPage:n}){const{t:r,i18n:a}=Je("settings"),{themeMode:i="system",setThemeMode:s}=li(),l=qg.some(c=>c.value===a.language)?a.language:"en";return o.jsxs("div",{className:"space-y-8",children:[o.jsx(Zo,{title:r("settingsHome.basics"),description:r("settingsHome.configRequiredDescription"),children:o.jsxs(Jo,{children:[o.jsx(Ds,{icon:sx,title:r("mainTabs.config"),detail:r("settingsHome.config.detail"),onClick:()=>n("config")}),o.jsx(Ds,{icon:lx,title:r("mcpConfig.title"),detail:r("settingsHome.mcp.detail"),onClick:()=>n("mcp")})]})}),o.jsx(Zo,{title:r("settingsHome.application"),children:o.jsxs(Jo,{divided:!0,children:[o.jsx(Lu,{icon:NT,title:r("settingsHome.appearanceMode.title"),detail:r("settingsHome.appearanceMode.detail"),children:o.jsx(Rl,{value:i,onChange:c=>s?.(c),options:[{value:"system",label:r("settingsHome.appearanceMode.system")},{value:"light",label:r("settingsHome.appearanceMode.light")},{value:"dark",label:r("settingsHome.appearanceMode.dark")}],className:"w-40"})}),o.jsx(Lu,{icon:g8,title:r("account.languageLabel"),detail:r("account.languageDescription"),children:o.jsx(Rl,{value:l,onChange:c=>{a.changeLanguage(c)},options:qg.map(c=>({value:c.value,label:c.nativeName})),className:"w-40"})}),o.jsx(Lu,{icon:xj,title:r("appearanceSettings.projectSorting.label"),detail:r("appearanceSettings.projectSorting.description"),children:o.jsx(Rl,{value:e,onChange:c=>t(c),options:[{value:"name",label:r("appearanceSettings.projectSorting.alphabetical")},{value:"date",label:r("appearanceSettings.projectSorting.recentActivity")}],className:"w-44"})})]})}),o.jsx(Zo,{title:r("settingsHome.workflow"),children:o.jsxs(Jo,{divided:!0,children:[o.jsx(Ds,{icon:CT,title:r("settingsHome.chatInput.title"),detail:r("settingsHome.chatInput.detail"),onClick:()=>n("chatInput")}),o.jsx(Ds,{icon:to,title:r("appearanceSettings.codeEditor.title"),detail:r("settingsHome.codeEditor.detail"),onClick:()=>n("codeEditor")})]})}),o.jsx(Zo,{title:r("settingsHome.advanced"),children:o.jsx(Jo,{children:o.jsx(Ds,{icon:Xr,title:r("mainTabs.permissions"),detail:r("settingsHome.permissions.detail"),onClick:()=>n("permissions")})})})]})}function rP(){const{t:e}=Je("settings"),{preferences:t,setPreference:n}=JT();return o.jsxs("div",{className:"space-y-8",children:[o.jsx(Wt,{title:e("quickSettings.sections.toolDisplay"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(Jt,{label:e("quickSettings.autoExpandTools"),children:o.jsx(Kt,{checked:t.autoExpandTools,onChange:r=>n("autoExpandTools",r),ariaLabel:e("quickSettings.autoExpandTools")})}),o.jsx(Jt,{label:e("quickSettings.showRawParameters"),children:o.jsx(Kt,{checked:t.showRawParameters,onChange:r=>n("showRawParameters",r),ariaLabel:e("quickSettings.showRawParameters")})}),o.jsx(Jt,{label:e("quickSettings.showThinking"),children:o.jsx(Kt,{checked:t.showThinking,onChange:r=>n("showThinking",r),ariaLabel:e("quickSettings.showThinking")})})]})}),o.jsx(Wt,{title:e("quickSettings.sections.viewOptions"),children:o.jsx(Rt,{children:o.jsx(Jt,{label:e("quickSettings.autoScrollToBottom"),children:o.jsx(Kt,{checked:t.autoScrollToBottom,onChange:r=>n("autoScrollToBottom",r),ariaLabel:e("quickSettings.autoScrollToBottom")})})})}),o.jsx(Wt,{title:e("quickSettings.sections.inputSettings"),children:o.jsx(Rt,{children:o.jsx(Jt,{label:e("quickSettings.sendByCtrlEnter"),description:e("quickSettings.sendByCtrlEnterDescription"),children:o.jsx(Kt,{checked:t.sendByCtrlEnter,onChange:r=>n("sendByCtrlEnter",r),ariaLabel:e("quickSettings.sendByCtrlEnter")})})})})]})}function aP({settings:e,onWordWrapChange:t,onShowMinimapChange:n,onLineNumbersChange:r,onFontSizeChange:a}){const{t:i}=Je("settings");return o.jsx("div",{className:"space-y-8",children:o.jsx(Wt,{title:i("appearanceSettings.codeEditor.title"),children:o.jsxs(Rt,{divided:!0,children:[o.jsx(Jt,{label:i("appearanceSettings.codeEditor.wordWrap.label"),description:i("appearanceSettings.codeEditor.wordWrap.description"),children:o.jsx(Kt,{checked:e.wordWrap,onChange:t,ariaLabel:i("appearanceSettings.codeEditor.wordWrap.label")})}),o.jsx(Jt,{label:i("appearanceSettings.codeEditor.showMinimap.label"),description:i("appearanceSettings.codeEditor.showMinimap.description"),children:o.jsx(Kt,{checked:e.showMinimap,onChange:n,ariaLabel:i("appearanceSettings.codeEditor.showMinimap.label")})}),o.jsx(Jt,{label:i("appearanceSettings.codeEditor.lineNumbers.label"),description:i("appearanceSettings.codeEditor.lineNumbers.description"),children:o.jsx(Kt,{checked:e.lineNumbers,onChange:r,ariaLabel:i("appearanceSettings.codeEditor.lineNumbers.label")})}),o.jsx(Jt,{label:i("appearanceSettings.codeEditor.fontSize.label"),description:i("appearanceSettings.codeEditor.fontSize.description"),children:o.jsx(Rl,{value:e.fontSize,onChange:a,options:["10","11","12","13","14","15","16","18","20"].map(s=>({value:s,label:`${s}px`})),className:"w-28"})})]})})})}function Zo({title:e,description:t,children:n}){return o.jsxs("section",{className:"space-y-2.5",children:[o.jsxs("div",{children:[o.jsx("h3",{className:"text-[15px] font-semibold leading-5 text-foreground",children:e}),t&&o.jsx("p",{className:"mt-1 text-xs leading-5 text-muted-foreground",children:t})]}),n]})}function Jo({children:e,divided:t}){return o.jsx("div",{className:oe("overflow-hidden rounded-lg border border-border bg-card/60",t&&"divide-y divide-border"),children:e})}function Lu({icon:e,title:t,detail:n,children:r}){return o.jsxs("div",{className:"flex min-h-[66px] items-center gap-3.5 px-5 py-3",children:[o.jsx(e,{className:"h-4 w-4 flex-shrink-0 text-muted-foreground"}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"text-[15px] font-semibold leading-5 text-foreground",children:t}),o.jsx("div",{className:"mt-0.5 text-xs leading-5 text-muted-foreground",children:n})]}),o.jsx("div",{className:"flex-shrink-0",children:r})]})}function Ds({icon:e,title:t,detail:n,onClick:r}){return o.jsxs("button",{type:"button",onClick:r,className:"flex min-h-[66px] w-full items-center gap-3.5 px-5 py-3 text-left transition-colors hover:bg-accent/35 active:bg-accent/50",children:[o.jsx(e,{className:"h-4 w-4 flex-shrink-0 text-muted-foreground"}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"text-[15px] font-semibold leading-5 text-foreground",children:t}),o.jsx("div",{className:"mt-0.5 text-xs leading-5 text-muted-foreground",children:n})]}),o.jsx(qn,{className:"h-4 w-4 flex-shrink-0 text-muted-foreground"})]})}function Rl({value:e,onChange:t,options:n,className:r}){return o.jsx("select",{value:e,onChange:a=>t(a.target.value),className:oe("h-9 rounded-lg border border-transparent bg-muted px-3 text-[13px] font-medium text-foreground outline-none transition-colors","hover:bg-accent focus:border-ring focus:bg-card focus:ring-1 focus:ring-ring",r),children:n.map(a=>o.jsx("option",{value:a.value,children:a.label},a.value))})}function iP({message:e}){return o.jsxs("div",{className:"flex items-start gap-3 rounded-lg border border-destructive/40 bg-destructive/10 p-4",children:[o.jsx(ka,{className:"mt-0.5 h-5 w-5 flex-shrink-0 text-destructive",strokeWidth:1.75}),o.jsx("p",{className:"text-sm text-destructive",children:e})]})}const sP=["git@","ssh://"],oP=/^[A-Za-z]:\\?$/,tA=e=>{const t=e.trim();return sP.some(n=>t.startsWith(n))},nA=(e,t)=>e==="new"&&t.trim().length>0&&!tA(t),cv=(e,t)=>e==="new"&&t.trim().length>0,lP=e=>{const t=e.trim(),n=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return n===2&&/^[A-Za-z]:/.test(t)?`${t.slice(0,2)}\\`:n>0?t.slice(0,n):"~"},cP=e=>{if(e==="/"||oP.test(e))return null;if(e==="~")return"/";const t=Math.max(e.lastIndexOf("/"),e.lastIndexOf("\\"));return t<=0?"/":t===2&&/^[A-Za-z]:/.test(e)?`${e.slice(0,2)}\\`:e.slice(0,t)},uP=(e,t)=>{const n=e.trim().replace(/[\\/]+$/,""),r=n.includes("\\")&&!n.includes("/")?"\\":"/";return`${n}${r}${t.trim()}`},Pu=(e,t)=>`px-3 py-2 text-sm font-medium rounded-lg border transition-colors ${e===t?"border-foreground bg-foreground text-background":"border-border bg-transparent text-foreground hover:bg-accent"}`;function dP({tokenMode:e,selectedGithubToken:t,newGithubToken:n,availableTokens:r,loadingTokens:a,tokenLoadError:i,onTokenModeChange:s,onSelectedGithubTokenChange:l,onNewGithubTokenChange:c}){const{t:u}=Je();return o.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 p-4",children:[o.jsxs("div",{className:"mb-4 flex items-start gap-3",children:[o.jsx(Z8,{className:"mt-0.5 h-5 w-5 flex-shrink-0 text-muted-foreground",strokeWidth:1.75}),o.jsxs("div",{className:"flex-1",children:[o.jsx("h5",{className:"mb-1 font-medium text-foreground",children:u("projectWizard.step2.githubAuth")}),o.jsx("p",{className:"text-sm text-muted-foreground",children:u("projectWizard.step2.githubAuthHelp")})]})]}),a&&o.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[o.jsx(pt,{className:"h-4 w-4 animate-spin"}),u("projectWizard.step2.loadingTokens")]}),!a&&i&&o.jsx("p",{className:"mb-3 text-sm text-destructive",children:i}),!a&&r.length>0&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"mb-4 grid grid-cols-3 gap-2",children:[o.jsx("button",{onClick:()=>s("stored"),className:Pu(e,"stored"),children:u("projectWizard.step2.storedToken")}),o.jsx("button",{onClick:()=>s("new"),className:Pu(e,"new"),children:u("projectWizard.step2.newToken")}),o.jsx("button",{onClick:()=>{s("none"),l(""),c("")},className:Pu(e,"none"),children:u("projectWizard.step2.nonePublic")})]}),e==="stored"?o.jsxs("div",{children:[o.jsx("label",{className:"mb-2 block text-sm font-medium text-foreground",children:u("projectWizard.step2.selectToken")}),o.jsxs("select",{value:t,onChange:d=>l(d.target.value),className:"w-full rounded-lg border border-border bg-background text-foreground px-3 py-2 text-sm focus:outline-none focus:ring-1 focus:ring-foreground",children:[o.jsx("option",{value:"",children:u("projectWizard.step2.selectTokenPlaceholder")}),r.map(d=>o.jsx("option",{value:String(d.id),children:d.credential_name},d.id))]})]}):e==="new"?o.jsxs("div",{children:[o.jsx("label",{className:"mb-2 block text-sm font-medium text-foreground",children:u("projectWizard.step2.newToken")}),o.jsx(wa,{type:"password",value:n,onChange:d=>c(d.target.value),placeholder:"ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",className:"w-full"}),o.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:u("projectWizard.step2.tokenHelp")})]}):null]}),!a&&r.length===0&&o.jsxs("div",{className:"space-y-4",children:[o.jsx("div",{className:"rounded-lg border border-border bg-accent/40 p-3",children:o.jsx("p",{className:"text-sm text-foreground",children:u("projectWizard.step2.publicRepoInfo")})}),o.jsxs("div",{children:[o.jsx("label",{className:"mb-2 block text-sm font-medium text-foreground",children:u("projectWizard.step2.optionalTokenPublic")}),o.jsx(wa,{type:"password",value:n,onChange:d=>{const p=d.target.value;c(p),s(p.trim()?"new":"none")},placeholder:u("projectWizard.step2.tokenPublicPlaceholder"),className:"w-full"}),o.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:u("projectWizard.step2.noTokensHelp")})]})]})]})}const zc=async e=>await e.json(),pP=async()=>{const e=await dt.get("/settings/credentials?type=github_token"),t=await zc(e);if(!e.ok)throw new Error(t.error||"Failed to load GitHub tokens");return(t.credentials||[]).filter(n=>n.is_active)},rA=async e=>{const t=`/browse-filesystem?path=${encodeURIComponent(e)}`,n=await dt.get(t),r=await zc(n);if(!n.ok)throw new Error(r.error||"Failed to browse filesystem");return{path:r.path||e,suggestions:r.suggestions||[]}},mP=async e=>{const t=await dt.createFolder(e),n=await zc(t);if(!t.ok)throw new Error(n.error||"Failed to create folder");return n.path||e},fP=async e=>{const t=await dt.createWorkspace(e),n=await zc(t);if(!t.ok)throw new Error(n.details||n.error||"Failed to create workspace");return n.project},hP=({workspacePath:e,githubUrl:t,tokenMode:n,selectedGithubToken:r,newGithubToken:a})=>{const i=new URLSearchParams({path:e.trim(),githubUrl:t.trim()});n==="stored"&&r&&i.set("githubTokenId",r),n==="new"&&a.trim()&&i.set("newGithubToken",a.trim());const s=localStorage.getItem("auth-token");return s&&i.set("token",s),i.toString()},gP=(e,t)=>new Promise((n,r)=>{const a=hP(e),i=new EventSource(`/api/projects/clone-progress?${a}`);let s=!1;const l=c=>{s||(s=!0,i.close(),c())};i.onmessage=c=>{try{const u=JSON.parse(c.data);if(u.type==="progress"&&u.message){t.onProgress(u.message);return}if(u.type==="complete"){l(()=>n(u.project));return}u.type==="error"&&l(()=>r(new Error(u.message||"Failed to clone repository")))}catch(u){console.error("Error parsing clone progress event:",u)}},i.onerror=()=>{l(()=>r(new Error("Connection lost during clone")))}});function bP({isOpen:e,autoAdvanceOnSelect:t,onClose:n,onFolderSelected:r}){const[a,i]=h.useState("~"),[s,l]=h.useState([]),[c,u]=h.useState(!1),[d,p]=h.useState(!1),[m,f]=h.useState(!1),[g,b]=h.useState(""),[x,k]=h.useState(!1),[y,v]=h.useState(null),E=h.useCallback(async C=>{u(!0),v(null);try{const O=await rA(C);i(O.path),l(O.suggestions)}catch(O){v(O instanceof Error?O.message:"Failed to load folders")}finally{u(!1)}},[]);h.useEffect(()=>{e&&E("~")},[e,E]);const N=h.useMemo(()=>s.filter(C=>d||!C.name.startsWith(".")).sort((C,O)=>C.name.toLowerCase().localeCompare(O.name.toLowerCase())),[s,d]),w=()=>{f(!1),b("")},T=()=>{v(null),w(),n()},j=h.useCallback(async()=>{if(g.trim()){k(!0),v(null);try{const C=uP(a,g),O=await mP(C);w(),await E(O)}catch(C){v(C instanceof Error?C.message:"Failed to create folder")}finally{k(!1)}}},[a,E,g]),_=cP(a);return e?o.jsx("div",{className:"fixed inset-0 z-[70] flex items-center justify-center bg-black/50 p-4 backdrop-blur-sm",children:o.jsxs("div",{className:"flex max-h-[80vh] w-full max-w-2xl flex-col rounded-xl border border-border bg-card text-card-foreground shadow-xl",children:[o.jsxs("div",{className:"flex items-center justify-between border-b border-border p-4",children:[o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsx("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-muted text-foreground",children:o.jsx(Ki,{className:"h-4 w-4",strokeWidth:1.75})}),o.jsx("h3",{className:"text-lg font-semibold text-foreground",children:"Select Folder"})]}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("button",{onClick:()=>p(C=>!C),className:`rounded-md p-2 transition-colors ${d?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"}`,title:d?"Hide hidden folders":"Show hidden folders",children:d?o.jsx(ix,{className:"h-5 w-5",strokeWidth:1.75}):o.jsx(k8,{className:"h-5 w-5",strokeWidth:1.75})}),o.jsx("button",{onClick:()=>f(C=>!C),className:`rounded-md p-2 transition-colors ${m?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"}`,title:"Create new folder",children:o.jsx(Qt,{className:"h-5 w-5",strokeWidth:1.75})}),o.jsx("button",{onClick:T,className:"rounded-md p-2 text-muted-foreground hover:bg-accent hover:text-foreground","aria-label":"Close",children:o.jsx(Nr,{className:"h-5 w-5",strokeWidth:1.75})})]})]}),m&&o.jsx("div",{className:"border-b border-border bg-muted/40 px-4 py-3",children:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(wa,{type:"text",value:g,onChange:C=>b(C.target.value),placeholder:"New folder name",className:"flex-1",onKeyDown:C=>{if(C.key==="Enter"){if(En(C))return;j()}C.key==="Escape"&&w()},autoFocus:!0}),o.jsx(St,{size:"sm",onClick:j,disabled:!g.trim()||x,children:x?o.jsx(pt,{className:"h-4 w-4 animate-spin"}):"Create"}),o.jsx(St,{size:"sm",variant:"ghost",onClick:w,children:"Cancel"})]})}),y&&o.jsx("div",{className:"px-4 pt-3",children:o.jsx("p",{className:"text-sm text-destructive",children:y})}),o.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:c?o.jsx("div",{className:"flex items-center justify-center py-8",children:o.jsx(pt,{className:"h-6 w-6 animate-spin text-muted-foreground"})}):o.jsxs("div",{className:"space-y-1",children:[_&&o.jsxs("button",{onClick:()=>E(_),className:"flex w-full items-center gap-3 rounded-lg px-4 py-3 text-left hover:bg-accent hover:text-accent-foreground",children:[o.jsx(Ki,{className:"h-5 w-5 text-muted-foreground",strokeWidth:1.75}),o.jsx("span",{className:"font-medium text-foreground",children:".."})]}),N.length===0?o.jsx("div",{className:"py-8 text-center text-muted-foreground",children:"No subfolders found"}):N.map(C=>o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs("button",{onClick:()=>E(C.path),className:"flex flex-1 items-center gap-3 rounded-lg px-4 py-3 text-left hover:bg-accent hover:text-accent-foreground",children:[o.jsx($i,{className:"h-5 w-5 text-muted-foreground",strokeWidth:1.75}),o.jsx("span",{className:"font-medium text-foreground",children:C.name})]}),o.jsx(St,{variant:"ghost",size:"sm",onClick:()=>r(C.path,t),className:"px-3 text-xs",children:"Select"})]},C.path))]})}),o.jsxs("div",{className:"border-t border-border",children:[o.jsxs("div",{className:"flex items-center gap-2 bg-muted/40 px-4 py-3",children:[o.jsx("span",{className:"text-sm text-muted-foreground",children:"Path:"}),o.jsx("code",{className:"flex-1 truncate font-mono text-sm text-foreground",children:a})]}),o.jsxs("div",{className:"flex items-center justify-end gap-2 p-4",children:[o.jsx(St,{variant:"outline",onClick:T,children:"Cancel"}),o.jsx(St,{variant:"outline",onClick:()=>r(a,t),children:"Use this folder"})]})]})]})}):null}function xP({workspaceType:e,value:t,disabled:n=!1,onChange:r,onAdvanceToConfirm:a}){const[i,s]=h.useState([]),[l,c]=h.useState(!1),[u,d]=h.useState(!1);h.useEffect(()=>{if(t.trim().length<=2){s([]),c(!1);return}const f=window.setTimeout(async()=>{try{const g=lP(t),b=await rA(g),x=t.toLowerCase(),k=b.suggestions.filter(y=>{const v=y.path.toLowerCase();return v.startsWith(x)&&v!==x}).slice(0,5);s(k),c(k.length>0)}catch(g){console.error("Failed to load path suggestions:",g)}},200);return()=>{window.clearTimeout(f)}},[t]);const p=h.useCallback(f=>{r(f.path),c(!1)},[r]),m=h.useCallback((f,g)=>{r(f),d(!1),g&&a()},[a,r]);return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"relative flex gap-2",children:[o.jsxs("div",{className:"relative flex-1",children:[o.jsx(wa,{type:"text",value:t,onChange:f=>r(f.target.value),placeholder:e==="existing"?"/path/to/existing/workspace":"/path/to/new/workspace",className:"w-full",disabled:n}),l&&i.length>0&&o.jsx("div",{className:"absolute z-10 mt-1 max-h-60 w-full overflow-y-auto rounded-lg border border-border bg-popover text-popover-foreground shadow-lg",children:i.map(f=>o.jsxs("button",{onClick:()=>p(f),className:"w-full px-4 py-2 text-left text-sm hover:bg-accent hover:text-accent-foreground",children:[o.jsx("div",{className:"font-medium text-foreground",children:f.name}),o.jsx("div",{className:"text-xs text-muted-foreground",children:f.path})]},f.path))})]}),o.jsx(St,{type:"button",variant:"outline",onClick:()=>d(!0),className:"px-3",title:"Browse folders",disabled:n,children:o.jsx(Ki,{className:"h-4 w-4"})})]}),o.jsx(bP,{isOpen:u,autoAdvanceOnSelect:e==="existing",onClose:()=>d(!1),onFolderSelected:m})]})}function yP({workspaceType:e,workspacePath:t,githubUrl:n,tokenMode:r,selectedGithubToken:a,newGithubToken:i,availableTokens:s,loadingTokens:l,tokenLoadError:c,isCreating:u,onWorkspacePathChange:d,onGithubUrlChange:p,onTokenModeChange:m,onSelectedGithubTokenChange:f,onNewGithubTokenChange:g,onAdvanceToConfirm:b}){const{t:x}=Je(),k=nA(e,n);return o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"mb-2 block text-sm font-medium text-foreground",children:x(e==="existing"?"projectWizard.step2.existingPath":"projectWizard.step2.newPath")}),o.jsx(xP,{workspaceType:e,value:t,disabled:u,onChange:d,onAdvanceToConfirm:b}),o.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:x(e==="existing"?"projectWizard.step2.existingHelp":"projectWizard.step2.newHelp")})]}),e==="new"&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{children:[o.jsx("label",{className:"mb-2 block text-sm font-medium text-foreground",children:x("projectWizard.step2.githubUrl")}),o.jsx(wa,{type:"text",value:n,onChange:y=>p(y.target.value),placeholder:"https://github.com/username/repository",className:"w-full",disabled:u}),o.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:x("projectWizard.step2.githubHelp")})]}),k&&o.jsx(dP,{tokenMode:r,selectedGithubToken:a,newGithubToken:i,availableTokens:s,loadingTokens:l,tokenLoadError:c,onTokenModeChange:m,onSelectedGithubTokenChange:f,onNewGithubTokenChange:g})]})]})}function vP({formState:e,selectedTokenName:t,isCreating:n,cloneProgress:r}){const{t:a}=Je(),i=h.useMemo(()=>e.tokenMode==="stored"&&e.selectedGithubToken?`${a("projectWizard.step3.usingStoredToken")} ${t||"Unknown"}`:e.tokenMode==="new"&&e.newGithubToken.trim()?a("projectWizard.step3.usingProvidedToken"):tA(e.githubUrl)?a("projectWizard.step3.sshKey",{defaultValue:"SSH Key"}):a("projectWizard.step3.noAuthentication"),[e,t,a]);return o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{className:"rounded-lg border border-border bg-muted/40 p-4",children:[o.jsx("h4",{className:"mb-3 text-sm font-semibold text-foreground",children:a("projectWizard.step3.reviewConfig")}),o.jsxs("div",{className:"space-y-2",children:[o.jsxs("div",{className:"flex justify-between text-sm",children:[o.jsx("span",{className:"text-muted-foreground",children:a("projectWizard.step3.workspaceType")}),o.jsx("span",{className:"font-medium text-foreground",children:e.workspaceType==="existing"?a("projectWizard.step3.existingWorkspace"):a("projectWizard.step3.newWorkspace")})]}),o.jsxs("div",{className:"flex justify-between gap-4 text-sm",children:[o.jsx("span",{className:"text-muted-foreground",children:a("projectWizard.step3.path")}),o.jsx("span",{className:"break-all text-right font-mono text-xs text-foreground",children:e.workspacePath})]}),e.workspaceType==="new"&&e.githubUrl&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"flex justify-between gap-4 text-sm",children:[o.jsx("span",{className:"text-muted-foreground",children:a("projectWizard.step3.cloneFrom")}),o.jsx("span",{className:"break-all text-right font-mono text-xs text-foreground",children:e.githubUrl})]}),o.jsxs("div",{className:"flex justify-between text-sm",children:[o.jsx("span",{className:"text-muted-foreground",children:a("projectWizard.step3.authentication")}),o.jsx("span",{className:"text-xs text-foreground",children:i})]})]})]})]}),n&&r?o.jsx("div",{className:"rounded-lg border border-border bg-accent/40 p-4",children:o.jsxs("div",{className:"space-y-2",children:[o.jsx("p",{className:"text-sm font-medium text-foreground",children:a("projectWizard.step3.cloningRepository",{defaultValue:"Cloning repository..."})}),o.jsx("code",{className:"block whitespace-pre-wrap break-all font-mono text-xs text-muted-foreground",children:r})]})}):null]})}function kP({workspaceType:e,onWorkspaceTypeChange:t}){const{t:n}=Je();return o.jsxs("div",{className:"space-y-4",children:[o.jsx("h4",{className:"mb-3 text-sm font-medium text-muted-foreground",children:n("projectWizard.step1.question")}),o.jsxs("div",{className:"grid grid-cols-1 gap-3 md:grid-cols-2",children:[o.jsx("button",{onClick:()=>t("existing"),className:`rounded-lg border p-4 text-left transition-colors ${e==="existing"?"border-foreground bg-accent/50":"border-border hover:bg-accent/30"}`,children:o.jsxs("div",{className:"flex items-start gap-3",children:[o.jsx("div",{className:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-muted text-foreground",children:o.jsx($i,{className:"h-5 w-5",strokeWidth:1.75})}),o.jsxs("div",{className:"flex-1",children:[o.jsx("h5",{className:"mb-1 font-semibold text-foreground",children:n("projectWizard.step1.existing.title")}),o.jsx("p",{className:"text-sm text-muted-foreground",children:n("projectWizard.step1.existing.description")})]})]})}),o.jsx("button",{onClick:()=>t("new"),className:`rounded-lg border p-4 text-left transition-colors ${e==="new"?"border-foreground bg-accent/50":"border-border hover:bg-accent/30"}`,children:o.jsxs("div",{className:"flex items-start gap-3",children:[o.jsx("div",{className:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-muted text-foreground",children:o.jsx(ST,{className:"h-5 w-5",strokeWidth:1.75})}),o.jsxs("div",{className:"flex-1",children:[o.jsx("h5",{className:"mb-1 font-semibold text-foreground",children:n("projectWizard.step1.new.title")}),o.jsx("p",{className:"text-sm text-muted-foreground",children:n("projectWizard.step1.new.description")})]})]})})]})]})}function wP({step:e,isCreating:t,isCloneWorkflow:n,onClose:r,onBack:a,onNext:i,onCreate:s}){const{t:l}=Je();return o.jsxs("div",{className:"flex items-center justify-between border-t border-border p-6",children:[o.jsx(St,{variant:"outline",onClick:e===1?r:a,disabled:t,children:e===1?l("projectWizard.buttons.cancel"):o.jsxs(o.Fragment,{children:[o.jsx(Nc,{className:"mr-1 h-4 w-4"}),l("projectWizard.buttons.back")]})}),o.jsx(St,{onClick:e===3?s:i,disabled:t,children:t?o.jsxs(o.Fragment,{children:[o.jsx(pt,{className:"mr-2 h-4 w-4 animate-spin"}),n?l("projectWizard.buttons.cloning",{defaultValue:"Cloning..."}):l("projectWizard.buttons.creating")]}):e===3?o.jsxs(o.Fragment,{children:[o.jsx(Er,{className:"mr-1 h-4 w-4"}),l("projectWizard.buttons.createProject")]}):o.jsxs(o.Fragment,{children:[l("projectWizard.buttons.next"),o.jsx(qn,{className:"ml-1 h-4 w-4"})]})})]})}function SP({step:e}){const{t}=Je(),n=[1,2,3];return o.jsx("div",{className:"px-6 pb-2 pt-4",children:o.jsx("div",{className:"flex items-center justify-between",children:n.map(r=>{const a=r{const[r,a]=h.useState([]),[i,s]=h.useState(!1),[l,c]=h.useState(null),u=h.useRef(!1);h.useEffect(()=>{if(!e||u.current)return;let p=!1;return(async()=>{s(!0),c(null);try{const f=await pP();if(p)return;a(f),u.current=!0,f.length>0&&!t&&n(String(f[0].id))}catch(f){p||c(f instanceof Error?f.message:"Failed to load GitHub tokens")}finally{p||s(!1)}})(),()=>{p=!0}},[n,t,e]);const d=h.useMemo(()=>r.find(p=>String(p.id)===t)?.credential_name||null,[t,r]);return{tokens:r,loading:i,loadError:l,selectedTokenName:d}},CP={workspaceType:"existing",workspacePath:"",githubUrl:"",tokenMode:"stored",selectedGithubToken:"",newGithubToken:""};function NP({onClose:e,onProjectCreated:t}){const{t:n}=Je(),[r,a]=h.useState(1),[i,s]=h.useState(CP),[l,c]=h.useState(!1),[u,d]=h.useState(null),[p,m]=h.useState(""),f=r===2&&nA(i.workspaceType,i.githubUrl),g=h.useCallback(C=>{s(O=>({...O,selectedGithubToken:C}))},[]),{tokens:b,loading:x,loadError:k,selectedTokenName:y}=EP({shouldLoad:f,selectedTokenId:i.selectedGithubToken,onAutoSelectToken:g}),v=h.useCallback((C,O)=>{s(I=>({...I,[C]:O}))},[]),E=h.useCallback(C=>v("workspaceType",C),[v]),N=h.useCallback(C=>v("tokenMode",C),[v]),w=h.useCallback(()=>{if(d(null),r===1){if(!i.workspaceType){d(n("projectWizard.errors.selectType"));return}a(2);return}if(r===2){if(!i.workspacePath.trim()){d(n("projectWizard.errors.providePath"));return}a(3)}},[i.workspacePath,i.workspaceType,r,n]),T=h.useCallback(()=>{d(null),a(C=>C>1?C-1:C)},[]),j=h.useCallback(async()=>{c(!0),d(null),m("");try{if(cv(i.workspaceType,i.githubUrl)){const I=await gP({workspacePath:i.workspacePath,githubUrl:i.githubUrl,tokenMode:i.tokenMode,selectedGithubToken:i.selectedGithubToken,newGithubToken:i.newGithubToken},{onProgress:m});t?.(I),e();return}const O=await fP({workspaceType:i.workspaceType,path:i.workspacePath.trim()});t?.(O),e()}catch(C){const O=C instanceof Error?C.message:n("projectWizard.errors.failedToCreate");d(O)}finally{c(!1)}},[i,e,t,n]),_=h.useMemo(()=>cv(i.workspaceType,i.githubUrl),[i.githubUrl,i.workspaceType]);return o.jsx("div",{className:"fixed bottom-0 left-0 right-0 top-0 z-[60] flex items-center justify-center bg-black/50 p-0 backdrop-blur-sm sm:p-4",children:o.jsxs("div",{className:"h-full w-full overflow-y-auto border-0 bg-card text-card-foreground shadow-xl sm:h-auto sm:max-w-2xl sm:rounded-xl sm:border sm:border-border",children:[o.jsxs("div",{className:"flex items-center justify-between border-b border-border p-6",children:[o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsx("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-muted text-foreground",children:o.jsx($i,{className:"h-4 w-4",strokeWidth:1.75})}),o.jsx("h3",{className:"text-lg font-semibold text-foreground",children:n("projectWizard.title")})]}),o.jsx("button",{onClick:e,className:"rounded-md p-2 text-muted-foreground hover:bg-accent hover:text-foreground",disabled:l,"aria-label":"Close",children:o.jsx(Nr,{className:"h-5 w-5",strokeWidth:1.75})})]}),o.jsx(SP,{step:r}),o.jsxs("div",{className:"min-h-[300px] space-y-6 p-6",children:[u&&o.jsx(iP,{message:u}),r===1&&o.jsx(kP,{workspaceType:i.workspaceType,onWorkspaceTypeChange:E}),r===2&&o.jsx(yP,{workspaceType:i.workspaceType,workspacePath:i.workspacePath,githubUrl:i.githubUrl,tokenMode:i.tokenMode,selectedGithubToken:i.selectedGithubToken,newGithubToken:i.newGithubToken,availableTokens:b,loadingTokens:x,tokenLoadError:k,isCreating:l,onWorkspacePathChange:C=>v("workspacePath",C),onGithubUrlChange:C=>v("githubUrl",C),onTokenModeChange:N,onSelectedGithubTokenChange:C=>v("selectedGithubToken",C),onNewGithubTokenChange:C=>v("newGithubToken",C),onAdvanceToConfirm:()=>a(3)}),r===3&&o.jsx(vP,{formState:i,selectedTokenName:y,isCreating:l,cloneProgress:p})]}),o.jsx(wP,{step:r,isCreating:l,isCloneWorkflow:_,onClose:e,onBack:T,onNext:w,onCreate:j})]})})}const TP=e=>{const t=typeof e.fullPath=="string"&&e.fullPath.length>0?e.fullPath:typeof e.path=="string"?e.path:"";return{name:e.name,displayName:typeof e.displayName=="string"&&e.displayName.trim().length>0?e.displayName:e.name,fullPath:t,path:typeof e.path=="string"&&e.path.length>0?e.path:t}},ec="pilotdeck:customProjectNames",tc="pilotdeck:customSessionTitles",Xg="customnames:changed";function qc(e){try{const t=localStorage.getItem(e);if(!t)return{};const n=JSON.parse(t);return n&&typeof n=="object"?n:{}}catch{return{}}}function aA(e,t){localStorage.setItem(e,JSON.stringify(t)),window.dispatchEvent(new Event(Xg))}function AP(e){const t=qc(ec)[e];return typeof t=="string"&&t.length>0?t:null}function IP(e,t){const n=qc(ec),r=t?.trim();r?n[e]=r:delete n[e],aA(ec,n)}function qa(e){return AP(e.name)||e.displayName||e.name}function RP(e){const t=qc(tc)[e];return typeof t=="string"&&t.length>0?t:null}function iA(e,t){const n=qc(tc),r=t?.trim();r?n[e]=r:delete n[e],aA(tc,n)}function _P(e){const t=typeof e.summary=="string"&&e.summary||"",n=typeof e.title=="string"&&e.title||"",r=typeof e.name=="string"&&e.name||"";return t||n||r||e.id}function nc(e){return RP(e.id)||_P(e)}function sA(){const[e,t]=h.useState(0);return h.useEffect(()=>{const n=()=>t(a=>a+1),r=a=>{(a.key===ec||a.key===tc)&&n()};return window.addEventListener(Xg,n),window.addEventListener("storage",r),()=>{window.removeEventListener(Xg,n),window.removeEventListener("storage",r)}},[]),e}const ir=e=>{if(typeof e=="number")return e;if(typeof e=="string"){const t=Date.parse(e);return Number.isFinite(t)?t:0}return 0},uv=()=>{if(typeof window>"u")return"name";const e=window.localStorage.getItem("pilotdeck-settings");if(!e)return"name";try{return JSON.parse(e).projectSortOrder==="date"?"date":"name"}catch{return"name"}},jP=()=>{const[e,t]=h.useState(()=>uv());return h.useEffect(()=>{const n=()=>t(uv()),r=a=>{a.key==="pilotdeck-settings"&&n()};return window.addEventListener("pilotdeck-settings-changed",n),window.addEventListener("storage",r),()=>{window.removeEventListener("pilotdeck-settings-changed",n),window.removeEventListener("storage",r)}},[]),e},dv=e=>{let t=Math.max(ir(e.lastActivity),ir(e.updated_at),ir(e.createdAt),ir(e.created_at));const n=[Array.isArray(e.sessions)?e.sessions:[]];for(const r of n)for(const a of r){const i=Math.max(ir(a.lastActivity),ir(a.updated_at),ir(a.createdAt),ir(a.created_at));i>t&&(t=i)}return t},OP=e=>(Array.isArray(e.sessions)?e.sessions:[]).map(n=>({session:n,sessionId:n.id,lastActivity:Math.max(ir(n.lastActivity),ir(n.updated_at),ir(n.createdAt),ir(n.created_at))})).sort((n,r)=>r.lastActivity-n.lastActivity),DP=(e,t)=>{if(!e)return"";const n=Date.now()-e;if(n<6e4)return t("sidebar:time.justNow",{defaultValue:"just now"});if(n<36e5){const a=Math.floor(n/6e4);return a===1?t("sidebar:time.oneMinuteAgo",{defaultValue:"1 min ago"}):t("sidebar:time.minutesAgo",{count:a,defaultValue:`${a} mins ago`})}if(n<864e5){const a=Math.floor(n/36e5);return a===1?t("sidebar:time.oneHourAgo",{defaultValue:"1 hour ago"}):t("sidebar:time.hoursAgo",{count:a,defaultValue:`${a} hours ago`})}const r=Math.floor(n/864e5);return r===1?t("sidebar:time.oneDayAgo",{defaultValue:"1 day ago"}):t("sidebar:time.daysAgo",{count:r,defaultValue:`${r} days ago`})},MP=Array.from({length:8},(e,t)=>t);function LP({status:e,label:t}){return e==="processing"?o.jsx("span",{"aria-label":t,title:t,className:"relative block h-3 w-3 animate-spin",children:MP.map(n=>o.jsx("span",{className:"absolute left-1/2 top-1/2 h-1 w-1 rounded-full bg-neutral-500 dark:bg-neutral-300",style:{transform:`translate(-50%, -50%) rotate(${n*45}deg) translateY(-4px)`,opacity:.35+n*.08}},n))}):o.jsx("span",{"aria-label":t,title:t,className:oe("block h-1.5 w-1.5 rounded-full",e==="unread"?"bg-blue-500 dark:bg-blue-400":"bg-neutral-300 dark:bg-neutral-600")})}const PP=176,FP=88,Qo=8,pv=e=>{const t=window.innerWidth-PP-Qo,n=window.innerHeight-FP-Qo;return{x:Math.max(Qo,Math.min(e.clientX,t)),y:Math.max(Qo,Math.min(e.clientY,n))}};function BP({projects:e,selectedProject:t,selectedSession:n,activeTab:r,isLoading:a,processingSessions:i,unreadSessionIds:s,onSelectProject:l,onSelectSession:c,onStartNewSession:u,onCreateProject:d,onRequestDeleteProject:p,onRequestDeleteSession:m,onShowSettings:f,onDeselectProject:g,onResetProjectSessionPreview:b,onCollapse:x,onLoadMoreSessions:k,loadingMoreProjectIds:y}){const{t:v}=Je(),E=aT();sA();const N=Array.isArray(e)?e:[],[w,T]=h.useState(null),[j,_]=h.useState(null),[C,O]=h.useState(""),[I,z]=h.useState(()=>new Set),[M,P]=h.useState(null),[B,$]=h.useState(new Set),[U,q]=h.useState(null),A=h.useRef(null),K="sidebar-v2-active-section",[V,L]=h.useState(()=>typeof window>"u"?"projects":window.localStorage.getItem(K)==="general"?"general":"projects");h.useEffect(()=>{try{window.localStorage.setItem(K,V)}catch{}},[V]);const le=200,re=480,ne=248,de="sidebar-v2-width",[Se,he]=h.useState(()=>{if(typeof window>"u")return ne;const ie=window.localStorage.getItem(de),et=ie?Number(ie):NaN;return Number.isFinite(et)?Math.min(re,Math.max(le,et)):ne}),[tt,Me]=h.useState(!1),Fe=h.useCallback(ie=>{ie.preventDefault();const et=ie.clientX,at=Se;Me(!0);const Ct=tn=>{const gn=Math.min(re,Math.max(le,at+(tn.clientX-et)));he(gn)},zt=()=>{Me(!1),document.removeEventListener("mousemove",Ct),document.removeEventListener("mouseup",zt),queueMicrotask(()=>{try{const gn=document.querySelector("aside[data-sidebar-v2-root]")?.offsetWidth;gn&&Number.isFinite(gn)&&window.localStorage.setItem(de,String(Math.round(gn)))}catch{}})};document.addEventListener("mousemove",Ct),document.addEventListener("mouseup",zt)},[Se]);h.useEffect(()=>{(w||j)&&A.current&&(A.current.focus(),A.current.select())},[w,j]),h.useEffect(()=>{if(!M)return;const ie=()=>P(null),et=at=>{at.key==="Escape"&&ie()};return window.addEventListener("click",ie),window.addEventListener("resize",ie),window.addEventListener("scroll",ie,!0),window.addEventListener("keydown",et),()=>{window.removeEventListener("click",ie),window.removeEventListener("resize",ie),window.removeEventListener("scroll",ie,!0),window.removeEventListener("keydown",et)}},[M]),h.useEffect(()=>{t?.name&&z(ie=>{if(ie.has(t.name))return ie;const et=new Set(ie);return et.add(t.name),et})},[t?.name]),h.useEffect(()=>{U&&(!t||n||t.name!==U)&&q(null)},[U,t,n]);const ge=N.find(ie=>ie.name==="general"||ie.displayName==="general")??null,me=h.useRef(null);h.useEffect(()=>{const ie=t?.name??null,et=me.current;if(me.current=ie,!ie||ie===et)return;const at=ge&&ie===ge.name?"general":"projects";L(Ct=>Ct===at?Ct:at)},[t?.name,ge]);const xe=jP(),ce=h.useMemo(()=>{const ie=N.filter(et=>et!==ge);return xe==="date"?[...ie].sort((et,at)=>{const Ct=dv(at)-dv(et);return Ct!==0?Ct:qa(et).localeCompare(qa(at))}):[...ie].sort((et,at)=>qa(et).localeCompare(qa(at),void 0,{sensitivity:"base"}))},[N,ge,xe]),Ne=ce.length>0&&ce.every(ie=>I.has(ie.name)),Te=h.useCallback(ie=>E(`/p/${encodeURIComponent(ie)}`),[E]),Ge=h.useCallback(()=>{L("general"),ge&&(b?.(ge.name),t?.name!==ge.name&&l(ge),Te(ge.name))},[ge,Te,b,l,t?.name]),ee=h.useCallback(()=>{ge&&b?.(ge.name),L("projects")},[ge,b]),X=h.useCallback(ie=>{z(et=>{const at=new Set(et);return at.has(ie.name)?at.delete(ie.name):at.add(ie.name),at})},[]),ae=h.useCallback(()=>{z(ie=>{const et=new Set(ie);return Ne?ce.forEach(at=>et.delete(at.name)):ce.forEach(at=>et.add(at.name)),et})},[Ne,ce]),te=h.useCallback(ie=>{z(et=>{if(et.has(ie.name))return et;const at=new Set(et);return at.add(ie.name),at})},[]),J=h.useCallback(ie=>{w!==ie.name&&X(ie)},[w,X]),H=h.useCallback((ie,et)=>{j!==et&&(q(null),c(ie,et),te(ie))},[te,c,j]),G=h.useCallback((ie,et)=>{ie.stopPropagation(),q(et.name),te(et),u(et),Te(et.name)},[te,Te,u]),Z=h.useCallback((ie,et,at)=>{if(at||w===et.name)return;ie.preventDefault(),ie.stopPropagation();const Ct=pv(ie);P({kind:"project",project:et,x:Ct.x,y:Ct.y})},[w]),ue=h.useCallback((ie,et,at)=>{if(j===at.id)return;ie.preventDefault(),ie.stopPropagation();const Ct=pv(ie);P({kind:"session",project:et,session:at,x:Ct.x,y:Ct.y})},[j]),be=h.useCallback(ie=>{P(null),_(null),T(ie.name),O(qa(ie))},[]),Ae=h.useCallback(ie=>{P(null),T(null),_(ie.id),O(nc(ie))},[]),ze=h.useCallback(ie=>{P(null),p(ie)},[p]),Le=h.useCallback((ie,et)=>{P(null),m(ie,et)},[m]),ke=h.useCallback(()=>{M&&(M.kind==="project"?be(M.project):Ae(M.session))},[be,Ae,M]),We=h.useCallback(()=>{M&&(M.kind==="project"?ze(M.project):Le(M.project,M.session))},[M,ze,Le]),Xe=h.useCallback(()=>{w&&(IP(w,C),T(null),O(""))},[w,C]),st=h.useCallback(()=>{j&&(iA(j,C),_(null),O(""))},[j,C]),se=h.useCallback(()=>{T(null),_(null),O("")},[]),$e=h.useCallback((ie,et)=>{if(ie.key==="Enter"){if(En(ie))return;ie.preventDefault(),et==="project"?Xe():st()}else ie.key==="Escape"&&(ie.preventDefault(),se())},[se,Xe,st]),Qe=(ie,et={})=>{const Ct=OP(ie).slice(0,500),zt=B.has(ie.name),tn=zt?Ct.slice(0,5):Ct,gn=zt?Math.max(0,Ct.length-5):0,_t=Ct.some(({session:Ce})=>typeof Ce.id=="string"&&Ce.id.startsWith("new-session-")),hr=U===ie.name&&t?.name===ie.name&&r==="chat"&&!n&&!_t,Ke=!!ie.sessionMeta?.hasMore,Ue=!!y?.has(ie.name),ht=typeof ie.sessionMeta?.total=="number"?ie.sessionMeta.total:null,Pt=ht!==null?Math.max(0,ht-Ct.length):null,cn=et.flat?"space-y-0.5":"ml-6 space-y-0.5";return o.jsxs("div",{className:cn,children:[hr?o.jsxs("button",{type:"button",onClick:Ce=>G(Ce,ie),className:"block w-full rounded-md bg-neutral-200/70 px-2 py-1 text-left text-neutral-900 dark:bg-neutral-800 dark:text-neutral-100",children:[o.jsx("div",{className:"truncate text-[12.5px]",children:v("sidebar:sessions.newSession",{defaultValue:"New Session"})}),o.jsx("div",{className:"text-[11px] text-neutral-500 dark:text-neutral-400",children:v("sidebar:sessions.unsaved",{defaultValue:"Not saved yet"})})]}):null,tn.length>0?tn.map(({session:Ce,sessionId:qe,lastActivity:pe})=>{const Pe=t?.name===ie.name&&n?.id===qe&&r==="chat",we=j===qe,Be=typeof qe=="string"&&qe.startsWith("new-session-"),rt=Be||i?.has(qe)?"processing":s?.has(qe)?"unread":"idle",it=rt==="processing"?v("sidebar:sessions.processing",{defaultValue:"Agent is running"}):rt==="unread"?v("sidebar:sessions.unread",{defaultValue:"Unread messages"}):v("sidebar:sessions.idle",{defaultValue:"No unread messages"});return o.jsx("div",{onContextMenu:Tt=>Be?void 0:ue(Tt,ie,Ce),className:oe("group/session relative w-full rounded-md transition-colors",Pe?"bg-neutral-200/70 dark:bg-neutral-800":"hover:bg-neutral-100 dark:hover:bg-neutral-800"),children:we?o.jsx("div",{className:"flex items-center px-2 py-1",children:o.jsx("input",{ref:A,value:C,onChange:Tt=>O(Tt.target.value),onBlur:st,onKeyDown:Tt=>$e(Tt,"session"),onClick:Tt=>Tt.stopPropagation(),placeholder:v("sidebar:renamePlaceholder",{defaultValue:"Rename - empty to reset"}),className:"w-full rounded-sm border border-neutral-300 bg-white px-1.5 py-0.5 text-[12.5px] text-neutral-900 outline-none focus:border-neutral-500 dark:border-neutral-600 dark:bg-neutral-900 dark:text-neutral-100"})}):o.jsxs("button",{type:"button",onClick:Be?void 0:()=>H(ie,qe),disabled:Be,className:oe("flex w-full items-start gap-2 px-2 py-1 text-left",Be&&"cursor-default"),children:[o.jsx("span",{className:"flex h-[18px] w-3 shrink-0 items-center justify-center pt-[3px]",children:o.jsx(LP,{status:rt,label:it})}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:oe("truncate text-[12.5px] text-neutral-900 dark:text-neutral-100",Be&&"italic text-neutral-600 dark:text-neutral-300"),children:nc(Ce)}),o.jsx("div",{className:"text-[11px] text-neutral-500 dark:text-neutral-400",children:Be?v("sidebar:sessions.sending",{defaultValue:"Sending…"}):DP(pe,v)})]})]})},qe)}):o.jsx("div",{className:"px-2 py-1 text-[11px] text-neutral-500 dark:text-neutral-400",children:v("sidebar:sessions.noSessions",{defaultValue:"No sessions yet"})}),zt&&gn>0||!zt&&Ke&&k?o.jsx("button",{type:"button",onClick:Ce=>{Ce.stopPropagation(),!Ue&&(zt?$(qe=>{const pe=new Set(qe);return pe.delete(ie.name),pe}):k&&k(ie.name))},disabled:Ue,className:oe("block w-full rounded-md px-2 py-1 text-left text-[11px] transition-colors",Ue?"text-neutral-400 dark:text-neutral-500":"text-neutral-500 hover:bg-neutral-100 hover:text-neutral-700 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-200"),children:Ue?v("sidebar:sessions.loadingMore",{defaultValue:"Loading more…"}):(()=>{const Ce=gn+(Pt!==null&&Pt>0?Pt:0);return Ce>0?v("sidebar:sessions.showMoreCount",{count:Ce,defaultValue:`Show more (${Ce})`}):v("sidebar:sessions.showMore",{defaultValue:"Show more sessions"})})()}):null,!zt&&Ct.length>5?o.jsx("button",{type:"button",onClick:Ce=>{Ce.stopPropagation(),$(qe=>{const pe=new Set(qe);return pe.add(ie.name),pe})},className:"block w-full rounded-md px-2 py-1 text-left text-[11px] transition-colors text-neutral-500 hover:bg-neutral-100 hover:text-neutral-700 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-200",children:v("sidebar:sessions.showLess",{defaultValue:"Show less"})}):null]})},ot=(ie,et={})=>{const at=!!et.isGeneral,Ct=ie.name===t?.name,zt=I.has(ie.name),tn=w===ie.name,gn=at?v("sidebar:general.name",{defaultValue:"General"}):qa(ie);return o.jsxs("div",{className:"space-y-0.5",children:[o.jsxs("div",{onContextMenu:_t=>Z(_t,ie,at),className:oe("group/project flex h-8 w-full items-center rounded-lg pr-1 text-[13px] transition-colors",Ct?"bg-neutral-200/70 text-neutral-900 dark:bg-neutral-800 dark:text-neutral-100":"text-neutral-700 hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-800"),children:[tn&&!at?o.jsxs("div",{className:"flex h-full min-w-0 flex-1 items-center gap-1.5 pl-2 pr-1",children:[o.jsx(cr,{className:"h-3.5 w-3.5 shrink-0 text-neutral-500 dark:text-neutral-400",strokeWidth:1.75}),o.jsx("input",{ref:A,value:C,onChange:_t=>O(_t.target.value),onBlur:Xe,onKeyDown:_t=>$e(_t,"project"),onClick:_t=>_t.stopPropagation(),placeholder:v("sidebar:renamePlaceholder",{defaultValue:"Rename - empty to reset"}),className:"w-full rounded-sm border border-neutral-300 bg-white px-1.5 py-0.5 text-[12.5px] text-neutral-900 outline-none focus:border-neutral-500 dark:border-neutral-600 dark:bg-neutral-900 dark:text-neutral-100"})]}):o.jsxs("button",{type:"button",onClick:()=>J(ie),className:"flex h-full min-w-0 flex-1 items-center gap-1.5 rounded-l-lg pl-1.5 pr-1 text-left",children:[o.jsx(qn,{className:oe("h-3.5 w-3.5 shrink-0 text-neutral-500 transition-transform dark:text-neutral-400",zt&&"rotate-90"),strokeWidth:1.75}),o.jsx(cr,{className:oe("h-3.5 w-3.5 shrink-0",Ct?"text-neutral-900 dark:text-neutral-100":"text-neutral-500 dark:text-neutral-400"),strokeWidth:1.75}),o.jsx("span",{className:"flex-1 truncate",children:gn})]}),tn?null:o.jsx("div",{className:oe("ml-1 flex shrink-0 items-center gap-0.5 transition-opacity","[@media(hover:none)]:opacity-100",Ct?"opacity-100":"opacity-0 group-hover/project:opacity-100 focus-within:opacity-100"),children:o.jsx("button",{type:"button",onClick:_t=>G(_t,ie),"aria-label":v("sidebar:tooltips.newChat",{defaultValue:"New Chat"}),title:v("sidebar:tooltips.newChat",{defaultValue:"New Chat"}),className:oe("inline-flex h-6 w-6 items-center justify-center rounded-md","text-neutral-500 hover:bg-neutral-200/70 hover:text-neutral-900","dark:text-neutral-400 dark:hover:bg-neutral-700 dark:hover:text-neutral-100"),children:o.jsx(N1,{className:"h-3.5 w-3.5",strokeWidth:1.75})})})]}),zt?Qe(ie):null]},ie.name)};return o.jsxs("aside",{"data-sidebar-v2-root":!0,style:{width:`${Se}px`},className:oe("relative flex h-full shrink-0 flex-col max-md:!w-full","bg-neutral-50 text-neutral-900","dark:bg-neutral-900 dark:text-neutral-100","border-r border-neutral-200 dark:border-neutral-800"),children:[o.jsxs("div",{className:"flex h-16 items-center justify-between pl-2 pr-4",children:[o.jsxs("button",{type:"button",onClick:()=>{g?g():E("/")},"aria-label":"PilotDeck",title:"PilotDeck",className:"flex min-w-0 shrink items-center gap-2 rounded-md p-1 transition hover:opacity-80 focus:outline-none focus-visible:ring-2 focus-visible:ring-neutral-300 dark:focus-visible:ring-neutral-700",children:[o.jsx("img",{src:gD,alt:"PilotDeck",className:"h-7 w-auto max-w-[150px] select-none object-contain dark:hidden",draggable:!1}),o.jsx("img",{src:hD,alt:"PilotDeck",className:"hidden h-7 w-auto max-w-[150px] select-none object-contain dark:block",draggable:!1})]}),x?o.jsx("button",{type:"button",onClick:x,"aria-label":v("sidebar:tooltips.hideSidebar",{defaultValue:"Hide sidebar"}),title:v("sidebar:tooltips.hideSidebar",{defaultValue:"Hide sidebar"}),className:"inline-flex h-8 w-8 items-center justify-center rounded-md text-neutral-500 hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",children:o.jsx(fO,{className:"h-4 w-4",strokeWidth:1.75})}):null]}),o.jsx("div",{className:"px-3 pt-3 pb-1",children:o.jsxs("div",{role:"tablist","aria-label":v("sidebar:sectionToggle.label",{defaultValue:"Sidebar section"}),className:"flex w-full rounded-md bg-neutral-100 p-0.5 dark:bg-neutral-900",children:[o.jsx("button",{type:"button",role:"tab","aria-selected":V==="projects",onClick:ee,className:oe("flex-1 rounded text-[12px] font-medium transition-colors","h-7 leading-none",V==="projects"?"bg-white text-neutral-900 shadow-sm dark:bg-neutral-700 dark:text-neutral-100":"text-neutral-500 hover:text-neutral-700 dark:text-neutral-400 dark:hover:text-neutral-200"),children:v("sidebar:projects.title",{defaultValue:"Projects"})}),o.jsx("button",{type:"button",role:"tab","aria-selected":V==="general",onClick:Ge,className:oe("flex-1 rounded text-[12px] font-medium transition-colors","h-7 leading-none",V==="general"?"bg-white text-neutral-900 shadow-sm dark:bg-neutral-700 dark:text-neutral-100":"text-neutral-500 hover:text-neutral-700 dark:text-neutral-400 dark:hover:text-neutral-200"),children:v("sidebar:general.title",{defaultValue:"General"})})]})}),o.jsx("div",{className:"scrollbar-thin min-h-0 flex-1 overflow-y-auto px-2 pb-2",children:a&&N.length===0?o.jsx("div",{className:"px-2 py-4 text-xs text-neutral-500 dark:text-neutral-400",children:v("sidebar:sessions.loading",{defaultValue:"Loading..."})}):V==="projects"?o.jsxs("section",{className:"pt-2",children:[o.jsxs("div",{className:"flex items-center px-3 pb-1",children:[o.jsx("span",{className:"flex-1 text-[11px] font-medium uppercase tracking-[0.04em] text-neutral-500/90 dark:text-neutral-400/80",children:v("sidebar:projects.title",{defaultValue:"Projects"})}),o.jsx("button",{type:"button",onClick:ae,disabled:ce.length===0,"aria-label":Ne?v("sidebar:projects.collapseAll",{defaultValue:"Collapse all projects"}):v("sidebar:projects.expandAll",{defaultValue:"Expand all projects"}),title:Ne?v("sidebar:projects.collapseAll",{defaultValue:"Collapse all projects"}):v("sidebar:projects.expandAll",{defaultValue:"Expand all projects"}),className:"inline-flex h-6 w-6 items-center justify-center rounded-md text-neutral-500 hover:bg-neutral-100 hover:text-neutral-900 disabled:opacity-40 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",children:Ne?o.jsx(yT,{className:"h-3.5 w-3.5",strokeWidth:1.75}):o.jsx(qj,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),o.jsx("button",{type:"button",onClick:d,"aria-label":v("sidebar:projects.newProject",{defaultValue:"New Project"}),title:v("sidebar:projects.newProject",{defaultValue:"New Project"}),className:"inline-flex h-6 w-6 items-center justify-center rounded-md text-neutral-500 hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",children:o.jsx(Qt,{className:"h-3.5 w-3.5",strokeWidth:1.75})})]}),ce.length===0?o.jsx("div",{className:"px-3 py-1 text-[11px] text-neutral-500 dark:text-neutral-400",children:v("sidebar:projects.noProjects",{defaultValue:"No projects found"})}):o.jsx("div",{className:"space-y-0.5",children:ce.map(ie=>ot(ie))})]}):o.jsx("section",{className:"pt-2",children:ge?o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"flex items-center px-3 pb-1",children:[o.jsx("span",{className:"flex-1 text-[11px] font-medium uppercase tracking-[0.04em] text-neutral-500/90 dark:text-neutral-400/80",children:v("sidebar:general.title",{defaultValue:"General"})}),o.jsx("button",{type:"button",onClick:ie=>G(ie,ge),"aria-label":v("sidebar:tooltips.newChat",{defaultValue:"New Chat"}),title:v("sidebar:tooltips.newChat",{defaultValue:"New Chat"}),className:"inline-flex h-6 w-6 items-center justify-center rounded-md text-neutral-500 hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",children:o.jsx(N1,{className:"h-3.5 w-3.5",strokeWidth:1.75})})]}),o.jsx("div",{className:"px-1",children:Qe(ge,{flat:!0})})]}):o.jsx("div",{className:"px-3 py-1 text-[11px] text-neutral-500 dark:text-neutral-400",children:v("sidebar:general.missing",{defaultValue:"No general workspace found"})})})}),o.jsx("div",{className:"border-t border-neutral-200 px-2 py-2 dark:border-neutral-800",children:o.jsxs("button",{type:"button",onClick:f,"aria-label":v("sidebar:actions.settings",{defaultValue:"Settings"}),title:v("sidebar:actions.settings",{defaultValue:"Settings"}),className:"flex h-9 w-full items-center justify-start gap-2 rounded-lg px-6 text-[13px] font-medium text-neutral-600 hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",children:[o.jsx(Zt,{className:"h-4 w-4",strokeWidth:1.75}),o.jsx("span",{children:v("sidebar:actions.settings",{defaultValue:"Settings"})})]})}),M?o.jsxs("div",{role:"menu","aria-label":v("sidebar:contextMenu.label",{defaultValue:"Context menu"}),onClick:ie=>ie.stopPropagation(),onContextMenu:ie=>ie.preventDefault(),className:oe("fixed z-50 w-44 rounded-lg border border-neutral-200 bg-white p-1 shadow-lg","dark:border-neutral-700 dark:bg-neutral-900"),style:{left:M.x,top:M.y},children:[o.jsxs("button",{type:"button",role:"menuitem",onClick:ke,className:oe("flex h-8 w-full items-center gap-2 rounded-md px-2 text-left text-[13px]","text-neutral-800 hover:bg-neutral-100 dark:text-neutral-100 dark:hover:bg-neutral-800"),children:[o.jsx(ox,{className:"h-3.5 w-3.5 shrink-0 text-neutral-500 dark:text-neutral-400",strokeWidth:1.75}),o.jsx("span",{children:v("sidebar:actions.rename",{defaultValue:"Rename"})})]}),o.jsxs("button",{type:"button",role:"menuitem",onClick:We,className:oe("flex h-8 w-full items-center gap-2 rounded-md px-2 text-left text-[13px]","text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/40"),children:[o.jsx(en,{className:"h-3.5 w-3.5 shrink-0",strokeWidth:1.75}),o.jsx("span",{children:v("sidebar:actions.delete",{defaultValue:"Delete"})})]})]}):null,o.jsx("div",{role:"separator","aria-orientation":"vertical","aria-label":v("sidebar:tooltips.resize",{defaultValue:"Resize sidebar"}),title:v("sidebar:tooltips.resize",{defaultValue:"Drag to resize"}),onMouseDown:Fe,onDoubleClick:()=>{he(ne);try{window.localStorage.setItem(de,String(ne))}catch{}},className:oe("absolute inset-y-0 right-0 z-10 hidden w-1 cursor-col-resize select-none md:block","transition-colors duration-150",tt?"bg-blue-500/60":"hover:bg-neutral-300/70 dark:hover:bg-neutral-700/70")}),tt?o.jsx("div",{className:"fixed inset-0 z-[60] cursor-col-resize",style:{userSelect:"none"}}):null]})}const _l={OPTIONS:[{value:"sonnet",label:"Sonnet"},{value:"opus",label:"Opus"},{value:"haiku",label:"Haiku"},{value:"opusplan",label:"Opus Plan"},{value:"sonnet[1m]",label:"Sonnet [1M]"}],DEFAULT:"sonnet"},mv=_l.OPTIONS.map(e=>({...e})),Ms="permissionMode-default",Ti=["default","bypassPermissions"];function el(e){const t=localStorage.getItem(e);return t&&Ti.includes(t)?t:null}function $P({selectedSession:e}){const[t,n]=h.useState(()=>el(Ms)||"default"),[r,a]=h.useState([]),[i,s]=h.useState(()=>localStorage.getItem("pilotdeck-model")||_l.DEFAULT),[l,c]=h.useState(mv);h.useEffect(()=>{const p=el(Ms);if(!e?.id){n(p||"default");return}const m=el(`permissionMode-${e.id}`);n(m||p||"default")},[e?.id]),h.useEffect(()=>{a(p=>p.filter(f=>!f.sessionId||f.sessionId===e?.id))},[e?.id]),h.useEffect(()=>{let p=!1;return Oe("/api/agents/runtime-config").then(m=>m.json()).then(m=>{if(p)return;const f=Array.isArray(m?.claude?.availableModels)?m.claude.availableModels.filter(N=>typeof N=="object"&&N!==null&&typeof N.value=="string"&&typeof N.label=="string").map(N=>({value:N.value.trim(),label:N.label.trim()||N.value.trim()})).filter(N=>N.value.length>0):[],g=f.length>0?f:mv,b=typeof m?.claude?.defaultModel=="string"&&m.claude.defaultModel.trim()?m.claude.defaultModel.trim():_l.DEFAULT,x=localStorage.getItem("pilotdeck-model")?.trim()||"",v=g.some(N=>N.value===x)&&x!==_l.DEFAULT?x:b;c(g),s(v),localStorage.setItem("pilotdeck-model",v);const E=m?.permissions?.effectiveMode;if(E&&Ti.includes(E)){const N=el(Ms);(!N||N==="default")&&(n(E),localStorage.setItem(Ms,E))}}).catch(m=>{console.error("Error loading runtime config:",m)}),()=>{p=!0}},[]);const u=h.useCallback(p=>{const m=Ti.includes(p)?p:"default";n(m),localStorage.setItem(Ms,m),e?.id&&localStorage.setItem(`permissionMode-${e.id}`,m)},[e?.id]),d=h.useCallback(()=>{const m=(Ti.indexOf(t)+1)%Ti.length,f=Ti[m];u(f)},[t,u]);return{model:i,setModel:s,modelOptions:l,permissionMode:t,setPermissionMode:u,pendingPermissionRequests:r,setPendingPermissionRequests:a,cyclePermissionMode:d}}const fv="[Files attached by user and available for reading in the project:]";function UP(e,t){const n=`${e||t}`.toLowerCase();if(n.endsWith(".pdf"))return"application/pdf";if(n.endsWith(".doc"))return"application/msword";if(n.endsWith(".docx"))return"application/vnd.openxmlformats-officedocument.wordprocessingml.document";if(n.endsWith(".xls"))return"application/vnd.ms-excel";if(n.endsWith(".xlsx"))return"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";if(n.endsWith(".ppt"))return"application/vnd.ms-powerpoint";if(n.endsWith(".pptx"))return"application/vnd.openxmlformats-officedocument.presentationml.presentation";if(n.endsWith(".txt"))return"text/plain";if(n.endsWith(".md")||n.endsWith(".markdown"))return"text/markdown";if(n.endsWith(".json"))return"application/json";if(n.endsWith(".csv"))return"text/csv";if(n.endsWith(".xml"))return"application/xml";if(n.endsWith(".png"))return"image/png";if(n.endsWith(".jpg")||n.endsWith(".jpeg"))return"image/jpeg";if(n.endsWith(".gif"))return"image/gif";if(n.endsWith(".webp"))return"image/webp"}function Dx(e){const t=typeof e=="string"?e:"",n=t.indexOf(fv);if(n<0)return{content:t,attachments:[]};const r=t.slice(0,n).trimEnd(),a=t.slice(n+fv.length),i=[];for(const s of a.split(/\r?\n/)){const l=s.trim();if(!l.startsWith("- "))continue;const c=l.indexOf(": ");if(c<0)continue;const u=l.slice(2,c).trim(),d=l.slice(c+2).trim();!u||!d||i.push({name:u,path:d,mimeType:UP(u,d)})}return{content:r,attachments:i}}const zP=(e,t)=>{const n=e.split(` +`),r=t.split(` +`),a=Array.from({length:n.length+1},()=>new Array(r.length+1).fill(0));for(let c=n.length-1;c>=0;c-=1)for(let u=r.length-1;u>=0;u-=1)n[c]===r[u]?a[c][u]=a[c+1][u+1]+1:a[c][u]=Math.max(a[c+1][u],a[c][u+1]);const i=[];let s=0,l=0;for(;s=a[s][l+1]){i.push({type:"removed",content:c,lineNum:s+1}),s+=1;continue}i.push({type:"added",content:u,lineNum:l+1}),l+=1}for(;s{const e=new Map;return(t,n)=>{const r=JSON.stringify([t,n]),a=e.get(r);if(a)return a;const i=zP(t,n);if(e.set(r,i),e.size>100){const s=e.keys().next().value;s&&e.delete(s)}return i}};function hv(e){return e&&e.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/&/g,"&")}function HP(e){if(!e||typeof e!="string")return e;try{return e.replace(/```\s*([^\n\r]+?)\s*```/g,"`$1`")}catch{return e}}function Fu(e){if(!e||typeof e!="string")return e;const t=[],n="__MATH_BLOCK_",r="__";let a=e.replace(/\$\$([\s\S]*?)\$\$|\$([^\$\n]+?)\$/g,i=>{const s=t.length;return t.push(i),`${n}${s}${r}`});return a=a.replace(/\\n/g,` +`).replace(/\\t/g," ").replace(/\\r/g,"\r"),a=a.replace(new RegExp(`${n}(\\d+)${r}`,"g"),(i,s)=>t[parseInt(s,10)]),a}function oA(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Mx(e){try{return typeof e!="string"?e:e.replace(/PilotDeck usage limit reached\|(\d{10,13})/g,(t,n)=>{let r=parseInt(n,10);if(!Number.isFinite(r))return t;r<1e12&&(r*=1e3);const a=new Date(r),i=new Intl.DateTimeFormat(void 0,{hour:"2-digit",minute:"2-digit",hour12:!1}).format(a),s=-a.getTimezoneOffset(),l=s>=0?"+":"-",c=Math.abs(s),u=Math.floor(c/60),d=c%60,p=`GMT${l}${u}${d?":"+String(d).padStart(2,"0"):""}`,g=((Intl.DateTimeFormat().resolvedOptions().timeZone||"").split("/").pop()||"").replace(/_/g," ").toLowerCase().replace(/\b\w/g,y=>y.toUpperCase()),b=g?`${p} (${g})`:p,x=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],k=`${a.getDate()} ${x[a.getMonth()]} ${a.getFullYear()}`;return`Usage limit reached. Your limit will reset at **${i} ${b}** - ${k}`})}catch{return e}}function GP(e){const t=[],n=new Map;for(const r of e)r.kind==="tool_result"&&r.toolId&&n.set(r.toolId,r);for(const r of e)switch(r.kind){case"text":{const a=r.role==="user"?Dx(r.content||""):{content:r.content||"",attachments:[]},i=a.content,l=[...(Array.isArray(r.attachments)?r.attachments.filter(c=>c&&typeof c.name=="string"):void 0)||[],...a.attachments];if(r.role==="user"){const c=Array.isArray(r.images)?r.images.filter(u=>typeof u=="string"&&u.length>0).map(u=>({data:u,name:""})):void 0;if(!i.trim()&&l.length===0&&(!c||c.length===0))continue;t.push({id:r.id,type:"user",content:Fu(hv(i)),timestamp:r.timestamp,...c&&c.length>0?{images:c}:{},...l.length>0?{attachments:l}:{}})}else{let c=hv(i);c=Fu(c),c=Mx(c),t.push({id:r.id,type:"assistant",content:c,timestamp:r.timestamp})}break}case"tool_use":{const a=r.toolResult||(r.toolId?n.get(r.toolId):null),i=String(r.toolName||"").toLowerCase(),s=i==="task"||i==="agent",l=[];if(s&&r.subagentTools&&Array.isArray(r.subagentTools))for(const d of r.subagentTools)l.push({toolId:d.toolId,toolName:d.toolName,toolInput:d.toolInput,toolResult:d.toolResult||null,timestamp:new Date(d.timestamp||Date.now())});const c=a&&Array.isArray(a.toolResultImages)?a.toolResultImages.filter(d=>d&&typeof d.data=="string"&&d.data.length>0).map(d=>({data:d.data,name:typeof d.name=="string"?d.name:"",...typeof d.mimeType=="string"?{mimeType:d.mimeType}:{}})):void 0,u=a?{content:typeof a.content=="string"?a.content:JSON.stringify(a.content),isError:!!a.isError,toolUseResult:a.toolUseResult,errorCode:a.errorCode,...c&&c.length>0?{images:c}:{},...a.planFilePath?{planFilePath:a.planFilePath,planTitle:a.planTitle,planSummary:a.planSummary}:{}}:null;t.push({id:r.id,type:"assistant",content:"",timestamp:r.timestamp,isToolUse:!0,toolName:r.toolName,toolInput:typeof r.toolInput=="string"?r.toolInput:JSON.stringify(r.toolInput??"",null,2),toolId:r.toolId,toolResult:u,isSubagentContainer:s,subagentState:s?{childTools:l,currentToolIndex:l.length>0?l.length-1:-1,isComplete:!!u,isFailed:!!u?.isError}:void 0});break}case"thinking":r.content?.trim()&&t.push({id:r.id,type:"assistant",content:Fu(r.content),timestamp:r.timestamp,isThinking:!0});break;case"error":t.push({id:r.id,type:"error",content:r.content||"Unknown error",timestamp:r.timestamp});break;case"interactive_prompt":t.push({id:r.id,type:"assistant",content:r.content||"",timestamp:r.timestamp,isInteractivePrompt:!0});break;case"task_notification":t.push({id:r.id,type:"assistant",content:r.summary||"Background task update",timestamp:r.timestamp,isTaskNotification:!0,taskStatus:r.status||"completed",taskId:r.taskId||"",outputFile:r.outputFile||"",taskResult:r.taskResult||""});break;case"interrupted":t.push({id:r.id,type:"system",content:r.content||"[Request interrupted by user]",timestamp:r.timestamp,isInterruptedNotice:!0});break;case"compact_boundary":t.push({id:r.id,type:"system",content:"Context compacted",timestamp:r.timestamp,isCompactBoundary:!0,compactTrigger:r.trigger,preTokens:r.preTokens,compactLevel:r.compactLevel,compactStage:r.compactStage,compactStageLabel:r.compactStageLabel});break;case"agent_activity":t.push({id:r.id,type:"system",content:r.title||"",timestamp:r.timestamp,isAgentActivity:!0,runId:r.runId,activityId:r.activityId,phase:r.phase,state:r.state,title:r.title,detail:r.detail,toolName:r.toolName,toolId:r.toolId,startedAt:r.startedAt,endedAt:r.endedAt,durationMs:r.durationMs,severity:r.severity});break;case"agent_activity_summary":t.push({id:r.id,type:"system",content:r.title||"Process summary",timestamp:r.timestamp,isAgentActivitySummary:!0,runId:r.runId,startedAt:r.startedAt,endedAt:r.endedAt,durationMs:r.durationMs,state:r.status,toolCallCount:r.toolCallCount,toolErrorCount:r.toolErrorCount,ragSearchCount:r.ragSearchCount,editedFileCount:r.editedFileCount,exploredFileCount:r.exploredFileCount,commandCount:r.commandCount,subagentCount:r.subagentCount,compactCount:r.compactCount,thinkingCount:r.thinkingCount,otherToolCount:r.otherToolCount,keySteps:r.keySteps});break;case"stream_delta":r.content&&t.push({id:r.id,type:"assistant",content:r.content,timestamp:r.timestamp,isStreaming:!0});break}return t}function gv(e){return GP(e)}const bv=20,tl=100,VP=[],WP=96;function KP(e,t,n,r=WP){return t-e-nc&&typeof c.data=="string").map(c=>c.data):void 0,l=e.type==="user"&&Array.isArray(e.attachments)?e.attachments.filter(c=>c&&typeof c.name=="string"):void 0;return{...i,kind:"text",role:e.type==="user"?"user":"assistant",content:e.content||"",...s&&s.length>0?{images:s}:{},...l&&l.length>0?{attachments:l}:{}}}function yv(e){return Dx(e).content.replace(/\s+/g," ").trim()}function vv(e){const t=Array.isArray(e.attachments)?e.attachments.map(r=>r.name||"").filter(Boolean):[],n=Dx(e.content).attachments.map(r=>r.name||"").filter(Boolean);return[...t,...n].sort()}function JP(e,t){const n=yv(t.content),r=Array.isArray(t.images)?t.images.length:0,a=vv(t);return e.some(i=>i.type!=="user"||yv(i.content)!==n||(Array.isArray(i.images)?i.images.length:0)!==r?!1:vv(i).join(` +`)===a.join(` +`))}function QP({selectedProject:e,selectedSession:t,ws:n,sendMessage:r,autoScrollToBottom:a,externalMessageUpdate:i,processingSessions:s,resetStreamingState:l,pendingViewSessionRef:c,sessionStore:u}){const[d,p]=h.useState(!1),[m,f]=h.useState(t?.id||null),[g,b]=h.useState(!1),[x]=h.useState(!1),[k,y]=h.useState(!1),[v,E]=h.useState(0),[N,w]=h.useState(!1),[T,j]=h.useState(!1),[_,C]=h.useState(!1),[O,I]=h.useState(null),[z,M]=h.useState(tl),[P,B]=h.useState(null),[$,U]=h.useState(null),[q,A]=h.useState(null),[K,V]=h.useState(!1),[L,le]=h.useState(!1),[re,ne]=h.useState(!1),[de,Se]=h.useState(!1),[he,tt]=h.useState(0),Me=h.useRef(null),[Fe,ge]=h.useState(null),me=h.useRef(!1),xe=h.useRef(!1),ce=h.useRef(!1),Ne=h.useRef(!1),Te=h.useRef(null),Ge=h.useRef(!0),ee=h.useRef(0),X=h.useRef({height:0,top:0}),ae=h.useRef(null),te=h.useRef(null),J=h.useRef(null),H=h.useRef(null),G=h.useMemo(()=>qP(),[]);h.useEffect(()=>()=>{H.current!==null&&(cancelAnimationFrame(H.current),H.current=null)},[]);const Z=t?.id??null,ue=h.useRef(Z),be=h.useRef(Z);if(ue.current!==Z)ue.current=Z,be.current=Z,m!==Z&&f(Z);else if(m!==be.current){const we=c.current?.sessionId??null;Z?(be.current=Z,m!==Z&&f(Z)):!!m&&we===m?be.current=m:(be.current=null,m!==null&&f(null))}const Ae=c.current?.sessionId??null;m&&!Z&&Ae!==m&&(be.current=null,f(null));const Le=Z??be.current,ke=ri(t),We=h.useMemo(()=>px(t),[t]),[Xe,st]=h.useState(null),se=h.useRef(null);Le!==se.current&&(se.current=Le,u.setActiveSession(Le));const $e=h.useRef(null);if(Le&&Le!==$e.current&&Xe){const we=c.current?.sessionId??null;if(we&&Le===we){const Be=xv(Xe,Le,"pilotdeck");Be&&u.appendRealtime(Le,Be)}st(null)}$e.current=Le;const Qe=Le?u.getMessages(Le):VP,ot=Le?u.getActivityMessages?.(Le)??[]:[],ie=h.useRef(0);Qe.length!==ie.current&&(ie.current=Qe.length,he>0&&tt(0));const et=c.current?.sessionId??null,at=h.useMemo(()=>{const we=gv(Qe),Be=XP(Le,et);return Xe&&Be&&!JP(we,Xe)?[Xe,...we]:he>0&&he{const rt=Be!==void 0?Be:Le;if(!rt){st(we);return}const it=xv(we,rt,"pilotdeck");it&&u.appendRealtime(rt,it)},[Le,u]),tn=h.useCallback(()=>{Le&&u.clearRealtime(Le)},[Le,u]),gn=h.useCallback(we=>tt(we),[]),_t=h.useCallback(()=>{const we=Me.current;we&&(we.scrollTop=we.scrollHeight)},[]),hr=h.useCallback(()=>{H.current===null&&(H.current=requestAnimationFrame(()=>{H.current=null,_t()}))},[_t]),Ke=h.useCallback(()=>{_t(),K&&(M(tl),V(!1),ce.current=!1)},[K,_t]),Ue=h.useCallback(()=>{const we=Me.current;if(!we)return!1;const{scrollTop:Be,scrollHeight:rt,clientHeight:it}=we;return KP(Be,rt,it)},[]),ht=h.useCallback(async we=>{if(!we||xe.current||x||ce.current||!k||!t||!e)return!1;xe.current=!0;const Be=we.scrollHeight,rt=we.scrollTop;try{const it=await u.fetchMore(t.id,{provider:"pilotdeck",projectName:e.name,projectPath:e.fullPath||e.path||"",...We,limit:bv});return!it||it.serverMessages.length===0?!1:(Te.current={height:Be,top:rt},y(it.hasMore),E(it.total),M(Tt=>Tt+bv),!0)}finally{xe.current=!1}},[k,x,e,t,We,u]),Pt=h.useCallback(async()=>{const we=Me.current;if(!we)return;const Be=Ue();if(C(!Be),!ce.current){if(!(we.scrollTop<100)){Ne.current=!1;return}if(Ne.current){we.scrollTop>20&&(Ne.current=!1);return}await ht(we)&&(Ne.current=!0)}},[Ue,ht]);h.useLayoutEffect(()=>{if(!Te.current||!Me.current)return;const{height:we,top:Be}=Te.current,rt=Me.current,it=rt.scrollHeight;rt.scrollTop=Be+Math.max(it-we,0),Te.current=null},[at.length]),h.useEffect(()=>{me.current||(Ge.current=!0,M(tl)),Ne.current=!1,Te.current=null,C(!1)},[e?.name,t?.id]),h.useEffect(()=>{if(!(!Ge.current||!Me.current||g)){if(at.length===0){Ge.current=!1;return}Ge.current=!1,me.current||setTimeout(()=>_t(),200)}},[at.length,g,_t]),h.useEffect(()=>{if(!t||!e){const it=!!m&&c.current?.sessionId===m,Tt=c.current!==null&&!c.current.sessionId;if(!t&&(it||Tt))return;l(),c.current=null,st(null),B(null),U(null),w(!1),j(!1),p(!1),A(null),f(null),ee.current=0,y(!1),E(0),I(null),J.current=null;return}const we="pilotdeck",Be=`${t.id}:${e.name}:${we}`;if(J.current===Be&&u.has(t.id)){const it=(u.getSessionSlot?.(t.id)?.realtimeMessages?.length??0)>0;if(!u.isStale(t.id)||it)return}const rt=YP(J.current,Be);rt&&(l(),c.current=null,B(null),U(null),A(null),w(!1),j(!1)),ee.current=0,y(!1),E(0),M(tl),V(!1),ce.current=!1,le(!1),ne(!1),Se(!1),tt(0),te.current&&clearTimeout(te.current),ae.current&&clearTimeout(ae.current),rt&&(I(null),p(!1)),f(t.id),A(null),n&&!ke&&r({type:"check-session-status",sessionId:t.id,provider:we}),J.current=Be,b(!0),u.fetchFromServer(t.id,{provider:"pilotdeck",projectName:e.name,projectPath:e.fullPath||e.path||"",...We,limit:null,offset:0}).then(it=>{it&&(y(it.hasMore),E(it.total),it.tokenUsage&&I(it.tokenUsage),A(it.status==="error"?it.lastError||"Unable to load conversation messages.":null)),b(!1)}).catch(it=>{A(it instanceof Error?it.message:"Unable to load conversation messages."),b(!1)})},[m,c,l,e,t,r,n,ke,We,u]),h.useEffect(()=>{if(!i||!t||!e)return;(async()=>{try{d||(await u.refreshFromServer(t.id,{provider:"pilotdeck",projectName:e.name,projectPath:e.fullPath||e.path||"",...We}),a&&Ue()&&setTimeout(()=>_t(),200))}catch(Be){console.error("Error reloading messages from external update:",Be)}})()},[a,i,Ue,_t,e,t,We,u,d]),h.useEffect(()=>{const we=t,Be=we?.__searchTargetSnippet,rt=we?.__searchTargetTimestamp;typeof Be=="string"&&Be&&(me.current=!0,ge({snippet:Be,timestamp:typeof rt=="string"?rt:void 0}))},[t]),h.useEffect(()=>{t?.id&&(c.current=null)},[c,t?.id]),h.useEffect(()=>{if(!Fe||at.length===0||g)return;const we=Fe;ge(null),(async()=>{if(!ce.current&&t&&e)try{const it=await u.fetchFromServer(t.id,{provider:"pilotdeck",projectName:e.name,projectPath:e.fullPath||e.path||"",...We,limit:null,offset:0});it&&(y(!1),E(it.total),ee.current=it.total,M(1/0),V(!0),ce.current=!0,await new Promise(Tt=>setTimeout(Tt,300)))}catch{}M(1/0);const rt=it=>{const Tt=Me.current;if(!Tt)return;let un=null;if(we.snippet){const Hr=we.snippet.replace(/^\.{3}/,"").replace(/\.{3}$/,"").trim().slice(0,80).toLowerCase().trim();if(Hr.length>=10){const Ar=Tt.querySelectorAll(".chat-message");for(const gr of Ar)if((gr.textContent||"").toLowerCase().includes(Hr)){un=gr;break}}}if(!un&&we.timestamp){const ja=new Date(we.timestamp).getTime(),Hr=Tt.querySelectorAll("[data-message-timestamp]");let Ar=1/0;for(const gr of Hr){const Vn=gr.getAttribute("data-message-timestamp");if(!Vn)continue;const Oa=Math.abs(new Date(Vn).getTime()-ja);Oaun?.classList.remove("search-highlight-flash"),4e3),me.current=!1):it>0?setTimeout(()=>rt(it-1),200):me.current=!1};setTimeout(()=>rt(15),150)})()},[at.length,g,Fe,e,t,We,u]),h.useEffect(()=>{if(!e||!t?.id||t.id.startsWith("new-session-")){I(null);return}if(ke){I(null);return}(async()=>{try{const Be=`/api/projects/${e.name}/sessions/${encodeURIComponent(t.id)}/token-usage?provider=pilotdeck`,rt=await Oe(Be);rt.ok?I(await rt.json()):I(null)}catch(Be){console.error("Failed to fetch initial token usage:",Be)}})()},[ke,e,t?.id]);const cn=h.useMemo(()=>at.length<=z?at:at.slice(-z),[at,z]),Ce=h.useMemo(()=>ZP(cn),[cn]);h.useEffect(()=>{if(!a&&Me.current){const we=Me.current;X.current={height:we.scrollHeight,top:we.scrollTop}}}),h.useEffect(()=>{if(!Me.current||at.length===0||xe.current||x||Te.current||me.current)return;if(a){_||hr();return}const we=Me.current,Be=X.current.height,rt=X.current.top,Tt=we.scrollHeight-Be;Tt>0&&rt>0&&(we.scrollTop=rt+Tt)},[a,at.length,x,_,hr,Ce]),h.useEffect(()=>{const we=Me.current;if(we)return we.addEventListener("scroll",Pt),()=>we.removeEventListener("scroll",Pt)},[Pt]),h.useEffect(()=>{const we=c.current?.sessionId??null,Be=t?.id||(we===m?m:null);if(!Be||!s)return;s.has(Be)&&!d&&(p(!0),w(!0))},[m,d,c,s,t?.id]);const qe=h.useRef(!1);h.useEffect(()=>{const we=qe.current;return qe.current=x,we&&!x&&k&&(te.current&&clearTimeout(te.current),Se(!0),te.current=setTimeout(()=>Se(!1),2e3)),!k&&!x&&(te.current&&clearTimeout(te.current),Se(!1)),()=>{te.current&&clearTimeout(te.current)}},[x,k]);const pe=h.useCallback(async()=>{if(!t||!e||L)return;const we=t.id;ce.current=!0,xe.current=!0,le(!0),Se(!0);const Be=Me.current,rt=Be?Be.scrollHeight:0,it=Be?Be.scrollTop:0;try{const Tt=await u.fetchFromServer(we,{provider:"pilotdeck",projectName:e.name,projectPath:e.fullPath||e.path||"",...We,limit:null,offset:0});if(m!==we)return;Tt?(Be&&(Te.current={height:rt,top:it}),y(!1),E(Tt.total),ee.current=Tt.total,M(1/0),V(!0),ne(!0),ae.current&&clearTimeout(ae.current),ae.current=setTimeout(()=>{ne(!1),Se(!1)},1e3)):(ce.current=!1,Se(!1))}catch(Tt){console.error("Error loading all messages:",Tt),ce.current=!1,Se(!1)}finally{xe.current=!1,le(!1)}},[t,e,L,m,We,u]),Pe=h.useCallback(()=>{M(we=>we+100)},[]);return{chatMessages:at,activityMessages:Ct,addMessage:zt,clearMessages:tn,rewindMessages:gn,isLoading:d,setIsLoading:p,currentSessionId:m,setCurrentSessionId:f,isLoadingSessionMessages:g,sessionLoadError:q,isLoadingMoreMessages:x,hasMoreMessages:k,totalMessages:v,canAbortSession:N,setCanAbortSession:w,isAborting:T,setIsAborting:j,isUserScrolledUp:_,setIsUserScrolledUp:C,tokenBudget:O,setTokenBudget:I,visibleMessageCount:z,visibleMessages:cn,loadEarlierMessages:Pe,loadAllMessages:pe,allMessagesLoaded:K,isLoadingAllMessages:L,loadAllJustFinished:re,showLoadAllOverlay:de,claudeStatus:P,setClaudeStatus:B,pilotDeckStatus:$,setPilotDeckStatus:U,createDiff:G,scrollContainerRef:Me,scrollToBottom:_t,scrollToBottomAndReset:Ke,isNearBottom:Ue,handleScroll:Pt}}const eF=33,tF=360,nF=650,rF=1,aF=36,iF=90,sF=80,kv=.22;function rc(e,t,n){return Math.min(n,Math.max(t,e))}function oF(e,t){return e*(1-kv)+t*kv}function wv(e){return/[\s,.;:!?,。!?、;:)\])}]/.test(e)}function Sv(e,t,n,r){const a=rc(r,t,e.length),i=rc(n,t,a),s=Math.max(t,i-12);for(let c=i;c>=s;c-=1)if(wv(e[c-1]||""))return c;const l=Math.min(a,i+12);for(let c=i+1;c<=l;c+=1)if(wv(e[c-1]||""))return c;return i}class Ev{constructor(t){this.options=t}options;targetContent="";renderedContent="";frame=null;fallbackTimer=null;lastChunkAtMs=null;lastFrameAtMs=null;averageCharsPerSecond=iF;append(t){if(!t)return;const n=this.now();if(this.lastChunkAtMs!=null){const r=rc((n-this.lastChunkAtMs)/1e3,.016,1.5),a=t.length/r;this.averageCharsPerSecond=oF(this.averageCharsPerSecond,a)}this.lastChunkAtMs=n,this.targetContent+=t,this.emitInitialContent(),this.schedulePump()}flush(t=!1){this.cancelScheduledFrame(),this.renderedContent!==this.targetContent&&(this.renderedContent=this.targetContent,this.options.emit(this.renderedContent)),t&&(this.options.finalize?.(),this.targetContent="",this.renderedContent="",this.lastChunkAtMs=null,this.lastFrameAtMs=null)}cancel(){this.cancelScheduledFrame()}getSnapshot(){const t=this.targetContent.length-this.renderedContent.length;return{targetLength:this.targetContent.length,renderedLength:this.renderedContent.length,averageCharsPerSecond:this.averageCharsPerSecond,pendingChars:t,isScheduled:this.frame!=null}}now(){return this.options.now?.()??performance.now()}scheduleFrame(t){return this.options.scheduleFrame?this.options.scheduleFrame(t):window.requestAnimationFrame(t)}cancelFrame(t){if(this.options.cancelFrame){this.options.cancelFrame(t);return}window.cancelAnimationFrame(t)}cancelScheduledFrame(){this.frame!=null&&(this.cancelFrame(this.frame),this.frame=null),this.cancelFallbackTimer()}cancelFallbackTimer(){this.fallbackTimer!=null&&(clearTimeout(this.fallbackTimer),this.fallbackTimer=null)}schedulePump(){this.frame==null&&(this.frame=this.scheduleFrame(()=>this.pump()),this.scheduleFallbackPump())}scheduleFallbackPump(){this.options.scheduleFrame||this.fallbackTimer!=null||typeof window>"u"||(this.fallbackTimer=window.setTimeout(()=>{this.fallbackTimer=null,this.frame!=null&&(this.cancelFrame(this.frame),this.frame=null,this.pump())},this.options.fallbackFrameMs??sF))}emitInitialContent(){if(this.renderedContent.length>0||this.targetContent.length===0)return;const t=this.getCharsForFrame(this.targetContent.length),n=Math.min(this.targetContent.length,this.minCharsPerFrame),r=Math.min(this.targetContent.length,this.maxCharsPerFrame),a=Sv(this.targetContent,n,t,r);this.renderedContent=this.targetContent.slice(0,a),this.options.emit(this.renderedContent)}pump(){this.frame=null,this.cancelFallbackTimer();const t=this.now();if(this.lastFrameAtMs!=null&&t-this.lastFrameAtMsr?Math.ceil((t-r)/4):0,l=Math.max(this.minCharsPerFrame,a,Math.ceil(i/10),s);return rc(l,this.minCharsPerFrame,Math.min(this.maxCharsPerFrame,t))}}function Zg(e){const t=e.sessionId??e.session_id??e.actualSessionId??e.newSessionId;return typeof t=="string"&&t.trim()?t:null}function lF(e,t){const n=Zg(e);return n||(typeof t=="string"&&t.trim()?t.trim():null)}function cF(e){console.warn("[chat] Dropped WS frame without sessionId",{kind:e.kind,type:e.type})}function uF(e,t){console.warn("[chat] Resolved missing sessionId from parent context",{kind:e.kind,type:e.type,fallbackSessionId:t})}function Cv(e,t,n){let r=e.get(t);return r||(r=n(),e.set(t,r)),r}function dF({provider:e,selectedSession:t,currentSessionId:n,setCurrentSessionId:r,setIsLoading:a,setCanAbortSession:i,setIsAborting:s,setClaudeStatus:l,setPilotDeckStatus:c,setTokenBudget:u,setPendingPermissionRequests:d,pendingViewSessionRef:p,onSessionInactive:m,onSessionProcessing:f,onSessionNotProcessing:g,onReplaceTemporarySession:b,onNavigateToSession:x,onWebSocketReconnect:k,sessionStore:y}){const{subscribe:v}=Rc(),E=h.useRef(new Map),N=h.useRef(new Map),w=h.useCallback((T,j)=>{if(!T)return;const _=p.current?.sessionId??null,C=_===n?n:null,O=t?.id||C||_||null,I=T,z=()=>{for(const q of E.current.values())q.cancel();for(const q of N.current.values())q.cancel();E.current.clear(),N.current.clear()},M=(q,A=!1)=>{const K=E.current.get(q);K&&(K.flush(A),A&&E.current.delete(q))},P=(q,A=!1)=>{const K=N.current.get(q);K&&(K.flush(A),A&&N.current.delete(q))};if(!I.kind)switch(String(I.type||"")){case"websocket-reconnected":z(),k?.();return;case"pending-permissions-response":{const A=I.sessionId,K=A===n||t&&A===t.id;if(A&&!K)return;d(I.data||[]);return}case"session-status":{const A=I.sessionId;if(!A)return;const K=A===n||t&&A===t.id;if(K&&Array.isArray(I.activeTurnMessages)&&I.activeTurnMessages.length>0)for(const L of I.activeTurnMessages)w(L,A);if(K&&Array.isArray(I.activitySnapshot)){const L=I.activitySnapshot.map(le=>{const re=le;return Zg(re)?re:{...re,sessionId:A}});y.setActivities?.(A,L)}const V=I.status;if(V){if(!K)return;const L={text:V.text||"Working...",tokens:V.tokens||0,can_interrupt:V.can_interrupt!==void 0?V.can_interrupt:!0,compactProgress:V.compactProgress||V.compact_progress||null};l(L),c(L),a(!0),i(L.can_interrupt);return}if(K&&I.tokenBudget&&u(I.tokenBudget),I.isProcessing){f?.(A),K&&(a(!0),i(!0));return}m?.(A),g?.(A),K&&(a(!1),i(!1),l(null),c(null));return}default:return}const B=lF(I,j);if(!B){cF(I);return}!Zg(I)&&j&&uF(I,B);const $=B===n||B===t?.id||B===O;if(I.kind==="agent_activity"){y.upsertActivity?.(B,I);return}if(I.kind==="stream_delta"){const q=I.content||"";if(!q)return;P(B,!0),Cv(E.current,B,()=>new Ev({emit:K=>y.updateStreaming(B,K,e),finalize:()=>y.finalizeStreaming(B),frameMs:50})).append(q);return}if(I.kind==="thinking"){const q=I.content||"";if(!q)return;Cv(N.current,B,()=>new Ev({emit:K=>y.updateStreamingThinking(B,K,e),finalize:()=>y.finalizeStreamingThinking(B),frameMs:50})).append(q);return}if(I.kind==="stream_end"){M(B,!0);return}switch(P(B,!0),M(B,!0),I.kind==="text"&&I.role==="assistant"&&y.getSessionSlot?.(B)?.realtimeMessages.some(q=>q.kind==="text"&&q.role==="assistant"&&q.content===I.content)||y.appendRealtime(B,I),I.kind){case"session_created":{const q=I.newSessionId;if(!q)break;(!n||n.startsWith("new-session-"))&&(sessionStorage.setItem("pendingSessionId",q),p.current&&!p.current.sessionId&&(p.current.sessionId=q),r(q),y.setActiveSession(q),b?.(q),d(A=>A.map(K=>K.sessionId?K:{...K,sessionId:q})),x?.(q)),window.refreshProjects&&window.refreshProjects();break}case"complete":{if(B&&(P(B,!0),M(B,!0)),$&&(a(!1),i(!1),s(!1),l(null),c(null)),B&&(d(A=>A.filter(K=>K.sessionId!==B)),m?.(B),g?.(B)),I.aborted)break;const q=sessionStorage.getItem("pendingSessionId");if(q&&B===q&&I.exitCode===0){const A=I.actualSessionId||q;n||r(A),I.actualSessionId&&x?.(A),sessionStorage.removeItem("pendingSessionId"),window.refreshProjects&&setTimeout(()=>window.refreshProjects?.(),500)}break}case"error":{$&&(a(!1),i(!1),s(!1),l(null),c(null)),B&&(m?.(B),g?.(B));break}case"permission_request":{if(!I.requestId||!$)break;d(A=>A.some(K=>K.requestId===I.requestId)?A:[...A,{requestId:I.requestId,toolName:I.toolName||"UnknownTool",input:I.input,context:I.context,sessionId:B,receivedAt:new Date,isElicitation:!!I.isElicitation}]),a(!0),i(!0),l({text:"Waiting for permission",tokens:0,can_interrupt:!0}),c({text:"Waiting for permission",tokens:0,can_interrupt:!0});break}case"permission_cancelled":{I.requestId&&d(q=>q.filter(A=>A.requestId!==I.requestId));break}case"status":{if(!$)break;I.text==="token_budget"&&I.tokenBudget?u(I.tokenBudget):I.text==="clear_status"?(l(null),c(null)):I.text&&(l({text:I.text,tokens:I.tokens||0,can_interrupt:I.canInterrupt!==void 0?I.canInterrupt:!0,compactProgress:I.compactProgress||I.compact_progress||null}),c({text:I.text,tokens:I.tokens||0,can_interrupt:I.canInterrupt!==void 0?I.canInterrupt:!0,compactProgress:I.compactProgress||I.compact_progress||null}),a(!0),i(I.canInterrupt!==!1));break}case"compact_boundary":{$&&(l(null),c(null),a(!0),i(!0));break}}},[e,t,n,r,a,i,s,l,c,u,d,p,m,f,g,b,x,k,y]);h.useEffect(()=>{if(v)return v(w)},[v,w])}var Bu={exports:{}},$u,Nv;function pF(){if(Nv)return $u;Nv=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return $u=e,$u}var Uu,Tv;function mF(){if(Tv)return Uu;Tv=1;var e=pF();function t(){}function n(){}return n.resetWarningCache=t,Uu=function(){function r(s,l,c,u,d,p){if(p!==e){var m=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw m.name="Invariant Violation",m}}r.isRequired=r;function a(){return r}var i={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:a,element:r,elementType:r,instanceOf:a,node:r,objectOf:a,oneOf:a,oneOfType:a,shape:a,exact:a,checkPropTypes:n,resetWarningCache:t};return i.PropTypes=i,i},Uu}var Av;function fF(){return Av||(Av=1,Bu.exports=mF()()),Bu.exports}var hF=fF();const jt=os(hF);function ui(e,t,n,r){function a(i){return i instanceof n?i:new n(function(s){s(i)})}return new(n||(n=Promise))(function(i,s){function l(d){try{u(r.next(d))}catch(p){s(p)}}function c(d){try{u(r.throw(d))}catch(p){s(p)}}function u(d){d.done?i(d.value):a(d.value).then(l,c)}u((r=r.apply(e,t||[])).next())})}const gF=new Map([["1km","application/vnd.1000minds.decision-model+xml"],["3dml","text/vnd.in3d.3dml"],["3ds","image/x-3ds"],["3g2","video/3gpp2"],["3gp","video/3gp"],["3gpp","video/3gpp"],["3mf","model/3mf"],["7z","application/x-7z-compressed"],["7zip","application/x-7z-compressed"],["123","application/vnd.lotus-1-2-3"],["aab","application/x-authorware-bin"],["aac","audio/x-acc"],["aam","application/x-authorware-map"],["aas","application/x-authorware-seg"],["abw","application/x-abiword"],["ac","application/vnd.nokia.n-gage.ac+xml"],["ac3","audio/ac3"],["acc","application/vnd.americandynamics.acc"],["ace","application/x-ace-compressed"],["acu","application/vnd.acucobol"],["acutc","application/vnd.acucorp"],["adp","audio/adpcm"],["aep","application/vnd.audiograph"],["afm","application/x-font-type1"],["afp","application/vnd.ibm.modcap"],["ahead","application/vnd.ahead.space"],["ai","application/pdf"],["aif","audio/x-aiff"],["aifc","audio/x-aiff"],["aiff","audio/x-aiff"],["air","application/vnd.adobe.air-application-installer-package+zip"],["ait","application/vnd.dvb.ait"],["ami","application/vnd.amiga.ami"],["amr","audio/amr"],["apk","application/vnd.android.package-archive"],["apng","image/apng"],["appcache","text/cache-manifest"],["application","application/x-ms-application"],["apr","application/vnd.lotus-approach"],["arc","application/x-freearc"],["arj","application/x-arj"],["asc","application/pgp-signature"],["asf","video/x-ms-asf"],["asm","text/x-asm"],["aso","application/vnd.accpac.simply.aso"],["asx","video/x-ms-asf"],["atc","application/vnd.acucorp"],["atom","application/atom+xml"],["atomcat","application/atomcat+xml"],["atomdeleted","application/atomdeleted+xml"],["atomsvc","application/atomsvc+xml"],["atx","application/vnd.antix.game-component"],["au","audio/x-au"],["avi","video/x-msvideo"],["avif","image/avif"],["aw","application/applixware"],["azf","application/vnd.airzip.filesecure.azf"],["azs","application/vnd.airzip.filesecure.azs"],["azv","image/vnd.airzip.accelerator.azv"],["azw","application/vnd.amazon.ebook"],["b16","image/vnd.pco.b16"],["bat","application/x-msdownload"],["bcpio","application/x-bcpio"],["bdf","application/x-font-bdf"],["bdm","application/vnd.syncml.dm+wbxml"],["bdoc","application/x-bdoc"],["bed","application/vnd.realvnc.bed"],["bh2","application/vnd.fujitsu.oasysprs"],["bin","application/octet-stream"],["blb","application/x-blorb"],["blorb","application/x-blorb"],["bmi","application/vnd.bmi"],["bmml","application/vnd.balsamiq.bmml+xml"],["bmp","image/bmp"],["book","application/vnd.framemaker"],["box","application/vnd.previewsystems.box"],["boz","application/x-bzip2"],["bpk","application/octet-stream"],["bpmn","application/octet-stream"],["bsp","model/vnd.valve.source.compiled-map"],["btif","image/prs.btif"],["buffer","application/octet-stream"],["bz","application/x-bzip"],["bz2","application/x-bzip2"],["c","text/x-c"],["c4d","application/vnd.clonk.c4group"],["c4f","application/vnd.clonk.c4group"],["c4g","application/vnd.clonk.c4group"],["c4p","application/vnd.clonk.c4group"],["c4u","application/vnd.clonk.c4group"],["c11amc","application/vnd.cluetrust.cartomobile-config"],["c11amz","application/vnd.cluetrust.cartomobile-config-pkg"],["cab","application/vnd.ms-cab-compressed"],["caf","audio/x-caf"],["cap","application/vnd.tcpdump.pcap"],["car","application/vnd.curl.car"],["cat","application/vnd.ms-pki.seccat"],["cb7","application/x-cbr"],["cba","application/x-cbr"],["cbr","application/x-cbr"],["cbt","application/x-cbr"],["cbz","application/x-cbr"],["cc","text/x-c"],["cco","application/x-cocoa"],["cct","application/x-director"],["ccxml","application/ccxml+xml"],["cdbcmsg","application/vnd.contact.cmsg"],["cda","application/x-cdf"],["cdf","application/x-netcdf"],["cdfx","application/cdfx+xml"],["cdkey","application/vnd.mediastation.cdkey"],["cdmia","application/cdmi-capability"],["cdmic","application/cdmi-container"],["cdmid","application/cdmi-domain"],["cdmio","application/cdmi-object"],["cdmiq","application/cdmi-queue"],["cdr","application/cdr"],["cdx","chemical/x-cdx"],["cdxml","application/vnd.chemdraw+xml"],["cdy","application/vnd.cinderella"],["cer","application/pkix-cert"],["cfs","application/x-cfs-compressed"],["cgm","image/cgm"],["chat","application/x-chat"],["chm","application/vnd.ms-htmlhelp"],["chrt","application/vnd.kde.kchart"],["cif","chemical/x-cif"],["cii","application/vnd.anser-web-certificate-issue-initiation"],["cil","application/vnd.ms-artgalry"],["cjs","application/node"],["cla","application/vnd.claymore"],["class","application/octet-stream"],["clkk","application/vnd.crick.clicker.keyboard"],["clkp","application/vnd.crick.clicker.palette"],["clkt","application/vnd.crick.clicker.template"],["clkw","application/vnd.crick.clicker.wordbank"],["clkx","application/vnd.crick.clicker"],["clp","application/x-msclip"],["cmc","application/vnd.cosmocaller"],["cmdf","chemical/x-cmdf"],["cml","chemical/x-cml"],["cmp","application/vnd.yellowriver-custom-menu"],["cmx","image/x-cmx"],["cod","application/vnd.rim.cod"],["coffee","text/coffeescript"],["com","application/x-msdownload"],["conf","text/plain"],["cpio","application/x-cpio"],["cpp","text/x-c"],["cpt","application/mac-compactpro"],["crd","application/x-mscardfile"],["crl","application/pkix-crl"],["crt","application/x-x509-ca-cert"],["crx","application/x-chrome-extension"],["cryptonote","application/vnd.rig.cryptonote"],["csh","application/x-csh"],["csl","application/vnd.citationstyles.style+xml"],["csml","chemical/x-csml"],["csp","application/vnd.commonspace"],["csr","application/octet-stream"],["css","text/css"],["cst","application/x-director"],["csv","text/csv"],["cu","application/cu-seeme"],["curl","text/vnd.curl"],["cww","application/prs.cww"],["cxt","application/x-director"],["cxx","text/x-c"],["dae","model/vnd.collada+xml"],["daf","application/vnd.mobius.daf"],["dart","application/vnd.dart"],["dataless","application/vnd.fdsn.seed"],["davmount","application/davmount+xml"],["dbf","application/vnd.dbf"],["dbk","application/docbook+xml"],["dcr","application/x-director"],["dcurl","text/vnd.curl.dcurl"],["dd2","application/vnd.oma.dd2+xml"],["ddd","application/vnd.fujixerox.ddd"],["ddf","application/vnd.syncml.dmddf+xml"],["dds","image/vnd.ms-dds"],["deb","application/x-debian-package"],["def","text/plain"],["deploy","application/octet-stream"],["der","application/x-x509-ca-cert"],["dfac","application/vnd.dreamfactory"],["dgc","application/x-dgc-compressed"],["dic","text/x-c"],["dir","application/x-director"],["dis","application/vnd.mobius.dis"],["disposition-notification","message/disposition-notification"],["dist","application/octet-stream"],["distz","application/octet-stream"],["djv","image/vnd.djvu"],["djvu","image/vnd.djvu"],["dll","application/octet-stream"],["dmg","application/x-apple-diskimage"],["dmn","application/octet-stream"],["dmp","application/vnd.tcpdump.pcap"],["dms","application/octet-stream"],["dna","application/vnd.dna"],["doc","application/msword"],["docm","application/vnd.ms-word.template.macroEnabled.12"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"],["dot","application/msword"],["dotm","application/vnd.ms-word.template.macroEnabled.12"],["dotx","application/vnd.openxmlformats-officedocument.wordprocessingml.template"],["dp","application/vnd.osgi.dp"],["dpg","application/vnd.dpgraph"],["dra","audio/vnd.dra"],["drle","image/dicom-rle"],["dsc","text/prs.lines.tag"],["dssc","application/dssc+der"],["dtb","application/x-dtbook+xml"],["dtd","application/xml-dtd"],["dts","audio/vnd.dts"],["dtshd","audio/vnd.dts.hd"],["dump","application/octet-stream"],["dvb","video/vnd.dvb.file"],["dvi","application/x-dvi"],["dwd","application/atsc-dwd+xml"],["dwf","model/vnd.dwf"],["dwg","image/vnd.dwg"],["dxf","image/vnd.dxf"],["dxp","application/vnd.spotfire.dxp"],["dxr","application/x-director"],["ear","application/java-archive"],["ecelp4800","audio/vnd.nuera.ecelp4800"],["ecelp7470","audio/vnd.nuera.ecelp7470"],["ecelp9600","audio/vnd.nuera.ecelp9600"],["ecma","application/ecmascript"],["edm","application/vnd.novadigm.edm"],["edx","application/vnd.novadigm.edx"],["efif","application/vnd.picsel"],["ei6","application/vnd.pg.osasli"],["elc","application/octet-stream"],["emf","image/emf"],["eml","message/rfc822"],["emma","application/emma+xml"],["emotionml","application/emotionml+xml"],["emz","application/x-msmetafile"],["eol","audio/vnd.digital-winds"],["eot","application/vnd.ms-fontobject"],["eps","application/postscript"],["epub","application/epub+zip"],["es","application/ecmascript"],["es3","application/vnd.eszigno3+xml"],["esa","application/vnd.osgi.subsystem"],["esf","application/vnd.epson.esf"],["et3","application/vnd.eszigno3+xml"],["etx","text/x-setext"],["eva","application/x-eva"],["evy","application/x-envoy"],["exe","application/octet-stream"],["exi","application/exi"],["exp","application/express"],["exr","image/aces"],["ext","application/vnd.novadigm.ext"],["ez","application/andrew-inset"],["ez2","application/vnd.ezpix-album"],["ez3","application/vnd.ezpix-package"],["f","text/x-fortran"],["f4v","video/mp4"],["f77","text/x-fortran"],["f90","text/x-fortran"],["fbs","image/vnd.fastbidsheet"],["fcdt","application/vnd.adobe.formscentral.fcdt"],["fcs","application/vnd.isac.fcs"],["fdf","application/vnd.fdf"],["fdt","application/fdt+xml"],["fe_launch","application/vnd.denovo.fcselayout-link"],["fg5","application/vnd.fujitsu.oasysgp"],["fgd","application/x-director"],["fh","image/x-freehand"],["fh4","image/x-freehand"],["fh5","image/x-freehand"],["fh7","image/x-freehand"],["fhc","image/x-freehand"],["fig","application/x-xfig"],["fits","image/fits"],["flac","audio/x-flac"],["fli","video/x-fli"],["flo","application/vnd.micrografx.flo"],["flv","video/x-flv"],["flw","application/vnd.kde.kivio"],["flx","text/vnd.fmi.flexstor"],["fly","text/vnd.fly"],["fm","application/vnd.framemaker"],["fnc","application/vnd.frogans.fnc"],["fo","application/vnd.software602.filler.form+xml"],["for","text/x-fortran"],["fpx","image/vnd.fpx"],["frame","application/vnd.framemaker"],["fsc","application/vnd.fsc.weblaunch"],["fst","image/vnd.fst"],["ftc","application/vnd.fluxtime.clip"],["fti","application/vnd.anser-web-funds-transfer-initiation"],["fvt","video/vnd.fvt"],["fxp","application/vnd.adobe.fxp"],["fxpl","application/vnd.adobe.fxp"],["fzs","application/vnd.fuzzysheet"],["g2w","application/vnd.geoplan"],["g3","image/g3fax"],["g3w","application/vnd.geospace"],["gac","application/vnd.groove-account"],["gam","application/x-tads"],["gbr","application/rpki-ghostbusters"],["gca","application/x-gca-compressed"],["gdl","model/vnd.gdl"],["gdoc","application/vnd.google-apps.document"],["geo","application/vnd.dynageo"],["geojson","application/geo+json"],["gex","application/vnd.geometry-explorer"],["ggb","application/vnd.geogebra.file"],["ggt","application/vnd.geogebra.tool"],["ghf","application/vnd.groove-help"],["gif","image/gif"],["gim","application/vnd.groove-identity-message"],["glb","model/gltf-binary"],["gltf","model/gltf+json"],["gml","application/gml+xml"],["gmx","application/vnd.gmx"],["gnumeric","application/x-gnumeric"],["gpg","application/gpg-keys"],["gph","application/vnd.flographit"],["gpx","application/gpx+xml"],["gqf","application/vnd.grafeq"],["gqs","application/vnd.grafeq"],["gram","application/srgs"],["gramps","application/x-gramps-xml"],["gre","application/vnd.geometry-explorer"],["grv","application/vnd.groove-injector"],["grxml","application/srgs+xml"],["gsf","application/x-font-ghostscript"],["gsheet","application/vnd.google-apps.spreadsheet"],["gslides","application/vnd.google-apps.presentation"],["gtar","application/x-gtar"],["gtm","application/vnd.groove-tool-message"],["gtw","model/vnd.gtw"],["gv","text/vnd.graphviz"],["gxf","application/gxf"],["gxt","application/vnd.geonext"],["gz","application/gzip"],["gzip","application/gzip"],["h","text/x-c"],["h261","video/h261"],["h263","video/h263"],["h264","video/h264"],["hal","application/vnd.hal+xml"],["hbci","application/vnd.hbci"],["hbs","text/x-handlebars-template"],["hdd","application/x-virtualbox-hdd"],["hdf","application/x-hdf"],["heic","image/heic"],["heics","image/heic-sequence"],["heif","image/heif"],["heifs","image/heif-sequence"],["hej2","image/hej2k"],["held","application/atsc-held+xml"],["hh","text/x-c"],["hjson","application/hjson"],["hlp","application/winhlp"],["hpgl","application/vnd.hp-hpgl"],["hpid","application/vnd.hp-hpid"],["hps","application/vnd.hp-hps"],["hqx","application/mac-binhex40"],["hsj2","image/hsj2"],["htc","text/x-component"],["htke","application/vnd.kenameaapp"],["htm","text/html"],["html","text/html"],["hvd","application/vnd.yamaha.hv-dic"],["hvp","application/vnd.yamaha.hv-voice"],["hvs","application/vnd.yamaha.hv-script"],["i2g","application/vnd.intergeo"],["icc","application/vnd.iccprofile"],["ice","x-conference/x-cooltalk"],["icm","application/vnd.iccprofile"],["ico","image/x-icon"],["ics","text/calendar"],["ief","image/ief"],["ifb","text/calendar"],["ifm","application/vnd.shana.informed.formdata"],["iges","model/iges"],["igl","application/vnd.igloader"],["igm","application/vnd.insors.igm"],["igs","model/iges"],["igx","application/vnd.micrografx.igx"],["iif","application/vnd.shana.informed.interchange"],["img","application/octet-stream"],["imp","application/vnd.accpac.simply.imp"],["ims","application/vnd.ms-ims"],["in","text/plain"],["ini","text/plain"],["ink","application/inkml+xml"],["inkml","application/inkml+xml"],["install","application/x-install-instructions"],["iota","application/vnd.astraea-software.iota"],["ipfix","application/ipfix"],["ipk","application/vnd.shana.informed.package"],["irm","application/vnd.ibm.rights-management"],["irp","application/vnd.irepository.package+xml"],["iso","application/x-iso9660-image"],["itp","application/vnd.shana.informed.formtemplate"],["its","application/its+xml"],["ivp","application/vnd.immervision-ivp"],["ivu","application/vnd.immervision-ivu"],["jad","text/vnd.sun.j2me.app-descriptor"],["jade","text/jade"],["jam","application/vnd.jam"],["jar","application/java-archive"],["jardiff","application/x-java-archive-diff"],["java","text/x-java-source"],["jhc","image/jphc"],["jisp","application/vnd.jisp"],["jls","image/jls"],["jlt","application/vnd.hp-jlyt"],["jng","image/x-jng"],["jnlp","application/x-java-jnlp-file"],["joda","application/vnd.joost.joda-archive"],["jp2","image/jp2"],["jpe","image/jpeg"],["jpeg","image/jpeg"],["jpf","image/jpx"],["jpg","image/jpeg"],["jpg2","image/jp2"],["jpgm","video/jpm"],["jpgv","video/jpeg"],["jph","image/jph"],["jpm","video/jpm"],["jpx","image/jpx"],["js","application/javascript"],["json","application/json"],["json5","application/json5"],["jsonld","application/ld+json"],["jsonl","application/jsonl"],["jsonml","application/jsonml+json"],["jsx","text/jsx"],["jxr","image/jxr"],["jxra","image/jxra"],["jxrs","image/jxrs"],["jxs","image/jxs"],["jxsc","image/jxsc"],["jxsi","image/jxsi"],["jxss","image/jxss"],["kar","audio/midi"],["karbon","application/vnd.kde.karbon"],["kdb","application/octet-stream"],["kdbx","application/x-keepass2"],["key","application/x-iwork-keynote-sffkey"],["kfo","application/vnd.kde.kformula"],["kia","application/vnd.kidspiration"],["kml","application/vnd.google-earth.kml+xml"],["kmz","application/vnd.google-earth.kmz"],["kne","application/vnd.kinar"],["knp","application/vnd.kinar"],["kon","application/vnd.kde.kontour"],["kpr","application/vnd.kde.kpresenter"],["kpt","application/vnd.kde.kpresenter"],["kpxx","application/vnd.ds-keypoint"],["ksp","application/vnd.kde.kspread"],["ktr","application/vnd.kahootz"],["ktx","image/ktx"],["ktx2","image/ktx2"],["ktz","application/vnd.kahootz"],["kwd","application/vnd.kde.kword"],["kwt","application/vnd.kde.kword"],["lasxml","application/vnd.las.las+xml"],["latex","application/x-latex"],["lbd","application/vnd.llamagraphics.life-balance.desktop"],["lbe","application/vnd.llamagraphics.life-balance.exchange+xml"],["les","application/vnd.hhe.lesson-player"],["less","text/less"],["lgr","application/lgr+xml"],["lha","application/octet-stream"],["link66","application/vnd.route66.link66+xml"],["list","text/plain"],["list3820","application/vnd.ibm.modcap"],["listafp","application/vnd.ibm.modcap"],["litcoffee","text/coffeescript"],["lnk","application/x-ms-shortcut"],["log","text/plain"],["lostxml","application/lost+xml"],["lrf","application/octet-stream"],["lrm","application/vnd.ms-lrm"],["ltf","application/vnd.frogans.ltf"],["lua","text/x-lua"],["luac","application/x-lua-bytecode"],["lvp","audio/vnd.lucent.voice"],["lwp","application/vnd.lotus-wordpro"],["lzh","application/octet-stream"],["m1v","video/mpeg"],["m2a","audio/mpeg"],["m2v","video/mpeg"],["m3a","audio/mpeg"],["m3u","text/plain"],["m3u8","application/vnd.apple.mpegurl"],["m4a","audio/x-m4a"],["m4p","application/mp4"],["m4s","video/iso.segment"],["m4u","application/vnd.mpegurl"],["m4v","video/x-m4v"],["m13","application/x-msmediaview"],["m14","application/x-msmediaview"],["m21","application/mp21"],["ma","application/mathematica"],["mads","application/mads+xml"],["maei","application/mmt-aei+xml"],["mag","application/vnd.ecowin.chart"],["maker","application/vnd.framemaker"],["man","text/troff"],["manifest","text/cache-manifest"],["map","application/json"],["mar","application/octet-stream"],["markdown","text/markdown"],["mathml","application/mathml+xml"],["mb","application/mathematica"],["mbk","application/vnd.mobius.mbk"],["mbox","application/mbox"],["mc1","application/vnd.medcalcdata"],["mcd","application/vnd.mcd"],["mcurl","text/vnd.curl.mcurl"],["md","text/markdown"],["mdb","application/x-msaccess"],["mdi","image/vnd.ms-modi"],["mdx","text/mdx"],["me","text/troff"],["mesh","model/mesh"],["meta4","application/metalink4+xml"],["metalink","application/metalink+xml"],["mets","application/mets+xml"],["mfm","application/vnd.mfmp"],["mft","application/rpki-manifest"],["mgp","application/vnd.osgeo.mapguide.package"],["mgz","application/vnd.proteus.magazine"],["mid","audio/midi"],["midi","audio/midi"],["mie","application/x-mie"],["mif","application/vnd.mif"],["mime","message/rfc822"],["mj2","video/mj2"],["mjp2","video/mj2"],["mjs","application/javascript"],["mk3d","video/x-matroska"],["mka","audio/x-matroska"],["mkd","text/x-markdown"],["mks","video/x-matroska"],["mkv","video/x-matroska"],["mlp","application/vnd.dolby.mlp"],["mmd","application/vnd.chipnuts.karaoke-mmd"],["mmf","application/vnd.smaf"],["mml","text/mathml"],["mmr","image/vnd.fujixerox.edmics-mmr"],["mng","video/x-mng"],["mny","application/x-msmoney"],["mobi","application/x-mobipocket-ebook"],["mods","application/mods+xml"],["mov","video/quicktime"],["movie","video/x-sgi-movie"],["mp2","audio/mpeg"],["mp2a","audio/mpeg"],["mp3","audio/mpeg"],["mp4","video/mp4"],["mp4a","audio/mp4"],["mp4s","application/mp4"],["mp4v","video/mp4"],["mp21","application/mp21"],["mpc","application/vnd.mophun.certificate"],["mpd","application/dash+xml"],["mpe","video/mpeg"],["mpeg","video/mpeg"],["mpg","video/mpeg"],["mpg4","video/mp4"],["mpga","audio/mpeg"],["mpkg","application/vnd.apple.installer+xml"],["mpm","application/vnd.blueice.multipass"],["mpn","application/vnd.mophun.application"],["mpp","application/vnd.ms-project"],["mpt","application/vnd.ms-project"],["mpy","application/vnd.ibm.minipay"],["mqy","application/vnd.mobius.mqy"],["mrc","application/marc"],["mrcx","application/marcxml+xml"],["ms","text/troff"],["mscml","application/mediaservercontrol+xml"],["mseed","application/vnd.fdsn.mseed"],["mseq","application/vnd.mseq"],["msf","application/vnd.epson.msf"],["msg","application/vnd.ms-outlook"],["msh","model/mesh"],["msi","application/x-msdownload"],["msl","application/vnd.mobius.msl"],["msm","application/octet-stream"],["msp","application/octet-stream"],["msty","application/vnd.muvee.style"],["mtl","model/mtl"],["mts","model/vnd.mts"],["mus","application/vnd.musician"],["musd","application/mmt-usd+xml"],["musicxml","application/vnd.recordare.musicxml+xml"],["mvb","application/x-msmediaview"],["mvt","application/vnd.mapbox-vector-tile"],["mwf","application/vnd.mfer"],["mxf","application/mxf"],["mxl","application/vnd.recordare.musicxml"],["mxmf","audio/mobile-xmf"],["mxml","application/xv+xml"],["mxs","application/vnd.triscape.mxs"],["mxu","video/vnd.mpegurl"],["n-gage","application/vnd.nokia.n-gage.symbian.install"],["n3","text/n3"],["nb","application/mathematica"],["nbp","application/vnd.wolfram.player"],["nc","application/x-netcdf"],["ncx","application/x-dtbncx+xml"],["nfo","text/x-nfo"],["ngdat","application/vnd.nokia.n-gage.data"],["nitf","application/vnd.nitf"],["nlu","application/vnd.neurolanguage.nlu"],["nml","application/vnd.enliven"],["nnd","application/vnd.noblenet-directory"],["nns","application/vnd.noblenet-sealer"],["nnw","application/vnd.noblenet-web"],["npx","image/vnd.net-fpx"],["nq","application/n-quads"],["nsc","application/x-conference"],["nsf","application/vnd.lotus-notes"],["nt","application/n-triples"],["ntf","application/vnd.nitf"],["numbers","application/x-iwork-numbers-sffnumbers"],["nzb","application/x-nzb"],["oa2","application/vnd.fujitsu.oasys2"],["oa3","application/vnd.fujitsu.oasys3"],["oas","application/vnd.fujitsu.oasys"],["obd","application/x-msbinder"],["obgx","application/vnd.openblox.game+xml"],["obj","model/obj"],["oda","application/oda"],["odb","application/vnd.oasis.opendocument.database"],["odc","application/vnd.oasis.opendocument.chart"],["odf","application/vnd.oasis.opendocument.formula"],["odft","application/vnd.oasis.opendocument.formula-template"],["odg","application/vnd.oasis.opendocument.graphics"],["odi","application/vnd.oasis.opendocument.image"],["odm","application/vnd.oasis.opendocument.text-master"],["odp","application/vnd.oasis.opendocument.presentation"],["ods","application/vnd.oasis.opendocument.spreadsheet"],["odt","application/vnd.oasis.opendocument.text"],["oga","audio/ogg"],["ogex","model/vnd.opengex"],["ogg","audio/ogg"],["ogv","video/ogg"],["ogx","application/ogg"],["omdoc","application/omdoc+xml"],["onepkg","application/onenote"],["onetmp","application/onenote"],["onetoc","application/onenote"],["onetoc2","application/onenote"],["opf","application/oebps-package+xml"],["opml","text/x-opml"],["oprc","application/vnd.palm"],["opus","audio/ogg"],["org","text/x-org"],["osf","application/vnd.yamaha.openscoreformat"],["osfpvg","application/vnd.yamaha.openscoreformat.osfpvg+xml"],["osm","application/vnd.openstreetmap.data+xml"],["otc","application/vnd.oasis.opendocument.chart-template"],["otf","font/otf"],["otg","application/vnd.oasis.opendocument.graphics-template"],["oth","application/vnd.oasis.opendocument.text-web"],["oti","application/vnd.oasis.opendocument.image-template"],["otp","application/vnd.oasis.opendocument.presentation-template"],["ots","application/vnd.oasis.opendocument.spreadsheet-template"],["ott","application/vnd.oasis.opendocument.text-template"],["ova","application/x-virtualbox-ova"],["ovf","application/x-virtualbox-ovf"],["owl","application/rdf+xml"],["oxps","application/oxps"],["oxt","application/vnd.openofficeorg.extension"],["p","text/x-pascal"],["p7a","application/x-pkcs7-signature"],["p7b","application/x-pkcs7-certificates"],["p7c","application/pkcs7-mime"],["p7m","application/pkcs7-mime"],["p7r","application/x-pkcs7-certreqresp"],["p7s","application/pkcs7-signature"],["p8","application/pkcs8"],["p10","application/x-pkcs10"],["p12","application/x-pkcs12"],["pac","application/x-ns-proxy-autoconfig"],["pages","application/x-iwork-pages-sffpages"],["pas","text/x-pascal"],["paw","application/vnd.pawaafile"],["pbd","application/vnd.powerbuilder6"],["pbm","image/x-portable-bitmap"],["pcap","application/vnd.tcpdump.pcap"],["pcf","application/x-font-pcf"],["pcl","application/vnd.hp-pcl"],["pclxl","application/vnd.hp-pclxl"],["pct","image/x-pict"],["pcurl","application/vnd.curl.pcurl"],["pcx","image/x-pcx"],["pdb","application/x-pilot"],["pde","text/x-processing"],["pdf","application/pdf"],["pem","application/x-x509-user-cert"],["pfa","application/x-font-type1"],["pfb","application/x-font-type1"],["pfm","application/x-font-type1"],["pfr","application/font-tdpfr"],["pfx","application/x-pkcs12"],["pgm","image/x-portable-graymap"],["pgn","application/x-chess-pgn"],["pgp","application/pgp"],["php","application/x-httpd-php"],["php3","application/x-httpd-php"],["php4","application/x-httpd-php"],["phps","application/x-httpd-php-source"],["phtml","application/x-httpd-php"],["pic","image/x-pict"],["pkg","application/octet-stream"],["pki","application/pkixcmp"],["pkipath","application/pkix-pkipath"],["pkpass","application/vnd.apple.pkpass"],["pl","application/x-perl"],["plb","application/vnd.3gpp.pic-bw-large"],["plc","application/vnd.mobius.plc"],["plf","application/vnd.pocketlearn"],["pls","application/pls+xml"],["pm","application/x-perl"],["pml","application/vnd.ctc-posml"],["png","image/png"],["pnm","image/x-portable-anymap"],["portpkg","application/vnd.macports.portpkg"],["pot","application/vnd.ms-powerpoint"],["potm","application/vnd.ms-powerpoint.presentation.macroEnabled.12"],["potx","application/vnd.openxmlformats-officedocument.presentationml.template"],["ppa","application/vnd.ms-powerpoint"],["ppam","application/vnd.ms-powerpoint.addin.macroEnabled.12"],["ppd","application/vnd.cups-ppd"],["ppm","image/x-portable-pixmap"],["pps","application/vnd.ms-powerpoint"],["ppsm","application/vnd.ms-powerpoint.slideshow.macroEnabled.12"],["ppsx","application/vnd.openxmlformats-officedocument.presentationml.slideshow"],["ppt","application/powerpoint"],["pptm","application/vnd.ms-powerpoint.presentation.macroEnabled.12"],["pptx","application/vnd.openxmlformats-officedocument.presentationml.presentation"],["pqa","application/vnd.palm"],["prc","application/x-pilot"],["pre","application/vnd.lotus-freelance"],["prf","application/pics-rules"],["provx","application/provenance+xml"],["ps","application/postscript"],["psb","application/vnd.3gpp.pic-bw-small"],["psd","application/x-photoshop"],["psf","application/x-font-linux-psf"],["pskcxml","application/pskc+xml"],["pti","image/prs.pti"],["ptid","application/vnd.pvi.ptid1"],["pub","application/x-mspublisher"],["pvb","application/vnd.3gpp.pic-bw-var"],["pwn","application/vnd.3m.post-it-notes"],["pya","audio/vnd.ms-playready.media.pya"],["pyv","video/vnd.ms-playready.media.pyv"],["qam","application/vnd.epson.quickanime"],["qbo","application/vnd.intu.qbo"],["qfx","application/vnd.intu.qfx"],["qps","application/vnd.publishare-delta-tree"],["qt","video/quicktime"],["qwd","application/vnd.quark.quarkxpress"],["qwt","application/vnd.quark.quarkxpress"],["qxb","application/vnd.quark.quarkxpress"],["qxd","application/vnd.quark.quarkxpress"],["qxl","application/vnd.quark.quarkxpress"],["qxt","application/vnd.quark.quarkxpress"],["ra","audio/x-realaudio"],["ram","audio/x-pn-realaudio"],["raml","application/raml+yaml"],["rapd","application/route-apd+xml"],["rar","application/x-rar"],["ras","image/x-cmu-raster"],["rcprofile","application/vnd.ipunplugged.rcprofile"],["rdf","application/rdf+xml"],["rdz","application/vnd.data-vision.rdz"],["relo","application/p2p-overlay+xml"],["rep","application/vnd.businessobjects"],["res","application/x-dtbresource+xml"],["rgb","image/x-rgb"],["rif","application/reginfo+xml"],["rip","audio/vnd.rip"],["ris","application/x-research-info-systems"],["rl","application/resource-lists+xml"],["rlc","image/vnd.fujixerox.edmics-rlc"],["rld","application/resource-lists-diff+xml"],["rm","audio/x-pn-realaudio"],["rmi","audio/midi"],["rmp","audio/x-pn-realaudio-plugin"],["rms","application/vnd.jcp.javame.midlet-rms"],["rmvb","application/vnd.rn-realmedia-vbr"],["rnc","application/relax-ng-compact-syntax"],["rng","application/xml"],["roa","application/rpki-roa"],["roff","text/troff"],["rp9","application/vnd.cloanto.rp9"],["rpm","audio/x-pn-realaudio-plugin"],["rpss","application/vnd.nokia.radio-presets"],["rpst","application/vnd.nokia.radio-preset"],["rq","application/sparql-query"],["rs","application/rls-services+xml"],["rsa","application/x-pkcs7"],["rsat","application/atsc-rsat+xml"],["rsd","application/rsd+xml"],["rsheet","application/urc-ressheet+xml"],["rss","application/rss+xml"],["rtf","text/rtf"],["rtx","text/richtext"],["run","application/x-makeself"],["rusd","application/route-usd+xml"],["rv","video/vnd.rn-realvideo"],["s","text/x-asm"],["s3m","audio/s3m"],["saf","application/vnd.yamaha.smaf-audio"],["sass","text/x-sass"],["sbml","application/sbml+xml"],["sc","application/vnd.ibm.secure-container"],["scd","application/x-msschedule"],["scm","application/vnd.lotus-screencam"],["scq","application/scvp-cv-request"],["scs","application/scvp-cv-response"],["scss","text/x-scss"],["scurl","text/vnd.curl.scurl"],["sda","application/vnd.stardivision.draw"],["sdc","application/vnd.stardivision.calc"],["sdd","application/vnd.stardivision.impress"],["sdkd","application/vnd.solent.sdkm+xml"],["sdkm","application/vnd.solent.sdkm+xml"],["sdp","application/sdp"],["sdw","application/vnd.stardivision.writer"],["sea","application/octet-stream"],["see","application/vnd.seemail"],["seed","application/vnd.fdsn.seed"],["sema","application/vnd.sema"],["semd","application/vnd.semd"],["semf","application/vnd.semf"],["senmlx","application/senml+xml"],["sensmlx","application/sensml+xml"],["ser","application/java-serialized-object"],["setpay","application/set-payment-initiation"],["setreg","application/set-registration-initiation"],["sfd-hdstx","application/vnd.hydrostatix.sof-data"],["sfs","application/vnd.spotfire.sfs"],["sfv","text/x-sfv"],["sgi","image/sgi"],["sgl","application/vnd.stardivision.writer-global"],["sgm","text/sgml"],["sgml","text/sgml"],["sh","application/x-sh"],["shar","application/x-shar"],["shex","text/shex"],["shf","application/shf+xml"],["shtml","text/html"],["sid","image/x-mrsid-image"],["sieve","application/sieve"],["sig","application/pgp-signature"],["sil","audio/silk"],["silo","model/mesh"],["sis","application/vnd.symbian.install"],["sisx","application/vnd.symbian.install"],["sit","application/x-stuffit"],["sitx","application/x-stuffitx"],["siv","application/sieve"],["skd","application/vnd.koan"],["skm","application/vnd.koan"],["skp","application/vnd.koan"],["skt","application/vnd.koan"],["sldm","application/vnd.ms-powerpoint.slide.macroenabled.12"],["sldx","application/vnd.openxmlformats-officedocument.presentationml.slide"],["slim","text/slim"],["slm","text/slim"],["sls","application/route-s-tsid+xml"],["slt","application/vnd.epson.salt"],["sm","application/vnd.stepmania.stepchart"],["smf","application/vnd.stardivision.math"],["smi","application/smil"],["smil","application/smil"],["smv","video/x-smv"],["smzip","application/vnd.stepmania.package"],["snd","audio/basic"],["snf","application/x-font-snf"],["so","application/octet-stream"],["spc","application/x-pkcs7-certificates"],["spdx","text/spdx"],["spf","application/vnd.yamaha.smaf-phrase"],["spl","application/x-futuresplash"],["spot","text/vnd.in3d.spot"],["spp","application/scvp-vp-response"],["spq","application/scvp-vp-request"],["spx","audio/ogg"],["sql","application/x-sql"],["src","application/x-wais-source"],["srt","application/x-subrip"],["sru","application/sru+xml"],["srx","application/sparql-results+xml"],["ssdl","application/ssdl+xml"],["sse","application/vnd.kodak-descriptor"],["ssf","application/vnd.epson.ssf"],["ssml","application/ssml+xml"],["sst","application/octet-stream"],["st","application/vnd.sailingtracker.track"],["stc","application/vnd.sun.xml.calc.template"],["std","application/vnd.sun.xml.draw.template"],["stf","application/vnd.wt.stf"],["sti","application/vnd.sun.xml.impress.template"],["stk","application/hyperstudio"],["stl","model/stl"],["stpx","model/step+xml"],["stpxz","model/step-xml+zip"],["stpz","model/step+zip"],["str","application/vnd.pg.format"],["stw","application/vnd.sun.xml.writer.template"],["styl","text/stylus"],["stylus","text/stylus"],["sub","text/vnd.dvb.subtitle"],["sus","application/vnd.sus-calendar"],["susp","application/vnd.sus-calendar"],["sv4cpio","application/x-sv4cpio"],["sv4crc","application/x-sv4crc"],["svc","application/vnd.dvb.service"],["svd","application/vnd.svd"],["svg","image/svg+xml"],["svgz","image/svg+xml"],["swa","application/x-director"],["swf","application/x-shockwave-flash"],["swi","application/vnd.aristanetworks.swi"],["swidtag","application/swid+xml"],["sxc","application/vnd.sun.xml.calc"],["sxd","application/vnd.sun.xml.draw"],["sxg","application/vnd.sun.xml.writer.global"],["sxi","application/vnd.sun.xml.impress"],["sxm","application/vnd.sun.xml.math"],["sxw","application/vnd.sun.xml.writer"],["t","text/troff"],["t3","application/x-t3vm-image"],["t38","image/t38"],["taglet","application/vnd.mynfc"],["tao","application/vnd.tao.intent-module-archive"],["tap","image/vnd.tencent.tap"],["tar","application/x-tar"],["tcap","application/vnd.3gpp2.tcap"],["tcl","application/x-tcl"],["td","application/urc-targetdesc+xml"],["teacher","application/vnd.smart.teacher"],["tei","application/tei+xml"],["teicorpus","application/tei+xml"],["tex","application/x-tex"],["texi","application/x-texinfo"],["texinfo","application/x-texinfo"],["text","text/plain"],["tfi","application/thraud+xml"],["tfm","application/x-tex-tfm"],["tfx","image/tiff-fx"],["tga","image/x-tga"],["tgz","application/x-tar"],["thmx","application/vnd.ms-officetheme"],["tif","image/tiff"],["tiff","image/tiff"],["tk","application/x-tcl"],["tmo","application/vnd.tmobile-livetv"],["toml","application/toml"],["torrent","application/x-bittorrent"],["tpl","application/vnd.groove-tool-template"],["tpt","application/vnd.trid.tpt"],["tr","text/troff"],["tra","application/vnd.trueapp"],["trig","application/trig"],["trm","application/x-msterminal"],["ts","video/mp2t"],["tsd","application/timestamped-data"],["tsv","text/tab-separated-values"],["ttc","font/collection"],["ttf","font/ttf"],["ttl","text/turtle"],["ttml","application/ttml+xml"],["twd","application/vnd.simtech-mindmapper"],["twds","application/vnd.simtech-mindmapper"],["txd","application/vnd.genomatix.tuxedo"],["txf","application/vnd.mobius.txf"],["txt","text/plain"],["u8dsn","message/global-delivery-status"],["u8hdr","message/global-headers"],["u8mdn","message/global-disposition-notification"],["u8msg","message/global"],["u32","application/x-authorware-bin"],["ubj","application/ubjson"],["udeb","application/x-debian-package"],["ufd","application/vnd.ufdl"],["ufdl","application/vnd.ufdl"],["ulx","application/x-glulx"],["umj","application/vnd.umajin"],["unityweb","application/vnd.unity"],["uoml","application/vnd.uoml+xml"],["uri","text/uri-list"],["uris","text/uri-list"],["urls","text/uri-list"],["usdz","model/vnd.usdz+zip"],["ustar","application/x-ustar"],["utz","application/vnd.uiq.theme"],["uu","text/x-uuencode"],["uva","audio/vnd.dece.audio"],["uvd","application/vnd.dece.data"],["uvf","application/vnd.dece.data"],["uvg","image/vnd.dece.graphic"],["uvh","video/vnd.dece.hd"],["uvi","image/vnd.dece.graphic"],["uvm","video/vnd.dece.mobile"],["uvp","video/vnd.dece.pd"],["uvs","video/vnd.dece.sd"],["uvt","application/vnd.dece.ttml+xml"],["uvu","video/vnd.uvvu.mp4"],["uvv","video/vnd.dece.video"],["uvva","audio/vnd.dece.audio"],["uvvd","application/vnd.dece.data"],["uvvf","application/vnd.dece.data"],["uvvg","image/vnd.dece.graphic"],["uvvh","video/vnd.dece.hd"],["uvvi","image/vnd.dece.graphic"],["uvvm","video/vnd.dece.mobile"],["uvvp","video/vnd.dece.pd"],["uvvs","video/vnd.dece.sd"],["uvvt","application/vnd.dece.ttml+xml"],["uvvu","video/vnd.uvvu.mp4"],["uvvv","video/vnd.dece.video"],["uvvx","application/vnd.dece.unspecified"],["uvvz","application/vnd.dece.zip"],["uvx","application/vnd.dece.unspecified"],["uvz","application/vnd.dece.zip"],["vbox","application/x-virtualbox-vbox"],["vbox-extpack","application/x-virtualbox-vbox-extpack"],["vcard","text/vcard"],["vcd","application/x-cdlink"],["vcf","text/x-vcard"],["vcg","application/vnd.groove-vcard"],["vcs","text/x-vcalendar"],["vcx","application/vnd.vcx"],["vdi","application/x-virtualbox-vdi"],["vds","model/vnd.sap.vds"],["vhd","application/x-virtualbox-vhd"],["vis","application/vnd.visionary"],["viv","video/vnd.vivo"],["vlc","application/videolan"],["vmdk","application/x-virtualbox-vmdk"],["vob","video/x-ms-vob"],["vor","application/vnd.stardivision.writer"],["vox","application/x-authorware-bin"],["vrml","model/vrml"],["vsd","application/vnd.visio"],["vsf","application/vnd.vsf"],["vss","application/vnd.visio"],["vst","application/vnd.visio"],["vsw","application/vnd.visio"],["vtf","image/vnd.valve.source.texture"],["vtt","text/vtt"],["vtu","model/vnd.vtu"],["vxml","application/voicexml+xml"],["w3d","application/x-director"],["wad","application/x-doom"],["wadl","application/vnd.sun.wadl+xml"],["war","application/java-archive"],["wasm","application/wasm"],["wav","audio/x-wav"],["wax","audio/x-ms-wax"],["wbmp","image/vnd.wap.wbmp"],["wbs","application/vnd.criticaltools.wbs+xml"],["wbxml","application/wbxml"],["wcm","application/vnd.ms-works"],["wdb","application/vnd.ms-works"],["wdp","image/vnd.ms-photo"],["weba","audio/webm"],["webapp","application/x-web-app-manifest+json"],["webm","video/webm"],["webmanifest","application/manifest+json"],["webp","image/webp"],["wg","application/vnd.pmi.widget"],["wgt","application/widget"],["wks","application/vnd.ms-works"],["wm","video/x-ms-wm"],["wma","audio/x-ms-wma"],["wmd","application/x-ms-wmd"],["wmf","image/wmf"],["wml","text/vnd.wap.wml"],["wmlc","application/wmlc"],["wmls","text/vnd.wap.wmlscript"],["wmlsc","application/vnd.wap.wmlscriptc"],["wmv","video/x-ms-wmv"],["wmx","video/x-ms-wmx"],["wmz","application/x-msmetafile"],["woff","font/woff"],["woff2","font/woff2"],["word","application/msword"],["wpd","application/vnd.wordperfect"],["wpl","application/vnd.ms-wpl"],["wps","application/vnd.ms-works"],["wqd","application/vnd.wqd"],["wri","application/x-mswrite"],["wrl","model/vrml"],["wsc","message/vnd.wfa.wsc"],["wsdl","application/wsdl+xml"],["wspolicy","application/wspolicy+xml"],["wtb","application/vnd.webturbo"],["wvx","video/x-ms-wvx"],["x3d","model/x3d+xml"],["x3db","model/x3d+fastinfoset"],["x3dbz","model/x3d+binary"],["x3dv","model/x3d-vrml"],["x3dvz","model/x3d+vrml"],["x3dz","model/x3d+xml"],["x32","application/x-authorware-bin"],["x_b","model/vnd.parasolid.transmit.binary"],["x_t","model/vnd.parasolid.transmit.text"],["xaml","application/xaml+xml"],["xap","application/x-silverlight-app"],["xar","application/vnd.xara"],["xav","application/xcap-att+xml"],["xbap","application/x-ms-xbap"],["xbd","application/vnd.fujixerox.docuworks.binder"],["xbm","image/x-xbitmap"],["xca","application/xcap-caps+xml"],["xcs","application/calendar+xml"],["xdf","application/xcap-diff+xml"],["xdm","application/vnd.syncml.dm+xml"],["xdp","application/vnd.adobe.xdp+xml"],["xdssc","application/dssc+xml"],["xdw","application/vnd.fujixerox.docuworks"],["xel","application/xcap-el+xml"],["xenc","application/xenc+xml"],["xer","application/patch-ops-error+xml"],["xfdf","application/vnd.adobe.xfdf"],["xfdl","application/vnd.xfdl"],["xht","application/xhtml+xml"],["xhtml","application/xhtml+xml"],["xhvml","application/xv+xml"],["xif","image/vnd.xiff"],["xl","application/excel"],["xla","application/vnd.ms-excel"],["xlam","application/vnd.ms-excel.addin.macroEnabled.12"],["xlc","application/vnd.ms-excel"],["xlf","application/xliff+xml"],["xlm","application/vnd.ms-excel"],["xls","application/vnd.ms-excel"],["xlsb","application/vnd.ms-excel.sheet.binary.macroEnabled.12"],["xlsm","application/vnd.ms-excel.sheet.macroEnabled.12"],["xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xlt","application/vnd.ms-excel"],["xltm","application/vnd.ms-excel.template.macroEnabled.12"],["xltx","application/vnd.openxmlformats-officedocument.spreadsheetml.template"],["xlw","application/vnd.ms-excel"],["xm","audio/xm"],["xml","application/xml"],["xns","application/xcap-ns+xml"],["xo","application/vnd.olpc-sugar"],["xop","application/xop+xml"],["xpi","application/x-xpinstall"],["xpl","application/xproc+xml"],["xpm","image/x-xpixmap"],["xpr","application/vnd.is-xpr"],["xps","application/vnd.ms-xpsdocument"],["xpw","application/vnd.intercon.formnet"],["xpx","application/vnd.intercon.formnet"],["xsd","application/xml"],["xsl","application/xml"],["xslt","application/xslt+xml"],["xsm","application/vnd.syncml+xml"],["xspf","application/xspf+xml"],["xul","application/vnd.mozilla.xul+xml"],["xvm","application/xv+xml"],["xvml","application/xv+xml"],["xwd","image/x-xwindowdump"],["xyz","chemical/x-xyz"],["xz","application/x-xz"],["yaml","text/yaml"],["yang","application/yang"],["yin","application/yin+xml"],["yml","text/yaml"],["ymp","text/x-suse-ymp"],["z","application/x-compress"],["z1","application/x-zmachine"],["z2","application/x-zmachine"],["z3","application/x-zmachine"],["z4","application/x-zmachine"],["z5","application/x-zmachine"],["z6","application/x-zmachine"],["z7","application/x-zmachine"],["z8","application/x-zmachine"],["zaz","application/vnd.zzazz.deck+xml"],["zip","application/zip"],["zir","application/vnd.zul"],["zirz","application/vnd.zul"],["zmm","application/vnd.handheld-entertainment+xml"],["zsh","text/x-scriptzsh"]]);function Qi(e,t,n){const r=bF(e),{webkitRelativePath:a}=e,i=typeof t=="string"?t:typeof a=="string"&&a.length>0?a:`./${e.name}`;return typeof r.path!="string"&&Iv(r,"path",i),Iv(r,"relativePath",i),r}function bF(e){const{name:t}=e;if(t&&t.lastIndexOf(".")!==-1&&!e.type){const r=t.split(".").pop().toLowerCase(),a=gF.get(r);a&&Object.defineProperty(e,"type",{value:a,writable:!1,configurable:!1,enumerable:!0})}return e}function Iv(e,t,n){Object.defineProperty(e,t,{value:n,writable:!1,configurable:!1,enumerable:!0})}const xF=[".DS_Store","Thumbs.db"];function yF(e){return ui(this,void 0,void 0,function*(){return ac(e)&&vF(e.dataTransfer)?EF(e.dataTransfer,e.type):kF(e)?wF(e):Array.isArray(e)&&e.every(t=>"getFile"in t&&typeof t.getFile=="function")?SF(e):[]})}function vF(e){return ac(e)}function kF(e){return ac(e)&&ac(e.target)}function ac(e){return typeof e=="object"&&e!==null}function wF(e){return Jg(e.target.files).map(t=>Qi(t))}function SF(e){return ui(this,void 0,void 0,function*(){return(yield Promise.all(e.map(n=>n.getFile()))).map(n=>Qi(n))})}function EF(e,t){return ui(this,void 0,void 0,function*(){if(e.items){const n=Jg(e.items).filter(a=>a.kind==="file");if(t!=="drop")return n;const r=yield Promise.all(n.map(CF));return Rv(lA(r))}return Rv(Jg(e.files).map(n=>Qi(n)))})}function Rv(e){return e.filter(t=>xF.indexOf(t.name)===-1)}function Jg(e){if(e===null)return[];const t=[];for(let n=0;n[...t,...Array.isArray(n)?lA(n):[n]],[])}function _v(e,t){return ui(this,void 0,void 0,function*(){var n;if(globalThis.isSecureContext&&typeof e.getAsFileSystemHandle=="function"){const i=yield e.getAsFileSystemHandle();if(i===null)throw new Error(`${e} is not a File`);if(i!==void 0){const s=yield i.getFile();return s.handle=i,Qi(s)}}const r=e.getAsFile();if(!r)throw new Error(`${e} is not a File`);return Qi(r,(n=t?.fullPath)!==null&&n!==void 0?n:void 0)})}function NF(e){return ui(this,void 0,void 0,function*(){return e.isDirectory?cA(e):TF(e)})}function cA(e){const t=e.createReader();return new Promise((n,r)=>{const a=[];function i(){t.readEntries(s=>ui(this,void 0,void 0,function*(){if(s.length){const l=Promise.all(s.map(NF));a.push(l),i()}else try{const l=yield Promise.all(a);n(l)}catch(l){r(l)}}),s=>{r(s)})}i()})}function TF(e){return ui(this,void 0,void 0,function*(){return new Promise((t,n)=>{e.file(r=>{const a=Qi(r,e.fullPath);t(a)},r=>{n(r)})})})}var nl={},jv;function AF(){return jv||(jv=1,nl.__esModule=!0,nl.default=function(e,t){if(e&&t){var n=Array.isArray(t)?t:t.split(",");if(n.length===0)return!0;var r=e.name||"",a=(e.type||"").toLowerCase(),i=a.replace(/\/.*$/,"");return n.some(function(s){var l=s.trim().toLowerCase();return l.charAt(0)==="."?r.toLowerCase().endsWith(l):l.endsWith("/*")?i===l.replace(/\/.*$/,""):a===l})}return!0}),nl}var IF=AF();const zu=os(IF);function Ov(e){return jF(e)||_F(e)||dA(e)||RF()}function RF(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _F(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function jF(e){if(Array.isArray(e))return Qg(e)}function Dv(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Mv(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&arguments[0]!==void 0?arguments[0]:"",n=t.split(","),r=n.length>1?"one of ".concat(n.join(", ")):n[0];return{code:PF,message:"File type must be ".concat(r)}},Lv=function(t){return{code:FF,message:"File is larger than ".concat(t," ").concat(t===1?"byte":"bytes")}},Pv=function(t){return{code:BF,message:"File is smaller than ".concat(t," ").concat(t===1?"byte":"bytes")}},zF={code:$F,message:"Too many files"};function qF(e){return e.type===""&&typeof e.getAsFile=="function"}function pA(e,t){var n=e.type==="application/x-moz-file"||LF(e,t)||qF(e);return[n,n?null:UF(t)]}function mA(e,t,n){if(Ga(e.size))if(Ga(t)&&Ga(n)){if(e.size>n)return[!1,Lv(n)];if(e.sizen)return[!1,Lv(n)]}return[!0,null]}function Ga(e){return e!=null}function HF(e){var t=e.files,n=e.accept,r=e.minSize,a=e.maxSize,i=e.multiple,s=e.maxFiles,l=e.validator;return!i&&t.length>1||i&&s>=1&&t.length>s?!1:t.every(function(c){var u=pA(c,n),d=fo(u,1),p=d[0],m=mA(c,r,a),f=fo(m,1),g=f[0],b=l?l(c):null;return p&&g&&!b})}function ic(e){return typeof e.isPropagationStopped=="function"?e.isPropagationStopped():typeof e.cancelBubble<"u"?e.cancelBubble:!1}function Ls(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,function(t){return t==="Files"||t==="application/x-moz-file"}):!!e.target&&!!e.target.files}function Fv(e){e.preventDefault()}function GF(e){return e.indexOf("MSIE")!==-1||e.indexOf("Trident/")!==-1}function VF(e){return e.indexOf("Edge/")!==-1}function WF(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.navigator.userAgent;return GF(e)||VF(e)}function Rr(){for(var e=arguments.length,t=new Array(e),n=0;n1?a-1:0),s=1;se.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function cB(e,t){if(e==null)return{};var n={},r=Object.keys(e),a,i;for(i=0;i=0)&&(n[a]=e[a]);return n}var Lx=h.forwardRef(function(e,t){var n=e.children,r=sc(e,QF),a=xA(r),i=a.open,s=sc(a,eB);return h.useImperativeHandle(t,function(){return{open:i}},[i]),$n.createElement(h.Fragment,null,n(Ft(Ft({},s),{},{open:i})))});Lx.displayName="Dropzone";var bA={disabled:!1,getFilesFromEvent:yF,maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!1,autoFocus:!1};Lx.defaultProps=bA;Lx.propTypes={children:jt.func,accept:jt.objectOf(jt.arrayOf(jt.string)),multiple:jt.bool,preventDropOnDocument:jt.bool,noClick:jt.bool,noKeyboard:jt.bool,noDrag:jt.bool,noDragEventsBubbling:jt.bool,minSize:jt.number,maxSize:jt.number,maxFiles:jt.number,disabled:jt.bool,getFilesFromEvent:jt.func,onFileDialogCancel:jt.func,onFileDialogOpen:jt.func,useFsAccessApi:jt.bool,autoFocus:jt.bool,onDragEnter:jt.func,onDragLeave:jt.func,onDragOver:jt.func,onDrop:jt.func,onDropAccepted:jt.func,onDropRejected:jt.func,onError:jt.func,validator:jt.func};var nb={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,isDragGlobal:!1,acceptedFiles:[],fileRejections:[]};function xA(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=Ft(Ft({},bA),e),n=t.accept,r=t.disabled,a=t.getFilesFromEvent,i=t.maxSize,s=t.minSize,l=t.multiple,c=t.maxFiles,u=t.onDragEnter,d=t.onDragLeave,p=t.onDragOver,m=t.onDrop,f=t.onDropAccepted,g=t.onDropRejected,b=t.onFileDialogCancel,x=t.onFileDialogOpen,k=t.useFsAccessApi,y=t.autoFocus,v=t.preventDropOnDocument,E=t.noClick,N=t.noKeyboard,w=t.noDrag,T=t.noDragEventsBubbling,j=t.onError,_=t.validator,C=h.useMemo(function(){return XF(n)},[n]),O=h.useMemo(function(){return YF(n)},[n]),I=h.useMemo(function(){return typeof x=="function"?x:Uv},[x]),z=h.useMemo(function(){return typeof b=="function"?b:Uv},[b]),M=h.useRef(null),P=h.useRef(null),B=h.useReducer(uB,nb),$=qu(B,2),U=$[0],q=$[1],A=U.isFocused,K=U.isFileDialogActive,V=h.useRef(typeof window<"u"&&window.isSecureContext&&k&&KF()),L=function(){!V.current&&K&&setTimeout(function(){if(P.current){var G=P.current.files;G.length||(q({type:"closeDialog"}),z())}},300)};h.useEffect(function(){return window.addEventListener("focus",L,!1),function(){window.removeEventListener("focus",L,!1)}},[P,K,z,V]);var le=h.useRef([]),re=h.useRef([]),ne=function(G){M.current&&M.current.contains(G.target)||(G.preventDefault(),le.current=[])};h.useEffect(function(){return v&&(document.addEventListener("dragover",Fv,!1),document.addEventListener("drop",ne,!1)),function(){v&&(document.removeEventListener("dragover",Fv),document.removeEventListener("drop",ne))}},[M,v]),h.useEffect(function(){var H=function(Ae){re.current=[].concat(Bv(re.current),[Ae.target]),Ls(Ae)&&q({isDragGlobal:!0,type:"setDragGlobal"})},G=function(Ae){re.current=re.current.filter(function(ze){return ze!==Ae.target&&ze!==null}),!(re.current.length>0)&&q({isDragGlobal:!1,type:"setDragGlobal"})},Z=function(){re.current=[],q({isDragGlobal:!1,type:"setDragGlobal"})},ue=function(){re.current=[],q({isDragGlobal:!1,type:"setDragGlobal"})};return document.addEventListener("dragenter",H,!1),document.addEventListener("dragleave",G,!1),document.addEventListener("dragend",Z,!1),document.addEventListener("drop",ue,!1),function(){document.removeEventListener("dragenter",H),document.removeEventListener("dragleave",G),document.removeEventListener("dragend",Z),document.removeEventListener("drop",ue)}},[M]),h.useEffect(function(){return!r&&y&&M.current&&M.current.focus(),function(){}},[M,y,r]);var de=h.useCallback(function(H){j?j(H):console.error(H)},[j]),Se=h.useCallback(function(H){H.preventDefault(),H.persist(),X(H),le.current=[].concat(Bv(le.current),[H.target]),Ls(H)&&Promise.resolve(a(H)).then(function(G){if(!(ic(H)&&!T)){var Z=G.length,ue=Z>0&&HF({files:G,accept:C,minSize:s,maxSize:i,multiple:l,maxFiles:c,validator:_}),be=Z>0&&!ue;q({isDragAccept:ue,isDragReject:be,isDragActive:!0,type:"setDraggedFiles"}),u&&u(H)}}).catch(function(G){return de(G)})},[a,u,de,T,C,s,i,l,c,_]),he=h.useCallback(function(H){H.preventDefault(),H.persist(),X(H);var G=Ls(H);if(G&&H.dataTransfer)try{H.dataTransfer.dropEffect="copy"}catch{}return G&&p&&p(H),!1},[p,T]),tt=h.useCallback(function(H){H.preventDefault(),H.persist(),X(H);var G=le.current.filter(function(ue){return M.current&&M.current.contains(ue)}),Z=G.indexOf(H.target);Z!==-1&&G.splice(Z,1),le.current=G,!(G.length>0)&&(q({type:"setDraggedFiles",isDragActive:!1,isDragAccept:!1,isDragReject:!1}),Ls(H)&&d&&d(H))},[M,d,T]),Me=h.useCallback(function(H,G){var Z=[],ue=[];H.forEach(function(be){var Ae=pA(be,C),ze=qu(Ae,2),Le=ze[0],ke=ze[1],We=mA(be,s,i),Xe=qu(We,2),st=Xe[0],se=Xe[1],$e=_?_(be):null;if(Le&&st&&!$e)Z.push(be);else{var Qe=[ke,se];$e&&(Qe=Qe.concat($e)),ue.push({file:be,errors:Qe.filter(function(ot){return ot})})}}),(!l&&Z.length>1||l&&c>=1&&Z.length>c)&&(Z.forEach(function(be){ue.push({file:be,errors:[zF]})}),Z.splice(0)),q({acceptedFiles:Z,fileRejections:ue,type:"setFiles"}),m&&m(Z,ue,G),ue.length>0&&g&&g(ue,G),Z.length>0&&f&&f(Z,G)},[q,l,C,s,i,c,m,f,g,_]),Fe=h.useCallback(function(H){H.preventDefault(),H.persist(),X(H),le.current=[],Ls(H)&&Promise.resolve(a(H)).then(function(G){ic(H)&&!T||Me(G,H)}).catch(function(G){return de(G)}),q({type:"reset"})},[a,Me,de,T]),ge=h.useCallback(function(){if(V.current){q({type:"openDialog"}),I();var H={multiple:l,types:O};window.showOpenFilePicker(H).then(function(G){return a(G)}).then(function(G){Me(G,null),q({type:"closeDialog"})}).catch(function(G){ZF(G)?(z(G),q({type:"closeDialog"})):JF(G)?(V.current=!1,P.current?(P.current.value=null,P.current.click()):de(new Error("Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no was provided."))):de(G)});return}P.current&&(q({type:"openDialog"}),I(),P.current.value=null,P.current.click())},[q,I,z,k,Me,de,O,l]),me=h.useCallback(function(H){!M.current||!M.current.isEqualNode(H.target)||(H.key===" "||H.key==="Enter"||H.keyCode===32||H.keyCode===13)&&(H.preventDefault(),ge())},[M,ge]),xe=h.useCallback(function(){q({type:"focus"})},[]),ce=h.useCallback(function(){q({type:"blur"})},[]),Ne=h.useCallback(function(){E||(WF()?setTimeout(ge,0):ge())},[E,ge]),Te=function(G){return r?null:G},Ge=function(G){return N?null:Te(G)},ee=function(G){return w?null:Te(G)},X=function(G){T&&G.stopPropagation()},ae=h.useMemo(function(){return function(){var H=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},G=H.refKey,Z=G===void 0?"ref":G,ue=H.role,be=H.onKeyDown,Ae=H.onFocus,ze=H.onBlur,Le=H.onClick,ke=H.onDragEnter,We=H.onDragOver,Xe=H.onDragLeave,st=H.onDrop,se=sc(H,tB);return Ft(Ft(tb({onKeyDown:Ge(Rr(be,me)),onFocus:Ge(Rr(Ae,xe)),onBlur:Ge(Rr(ze,ce)),onClick:Te(Rr(Le,Ne)),onDragEnter:ee(Rr(ke,Se)),onDragOver:ee(Rr(We,he)),onDragLeave:ee(Rr(Xe,tt)),onDrop:ee(Rr(st,Fe)),role:typeof ue=="string"&&ue!==""?ue:"presentation"},Z,M),!r&&!N?{tabIndex:0}:{}),se)}},[M,me,xe,ce,Ne,Se,he,tt,Fe,N,w,r]),te=h.useCallback(function(H){H.stopPropagation()},[]),J=h.useMemo(function(){return function(){var H=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},G=H.refKey,Z=G===void 0?"ref":G,ue=H.onChange,be=H.onClick,Ae=sc(H,nB),ze=tb({accept:C,multiple:l,type:"file",style:{border:0,clip:"rect(0, 0, 0, 0)",clipPath:"inset(50%)",height:"1px",margin:"0 -1px -1px 0",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap"},onChange:Te(Rr(ue,Fe)),onClick:Te(Rr(be,te)),tabIndex:-1},Z,P);return Ft(Ft({},ze),Ae)}},[P,n,l,Fe,r]);return Ft(Ft({},U),{},{isFocused:A&&!r,getRootProps:ae,getInputProps:J,rootRef:M,inputRef:P,open:Te(ge)})}function uB(e,t){switch(t.type){case"focus":return Ft(Ft({},e),{},{isFocused:!0});case"blur":return Ft(Ft({},e),{},{isFocused:!1});case"openDialog":return Ft(Ft({},nb),{},{isFileDialogActive:!0});case"closeDialog":return Ft(Ft({},e),{},{isFileDialogActive:!1});case"setDraggedFiles":return Ft(Ft({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case"setFiles":return Ft(Ft({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections,isDragReject:!1});case"setDragGlobal":return Ft(Ft({},e),{},{isDragGlobal:t.isDragGlobal});case"reset":return Ft({},nb);default:return e}}function Uv(){}const dB=[{id:"none",name:"Standard",description:"Regular response",icon:null,prefix:"",color:"text-gray-600"},{id:"think",name:"Think",description:"Basic extended thinking",icon:bT,prefix:"think",color:"text-blue-600"},{id:"think-hard",name:"Think Hard",description:"More thorough evaluation",icon:ux,prefix:"think hard",color:"text-purple-600"},{id:"think-harder",name:"Think Harder",description:"Deep analysis with alternatives",icon:So,prefix:"think harder",color:"text-indigo-600"},{id:"ultrathink",name:"Ultrathink",description:"Maximum thinking budget",icon:Sj,prefix:"ultrathink",color:"text-red-600"}];function rb(e,t){if(!e)return null;if(e!=="Bash"&&e!=="bash")return e;const n=IM(t),r=typeof n?.command=="string"?n.command.trim():"";if(!r)return"bash";const a=r.split(/\s+/);return a.length===0?e:a[0]==="git"&&a[1]?`bash:${a[0]} ${a[1]}:*`:`bash:${a[0]}:*`}function Hu(e){if(e==null)return"";if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}const pB=new Set(["permission_denied","permission_required","permission_cancelled"]);function yA(e){if(!e?.toolResult?.isError)return!1;const t=typeof e.toolResult.content=="string"?e.toolResult.content:"";return/plan mode denies side-effecting tool\b/i.test(t)}function mB(e,t){if(!e?.toolResult?.isError||yA(e))return null;const n=e.toolResult.errorCode;if(n&&!pB.has(n))return null;const r=e?.toolName,a=rb(r,e.toolInput);if(!a)return null;const s=Br().allowedTools.includes(a);return{toolName:r||"UnknownTool",entry:a,isAllowed:s}}function fB(e){if(!e)return{success:!1};const t=Br(),n=t.allowedTools.includes(e),r=n?t.allowedTools:[...t.allowedTools,e],a=t.disallowedTools.filter(s=>s!==e),i={...t,allowedTools:r,disallowedTools:a,lastUpdated:new Date().toISOString()};return Xn.setItem(Ji,JSON.stringify(i)),J3({allowedTools:r,disallowedTools:a}).catch(s=>{console.error("Failed to persist granted permission to backend:",s)}),{success:!0,alreadyAllowed:n,updatedSettings:i}}const Gu=e=>!!(e&&e.startsWith("new-session-"));function vA(){return`new-session-${Date.now()}`}function hB(e,t){const n=e?.summary||e?.name||e?.title;if(typeof n=="string"&&n.trim()){const a=n.replace(/\s+/g," ").trim();return a.length>80?`${a.slice(0,77)}...`:a}const r=t.replace(/\s+/g," ").trim();return r?r.length>80?`${r.slice(0,77)}...`:r:null}function gB(e){return e.fullPath||e.path||""}function bB({sendMessage:e,selectedProject:t,command:n,sessionId:r,temporarySessionId:a,permissionMode:i="default",model:s,sessionSummary:l,toolsSettings:c=Br(),images:u,attachments:d,alwaysOnPlanId:p,alwaysOnExecutionToken:m,workspaceCwd:f}){const g=r||a||vA(),b=gB(t);return e({type:"pilotdeck-command",command:n,options:{...r?{sessionId:r,resume:!0}:{},projectPath:b,cwd:b,toolsSettings:c,permissionMode:i,...s?{model:s}:{},sessionSummary:l,...p?{alwaysOnPlanId:p}:{},...m?{alwaysOnExecutionToken:m}:{},...Array.isArray(u)&&u.length>0?{images:u}:{},...Array.isArray(d)&&d.length>0?{attachments:d}:{},...f?{workspaceCwd:f}:{}}}),g}const kA=(e,t="")=>{let n=[];return e.forEach(r=>{const a=t?`${t}/${r.name}`:r.name;if(r.type==="directory"&&r.children){n=n.concat(kA(r.children,a));return}r.type==="file"&&n.push({name:r.name,path:a,relativePath:r.path})}),n};function xB({selectedProject:e,input:t,setInput:n,textareaRef:r}){const[a,i]=h.useState([]),[s,l]=h.useState([]),[c,u]=h.useState([]),[d,p]=h.useState(!1),[m,f]=h.useState(-1),[g,b]=h.useState(0),[x,k]=h.useState(-1),y=h.useRef(null),v=h.useCallback(async()=>{const I=e?.name;if(!I){i([]),u([]);return}y.current?.abort();const z=new AbortController;y.current=z;try{const M=await dt.getFiles(I,{signal:z.signal});if(!M.ok)return;const P=await M.json();if(z.signal.aborted)return;i(kA(P))}catch(M){if(M?.name==="AbortError")return;console.error("Error fetching files:",M)}finally{y.current===z&&(y.current=null)}},[e?.name]);h.useEffect(()=>(i([]),u([]),v(),()=>{y.current?.abort()}),[v]);const E=h.useRef(!1);h.useEffect(()=>{const I=E.current;E.current=d,!I&&d&&v()},[d,v]),h.useEffect(()=>{const I=t.slice(0,g),z=I.lastIndexOf("@");if(z===-1){p(!1),k(-1);return}const M=I.slice(z+1);if(M.includes(" ")){p(!1),k(-1);return}k(z),p(!0),f(-1);const P=a.filter(B=>B.name.toLowerCase().includes(M.toLowerCase())||B.path.toLowerCase().includes(M.toLowerCase())).slice(0,10);u(P)},[t,g,a]);const N=h.useMemo(()=>!t||s.length===0?[]:s.filter(I=>t.includes(I)),[s,t]),w=h.useMemo(()=>N.length===0?[]:Array.from(new Set(N)).sort((z,M)=>M.length-z.length),[N]),T=h.useMemo(()=>{if(w.length===0)return null;const I=w.map(oA).join("|");return new RegExp(`(${I})`,"g")},[w]),j=h.useMemo(()=>new Set(w),[w]),_=h.useCallback(I=>I?T?I.split(T).map((M,P)=>j.has(M)?o.jsx("span",{className:"-ml-0.5 rounded-md bg-blue-200/70 box-decoration-clone px-0.5 text-transparent dark:bg-blue-300/40",children:M},`mention-${P}`):o.jsx("span",{children:M},`text-${P}`)):I:"",[T,j]),C=h.useCallback(I=>{const z=t.slice(0,x),M=t.slice(x),P=M.indexOf(" "),B=P!==-1?M.slice(P):"",$=`${z}${I.path} ${B}`,U=z.length+I.path.length+1;r.current&&!r.current.matches(":focus")&&r.current.focus(),n($),b(U),l(q=>q.includes(I.path)?q:[...q,I.path]),p(!1),k(-1),r.current&&requestAnimationFrame(()=>{r.current&&(r.current.setSelectionRange(U,U),r.current.matches(":focus")||r.current.focus())})},[t,x,r,n]),O=h.useCallback(I=>!d||c.length===0?!1:I.key==="ArrowDown"?(I.preventDefault(),f(z=>zz>0?z-1:c.length-1),!0):I.key==="Tab"||I.key==="Enter"?En(I)?!1:(I.preventDefault(),m>=0?C(c[m]):c.length>0&&C(c[0]),!0):I.key==="Escape"?(I.preventDefault(),p(!1),!0):!1,[d,c,m,C]);return{showFileDropdown:d,filteredFiles:c,selectedFileIndex:m,renderInputWithMentions:_,selectFile:C,setCursorPosition:b,handleFileMentionsKeyDown:O}}function Aa(e){return Array.isArray?Array.isArray(e):SA(e)==="[object Array]"}function yB(e){if(typeof e=="string")return e;if(typeof e=="bigint")return e.toString();const t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function ab(e){return e==null?"":yB(e)}function In(e){return typeof e=="string"}function jl(e){return typeof e=="number"}function vB(e){return e===!0||e===!1||kB(e)&&SA(e)=="[object Boolean]"}function wA(e){return typeof e=="object"}function kB(e){return wA(e)&&e!==null}function Zn(e){return e!=null}function rl(e){return!e.trim().length}function SA(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const wB="Incorrect 'index' type",ib="Invalid doc index: must be a non-negative integer within the bounds of the docs array",SB=e=>`Invalid value for key ${e}`,EB=e=>`Pattern length exceeds max of ${e}.`,CB=e=>`Missing ${e} property in key`,NB=e=>`Property 'weight' in key '${e}' must be a positive integer`,TB="Fuse.match does not support useTokenSearch: token search requires corpus-level statistics (df, fieldCount) that a one-off string comparison does not have. Use new Fuse(...).search(...) instead.",zv=Object.prototype.hasOwnProperty;class AB{constructor(t){this._keys=[],this._keyMap={};let n=0;t.forEach(r=>{const a=EA(r);this._keys.push(a),this._keyMap[a.id]=a,n+=a.weight}),this._keys.forEach(r=>{r.weight/=n})}get(t){return this._keyMap[t]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function EA(e){let t=null,n=null,r=null,a=1,i=null;if(In(e)||Aa(e))r=e,t=qv(e),n=Ol(e);else{if(!zv.call(e,"name"))throw new Error(CB("name"));const s=e.name;if(r=s,zv.call(e,"weight")&&e.weight!==void 0&&(a=e.weight,a<=0))throw new Error(NB(Ol(s)));t=qv(s),n=Ol(s),i=e.getFn??null}return{path:t,id:n,weight:a,src:r,getFn:i}}function qv(e){return Aa(e)?e:e.split(".")}function Ol(e){return Aa(e)?e.join("."):e}function IB(e,t){const n=[];let r=!1;const a=(i,s,l,c)=>{if(Zn(i))if(!s[l])n.push(c!==void 0?{v:i,i:c}:i);else{const u=s[l],d=i[u];if(!Zn(d))return;if(l===s.length-1&&(In(d)||jl(d)||vB(d)||typeof d=="bigint"))n.push(c!==void 0?{v:ab(d),i:c}:ab(d));else if(Aa(d)){r=!0;for(let p=0,m=d.length;pe.score===t.score?e.idx{this._keysMap[n.id]=r})}create(){if(this.isCreated||!this.docs.length)return;this.isCreated=!0;const t=this.docs.length;this.records=new Array(t);let n=0;if(In(this.docs[0]))for(let r=0;rt&&(this.records[n].i-=1)}removeAll(t){const n=new Set;for(const a of t)Number.isInteger(a)&&a>=0&&n.add(a);if(n.size===0)return;this.records=this.records.filter(a=>!n.has(a.i));const r=Array.from(n).sort((a,i)=>a-i);for(const a of this.records){let i=0,s=r.length;for(;i>>1;r[l]n),records:this.records}}}function CA(e,t,{getFn:n=ut.getFn,fieldNormWeight:r=ut.fieldNormWeight}={}){const a=new Px({getFn:n,fieldNormWeight:r});return a.setKeys(e.map(EA)),a.setSources(t),a.create(),a}function MB(e,{getFn:t=ut.getFn,fieldNormWeight:n=ut.fieldNormWeight}={}){const{keys:r,records:a}=e,i=new Px({getFn:t,fieldNormWeight:n});return i.setKeys(r),i.setIndexRecords(a),i}function LB(e=[],t=ut.minMatchCharLength){const n=[];let r=-1,a=-1,i=0;for(let s=e.length;i=t&&n.push([r,a]),r=-1)}return e[i-1]&&i-r>=t&&n.push([r,i-1]),n}const Va=32;function PB(e,t,n,{location:r=ut.location,distance:a=ut.distance,threshold:i=ut.threshold,findAllMatches:s=ut.findAllMatches,minMatchCharLength:l=ut.minMatchCharLength,includeMatches:c=ut.includeMatches,ignoreLocation:u=ut.ignoreLocation}={}){if(t.length>Va)throw new Error(EB(Va));const d=t.length,p=e.length,m=Math.max(0,Math.min(r,p));let f=i,g=m;const b=(_,C)=>{const O=_/d;if(u)return O;const I=Math.abs(m-C);return a?O+I/a:I?1:O},x=l>1||c,k=x?Array(p):[];let y;for(;(y=e.indexOf(t,g))>-1;){const _=b(0,y);if(f=Math.min(_,f),g=y+d,x){let C=0;for(;C=I;B-=1){const $=B-1,U=n[e[$]];if(M[B]=(M[B+1]<<1|1)&U,_&&(M[B]|=(v[B+1]|v[B])<<1|1|v[B+1]),M[B]&T&&(E=b(_,$),E<=f)){if(f=E,g=$,N=_,g<=m)break;I=Math.max(1,2*m-g)}}if(b(_+1,m)>f)break;v=M}if(x&&g>=0){const _=Math.min(p-1,g+d-1+N);for(let C=g;C<=_;C+=1)n[e[C]]&&(k[C]=1)}const j={isMatch:g>=0,score:Math.max(.001,E)};if(x){const _=LB(k,l);_.length?c&&(j.indices=_):j.isMatch=!1}return j}function FB(e){const t={};for(let n=0,r=e.length;nn[0]-r[0]||n[1]-r[1]);const t=[e[0]];for(let n=1,r=e.length;ne.normalize("NFD").replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g,"").replace(BB,t=>NA[t]):e=>e;class Bx{constructor(t,{location:n=ut.location,threshold:r=ut.threshold,distance:a=ut.distance,includeMatches:i=ut.includeMatches,findAllMatches:s=ut.findAllMatches,minMatchCharLength:l=ut.minMatchCharLength,isCaseSensitive:c=ut.isCaseSensitive,ignoreDiacritics:u=ut.ignoreDiacritics,ignoreLocation:d=ut.ignoreLocation}={}){if(this.options={location:n,threshold:r,distance:a,includeMatches:i,findAllMatches:s,minMatchCharLength:l,isCaseSensitive:c,ignoreDiacritics:u,ignoreLocation:d},t=c?t:t.toLowerCase(),t=u?ho(t):t,this.pattern=t,this.chunks=[],!this.pattern.length)return;const p=(f,g)=>{this.chunks.push({pattern:f,alphabet:FB(f),startIndex:g})},m=this.pattern.length;if(m>Va){let f=0;const g=m%Va,b=m-g;for(;f{const{isMatch:y,score:v,indices:E}=PB(t,b,x,{location:i+k,distance:s,threshold:l,findAllMatches:c,minMatchCharLength:u,includeMatches:a,ignoreLocation:d});y&&(f=!0),m+=v,y&&E&&p.push(...E)});const g={isMatch:f,score:f?m/this.chunks.length:1};return f&&a&&(g.indices=Fx(p)),g}}const $B=new Set(["fuzzy","include"]);function UB(e){return e.startsWith("inverse")}const sb=[{type:"exact",multiRegex:/^="(.*)"$/,singleRegex:/^=(.*)$/,create:e=>({type:"exact",search(t){const n=t===e;return{isMatch:n,score:n?0:1,indices:[0,e.length-1]}}})},{type:"include",multiRegex:/^'"(.*)"$/,singleRegex:/^'(.*)$/,create:e=>({type:"include",search(t){let n=0,r;const a=[],i=e.length;for(;(r=t.indexOf(e,n))>-1;)n=r+i,a.push([r,n-1]);const s=!!a.length;return{isMatch:s,score:s?0:1,indices:a}}})},{type:"prefix-exact",multiRegex:/^\^"(.*)"$/,singleRegex:/^\^(.*)$/,create:e=>({type:"prefix-exact",search(t){const n=t.startsWith(e);return{isMatch:n,score:n?0:1,indices:[0,e.length-1]}}})},{type:"inverse-prefix-exact",multiRegex:/^!\^"(.*)"$/,singleRegex:/^!\^(.*)$/,create:e=>({type:"inverse-prefix-exact",search(t){const n=!t.startsWith(e);return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}})},{type:"inverse-suffix-exact",multiRegex:/^!"(.*)"\$$/,singleRegex:/^!(.*)\$$/,create:e=>({type:"inverse-suffix-exact",search(t){const n=!t.endsWith(e);return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}})},{type:"suffix-exact",multiRegex:/^"(.*)"\$$/,singleRegex:/^(.*)\$$/,create:e=>({type:"suffix-exact",search(t){const n=t.endsWith(e);return{isMatch:n,score:n?0:1,indices:[t.length-e.length,t.length-1]}}})},{type:"inverse-exact",multiRegex:/^!"(.*)"$/,singleRegex:/^!(.*)$/,create:e=>({type:"inverse-exact",search(t){const n=t.indexOf(e)===-1;return{isMatch:n,score:n?0:1,indices:[0,t.length-1]}}})},{type:"fuzzy",multiRegex:/^"(.*)"$/,singleRegex:/^(.*)$/,create:(e,t={})=>{const n=new Bx(e,{location:t.location??ut.location,threshold:t.threshold??ut.threshold,distance:t.distance??ut.distance,includeMatches:t.includeMatches??ut.includeMatches,findAllMatches:t.findAllMatches??ut.findAllMatches,minMatchCharLength:t.minMatchCharLength??ut.minMatchCharLength,isCaseSensitive:t.isCaseSensitive??ut.isCaseSensitive,ignoreDiacritics:t.ignoreDiacritics??ut.ignoreDiacritics,ignoreLocation:t.ignoreLocation??ut.ignoreLocation});return{type:"fuzzy",search(r){return n.searchIn(r)}}}}],Hv=sb.length,zB="\0",qB="|";function HB(e){const t=[],n=e.length;let r=0;for(;r=n)break;let a=r;for(;a=n||e[i]===" "){a++;break}if(e[i]==="$"&&(i+1>=n||e[i+1]===" ")){a+=2;break}}a++}t.push(e.substring(r,a)),r=a}else{for(;a{const a=r.replace(/\u0000/g,"|"),i=HB(a.trim()).filter(l=>l&&!!l.trim()),s=[];for(let l=0,c=i.length;l!!(e[lc.AND]||e[lc.OR]),WB=e=>!!e[lb.PATH],KB=e=>!Aa(e)&&wA(e)&&!cb(e),Vv=e=>({[lc.AND]:Object.keys(e).map(t=>({[t]:e[t]}))});function TA(e,t,{auto:n=!0}={}){const r=a=>{if(In(a)){const c={keyId:null,pattern:a};return n&&(c.searcher=oc(a,t)),c}const i=Object.keys(a),s=WB(a);if(!s&&i.length>1&&!cb(a))return r(Vv(a));if(KB(a)){const c=s?a[lb.PATH]:i[0],u=s?a[lb.PATTERN]:a[c];if(!In(u))throw new Error(SB(c));const d={keyId:Ol(c),pattern:u};return n&&(d.searcher=oc(u,t)),d}const l={children:[],operator:i[0]};return i.forEach(c=>{const u=a[c];Aa(u)&&u.forEach(d=>{l.children.push(r(d))})}),l};return cb(e)||(e=Vv(e)),r(e)}function ub(e,{ignoreFieldNorm:t=ut.ignoreFieldNorm}){let n=1;return e.forEach(({key:r,norm:a,score:i})=>{const s=r?r.weight:null;n*=Math.pow(i===0&&s?Number.EPSILON:i,(s||1)*(t?1:a))}),n}function YB(e,{ignoreFieldNorm:t=ut.ignoreFieldNorm}){e.forEach(n=>{n.score=ub(n.matches,{ignoreFieldNorm:t})})}class XB{constructor(t){this.limit=t,this.heap=[]}get size(){return this.heap.length}shouldInsert(t){return this.size0;){const r=t-1>>1;if(n[t].score<=n[r].score)break;const a=n[t];n[t]=n[r],n[r]=a,t=r}}_sinkDown(t){const n=this.heap,r=n.length;let a=t;do{t=a;const i=2*t+1,s=2*t+2;if(in[a].score&&(a=i),sn[a].score&&(a=s),a!==t){const l=n[t];n[t]=n[a],n[a]=l}}while(a!==t)}}function ZB(e){const t=[];return e.matches.forEach(n=>{if(!Zn(n.indices)||!n.indices.length)return;const r={indices:n.indices,value:n.value};n.key&&(r.key=n.key.id),n.idx>-1&&(r.refIndex=n.idx),t.push(r)}),t}function JB(e,t,{includeMatches:n=ut.includeMatches,includeScore:r=ut.includeScore}={}){return e.map(a=>{const{idx:i}=a,s={item:t[i],refIndex:i};return n&&(s.matches=ZB(a)),r&&(s.score=a.score),s})}const QB=/[\p{L}\p{M}\p{N}_]+/gu,Wv=new WeakSet;function e$(e){Wv.has(e)||(Wv.add(e),console.warn(`[Fuse] tokenize regex ${e} lacks the global flag; only the first match per text will be returned. Add the 'g' flag.`))}function t$(e){if(typeof e=="function"){let t=!1;return n=>{const r=e(n);if(!t&&(t=!0,!Array.isArray(r)||r.some(a=>typeof a!="string")))throw new Error(`[Fuse] tokenize function must return string[]; received ${Array.isArray(r)?"array containing non-strings":typeof r}.`);return r}}return e instanceof RegExp?(e.global||e$(e),t=>t.match(e)||[]):t=>t.match(QB)||[]}function db({isCaseSensitive:e=!1,ignoreDiacritics:t=!1,tokenize:n}={}){const r=t$(n);return{tokenize(a){return e||(a=a.toLowerCase()),t&&(a=ho(a)),r(a)}}}const AA=31;class n${static condition(t,n){return n.useTokenSearch}constructor(t,n){this.options=n,this.analyzer=db({isCaseSensitive:n.isCaseSensitive,ignoreDiacritics:n.ignoreDiacritics,tokenize:n.tokenize});const r=this.analyzer.tokenize(t),a=n._invertedIndex,{df:i,fieldCount:s}=a;this.termSearchers=[],this.idfWeights=[];for(const l of r){this.termSearchers.push(new Bx(l,{location:n.location,threshold:n.threshold,distance:n.distance,includeMatches:n.includeMatches,findAllMatches:n.findAllMatches,minMatchCharLength:n.minMatchCharLength,isCaseSensitive:n.isCaseSensitive,ignoreDiacritics:n.ignoreDiacritics,ignoreLocation:!0}));const c=i.get(l)||0,u=Math.log(1+(s-c+.5)/(c+.5));this.idfWeights.push(u)}this.combineAll=n.tokenMatch==="all",this.numTerms=this.termSearchers.length,this.useMask=this.numTerms<=AA}searchIn(t){if(!this.termSearchers.length)return{isMatch:!1,score:1};const n=[];let r=0,a=0,i=0,s=0;const l=this.combineAll&&!this.useMask?new Set:null;for(let d=0;d0?1-r/a:0,u={isMatch:!0,score:Math.max(.001,c)};return this.options.includeMatches&&n.length&&(u.indices=Fx(n)),this.combineAll&&(this.useMask?u.matchedMask=s:u.matchedTerms=l,u.termCount=this.numTerms),u}}function Vu(e,t,n,r){const a=r.tokenize(t);if(!a.length)return;e.fieldCount++,e.docFieldCount.set(n,(e.docFieldCount.get(n)||0)+1);const i=new Set(a);let s=e.docTermFieldHits.get(n);s||(s=new Map,e.docTermFieldHits.set(n,s));for(const l of i)s.set(l,(s.get(l)||0)+1),e.df.set(l,(e.df.get(l)||0)+1)}function IA(e,t,n,r){const{i:a,v:i,$:s}=t;if(i!==void 0){Vu(e,i,a,r);return}if(s)for(let l=0;ll-c);for(const l of n)i$(e,l);const r=l=>{let c=0,u=n.length;for(;c>>1;n[d]a?r(l):l,c);e.docFieldCount=i;const s=new Map;for(const[l,c]of e.docTermFieldHits)s.set(l>a?r(l):l,c);e.docTermFieldHits=s}class Ia{constructor(t,n,r){this.options={...ut,...n},this.options.useExtendedSearch,this.options.useTokenSearch,this._keyStore=new AB(this.options.keys),this._docs=t,this._myIndex=null,this._invertedIndex=null,this.setCollection(t,r),this._lastQuery=null,this._lastSearcher=null}_getSearcher(t){if(this._lastQuery===t)return this._lastSearcher;const n=this._invertedIndex?{...this.options,_invertedIndex:this._invertedIndex}:this.options,r=oc(t,n);return this._lastQuery=t,this._lastSearcher=r,r}setCollection(t,n){if(this._docs=t,n&&!(n instanceof Px))throw new Error(wB);if(this._myIndex=n||CA(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight}),this.options.useTokenSearch){const r=db({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});this._invertedIndex=r$(this._myIndex.records,this._myIndex.keys.length,r)}this._invalidateSearcherCache()}add(t){if(!Zn(t))return;this._docs.push(t);const n=this._myIndex.add(t,this._docs.length-1);if(this._invertedIndex&&n){const r=db({isCaseSensitive:this.options.isCaseSensitive,ignoreDiacritics:this.options.ignoreDiacritics,tokenize:this.options.tokenize});a$(this._invertedIndex,n,this._myIndex.keys.length,r)}this._invalidateSearcherCache()}remove(t=()=>!1){const n=[],r=[];for(let a=0,i=this._docs.length;a!a.has(s)),this._myIndex.removeAll(r),this._invalidateSearcherCache()}return n}removeAt(t){if(!Number.isInteger(t)||t<0||t>=this._docs.length)throw new Error(ib);this._invertedIndex&&Kv(this._invertedIndex,[t]);const n=this._docs.splice(t,1)[0];return this._myIndex.removeAt(t),this._invalidateSearcherCache(),n}_invalidateSearcherCache(){this._lastQuery=null,this._lastSearcher=null}getIndex(){return this._myIndex}search(t,n){const{limit:r=-1}=n||{},{includeMatches:a,includeScore:i,shouldSort:s,sortFn:l,ignoreFieldNorm:c}=this.options;if(In(t)&&!t.trim()){let p=this._docs.map((m,f)=>({item:m,refIndex:f}));return jl(r)&&r>-1&&(p=p.slice(0,r)),p}const u=jl(r)&&r>0&&In(t);let d;if(u){const p=new XB(r);In(this._docs[0])?this._searchStringList(t,{heap:p,ignoreFieldNorm:c}):this._searchObjectList(t,{heap:p,ignoreFieldNorm:c}),d=p.extractSorted(l)}else d=In(t)?In(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t),YB(d,{ignoreFieldNorm:c}),s&&d.sort(l),jl(r)&&r>-1&&(d=d.slice(0,r));return JB(d,this._docs,{includeMatches:a,includeScore:i})}_searchStringList(t,{heap:n,ignoreFieldNorm:r}={}){const a=this._getSearcher(t),i=this.options.useTokenSearch&&this.options.tokenMatch==="all",{records:s}=this._myIndex,l=n?null:[];return s.forEach(({v:c,i:u,n:d})=>{if(!Zn(c))return;const p=a.searchIn(c);if(p.isMatch){const m={score:p.score,value:c,norm:d,indices:p.indices};i&&(m.matchedMask=p.matchedMask,m.matchedTerms=p.matchedTerms,m.termCount=p.termCount);const f=[m];if(!i||this._coversAllTokens(f)){const g={item:c,idx:u,matches:f};n?(g.score=ub(g.matches,{ignoreFieldNorm:r}),n.shouldInsert(g.score)&&n.insert(g)):l.push(g)}}}),l}_searchLogical(t){const n=TA(t,this.options),r=(l,c,u)=>{if(!("children"in l)){const{keyId:f,searcher:g}=l;let b;return f===null?(b=[],this._myIndex.keys.forEach((x,k)=>{b.push(...this._findMatches({key:x,value:c[k],searcher:g}))})):b=this._findMatches({key:this._keyStore.get(f),value:this._myIndex.getValueForItemAtKeyId(c,f),searcher:g}),b&&b.length?[{idx:u,item:c,matches:b}]:[]}const{children:d,operator:p}=l,m=[];for(let f=0,g=d.length;f{if(Zn(l)){const u=r(n,l,c);u.length&&(i.has(c)||(i.set(c,{idx:c,item:l,matches:[]}),s.push(i.get(c))),u.forEach(({matches:d})=>{i.get(c).matches.push(...d)}))}}),s}_searchObjectList(t,{heap:n,ignoreFieldNorm:r}={}){const a=this._getSearcher(t),i=this.options.useTokenSearch&&this.options.tokenMatch==="all",{keys:s,records:l}=this._myIndex,c=n?null:[];return l.forEach(({$:u,i:d})=>{if(!Zn(u))return;const p=[];let m=!1,f=!1;if(s.forEach((g,b)=>{const x=this._findMatches({key:g,value:u[b],searcher:a});x.length?(p.push(...x),x[0].hasInverse&&(f=!0)):m=!0}),!(f&&m)&&p.length&&(!i||this._coversAllTokens(p))){const g={idx:d,item:u,matches:p};n?(g.score=ub(g.matches,{ignoreFieldNorm:r}),n.shouldInsert(g.score)&&n.insert(g)):c.push(g)}}),c}_findMatches({key:t,value:n,searcher:r}){if(!Zn(n))return[];const a=[];if(Aa(n))n.forEach(({v:i,i:s,n:l})=>{if(!Zn(i))return;const c=r.searchIn(i);if(c.isMatch){const u={score:c.score,key:t,value:i,idx:s,norm:l,indices:c.indices,hasInverse:c.hasInverse};c.termCount!==void 0&&(u.matchedMask=c.matchedMask,u.matchedTerms=c.matchedTerms,u.termCount=c.termCount),a.push(u)}});else{const{v:i,n:s}=n,l=r.searchIn(i);if(l.isMatch){const c={score:l.score,key:t,value:i,norm:s,indices:l.indices,hasInverse:l.hasInverse};l.termCount!==void 0&&(c.matchedMask=l.matchedMask,c.matchedTerms=l.matchedTerms,c.termCount=l.termCount),a.push(c)}}return a}_coversAllTokens(t){const n=t.length?t[0].termCount:void 0;if(n===void 0)return!0;if(n<=AA){let a=0;for(let i=0;i$x(t))};const RA=e=>`command_history_${e}`,Wu=e=>{const t=Xn.getItem(RA(e));if(!t)return{};try{return JSON.parse(t)}catch(n){return console.error("Error parsing command history:",n),{}}},s$=(e,t)=>{Xn.setItem(RA(e),JSON.stringify(t))};function o$({selectedProject:e,input:t,setInput:n,textareaRef:r,onExecuteCommand:a}){const[i,s]=h.useState([]),[l,c]=h.useState([]),[u,d]=h.useState(!1),[p,m]=h.useState(""),[f,g]=h.useState(-1),[b,x]=h.useState(-1),k=h.useRef(null),y=h.useCallback(()=>{k.current!==null&&(window.clearTimeout(k.current),k.current=null)},[]),v=h.useCallback(()=>{d(!1),x(-1),m(""),g(-1),y()},[y]),E=h.useCallback(()=>{u&&b>=0&&n(M=>{const P=M.slice(0,b),B=M.slice(b),$=B.indexOf(" "),U=$!==-1?B.slice($):"";return(P+U).replace(/^\s+$/,"")}),v()},[u,b,n,v]);h.useEffect(()=>{(async()=>{if(!e){s([]),c([]);return}try{const P=await Oe("/api/commands/list",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectPath:e.path})});if(!P.ok)throw new Error("Failed to fetch commands");const B=await P.json(),$=[...(B.builtIn||[]).map(K=>({...K,type:"built-in"})),...(B.custom||[]).map(K=>({...K,type:"custom"}))],U=new Map;(B.pinned||[]).forEach((K,V)=>{U.set(K.name,V)});const q=Wu(e.name),A=[...$].sort((K,V)=>{const L=U.has(K.name)?U.get(K.name):-1,le=U.has(V.name)?U.get(V.name):-1;if(L!==-1||le!==-1)return L===-1?1:le===-1?-1:L-le;const re=q[K.name]||0;return(q[V.name]||0)-re});s(A)}catch(P){console.error("Error fetching slash commands:",P),s([])}})()},[e]),h.useEffect(()=>{u||g(-1)},[u]);const N=h.useMemo(()=>i.length?new Ia(i,{keys:[{name:"name",weight:2},{name:"description",weight:1}],threshold:.4,includeScore:!0,minMatchCharLength:1}):null,[i]);h.useEffect(()=>{if(!p){c(i);return}if(!N){c([]);return}const M=N.search(p);c(M.map(P=>P.item))},[p,i,N]);const w=h.useMemo(()=>{if(!e||i.length===0)return[];const M=Wu(e.name);return i.map(P=>({...P,usageCount:M[P.name]||0})).filter(P=>P.usageCount>0).sort((P,B)=>B.usageCount-P.usageCount).slice(0,5)},[e,i]),T=h.useCallback(M=>{if(!e)return;const P=Wu(e.name);P[M.name]=(P[M.name]||0)+1,s$(e.name,P)},[e]),j=h.useCallback(M=>{const P=b>=0?b:t.length,B=t.slice(0,P),$=t.slice(P),U=$.indexOf(" "),q=U!==-1?$.slice(U):"",A=`${B}${M.name} `,K=`${A}${q}`;n(K),v();const V=A.length;setTimeout(()=>{const L=r.current;if(L){L.focus();try{L.setSelectionRange(V,V)}catch{}}},0)},[t,b,n,v,r]),_=h.useCallback(M=>{j(M)},[j]),C=h.useCallback((M,P,B)=>{if(!(!M||!e)){if(B){g(P);return}T(M),j(M)}},[e,T,j]),O=h.useCallback(()=>{const M=!u;d(M),m(""),g(-1),M&&c(i),r.current?.focus()},[u,i,r]),I=h.useCallback(()=>{v()},[v]),z=h.useCallback(M=>u?l.length?M.key==="ArrowDown"?(M.preventDefault(),g(P=>PP>0?P-1:l.length-1),!0):M.key==="Tab"||M.key==="Enter"?En(M)?!1:(M.preventDefault(),f>=0?_(l[f]):l.length>0&&_(l[0]),!0):M.key==="Escape"?(M.preventDefault(),E(),!0):!1:M.key==="Escape"?(M.preventDefault(),v(),!0):!1:!1,[u,l,E,_,f]);return h.useEffect(()=>()=>{y()},[y]),{slashCommands:i,slashCommandsCount:i.length,filteredCommands:l,frequentCommands:w,commandQuery:p,showCommandMenu:u,selectedCommandIndex:f,resetCommandMenuState:v,dismissCommandMenu:E,handleCommandSelect:C,handleToggleCommandMenu:O,handleCommandInputChange:I,handleCommandMenuKeyDown:z}}const l$=()=>({preventDefault:()=>{}}),Yv=20*1024*1024,Xv=10;function c$(e,{showFileDropdown:t,showCommandMenu:n}){return e.key==="Tab"&&e.shiftKey&&!t&&!n}function u$(e){return e.length?` + +[Files attached by user and available for reading in the project:] +${e.map(n=>`- ${n.name}: ${n.path}`).join(` +`)}`:""}function d$({selectedProject:e,selectedSession:t,currentSessionId:n,model:r,permissionMode:a,cycleRunMode:i,isLoading:s,canAbortSession:l,tokenBudget:c,sendMessage:u,sendByCtrlEnter:d,onSessionActive:p,onSessionProcessing:m,onSessionActivityBump:f,onInputFocusChange:g,onFileOpen:b,onShowSettings:x,pendingViewSessionRef:k,scrollToBottom:y,addMessage:v,clearMessages:E,rewindMessages:N,setIsLoading:w,setCanAbortSession:T,setIsAborting:j,setClaudeStatus:_,setPilotDeckStatus:C,setIsUserScrolledUp:O,pendingPermissionRequests:I,setPendingPermissionRequests:z}){const[M,P]=h.useState(()=>typeof window<"u"&&e&&Xn.getItem(`draft_input_${e.name}`)||""),[B,$]=h.useState([]),[U,q]=h.useState(new Map),[A,K]=h.useState(new Map),[V,L]=h.useState(!1),[le,re]=h.useState("none"),ne=h.useRef(null),de=h.useRef(null),Se=h.useRef(null),he=h.useRef(M),tt=h.useRef(!1),Me=h.useCallback(async Ce=>{const{action:qe,data:pe}=Ce;switch(qe){case"clear":E();break;case"help":v({type:"assistant",content:pe.content,timestamp:Date.now()});break;case"model":{const Pe=[`**Current Model**: ${pe.current.model}`,"","**Available Models**:"];if(pe.available&&typeof pe.available=="object")for(const[we,Be]of Object.entries(pe.available))Array.isArray(Be)&&Be.length&&Pe.push("",`${we}: ${Be.join(", ")}`);v({type:"assistant",content:Pe.join(` +`),timestamp:Date.now()});break}case"cost":{const Pe=`**Token Usage**: ${pe.tokenUsage.used.toLocaleString()} / ${pe.tokenUsage.total.toLocaleString()} (${pe.tokenUsage.percentage}%) + +**Estimated Cost**: +- Input: $${pe.cost.input} +- Output: $${pe.cost.output} +- **Total**: $${pe.cost.total} + +**Model**: ${pe.model}`;v({type:"assistant",content:Pe,timestamp:Date.now()});break}case"status":{const Pe=`**System Status** + +- Version: ${pe.version} +- Uptime: ${pe.uptime} +- Model: ${pe.model} +- Provider: ${pe.provider} +- Node.js: ${pe.nodeVersion} +- Platform: ${pe.platform}`;v({type:"assistant",content:Pe,timestamp:Date.now()});break}case"memory":pe.error?v({type:"assistant",content:`Warning: ${pe.message}`,timestamp:Date.now()}):(v({type:"assistant",content:`${pe.message} + +Path: \`${pe.path}\``,timestamp:Date.now()}),pe.exists&&b&&b(pe.path));break;case"config":x?.();break;case"rewind":pe.error?v({type:"assistant",content:`Warning: ${pe.message}`,timestamp:Date.now()}):(N(pe.steps*2),v({type:"assistant",content:`Rewound ${pe.steps} step(s). ${pe.message}`,timestamp:Date.now()}));break;case"skillInstall":{if(pe.error){v({type:"assistant",content:`**Skill install failed** + +${pe.message||pe.errorMessage||"Unknown error"}${pe.stderr?` + +\`\`\` +${pe.stderr} +\`\`\``:""}`,timestamp:Date.now()});break}const Pe=[];if(pe.needsForce)Pe.push(`⚠️ **\`${pe.slug}\` is flagged as suspicious by VirusTotal.** clawhub refused to install without explicit consent.`),Pe.push(""),Pe.push("Review the skill before retrying. If you trust the source, rerun:"),Pe.push(""),Pe.push("```"),Pe.push(pe.retryCommand||`/skill_install ${pe.slug} --force`),Pe.push("```");else if(pe.installed){const we=pe.skillMeta?.version?` v${pe.skillMeta.version}`:"",Be=pe.skillMeta?.name||pe.slug;Pe.push(`✅ **Installed** \`${Be}\`${we} (${pe.scope==="project"?"project":"user"} scope)`),Pe.push(`Path: \`${pe.installPath}\``),pe.skillMeta?.description&&(Pe.push(""),Pe.push(pe.skillMeta.description))}else Pe.push(`⚠️ clawhub finished but \`SKILL.md\` was not found at \`${pe.installPath}\`.`);pe.stdout&&(Pe.push(""),Pe.push("```"),Pe.push(pe.stdout),Pe.push("```")),pe.stderr&&(Pe.push(""),Pe.push("**stderr**"),Pe.push("```"),Pe.push(pe.stderr),Pe.push("```")),pe.exitCode&&pe.exitCode!==0&&!pe.needsForce&&(Pe.push(""),Pe.push(`Exit code: \`${pe.exitCode}\`. ${pe.errorMessage||""}`)),pe.installed&&(Pe.push(""),Pe.push("_New skill is on disk — open a fresh chat (or `/clear-caches`) to make PilotDeck see it. The UI slash menu picks it up next time you open `/`._")),v({type:"assistant",content:Pe.join(` +`),timestamp:Date.now()});break}case"switchProject":{if(pe.error){v({type:"assistant",content:pe.message,timestamp:Date.now()});break}const Pe=String(pe.projectName??"").trim(),we=typeof window<"u"&&typeof window.switchProject=="function"?window.switchProject(Pe):!1;v({type:"assistant",content:we?`Switched to project: \`${Pe}\``:`No project matched \`${Pe}\`. Try the project's directory name (sidebar tooltip).`,timestamp:Date.now()});break}default:console.warn("Unknown built-in command action:",qe)}},[b,x,v,E,N]),Fe=h.useCallback(async Ce=>{const{content:qe,hasBashCommands:pe,metadata:Pe}=Ce;if(pe&&!window.confirm("This command contains bash commands that will be executed. Do you want to proceed?")){v({type:"assistant",content:"Command execution cancelled",timestamp:Date.now()});return}const we=qe||"";P(we),he.current=we,Pe&&Pe.passthrough&&(tt.current=!0),setTimeout(()=>{Se.current&&Se.current(l$())},0)},[v]),ge=h.useCallback(async(Ce,qe)=>{if(!(!Ce||!e))try{const Pe=(qe??M).match(new RegExp(`${oA(Ce.name)}\\s*(.*)`)),we=Pe&&Pe[1]?Pe[1].trim().split(/\s+/):[],Be={projectPath:e.fullPath||e.path,projectName:e.name,sessionId:n,model:r,tokenUsage:c},rt=await Oe("/api/commands/execute",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commandName:Ce.name,commandPath:Ce.path,args:we,context:Be})});if(!rt.ok){let Tt=`Failed to execute command (${rt.status})`;try{const un=await rt.json();Tt=un?.message||un?.error||Tt}catch{}throw new Error(Tt)}const it=await rt.json();it.type==="builtin"?(await Me(it),P(""),he.current=""):it.type==="custom"&&await Fe(it)}catch(pe){const Pe=pe instanceof Error?pe.message:"Unknown error";console.error("Error executing command:",pe),v({type:"assistant",content:`Error executing command: ${Pe}`,timestamp:Date.now()})}},[r,n,Me,Fe,M,e,v,c]),{slashCommands:me,slashCommandsCount:xe,filteredCommands:ce,frequentCommands:Ne,commandQuery:Te,showCommandMenu:Ge,selectedCommandIndex:ee,resetCommandMenuState:X,dismissCommandMenu:ae,handleCommandSelect:te,handleToggleCommandMenu:J,handleCommandInputChange:H,handleCommandMenuKeyDown:G}=o$({selectedProject:e,input:M,setInput:P,textareaRef:ne,onExecuteCommand:ge}),{showFileDropdown:Z,filteredFiles:ue,selectedFileIndex:be,renderInputWithMentions:Ae,selectFile:ze,setCursorPosition:Le,handleFileMentionsKeyDown:ke}=xB({selectedProject:e,input:M,setInput:P,textareaRef:ne}),We=h.useCallback(Ce=>{!de.current||!Ce||(de.current.scrollTop=Ce.scrollTop,de.current.scrollLeft=Ce.scrollLeft)},[]),Xe=h.useCallback(Ce=>{const qe=Ce.filter(pe=>{try{if(!pe||typeof pe!="object")return console.warn("Invalid file object:",pe),!1;if(typeof pe.size!="number"||pe.size>Yv){const Pe=pe.name||"Unknown file";return K(we=>{const Be=new Map(we);return Be.set(Pe,"File too large (max 20MB)"),Be}),!1}return!0}catch(Pe){return console.error("Error validating file:",Pe,pe),!1}});qe.length>0&&$(pe=>[...pe,...qe].slice(0,Xv))},[]),st=h.useCallback(Ce=>{const qe=Array.from(Ce.clipboardData.items),pe=[];if(qe.forEach(Pe=>{if(Pe.kind!=="file")return;const we=Pe.getAsFile();we&&pe.push(we)}),pe.length>0){Xe(pe),Ce.preventDefault();return}if(qe.length===0&&Ce.clipboardData.files.length>0){const Pe=Array.from(Ce.clipboardData.files);Pe.length>0&&(Xe(Pe),Ce.preventDefault())}},[Xe]),{getRootProps:se,getInputProps:$e,isDragActive:Qe,open:ot}=xA({maxSize:Yv,maxFiles:Xv,onDrop:Xe,noClick:!0,noKeyboard:!0}),ie=h.useCallback(async Ce=>{Ce.preventDefault();const qe=he.current,pe=B.length>0;if(!qe.trim()&&!pe||s||!e)return;const Pe=qe.trim();if(tt.current)tt.current=!1;else if(Pe.startsWith("/")){const Mn=Pe.indexOf(" "),rr=Mn>0?Pe.slice(0,Mn):Pe,ar=me.find(gu=>gu.name===rr);if(ar){ge(ar,Pe),P(""),he.current="",$([]),q(new Map),K(new Map),X(),L(!1),ne.current&&(ne.current.style.height="auto");return}}const we=qe.trim()||"Please review the attached file(s).";let Be=we;const rt=dB.find(Mn=>Mn.id===le);rt&&rt.prefix&&(Be=`${rt.prefix}: ${we}`);const it=k.current?.sessionId??null,Tt=!!n&&(!!t?.id||it===n),un=t?.id||(Tt?n:null),ja=t,Hr=un||vA();e?.name&&f?.(e.name,Hr,we);let Ar=[],gr=[];if(B.length>0){const Mn=new FormData;B.forEach(rr=>{Mn.append("attachments",rr)});try{const rr=await Oe(`/api/projects/${encodeURIComponent(e.name)}/upload-attachments`,{method:"POST",headers:{},body:Mn});if(!rr.ok)throw new Error("Failed to upload attachments");const ar=await rr.json();Ar=Array.isArray(ar.images)?ar.images:[],gr=Array.isArray(ar.files)?ar.files:[]}catch(rr){const ar=rr instanceof Error?rr.message:"Unknown error";console.error("Attachment upload failed:",rr),v({type:"error",content:`Failed to upload attachments: ${ar}`,timestamp:new Date},un);return}}Be=`${Be}${u$(gr)}`;const Vn=un,Oa=Vn||Hr;v({type:"user",content:we,images:Ar,attachments:gr,timestamp:new Date},un),w(!0),T(!0),_({text:"Processing",tokens:0,can_interrupt:!0}),O(!1),setTimeout(()=>y(),100),!Vn&&!ja?.id&&(typeof window<"u"&&sessionStorage.removeItem("pendingSessionId"),k.current={sessionId:null,startedAt:Date.now()}),p?.(Oa),Vn&&!Gu(Vn)&&m?.(Vn);const fu=(()=>{try{const Mn=Xn.getItem("pilotdeck-settings");if(Mn)return JSON.parse(Mn)}catch(Mn){console.error("Error loading tools settings:",Mn)}return{allowedTools:[],disallowedTools:[],skipPermissions:!1}})(),hu=hB(ja,we);bB({sendMessage:u,selectedProject:e,command:Be,sessionId:Vn,temporarySessionId:Oa,toolsSettings:fu,permissionMode:a,model:r,sessionSummary:hu,images:Ar}),P(""),he.current="",X(),$([]),q(new Map),K(new Map),L(!1),re("none"),ne.current&&(ne.current.style.height="auto"),Xn.removeItem(`draft_input_${e.name}`)},[t,B,r,n,ge,s,p,f,m,k,a,X,y,e,u,T,v,_,C,w,O,me,le]);h.useEffect(()=>{Se.current=ie},[ie]),h.useEffect(()=>{he.current=M},[M]),h.useEffect(()=>{if(!e)return;const Ce=Xn.getItem(`draft_input_${e.name}`)||"";P(qe=>{const pe=qe===Ce?qe:Ce;return he.current=pe,pe})},[e]),h.useEffect(()=>{e&&(M!==""?Xn.setItem(`draft_input_${e.name}`,M):Xn.removeItem(`draft_input_${e.name}`))},[M,e]),h.useEffect(()=>{if(!ne.current)return;ne.current.style.height="auto",ne.current.style.height=`${ne.current.scrollHeight}px`;const Ce=parseInt(window.getComputedStyle(ne.current).lineHeight),qe=ne.current.scrollHeight>Ce*2;L(qe)},[M]),h.useEffect(()=>{!ne.current||M.trim()||(ne.current.style.height="auto",L(!1))},[M]);const et=h.useCallback(Ce=>{const qe=Ce.target.value,pe=Ce.target.selectionStart;if(P(qe),he.current=qe,Le(pe),!qe.trim()){Ce.target.style.height="auto",L(!1),X();return}H(qe,pe)},[H,X,Le]),at=h.useCallback(Ce=>{const qe=ne.current,pe=he.current??M,Pe=qe?.selectionStart??pe.length,we=qe?.selectionEnd??Pe,Be=`${pe.slice(0,Pe)}${Ce}${pe.slice(we)}`,rt=Pe+Ce.length;P(Be),he.current=Be,Le(rt),Ce==="/"&&H(Be,rt),requestAnimationFrame(()=>{const it=ne.current;if(it){it.matches(":focus")||it.focus();try{it.setSelectionRange(rt,rt)}catch{}}})},[H,M,Le,P,ne]),Ct=h.useCallback(Ce=>{if(!En(Ce)&&!G(Ce)&&!ke(Ce)){if(c$(Ce,{showFileDropdown:Z,showCommandMenu:Ge})){Ce.preventDefault(),i();return}Ce.key==="Enter"&&((Ce.ctrlKey||Ce.metaKey)&&!Ce.shiftKey||!Ce.shiftKey&&!Ce.ctrlKey&&!Ce.metaKey&&!d)&&(Ce.preventDefault(),ie(Ce))}},[i,G,ke,ie,d,Ge,Z]),zt=h.useCallback(Ce=>{Le(Ce.currentTarget.selectionStart)},[Le]),tn=h.useCallback(Ce=>{const qe=Ce.currentTarget;qe.style.height="auto",qe.style.height=`${qe.scrollHeight}px`,Le(qe.selectionStart),We(qe);const pe=parseInt(window.getComputedStyle(qe).lineHeight);L(qe.scrollHeight>pe*2)},[Le,We]),gn=h.useCallback(()=>{P(""),he.current="",X(),ne.current&&(ne.current.style.height="auto",ne.current.focus()),L(!1)},[X]),_t=h.useCallback(()=>{if(!l)return;const Ce=typeof window<"u"?sessionStorage.getItem("pendingSessionId"):null,pe=[n,k.current?.sessionId||null,Ce,t?.id||null].find(Pe=>!!Pe&&!Gu(Pe))||null;if(!pe){console.warn("Abort requested but no concrete session ID is available yet.");return}u({type:"abort-session",sessionId:pe,provider:"pilotdeck"}),T(!1),j(!0),C({text:"Stopping",tokens:0,can_interrupt:!1})},[l,n,k,t?.id,u,T,_,j,C]),hr=h.useCallback(Ce=>Ce?fB(Ce.entry):{success:!1},[]),Ke=h.useCallback(Ce=>{if(!Ce?.entry)return{success:!1};const qe=[t?.id,n,k.current?.sessionId].find(pe=>pe&&!Gu(pe));return qe?(u({type:"session-permission-grant",sessionId:qe,entry:Ce.entry,toolName:Ce.toolName}),{success:!0}):{success:!1}},[n,k,t?.id,u]),Ue=h.useCallback((Ce,qe)=>{const Pe=(Array.isArray(Ce)?Ce:[Ce]).filter(Boolean);Pe.length!==0&&(Pe.forEach(we=>{if(I.find(rt=>rt.requestId===we)?.isElicitation){const rt=qe?.updatedInput??{},it=rt.answers??{},Tt=Object.keys(it).length>0,un=qe?.allow&&Tt?{type:"answered",answers:it,...rt.annotations?{annotations:rt.annotations}:{}}:{type:"cancelled",reason:qe?.message??(qe?.allow?"skipped":"declined")};u({type:"elicitation-response",requestId:we,answer:un});return}u({type:"pilotdeck-permission-response",requestId:we,allow:!!qe?.allow,updatedInput:qe?.updatedInput,message:qe?.message,rememberEntry:qe?.rememberEntry})}),z(we=>{const Be=we.filter(rt=>!Pe.includes(rt.requestId));return Be.length===0&&(_(null),C(null)),Be}))},[I,u,_,C,z]),[ht,Pt]=h.useState(!1),cn=h.useCallback(Ce=>{Pt(Ce),g?.(Ce)},[g]);return{input:M,setInput:P,textareaRef:ne,inputHighlightRef:de,isTextareaExpanded:V,thinkingMode:le,setThinkingMode:re,slashCommandsCount:xe,filteredCommands:ce,frequentCommands:Ne,commandQuery:Te,showCommandMenu:Ge,selectedCommandIndex:ee,resetCommandMenuState:X,dismissCommandMenu:ae,handleCommandSelect:te,handleToggleCommandMenu:J,showFileDropdown:Z,filteredFiles:ue,selectedFileIndex:be,renderInputWithMentions:Ae,selectFile:ze,attachedImages:B,setAttachedImages:$,uploadingImages:U,imageErrors:A,getRootProps:se,getInputProps:$e,isDragActive:Qe,openImagePicker:ot,handleSubmit:ie,handleInputChange:et,insertAtCursor:at,handleKeyDown:Ct,handlePaste:st,handleTextareaClick:zt,handleTextareaInput:tn,syncInputOverlayScroll:We,handleClearInput:gn,handleAbortSession:_t,handlePermissionDecision:Ue,handleGrantToolPermission:hr,handleGrantSessionToolPermission:Ke,handleInputFocusChange:cn,isInputFocused:ht}}const ki=[];function p$(){return{serverMessages:ki,realtimeMessages:ki,activityMessages:ki,merged:ki,_lastServerRef:ki,_lastRealtimeRef:ki,status:"idle",fetchedAt:0,lastError:null,total:0,hasMore:!1,offset:0,tokenUsage:null}}function Zv(e){return typeof e=="string"?e.replace(/\s+/g," ").trim():""}function cc(e){if(!e)return null;const t=Date.parse(e);return Number.isFinite(t)?t:null}function m$(e,t){if(e.kind!=="text"||e.role!=="user"||!e.id.startsWith("local_"))return!1;const n=Zv(e.content);if(!n)return!1;const r=cc(e.timestamp);return t.some(a=>{if(a.kind!=="text"||a.role!=="user"||Zv(a.content)!==n)return!1;if(r==null)return!0;const i=cc(a.timestamp);return i==null?!0:Math.abs(i-r)<=1e4})}function f$(e,t){if(e.kind!=="interrupted"||!e.id.startsWith("local_interrupt_"))return!1;const n=cc(e.timestamp);return t.some(r=>{if(r.kind!=="interrupted")return!1;if(n==null)return!0;const a=cc(r.timestamp);return a==null?!0:Math.abs(a-n)<=30*6e4})}function _A(e,t){if(t.length===0)return e;if(e.length===0)return t;const n=new Set(e.map(i=>i.id)),r=t.filter(i=>!(n.has(i.id)||m$(i,e)||f$(i,e)));if(r.length===0)return e;const a=r.findIndex(i=>i.id.startsWith("__streaming_"));if(a>=0&&e.length>0){const i=e[e.length-1],s=r[a],l=i.kind==="text"&&i.role==="assistant",c=s.serverTailIdAtStart!==void 0&&i.id!==s.serverTailIdAtStart;if(l&&c)return[...e.slice(0,-1),...r]}return[...e,...r]}function Jv(e,t){if(t.length===0)return e;const n=[...e],r=new Map(n.map((a,i)=>[a.id,i]));for(const a of t){const i=r.get(a.id);i===void 0?(r.set(a.id,n.length),n.push(a)):n[i]=a}return n}function _r(e){return e.serverMessages===e._lastServerRef&&e.realtimeMessages===e._lastRealtimeRef?!1:(e._lastServerRef=e.serverMessages,e._lastRealtimeRef=e.realtimeMessages,e.merged=_A(e.serverMessages,e.realtimeMessages),!0)}function Qv(e){e._lastServerRef=e.serverMessages,e._lastRealtimeRef=e.realtimeMessages,e.merged=_A(e.serverMessages,e.realtimeMessages)}function ek(e,t,n,r){const a=e.merged.findIndex(s=>s.id===t);if(a<0)return!1;const i=e.merged[a];return i.content===n&&(r==null||i.provider===r)||(e.merged[a]={...i,content:n,...r!=null?{provider:r}:{}}),!0}function h$(e,t,n=a=>requestAnimationFrame(a),r=a=>cancelAnimationFrame(a)){const a=new Map;return{schedule(i){if(!e(i)||a.has(i))return;const s=n(()=>{a.has(i)&&(a.delete(i),t())});a.set(i,s)},cancelAll(){a.forEach(i=>r(i)),a.clear()}}}const g$=3e4,al=500;function b$(){const e=h.useRef(new Map),t=h.useRef(null),[,n]=h.useState(0),r=h.useRef(null),a=()=>(r.current==null&&(r.current=h$(C=>C===t.current,()=>n(C=>C+1))),r.current),i=h.useCallback(C=>{a().schedule(C)},[]),s=h.useCallback(C=>{const O=t.current!==C;t.current=C,O&&n(I=>I+1)},[]),l=h.useCallback(C=>{const O=e.current;return O.has(C)||O.set(C,p$()),O.get(C)},[]),c=h.useCallback(C=>e.current.has(C),[]),u=h.useCallback(async(C,O={})=>{const I=l(C);I.status="loading",i(C);const z=Date.now();try{const M=new URLSearchParams;O.provider&&M.append("provider",O.provider),O.projectName&&M.append("projectName",O.projectName),O.projectPath&&M.append("projectPath",O.projectPath),O.sessionKind&&M.append("sessionKind",O.sessionKind),O.parentSessionId&&M.append("parentSessionId",O.parentSessionId),O.relativeTranscriptPath&&M.append("relativeTranscriptPath",O.relativeTranscriptPath),O.limit!==null&&O.limit!==void 0&&(M.append("limit",String(O.limit)),M.append("offset",String(O.offset??0)));const P=M.toString(),B=`/api/sessions/${encodeURIComponent(C)}/messages${P?`?${P}`:""}`,$=await Oe(B);if(!$.ok)throw new Error(`HTTP ${$.status}`);const U=await $.json(),q=U.messages||[];if(I.serverMessages=q,I.total=U.total??q.length,I.hasMore=!!U.hasMore,I.offset=(O.offset??0)+q.length,I.fetchedAt=Date.now(),I.status="idle",I.lastError=null,I.realtimeMessages.length>0&&q.length>0){const A=q.reduce((V,L)=>Math.max(V,Date.parse(L.timestamp)||0),0),K=Math.max(z,A);I.realtimeMessages=I.realtimeMessages.filter(V=>V.id.startsWith("__streaming_")?!0:(Date.parse(V.timestamp)||0)>K)}return _r(I),U.tokenUsage&&(I.tokenUsage=U.tokenUsage),i(C),I}catch(M){return console.error(`[SessionStore] fetch failed for ${C}:`,M),I.status="error",I.lastError=M instanceof Error?M.message:"Unknown error",i(C),I}},[l,i]),d=h.useCallback(async(C,O={})=>{const I=l(C);if(!I.hasMore)return I;const z=new URLSearchParams;O.provider&&z.append("provider",O.provider),O.projectName&&z.append("projectName",O.projectName),O.projectPath&&z.append("projectPath",O.projectPath),O.sessionKind&&z.append("sessionKind",O.sessionKind),O.parentSessionId&&z.append("parentSessionId",O.parentSessionId),O.relativeTranscriptPath&&z.append("relativeTranscriptPath",O.relativeTranscriptPath);const M=O.limit??20;z.append("limit",String(M)),z.append("offset",String(I.offset));const P=z.toString(),B=`/api/sessions/${encodeURIComponent(C)}/messages${P?`?${P}`:""}`;try{const $=await Oe(B);if(!$.ok)throw new Error(`HTTP ${$.status}`);const U=await $.json(),q=U.messages||[];return I.serverMessages=[...q,...I.serverMessages],I.hasMore=!!U.hasMore,I.offset=I.offset+q.length,_r(I),i(C),I}catch($){return console.error(`[SessionStore] fetchMore failed for ${C}:`,$),I}},[l,i]),p=h.useCallback((C,O)=>{const I=l(C);let z=Jv(I.realtimeMessages,[O]);z.length>al&&(z=z.slice(-al)),I.realtimeMessages=z,_r(I),i(C)},[l,i]),m=h.useCallback((C,O)=>{const I=l(C),z=O.activityId||O.id,M=I.activityMessages.findIndex(P=>(P.activityId||P.id)===z);if(M>=0){const P=[...I.activityMessages];P[M]=O,I.activityMessages=P}else I.activityMessages=[...I.activityMessages,O];i(C)},[l,i]),f=h.useCallback((C,O)=>{const I=l(C),z=new Map;for(const M of O)M.kind==="agent_activity"&&z.set(M.activityId||M.id,M);I.activityMessages=Array.from(z.values()),i(C)},[l,i]),g=h.useCallback((C,O)=>{if(O.length===0)return;const I=l(C);let z=Jv(I.realtimeMessages,O);z.length>al&&(z=z.slice(-al)),I.realtimeMessages=z,_r(I),i(C)},[l,i]),b=h.useCallback(async(C,O={})=>{const I=l(C);try{const z=new URLSearchParams;O.provider&&z.append("provider",O.provider),O.projectName&&z.append("projectName",O.projectName),O.projectPath&&z.append("projectPath",O.projectPath),O.sessionKind&&z.append("sessionKind",O.sessionKind),O.parentSessionId&&z.append("parentSessionId",O.parentSessionId),O.relativeTranscriptPath&&z.append("relativeTranscriptPath",O.relativeTranscriptPath);const M=z.toString(),P=`/api/sessions/${encodeURIComponent(C)}/messages${M?`?${M}`:""}`,B=await Oe(P);if(!B.ok)throw new Error(`HTTP ${B.status}`);const $=await B.json();I.serverMessages=$.messages||[],I.total=$.total??I.serverMessages.length,I.hasMore=!!$.hasMore,I.fetchedAt=Date.now(),I.realtimeMessages=[],_r(I),i(C)}catch(z){console.error(`[SessionStore] refresh failed for ${C}:`,z)}},[l,i]),x=h.useCallback((C,O)=>{const I=l(C);I.status=O,i(C)},[l,i]),k=h.useCallback(C=>{const O=e.current.get(C);return O?Date.now()-O.fetchedAt>g$:!0},[]),y=h.useCallback((C,O,I)=>{const z=l(C),M=`__streaming_${C}`,P=z.realtimeMessages.findIndex(B=>B.id===M);if(P>=0){const B=z.realtimeMessages[P];if(B.content===O&&B.provider===I)return;B.content=O,B.provider=I,ek(z,M,O,I)||Qv(z),i(C);return}else{const B=z.serverMessages.length>0?z.serverMessages[z.serverMessages.length-1].id:null,$={id:M,sessionId:C,timestamp:new Date().toISOString(),provider:I,kind:"stream_delta",content:O,serverTailIdAtStart:B??void 0};z.realtimeMessages=[...z.realtimeMessages,$]}_r(z),i(C)},[l,i]),v=h.useCallback(C=>{const O=e.current.get(C);if(!O)return;const I=`__streaming_${C}`,z=O.realtimeMessages.findIndex(M=>M.id===I);if(z>=0){const M=O.realtimeMessages[z],P=`text_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;O.realtimeMessages=[...O.realtimeMessages],O.realtimeMessages[z]={...M,id:P,kind:"text",role:"assistant"},_r(O),i(C)}},[i]),E=h.useCallback((C,O,I)=>{const z=l(C),M=`__streaming_thinking_${C}`,P=z.realtimeMessages.findIndex(B=>B.id===M);if(P>=0){const B=z.realtimeMessages[P];if(B.content===O&&B.provider===I)return;B.content=O,B.provider=I,ek(z,M,O,I)||Qv(z),i(C);return}else{const B={id:M,sessionId:C,timestamp:new Date().toISOString(),provider:I,kind:"thinking",content:O};z.realtimeMessages=[...z.realtimeMessages,B]}_r(z),i(C)},[l,i]),N=h.useCallback(C=>{const O=e.current.get(C);if(!O)return;const I=`__streaming_thinking_${C}`,z=O.realtimeMessages.findIndex(M=>M.id===I);if(z>=0){const M=O.realtimeMessages[z],P=`thinking_${Date.now()}_${Math.random().toString(36).slice(2,8)}`;O.realtimeMessages=[...O.realtimeMessages],O.realtimeMessages[z]={...M,id:P},_r(O),i(C)}},[i]),w=h.useCallback(C=>{const O=e.current.get(C);O&&(O.realtimeMessages=[],_r(O),i(C))},[i]),T=h.useCallback(C=>e.current.get(C)?.merged??[],[]),j=h.useCallback(C=>e.current.get(C)?.activityMessages??[],[]),_=h.useCallback(C=>e.current.get(C),[]);return h.useMemo(()=>({getSlot:l,has:c,fetchFromServer:u,fetchMore:d,appendRealtime:p,upsertActivity:m,setActivities:f,appendRealtimeBatch:g,refreshFromServer:b,setActiveSession:s,setStatus:x,isStale:k,updateStreaming:y,finalizeStreaming:v,updateStreamingThinking:E,finalizeStreamingThinking:N,clearRealtime:w,getMessages:T,getActivityMessages:j,getSessionSlot:_}),[l,c,u,d,p,m,f,g,b,s,x,k,y,v,E,N,w,T,j,_])}const x$=e=>{if(typeof e!="string"&&typeof e!="number")return null;const t=String(e).trim();return t.length>0?t:null},y$=e=>{const t=[e.id,e.messageId,e.toolId,e.toolCallId,e.blobId,e.rowid,e.sequence];for(const i of t){const s=x$(i);if(s)return`message-${e.type}-${s}`}const n=new Date(e.timestamp).getTime();if(!Number.isFinite(n))return null;const r=typeof e.content=="string"?e.content.slice(0,48):"",a=typeof e.toolName=="string"?e.toolName:"";return`message-${e.type}-${n}-${a}-${r}`};function v$(e){if(!e||typeof document>"u")return!1;const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="fixed",t.style.opacity="0",t.style.pointerEvents="none",document.body.appendChild(t),t.focus(),t.select();let n=!1;try{n=document.execCommand("copy")}catch{n=!1}finally{document.body.removeChild(t)}return n}async function ta(e){if(!e)return!1;let t=!1;try{typeof window<"u"&&window.isSecureContext&&typeof navigator<"u"&&navigator.clipboard?.writeText&&(await navigator.clipboard.writeText(e),t=!0)}catch{t=!1}return t||(t=v$(e)),t}const k$=({className:e="w-5 h-5"})=>o.jsx("img",{src:"/icons/claude-ai-icon.svg",alt:"Claude",className:e}),w$=({className:e="w-5 h-5"})=>{const{isDarkMode:t}=li();return o.jsx("img",{src:t?"/icons/codex-white.svg":"/icons/codex.svg",alt:"Codex",className:e})},S$=({className:e="w-5 h-5"})=>{const{isDarkMode:t}=li();return o.jsx("img",{src:t?"/icons/cursor-white.svg":"/icons/cursor.svg",alt:"Cursor",className:e})},E$=({className:e="w-5 h-5"})=>o.jsx("img",{src:"/icons/gemini-ai-icon.svg",alt:"Gemini",className:e});function C$({provider:e="claude",className:t="w-5 h-5"}){return e==="cursor"?o.jsx(S$,{className:t}):e==="codex"?o.jsx(w$,{className:t}):e==="gemini"?o.jsx(E$,{className:t}):o.jsx(k$,{className:t})}const N$=/^\s*[-*]\s+\[( |x|X)\]\s+(.*?)\s*$/u;function tk(e){if(typeof e!="string"||e.trim().length===0)return[];const t=[];for(const r of e.split(/\r?\n/u)){const a=N$.exec(r);if(!a)continue;const i=a[2]?.trim();i&&t.push({checked:a[1].toLowerCase()==="x",content:i})}let n=!1;return t.map((r,a)=>{let i;return r.checked?i="completed":n?i="pending":(i="in_progress",n=!0),{id:`todo-${a+1}`,content:r.content,status:i}})}const nk={Bash:{input:{type:"one-line",icon:"terminal",getValue:e=>e.command,getSecondary:e=>e.description,action:"copy",style:"terminal",wrapText:!0,colorScheme:{primary:"text-green-400 font-mono",secondary:"text-gray-400",background:"",border:"border-green-500 dark:border-green-400",icon:"text-green-500 dark:text-green-400"}},result:{hideOnSuccess:!0,type:"special"}},Read:{input:{type:"one-line",label:"Read",getValue:e=>e.file_path||"",action:"open-file",colorScheme:{primary:"text-gray-700 dark:text-gray-300",background:"",border:"border-gray-300 dark:border-gray-600",icon:"text-gray-500 dark:text-gray-400"}},result:{hidden:!0}},Edit:{input:{type:"collapsible",title:e=>`${e.file_path?.split("/").pop()||e.file_path||"file"}`,defaultOpen:!1,contentType:"diff",actionButton:"none",getContentProps:e=>({oldContent:e.old_string,newContent:e.new_string,filePath:e.file_path,badge:"Edit",badgeColor:"gray"})},result:{hideOnSuccess:!0}},Write:{input:{type:"collapsible",title:e=>`${e.file_path?.split("/").pop()||e.file_path||"file"}`,defaultOpen:!1,contentType:"diff",actionButton:"none",getContentProps:e=>({oldContent:"",newContent:e.content,filePath:e.file_path,badge:"New",badgeColor:"green"})},result:{hideOnSuccess:!0}},ApplyPatch:{input:{type:"collapsible",title:e=>`${e.file_path?.split("/").pop()||e.file_path||"file"}`,defaultOpen:!1,contentType:"diff",actionButton:"none",getContentProps:e=>({oldContent:e.old_string,newContent:e.new_string,filePath:e.file_path,badge:"Patch",badgeColor:"gray"})},result:{hideOnSuccess:!0}},Grep:{input:{type:"one-line",label:"Grep",getValue:e=>e.pattern,getSecondary:e=>e.path?`in ${e.path}`:void 0,action:"jump-to-results",colorScheme:{primary:"text-gray-700 dark:text-gray-300",secondary:"text-gray-500 dark:text-gray-400",background:"",border:"border-gray-400 dark:border-gray-500",icon:"text-gray-500 dark:text-gray-400"}},result:{type:"collapsible",defaultOpen:!1,title:e=>{const t=e.toolUseResult||{},n=t.numFiles||t.filenames?.length||0;return`Found ${n} ${n===1?"file":"files"}`},contentType:"file-list",getContentProps:e=>({files:(e.toolUseResult||{}).filenames||[]})}},Glob:{input:{type:"one-line",label:"Glob",getValue:e=>e.pattern,getSecondary:e=>e.path?`in ${e.path}`:void 0,action:"jump-to-results",colorScheme:{primary:"text-gray-700 dark:text-gray-300",secondary:"text-gray-500 dark:text-gray-400",background:"",border:"border-gray-400 dark:border-gray-500",icon:"text-gray-500 dark:text-gray-400"}},result:{type:"collapsible",defaultOpen:!1,title:e=>{const t=e.toolUseResult||{},n=t.numFiles||t.filenames?.length||0;return`Found ${n} ${n===1?"file":"files"}`},contentType:"file-list",getContentProps:e=>({files:(e.toolUseResult||{}).filenames||[]})}},TodoWrite:{input:{type:"collapsible",title:"Updating todo list",defaultOpen:!1,contentType:"todo-list",getContentProps:e=>({todos:tk(e.markdown)})},result:{type:"collapsible",contentType:"success-message",getMessage:()=>"Todo list updated"}},todo_write:{input:{type:"collapsible",title:"Updating todo list",defaultOpen:!1,contentType:"todo-list",getContentProps:e=>({todos:tk(e.markdown)})},result:{type:"collapsible",contentType:"success-message",getMessage:()=>"Todo list updated"}},TodoRead:{input:{type:"one-line",label:"TodoRead",getValue:()=>"reading list",action:"none",colorScheme:{primary:"text-gray-500 dark:text-gray-400",border:"border-violet-400 dark:border-violet-500"}},result:{type:"collapsible",contentType:"todo-list",getContentProps:e=>{try{const t=String(e.content||"");let n=null;return t.startsWith("[")&&(n=JSON.parse(t)),{todos:n,isResult:!0}}catch(t){return console.warn("Failed to parse todo list content:",t),{todos:[],isResult:!0}}}}},CronCreate:{input:{type:"one-line",label:"CronCreate",getValue:e=>e.prompt||"schedule job",getSecondary:e=>{const t=e.recurring===!1?"one-shot":"recurring",n=e.durable?"durable":"session";return e.cron?`${e.cron} · ${t} · ${n}`:`${t} · ${n}`},action:"none",colorScheme:{primary:"text-gray-700 dark:text-gray-300",secondary:"text-gray-500 dark:text-gray-400",border:"border-amber-400 dark:border-amber-500",icon:"text-amber-500 dark:text-amber-400"}},result:{type:"collapsible",defaultOpen:!1,title:e=>{const t=e?.toolUseResult||{},n=t.data||t,r=n.id?`Scheduled ${n.id}`:"Scheduled job";return n.humanSchedule?`${r} · ${n.humanSchedule}`:r},contentType:"text",getContentProps:e=>({content:String(e?.content||""),format:"plain"})}},CronDelete:{input:{type:"one-line",label:"CronDelete",getValue:e=>e.id||"cancel scheduled job",action:"none",colorScheme:{primary:"text-gray-700 dark:text-gray-300",border:"border-amber-400 dark:border-amber-500",icon:"text-amber-500 dark:text-amber-400"}},result:{type:"collapsible",defaultOpen:!1,title:e=>{const t=e?.toolUseResult||{},n=t.data||t;return n.id?`Cancelled ${n.id}`:"Cancelled scheduled job"},contentType:"text",getContentProps:e=>({content:String(e?.content||""),format:"plain"})}},CronList:{input:{type:"one-line",label:"CronList",getValue:()=>"listing scheduled jobs",action:"none",colorScheme:{primary:"text-gray-700 dark:text-gray-300",border:"border-amber-400 dark:border-amber-500",icon:"text-amber-500 dark:text-amber-400"}},result:{type:"collapsible",defaultOpen:!1,title:e=>{const t=e?.toolUseResult||{},n=t.data?.jobs||t.jobs||[],r=Array.isArray(n)?n.length:0;return`${r} scheduled ${r===1?"job":"jobs"}`},contentType:"text",getContentProps:e=>({content:String(e?.content||""),format:"plain"})}},TaskCreate:{input:{type:"one-line",label:"Task",getValue:e=>e.subject||"Creating task",getSecondary:e=>e.status||void 0,action:"none",colorScheme:{primary:"text-gray-700 dark:text-gray-300",border:"border-violet-400 dark:border-violet-500",icon:"text-violet-500 dark:text-violet-400"}},result:{hideOnSuccess:!0}},TaskUpdate:{input:{type:"one-line",label:"Task",getValue:e=>{const t=[];return e.taskId&&t.push(`#${e.taskId}`),e.status&&t.push(e.status),e.subject&&t.push(`"${e.subject}"`),t.join(" → ")||"updating"},action:"none",colorScheme:{primary:"text-gray-700 dark:text-gray-300",border:"border-violet-400 dark:border-violet-500",icon:"text-violet-500 dark:text-violet-400"}},result:{hideOnSuccess:!0}},TaskList:{input:{type:"one-line",label:"Tasks",getValue:()=>"listing tasks",action:"none",colorScheme:{primary:"text-gray-500 dark:text-gray-400",border:"border-violet-400 dark:border-violet-500",icon:"text-violet-500 dark:text-violet-400"}},result:{type:"collapsible",defaultOpen:!0,title:"Task list",contentType:"task",getContentProps:e=>({content:String(e?.content||"")})}},TaskGet:{input:{type:"one-line",label:"Task",getValue:e=>e.taskId?`#${e.taskId}`:"fetching",action:"none",colorScheme:{primary:"text-gray-700 dark:text-gray-300",border:"border-violet-400 dark:border-violet-500",icon:"text-violet-500 dark:text-violet-400"}},result:{type:"collapsible",defaultOpen:!0,title:"Task details",contentType:"task",getContentProps:e=>({content:String(e?.content||"")})}},Task:{input:{type:"collapsible",title:e=>{const t=e.subagent_type||"Agent",n=e.description||"Running task";return`Subagent / ${t}: ${n}`},defaultOpen:!1,contentType:"markdown",getContentProps:e=>{if(e.prompt&&!e.model&&!e.resume)return{content:e.prompt||""};const n=[];return e.model&&n.push(`**Model:** ${e.model}`),e.prompt&&n.push(`**Prompt:** +${e.prompt}`),e.resume&&n.push(`**Resuming from:** ${e.resume}`),{content:n.join(` + +`)}},colorScheme:{border:"border-purple-500 dark:border-purple-400",icon:"text-purple-500 dark:text-purple-400"}},result:{type:"collapsible",title:"Subagent result",defaultOpen:!1,contentType:"markdown",getContentProps:e=>{if(e&&e.content){let t=e.content;if(typeof t=="string")try{const n=JSON.parse(t);Array.isArray(n)&&(t=n)}catch{return{content:t}}return Array.isArray(t)?{content:t.filter(r=>r.type==="text").map(r=>r.text).join(` + +`)||"No response text"}:{content:String(t)}}return{content:String(e||"No response")}}}},AskUserQuestion:{input:{type:"collapsible",title:e=>{const t=Array.isArray(e.questions)?e.questions:[],n=t.length,r=e.answers&&typeof e.answers=="object"&&!Array.isArray(e.answers)&&Object.keys(e.answers).length>0;if(n===1){const a=t[0]?.header||"Question";return r?`${a} — answered`:a}return n===0&&e.questions?"Question payload":r?`${n} questions — answered`:`${n} questions`},defaultOpen:!0,contentType:"question-answer",getContentProps:e=>({questions:e.questions,answers:e.answers||{}})},result:{hideOnSuccess:!0}},exit_plan_mode:{input:{type:"hidden"},result:{type:"card",contentType:"plan-card",getContentProps:e=>({planTitle:e.planTitle||"Implementation Plan",planSummary:e.planSummary||"",planFilePath:e.planFilePath||""})}},ExitPlanMode:{input:{type:"hidden"},result:{type:"card",contentType:"plan-card",getContentProps:e=>({planTitle:e.planTitle||"Implementation Plan",planSummary:e.planSummary||"",planFilePath:e.planFilePath||""})}},Default:{input:{type:"collapsible",title:"Parameters",defaultOpen:!1,contentType:"text",getContentProps:e=>({content:typeof e=="string"?e:JSON.stringify(e,null,2),format:"code"})},result:{type:"collapsible",contentType:"text",getContentProps:e=>({content:String(e?.content||""),format:"plain"})}}},T$={agent:"Task",ask_user_question:"AskUserQuestion",bash:"Bash",edit_file:"Edit",glob:"Glob",grep:"Grep",read_file:"Read",write_file:"Write"};function jA(e){return T$[e]||e}function OA(e){const t=jA(e);return nk[t]||nk.Default}function A$(e,t){const n=OA(e);return n.result?!!(n.result.hidden||n.result.hideOnSuccess&&t&&!t.isError):!1}const DA=({title:e,toolName:t,open:n=!1,action:r,onTitleClick:a,children:i,className:s="",autoExpandable:l=!0})=>o.jsxs("details",{className:`group/details relative ${s}`,open:n,"data-auto-expand":l?void 0:"false",children:[o.jsxs("summary",{className:"flex cursor-pointer select-none items-center gap-1.5 py-0.5 text-xs group-open/details:sticky group-open/details:top-0 group-open/details:z-10 group-open/details:-mx-1 group-open/details:bg-background group-open/details:px-1",children:[o.jsx("svg",{className:"h-3 w-3 flex-shrink-0 text-gray-400 transition-transform duration-150 group-open/details:rotate-90 dark:text-gray-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})}),t&&o.jsx("span",{className:"flex-shrink-0 font-medium text-gray-500 dark:text-gray-400",children:t}),t&&o.jsx("span",{className:"flex-shrink-0 text-[10px] text-gray-300 dark:text-gray-600",children:"/"}),a?o.jsx("button",{onClick:c=>{c.preventDefault(),c.stopPropagation(),a()},className:"flex-1 truncate text-left font-mono text-blue-600 transition-colors hover:text-blue-700 hover:underline dark:text-blue-400 dark:hover:text-blue-300",children:e}):o.jsx("span",{className:"flex-1 truncate text-gray-600 dark:text-gray-400",children:e}),r&&o.jsx("span",{className:"ml-1 flex-shrink-0",children:r})]}),o.jsx("div",{className:"mt-1.5 pl-[18px]",children:i})]});function Ku(e){if(typeof e=="string")return e;if(e==null)return"";try{return typeof e=="object"?JSON.stringify(e,null,2):String(e)}catch{return String(e)}}const I$=({oldContent:e,newContent:t,filePath:n,createDiff:r,onFileClick:a,badge:i="Diff",badgeColor:s="gray"})=>{const l=Ku(e),c=Ku(t),u=Ku(n),d=s==="green"?"bg-green-100 dark:bg-green-900/30 text-green-600 dark:text-green-400":"bg-gray-100 dark:bg-gray-800 text-gray-500 dark:text-gray-400",p=h.useMemo(()=>e===void 0||t===void 0?[]:r(l,c),[r,e,t,l,c]);return o.jsxs("div",{className:"overflow-hidden rounded border border-gray-200/60 dark:border-gray-700/50",children:[o.jsxs("div",{className:"flex items-center justify-between border-b border-gray-200/60 bg-gray-50/80 px-2.5 py-1 dark:border-gray-700/50 dark:bg-gray-800/40",children:[a?o.jsx("button",{onClick:a,className:"cursor-pointer truncate font-mono text-[11px] text-blue-600 transition-colors hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",children:u}):o.jsx("span",{className:"truncate font-mono text-[11px] text-gray-600 dark:text-gray-400",children:u}),o.jsx("span",{className:`rounded px-1.5 py-px text-[10px] font-medium ${d} ml-2 flex-shrink-0`,children:i})]}),o.jsx("div",{className:"font-mono text-[11px] leading-[18px]",children:p.map((m,f)=>o.jsxs("div",{className:"flex",children:[o.jsx("span",{className:`w-6 flex-shrink-0 select-none text-center ${m.type==="removed"?"bg-red-50 text-red-400 dark:bg-red-950/30 dark:text-red-500":"bg-green-50 text-green-400 dark:bg-green-950/30 dark:text-green-500"}`,children:m.type==="removed"?"-":"+"}),o.jsx("span",{className:`flex-1 whitespace-pre-wrap px-2 ${m.type==="removed"?"bg-red-50/50 text-red-800 dark:bg-red-950/20 dark:text-red-200":"bg-green-50/50 text-green-800 dark:bg-green-950/20 dark:text-green-200"}`,children:m.content})]},f))})]})},R$=({toolName:e,icon:t,label:n,value:r,secondary:a,action:i="none",onAction:s,style:l,wrapText:c=!1,colorScheme:u={primary:"text-gray-700 dark:text-gray-300",secondary:"text-gray-500 dark:text-gray-400",background:"",border:"border-gray-300 dark:border-gray-600",icon:"text-gray-500 dark:text-gray-400"},toolResult:d,toolId:p})=>{const[m,f]=h.useState(!1),g=l==="terminal",b=async()=>{if(i==="copy"&&r){if(!await ta(r))return;f(!0),setTimeout(()=>f(!1),2e3)}else s&&s()},x=()=>o.jsx("button",{onClick:b,className:"ml-1 flex-shrink-0 text-gray-400 opacity-0 transition-all hover:text-gray-600 group-hover:opacity-100 dark:hover:text-gray-200",title:"Copy to clipboard","aria-label":"Copy to clipboard",children:m?o.jsx("svg",{className:"h-3 w-3 text-green-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}):o.jsx("svg",{className:"h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})});if(g)return o.jsxs("div",{className:"group my-1",children:[o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx("div",{className:"flex flex-shrink-0 items-center gap-1.5 pt-0.5",children:o.jsx("svg",{className:"h-3 w-3 text-green-500 dark:text-green-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})})}),o.jsxs("div",{className:"flex min-w-0 flex-1 items-start gap-2",children:[o.jsx("div",{className:"min-w-0 flex-1 rounded bg-gray-900 px-2.5 py-1 dark:bg-black",children:o.jsxs("code",{className:`font-mono text-xs text-green-400 ${c?"whitespace-pre-wrap break-all":"block truncate"}`,children:[o.jsx("span",{className:"select-none text-green-600 dark:text-green-500",children:"$ "}),r]})}),i==="copy"&&x()]})]}),a&&o.jsx("div",{className:"ml-7 mt-1",children:o.jsx("span",{className:"text-[11px] italic text-gray-400 dark:text-gray-500",children:a})})]});if(i==="open-file"){const k=r.split("/").pop()||r;return o.jsxs("div",{className:`group flex items-center gap-1.5 border-l-2 ${u.border} my-0.5 py-0.5 pl-3`,children:[o.jsx("span",{className:"flex-shrink-0 text-xs text-gray-500 dark:text-gray-400",children:n||e}),o.jsx("span",{className:"text-[10px] text-gray-300 dark:text-gray-600",children:"/"}),o.jsx("button",{onClick:b,className:"truncate font-mono text-xs text-blue-600 transition-colors hover:text-blue-700 hover:underline dark:text-blue-400 dark:hover:text-blue-300",title:r,children:k})]})}return i==="jump-to-results"?o.jsxs("div",{className:`group flex items-center gap-1.5 border-l-2 ${u.border} my-0.5 py-0.5 pl-3`,children:[o.jsx("span",{className:"flex-shrink-0 text-xs text-gray-500 dark:text-gray-400",children:n||e}),o.jsx("span",{className:"text-[10px] text-gray-300 dark:text-gray-600",children:"/"}),o.jsx("span",{className:`min-w-0 flex-1 truncate font-mono text-xs ${u.primary}`,children:r}),a&&o.jsx("span",{className:"flex-shrink-0 text-[11px] italic text-gray-400 dark:text-gray-500",children:a}),d&&o.jsx("a",{href:`#tool-result-${p}`,className:"flex flex-shrink-0 items-center gap-0.5 text-[11px] text-blue-600 transition-colors hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",children:o.jsx("svg",{className:"h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})})]}):o.jsxs("div",{className:`group flex items-center gap-1.5 ${u.background||""} border-l-2 ${u.border} my-0.5 py-0.5 pl-3`,children:[t&&t!=="terminal"&&o.jsx("span",{className:`${u.icon} flex-shrink-0 text-xs`,children:t}),!t&&(n||e)&&o.jsx("span",{className:"flex-shrink-0 text-xs text-gray-500 dark:text-gray-400",children:n||e}),(t||n||e)&&o.jsx("span",{className:"text-[10px] text-gray-300 dark:text-gray-600",children:"/"}),o.jsx("span",{className:`font-mono text-xs ${c?"whitespace-pre-wrap break-all":"truncate"} min-w-0 flex-1 ${u.primary}`,children:r}),a&&o.jsx("span",{className:`text-[11px] ${u.secondary} flex-shrink-0 italic`,children:a}),i==="copy"&&x()]})},rk={edit:"border-l-amber-500 dark:border-l-amber-400",search:"border-l-gray-400 dark:border-l-gray-500",bash:"border-l-green-500 dark:border-l-green-400",todo:"border-l-violet-500 dark:border-l-violet-400",task:"border-l-violet-500 dark:border-l-violet-400",agent:"border-l-purple-500 dark:border-l-purple-400",plan:"border-l-indigo-500 dark:border-l-indigo-400",question:"border-l-blue-500 dark:border-l-blue-400",default:"border-l-gray-300 dark:border-l-gray-600"},MA=({toolName:e,title:t,defaultOpen:n=!1,action:r,onTitleClick:a,children:i,showRawParameters:s=!1,rawContent:l,className:c="",toolCategory:u,autoExpandable:d=!0})=>{const p=rk[u||"default"]||rk.default;return o.jsx("div",{className:`border-l-2 ${p} my-1 py-0.5 pl-3 ${c}`,children:o.jsxs(DA,{title:t,toolName:e,open:n,action:r,onTitleClick:a,autoExpandable:d,children:[i,s&&l&&o.jsxs("details",{className:"group/raw relative mt-2",children:[o.jsxs("summary",{className:"flex cursor-pointer items-center gap-1.5 py-0.5 text-[11px] text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",children:[o.jsx("svg",{className:"h-2.5 w-2.5 transition-transform duration-150 group-open/raw:rotate-90",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})}),"raw params"]}),o.jsx("pre",{className:"mt-1 overflow-hidden whitespace-pre-wrap break-words rounded border border-gray-200/40 bg-gray-50 p-2 font-mono text-[11px] text-gray-600 dark:border-gray-700/40 dark:bg-gray-900/50 dark:text-gray-400",children:l})]})]})})},il=(e,t)=>{const n=typeof t=="string"?(()=>{try{return JSON.parse(t)}catch{return{}}})():t||{};switch(e){case"Read":case"Write":case"Edit":case"ApplyPatch":return n.file_path?.split("/").pop()||n.file_path||"";case"Grep":case"Glob":return n.pattern||"";case"Bash":const r=n.command||"";return r.length>40?`${r.slice(0,40)}...`:r;case"Task":return n.description||n.subagent_type||"";case"WebFetch":case"WebSearch":return n.url||n.query||"";default:return""}},_$=({toolInput:e,toolResult:t,subagentState:n})=>{const r=typeof e=="string"?(()=>{try{return JSON.parse(e)}catch{return{}}})():e||{},a=r?.subagent_type||r?.subagentType||"Agent",i=r?.description||"Running task",s=r?.prompt||"",l=Array.isArray(n.childTools)?n.childTools:[],{currentToolIndex:c,isComplete:u}=n,d=!!(n.isFailed||t?.isError),p=c>=0?l[c]:null,m=`Subagent / ${a}: ${i}`;return o.jsx("div",{className:"my-1 border-l-2 border-l-purple-500 py-0.5 pl-3 dark:border-l-purple-400",children:o.jsxs(DA,{title:m,toolName:"Task",open:!1,children:[s&&o.jsx("div",{className:"mb-2 line-clamp-4 whitespace-pre-wrap break-words text-xs text-gray-600 dark:text-gray-400",children:s}),p&&!u&&o.jsxs("div",{className:"mt-1 flex items-center gap-1.5 text-xs text-gray-500 dark:text-gray-400",children:[o.jsx("span",{className:"h-1.5 w-1.5 flex-shrink-0 animate-pulse rounded-full bg-purple-500 dark:bg-purple-400"}),o.jsx("span",{className:"text-gray-400 dark:text-gray-500",children:"Currently:"}),o.jsx("span",{className:"font-medium text-gray-600 dark:text-gray-300",children:p.toolName}),il(p.toolName,p.toolInput)&&o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-gray-300 dark:text-gray-600",children:"/"}),o.jsx("span",{className:"truncate font-mono text-gray-500 dark:text-gray-400",children:il(p.toolName,p.toolInput)})]})]}),!p&&!u&&o.jsxs("div",{className:"mt-1 flex items-center gap-1.5 text-xs text-gray-500 dark:text-gray-400",children:[o.jsx("span",{className:"h-1.5 w-1.5 flex-shrink-0 animate-pulse rounded-full bg-purple-500 dark:bg-purple-400"}),o.jsx("span",{children:"Running subagent..."})]}),u&&d&&o.jsxs("div",{className:"mt-1 flex items-center gap-1.5 text-xs text-red-600 dark:text-red-400",children:[o.jsx("svg",{className:"h-3 w-3 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})}),o.jsxs("span",{children:["Failed (",l.length," ",l.length===1?"tool":"tools",")"]})]}),u&&!d&&o.jsxs("div",{className:"mt-1 flex items-center gap-1.5 text-xs text-green-600 dark:text-green-400",children:[o.jsx("svg",{className:"h-3 w-3 flex-shrink-0",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),o.jsxs("span",{children:["Completed (",l.length," ",l.length===1?"tool":"tools",")"]})]}),l.length>0&&o.jsxs("details",{className:"group/history mt-2",children:[o.jsxs("summary",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",children:[o.jsx("svg",{className:"h-2.5 w-2.5 flex-shrink-0 transition-transform duration-150 group-open/history:rotate-90",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})}),o.jsxs("span",{children:["View tool history (",l.length,")"]})]}),o.jsx("div",{className:"mt-1 space-y-0.5 border-l border-gray-200 pl-3 dark:border-gray-700",children:l.map((f,g)=>o.jsxs("div",{className:"flex items-center gap-1.5 text-[11px] text-gray-500 dark:text-gray-400",children:[o.jsxs("span",{className:"w-4 flex-shrink-0 text-right text-gray-400 dark:text-gray-500",children:[g+1,"."]}),o.jsx("span",{className:"font-medium",children:f.toolName}),il(f.toolName,f.toolInput)&&o.jsx("span",{className:"truncate font-mono text-gray-400 dark:text-gray-500",children:il(f.toolName,f.toolInput)}),f.toolResult?.isError&&o.jsx("span",{className:"flex-shrink-0 text-red-500",children:"(error)"})]},f.toolId))})]}),u&&t&&o.jsx("div",{className:"mt-2 text-xs text-gray-600 dark:text-gray-400",children:(()=>{let f=t.content;if(typeof f=="string")try{const g=JSON.parse(f);if(Array.isArray(g)){const b=g.filter(x=>x.type==="text"&&x.text).map(x=>x.text);b.length>0&&(f=b.join(` +`))}}catch{}else if(Array.isArray(f)){const g=f.filter(b=>b.type==="text"&&b.text).map(b=>b.text);g.length>0&&(f=g.join(` +`))}return typeof f=="string"?o.jsx("div",{className:"line-clamp-6 whitespace-pre-wrap break-words",children:f}):f?o.jsx("pre",{className:"line-clamp-6 whitespace-pre-wrap break-words font-mono text-[11px]",children:JSON.stringify(f,null,2)}):null})()})]})})};function ak(e){const t=[],n=String(e||"");let r=n.indexOf(","),a=0,i=!1;for(;!i;){r===-1&&(r=n.length,i=!0);const s=n.slice(a,r).trim();(s||!i)&&t.push(s),a=r+1,r=n.indexOf(",",a)}return t}function j$(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const O$=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,D$=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,M$={};function ik(e,t){return(M$.jsx?D$:O$).test(e)}const L$=/[ \t\n\f\r]/g;function P$(e){return typeof e=="object"?e.type==="text"?sk(e.value):!1:sk(e)}function sk(e){return e.replace(L$,"")===""}class Ro{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}Ro.prototype.normal={};Ro.prototype.property={};Ro.prototype.space=void 0;function LA(e,t){const n={},r={};for(const a of e)Object.assign(n,a.property),Object.assign(r,a.normal);return new Ro(n,r,t)}function go(e){return e.toLowerCase()}class Hn{constructor(t,n){this.attribute=n,this.property=t}}Hn.prototype.attribute="";Hn.prototype.booleanish=!1;Hn.prototype.boolean=!1;Hn.prototype.commaOrSpaceSeparated=!1;Hn.prototype.commaSeparated=!1;Hn.prototype.defined=!1;Hn.prototype.mustUseProperty=!1;Hn.prototype.number=!1;Hn.prototype.overloadedBoolean=!1;Hn.prototype.property="";Hn.prototype.spaceSeparated=!1;Hn.prototype.space=void 0;let F$=0;const yt=di(),nn=di(),pb=di(),_e=di(),Mt=di(),Hi=di(),Wn=di();function di(){return 2**++F$}const mb=Object.freeze(Object.defineProperty({__proto__:null,boolean:yt,booleanish:nn,commaOrSpaceSeparated:Wn,commaSeparated:Hi,number:_e,overloadedBoolean:pb,spaceSeparated:Mt},Symbol.toStringTag,{value:"Module"})),Yu=Object.keys(mb);class Ux extends Hn{constructor(t,n,r,a){let i=-1;if(super(t,n),ok(this,"space",a),typeof r=="number")for(;++i4&&n.slice(0,4)==="data"&&q$.test(t)){if(t.charAt(4)==="-"){const i=t.slice(5).replace(lk,G$);r="data"+i.charAt(0).toUpperCase()+i.slice(1)}else{const i=t.slice(4);if(!lk.test(i)){let s=i.replace(z$,H$);s.charAt(0)!=="-"&&(s="-"+s),t="data"+s}}a=Ux}return new a(r,t)}function H$(e){return"-"+e.toLowerCase()}function G$(e){return e.charAt(1).toUpperCase()}const HA=LA([PA,B$,$A,UA,zA],"html"),Hc=LA([PA,$$,$A,UA,zA],"svg");function ck(e){const t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function V$(e){return e.join(" ").trim()}var wi={},Xu,uk;function W$(){if(uk)return Xu;uk=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,i=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,l=/^\s+|\s+$/g,c=` +`,u="/",d="*",p="",m="comment",f="declaration";function g(x,k){if(typeof x!="string")throw new TypeError("First argument must be a string");if(!x)return[];k=k||{};var y=1,v=1;function E(M){var P=M.match(t);P&&(y+=P.length);var B=M.lastIndexOf(c);v=~B?M.length-B:v+M.length}function N(){var M={line:y,column:v};return function(P){return P.position=new w(M),_(),P}}function w(M){this.start=M,this.end={line:y,column:v},this.source=k.source}w.prototype.content=x;function T(M){var P=new Error(k.source+":"+y+":"+v+": "+M);if(P.reason=M,P.filename=k.source,P.line=y,P.column=v,P.source=x,!k.silent)throw P}function j(M){var P=M.exec(x);if(P){var B=P[0];return E(B),x=x.slice(B.length),P}}function _(){j(n)}function C(M){var P;for(M=M||[];P=O();)P!==!1&&M.push(P);return M}function O(){var M=N();if(!(u!=x.charAt(0)||d!=x.charAt(1))){for(var P=2;p!=x.charAt(P)&&(d!=x.charAt(P)||u!=x.charAt(P+1));)++P;if(P+=2,p===x.charAt(P-1))return T("End of comment missing");var B=x.slice(2,P-2);return v+=2,E(B),x=x.slice(P),v+=2,M({type:m,comment:B})}}function I(){var M=N(),P=j(r);if(P){if(O(),!j(a))return T("property missing ':'");var B=j(i),$=M({type:f,property:b(P[0].replace(e,p)),value:B?b(B[0].replace(e,p)):p});return j(s),$}}function z(){var M=[];C(M);for(var P;P=I();)P!==!1&&(M.push(P),C(M));return M}return _(),z()}function b(x){return x?x.replace(l,p):p}return Xu=g,Xu}var dk;function K$(){if(dk)return wi;dk=1;var e=wi&&wi.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(wi,"__esModule",{value:!0}),wi.default=n;const t=e(W$());function n(r,a){let i=null;if(!r||typeof r!="string")return i;const s=(0,t.default)(r),l=typeof a=="function";return s.forEach(c=>{if(c.type!=="declaration")return;const{property:u,value:d}=c;l?a(u,d,c):d&&(i=i||{},i[u]=d)}),i}return wi}var Ps={},pk;function Y$(){if(pk)return Ps;pk=1,Object.defineProperty(Ps,"__esModule",{value:!0}),Ps.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,i=function(u){return!u||n.test(u)||e.test(u)},s=function(u,d){return d.toUpperCase()},l=function(u,d){return"".concat(d,"-")},c=function(u,d){return d===void 0&&(d={}),i(u)?u:(u=u.toLowerCase(),d.reactCompat?u=u.replace(a,l):u=u.replace(r,l),u.replace(t,s))};return Ps.camelCase=c,Ps}var Fs,mk;function X$(){if(mk)return Fs;mk=1;var e=Fs&&Fs.__importDefault||function(a){return a&&a.__esModule?a:{default:a}},t=e(K$()),n=Y$();function r(a,i){var s={};return!a||typeof a!="string"||(0,t.default)(a,function(l,c){l&&c&&(s[(0,n.camelCase)(l,i)]=c)}),s}return r.default=r,Fs=r,Fs}var Z$=X$();const J$=os(Z$),GA=VA("end"),zx=VA("start");function VA(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function Q$(e){const t=zx(e),n=GA(e);if(t&&n)return{start:t,end:n}}function ao(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?fk(e.position):"start"in e||"end"in e?fk(e):"line"in e||"column"in e?fb(e):""}function fb(e){return hk(e&&e.line)+":"+hk(e&&e.column)}function fk(e){return fb(e&&e.start)+"-"+fb(e&&e.end)}function hk(e){return e&&typeof e=="number"?e:1}class Cn extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let a="",i={},s=!1;if(n&&("line"in n&&"column"in n?i={place:n}:"start"in n&&"end"in n?i={place:n}:"type"in n?i={ancestors:[n],place:n.position}:i={...n}),typeof t=="string"?a=t:!i.cause&&t&&(s=!0,a=t.message,i.cause=t),!i.ruleId&&!i.source&&typeof r=="string"){const c=r.indexOf(":");c===-1?i.ruleId=r:(i.source=r.slice(0,c),i.ruleId=r.slice(c+1))}if(!i.place&&i.ancestors&&i.ancestors){const c=i.ancestors[i.ancestors.length-1];c&&(i.place=c.position)}const l=i.place&&"start"in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=l?l.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=l?l.line:void 0,this.name=ao(i.place)||"1:1",this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=s&&i.cause&&typeof i.cause.stack=="string"?i.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Cn.prototype.file="";Cn.prototype.name="";Cn.prototype.reason="";Cn.prototype.message="";Cn.prototype.stack="";Cn.prototype.column=void 0;Cn.prototype.line=void 0;Cn.prototype.ancestors=void 0;Cn.prototype.cause=void 0;Cn.prototype.fatal=void 0;Cn.prototype.place=void 0;Cn.prototype.ruleId=void 0;Cn.prototype.source=void 0;const qx={}.hasOwnProperty,eU=new Map,tU=/[A-Z]/g,nU=new Set(["table","tbody","thead","tfoot","tr"]),rU=new Set(["td","th"]),WA="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function aU(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=pU(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=dU(n,t.jsx,t.jsxs)}const a={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Hc:HA,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},i=KA(a,e,void 0);return i&&typeof i!="string"?i:a.create(e,a.Fragment,{children:i||void 0},void 0)}function KA(e,t,n){if(t.type==="element")return iU(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return sU(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return lU(e,t,n);if(t.type==="mdxjsEsm")return oU(e,t);if(t.type==="root")return cU(e,t,n);if(t.type==="text")return uU(e,t)}function iU(e,t,n){const r=e.schema;let a=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(a=Hc,e.schema=a),e.ancestors.push(t);const i=XA(e,t.tagName,!1),s=mU(e,t);let l=Gx(e,t);return nU.has(t.tagName)&&(l=l.filter(function(c){return typeof c=="string"?!P$(c):!0})),YA(e,s,i,t),Hx(s,l),e.ancestors.pop(),e.schema=r,e.create(t,i,s,n)}function sU(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}bo(e,t.position)}function oU(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);bo(e,t.position)}function lU(e,t,n){const r=e.schema;let a=r;t.name==="svg"&&r.space==="html"&&(a=Hc,e.schema=a),e.ancestors.push(t);const i=t.name===null?e.Fragment:XA(e,t.name,!0),s=fU(e,t),l=Gx(e,t);return YA(e,s,i,t),Hx(s,l),e.ancestors.pop(),e.schema=r,e.create(t,i,s,n)}function cU(e,t,n){const r={};return Hx(r,Gx(e,t)),e.create(t,e.Fragment,r,n)}function uU(e,t){return t.value}function YA(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function Hx(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function dU(e,t,n){return r;function r(a,i,s,l){const u=Array.isArray(s.children)?n:t;return l?u(i,s,l):u(i,s)}}function pU(e,t){return n;function n(r,a,i,s){const l=Array.isArray(i.children),c=zx(r);return t(a,i,s,l,{columnNumber:c?c.column-1:void 0,fileName:e,lineNumber:c?c.line:void 0},void 0)}}function mU(e,t){const n={};let r,a;for(a in t.properties)if(a!=="children"&&qx.call(t.properties,a)){const i=hU(e,a,t.properties[a]);if(i){const[s,l]=i;e.tableCellAlignToStyle&&s==="align"&&typeof l=="string"&&rU.has(t.tagName)?r=l:n[s]=l}}if(r){const i=n.style||(n.style={});i[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function fU(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const i=r.data.estree.body[0];i.type;const s=i.expression;s.type;const l=s.properties[0];l.type,Object.assign(n,e.evaluater.evaluateExpression(l.argument))}else bo(e,t.position);else{const a=r.name;let i;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const l=r.value.data.estree.body[0];l.type,i=e.evaluater.evaluateExpression(l.expression)}else bo(e,t.position);else i=r.value===null?!0:r.value;n[a]=i}return n}function Gx(e,t){const n=[];let r=-1;const a=e.passKeys?new Map:eU;for(;++ra?0:a+t:t=t>a?a:t,n=n>0?n:0,r.length<1e4)s=Array.from(r),s.unshift(t,n),e.splice(...s);else for(n&&e.splice(t,n);i0?(Jn(e,e.length,0,t),e):t}const xk={}.hasOwnProperty;function JA(e){const t={};let n=-1;for(;++n13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function Sr(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Rn=Ra(/[A-Za-z]/),kn=Ra(/[\dA-Za-z]/),EU=Ra(/[#-'*+\--9=?A-Z^-~]/);function uc(e){return e!==null&&(e<32||e===127)}const hb=Ra(/\d/),CU=Ra(/[\dA-Fa-f]/),NU=Ra(/[!-/:-@[-`{-~]/);function nt(e){return e!==null&&e<-2}function Ot(e){return e!==null&&(e<0||e===32)}function Nt(e){return e===-2||e===-1||e===32}const Gc=Ra(new RegExp("\\p{P}|\\p{S}","u")),si=Ra(/\s/);function Ra(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function bs(e){const t=[];let n=-1,r=0,a=0;for(;++n55295&&i<57344){const l=e.charCodeAt(n+1);i<56320&&l>56319&&l<57344?(s=String.fromCharCode(i,l),a=1):s="�"}else s=String.fromCharCode(i);s&&(t.push(e.slice(r,n),encodeURIComponent(s)),r=n+a+1,s=""),a&&(n+=a,a=0)}return t.join("")+e.slice(r)}function Et(e,t,n,r){const a=r?r-1:Number.POSITIVE_INFINITY;let i=0;return s;function s(c){return Nt(c)?(e.enter(n),l(c)):t(c)}function l(c){return Nt(c)&&i++s))return;const T=t.events.length;let j=T,_,C;for(;j--;)if(t.events[j][0]==="exit"&&t.events[j][1].type==="chunkFlow"){if(_){C=t.events[j][1].end;break}_=!0}for(k(r),w=T;wv;){const N=n[E];t.containerState=N[1],N[0].exit.call(t,e)}n.length=v}function y(){a.write([null]),i=void 0,a=void 0,t.containerState._closeFlow=void 0}}function _U(e,t,n){return Et(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function es(e){if(e===null||Ot(e)||si(e))return 1;if(Gc(e))return 2}function Vc(e,t,n){const r=[];let a=-1;for(;++a1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[r][1].end},m={...e[n][1].start};vk(p,-c),vk(m,c),s={type:c>1?"strongSequence":"emphasisSequence",start:p,end:{...e[r][1].end}},l={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:m},i={type:c>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},a={type:c>1?"strong":"emphasis",start:{...s.start},end:{...l.end}},e[r][1].end={...s.start},e[n][1].start={...l.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=sr(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=sr(u,[["enter",a,t],["enter",s,t],["exit",s,t],["enter",i,t]]),u=sr(u,Vc(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),u=sr(u,[["exit",i,t],["enter",l,t],["exit",l,t],["exit",a,t]]),e[n][1].end.offset-e[n][1].start.offset?(d=2,u=sr(u,[["enter",e[n][1],t],["exit",e[n][1],t]])):d=0,Jn(e,r-1,n-r+3,u),n=r+u.length-d-2;break}}for(n=-1;++n0&&Nt(w)?Et(e,y,"linePrefix",i+1)(w):y(w)}function y(w){return w===null||nt(w)?e.check(kk,b,E)(w):(e.enter("codeFlowValue"),v(w))}function v(w){return w===null||nt(w)?(e.exit("codeFlowValue"),y(w)):(e.consume(w),v)}function E(w){return e.exit("codeFenced"),t(w)}function N(w,T,j){let _=0;return C;function C(P){return w.enter("lineEnding"),w.consume(P),w.exit("lineEnding"),O}function O(P){return w.enter("codeFencedFence"),Nt(P)?Et(w,I,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(P):I(P)}function I(P){return P===l?(w.enter("codeFencedFenceSequence"),z(P)):j(P)}function z(P){return P===l?(_++,w.consume(P),z):_>=s?(w.exit("codeFencedFenceSequence"),Nt(P)?Et(w,M,"whitespace")(P):M(P)):j(P)}function M(P){return P===null||nt(P)?(w.exit("codeFencedFence"),T(P)):j(P)}}}function qU(e,t,n){const r=this;return a;function a(s){return s===null?n(s):(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),i)}function i(s){return r.parser.lazy[r.now().line]?n(s):t(s)}}const Ju={name:"codeIndented",tokenize:GU},HU={partial:!0,tokenize:VU};function GU(e,t,n){const r=this;return a;function a(u){return e.enter("codeIndented"),Et(e,i,"linePrefix",5)(u)}function i(u){const d=r.events[r.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?s(u):n(u)}function s(u){return u===null?c(u):nt(u)?e.attempt(HU,s,c)(u):(e.enter("codeFlowValue"),l(u))}function l(u){return u===null||nt(u)?(e.exit("codeFlowValue"),s(u)):(e.consume(u),l)}function c(u){return e.exit("codeIndented"),t(u)}}function VU(e,t,n){const r=this;return a;function a(s){return r.parser.lazy[r.now().line]?n(s):nt(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),a):Et(e,i,"linePrefix",5)(s)}function i(s){const l=r.events[r.events.length-1];return l&&l[1].type==="linePrefix"&&l[2].sliceSerialize(l[1],!0).length>=4?t(s):nt(s)?a(s):n(s)}}const WU={name:"codeText",previous:YU,resolve:KU,tokenize:XU};function KU(e){let t=e.length-4,n=3,r,a;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return tthis.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const a=n||0;this.setCursor(Math.trunc(t));const i=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return r&&Bs(this.left,r),i.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Bs(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Bs(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t=4?t(s):e.interrupt(r.parser.constructs.flow,n,t)(s)}}function aI(e,t,n,r,a,i,s,l,c){const u=c||Number.POSITIVE_INFINITY;let d=0;return p;function p(k){return k===60?(e.enter(r),e.enter(a),e.enter(i),e.consume(k),e.exit(i),m):k===null||k===32||k===41||uc(k)?n(k):(e.enter(r),e.enter(s),e.enter(l),e.enter("chunkString",{contentType:"string"}),b(k))}function m(k){return k===62?(e.enter(i),e.consume(k),e.exit(i),e.exit(a),e.exit(r),t):(e.enter(l),e.enter("chunkString",{contentType:"string"}),f(k))}function f(k){return k===62?(e.exit("chunkString"),e.exit(l),m(k)):k===null||k===60||nt(k)?n(k):(e.consume(k),k===92?g:f)}function g(k){return k===60||k===62||k===92?(e.consume(k),f):f(k)}function b(k){return!d&&(k===null||k===41||Ot(k))?(e.exit("chunkString"),e.exit(l),e.exit(s),e.exit(r),t(k)):d999||f===null||f===91||f===93&&!c||f===94&&!l&&"_hiddenFootnoteSupport"in s.parser.constructs?n(f):f===93?(e.exit(i),e.enter(a),e.consume(f),e.exit(a),e.exit(r),t):nt(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),d):(e.enter("chunkString",{contentType:"string"}),p(f))}function p(f){return f===null||f===91||f===93||nt(f)||l++>999?(e.exit("chunkString"),d(f)):(e.consume(f),c||(c=!Nt(f)),f===92?m:p)}function m(f){return f===91||f===92||f===93?(e.consume(f),l++,p):p(f)}}function sI(e,t,n,r,a,i){let s;return l;function l(m){return m===34||m===39||m===40?(e.enter(r),e.enter(a),e.consume(m),e.exit(a),s=m===40?41:m,c):n(m)}function c(m){return m===s?(e.enter(a),e.consume(m),e.exit(a),e.exit(r),t):(e.enter(i),u(m))}function u(m){return m===s?(e.exit(i),c(s)):m===null?n(m):nt(m)?(e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),Et(e,u,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),d(m))}function d(m){return m===s||m===null||nt(m)?(e.exit("chunkString"),u(m)):(e.consume(m),m===92?p:d)}function p(m){return m===s||m===92?(e.consume(m),d):d(m)}}function io(e,t){let n;return r;function r(a){return nt(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),n=!0,r):Nt(a)?Et(e,r,n?"linePrefix":"lineSuffix")(a):t(a)}}const az={name:"definition",tokenize:sz},iz={partial:!0,tokenize:oz};function sz(e,t,n){const r=this;let a;return i;function i(f){return e.enter("definition"),s(f)}function s(f){return iI.call(r,e,l,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(f)}function l(f){return a=Sr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),f===58?(e.enter("definitionMarker"),e.consume(f),e.exit("definitionMarker"),c):n(f)}function c(f){return Ot(f)?io(e,u)(f):u(f)}function u(f){return aI(e,d,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(f)}function d(f){return e.attempt(iz,p,p)(f)}function p(f){return Nt(f)?Et(e,m,"whitespace")(f):m(f)}function m(f){return f===null||nt(f)?(e.exit("definition"),r.parser.defined.push(a),t(f)):n(f)}}function oz(e,t,n){return r;function r(l){return Ot(l)?io(e,a)(l):n(l)}function a(l){return sI(e,i,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(l)}function i(l){return Nt(l)?Et(e,s,"whitespace")(l):s(l)}function s(l){return l===null||nt(l)?t(l):n(l)}}const lz={name:"hardBreakEscape",tokenize:cz};function cz(e,t,n){return r;function r(i){return e.enter("hardBreakEscape"),e.consume(i),a}function a(i){return nt(i)?(e.exit("hardBreakEscape"),t(i)):n(i)}}const uz={name:"headingAtx",resolve:dz,tokenize:pz};function dz(e,t){let n=e.length-2,r=3,a,i;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(a={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},i={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},Jn(e,r,n-r+1,[["enter",a,t],["enter",i,t],["exit",i,t],["exit",a,t]])),e}function pz(e,t,n){let r=0;return a;function a(d){return e.enter("atxHeading"),i(d)}function i(d){return e.enter("atxHeadingSequence"),s(d)}function s(d){return d===35&&r++<6?(e.consume(d),s):d===null||Ot(d)?(e.exit("atxHeadingSequence"),l(d)):n(d)}function l(d){return d===35?(e.enter("atxHeadingSequence"),c(d)):d===null||nt(d)?(e.exit("atxHeading"),t(d)):Nt(d)?Et(e,l,"whitespace")(d):(e.enter("atxHeadingText"),u(d))}function c(d){return d===35?(e.consume(d),c):(e.exit("atxHeadingSequence"),l(d))}function u(d){return d===null||d===35||Ot(d)?(e.exit("atxHeadingText"),l(d)):(e.consume(d),u)}}const mz=["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","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Sk=["pre","script","style","textarea"],fz={concrete:!0,name:"htmlFlow",resolveTo:bz,tokenize:xz},hz={partial:!0,tokenize:vz},gz={partial:!0,tokenize:yz};function bz(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function xz(e,t,n){const r=this;let a,i,s,l,c;return u;function u(L){return d(L)}function d(L){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(L),p}function p(L){return L===33?(e.consume(L),m):L===47?(e.consume(L),i=!0,b):L===63?(e.consume(L),a=3,r.interrupt?t:A):Rn(L)?(e.consume(L),s=String.fromCharCode(L),x):n(L)}function m(L){return L===45?(e.consume(L),a=2,f):L===91?(e.consume(L),a=5,l=0,g):Rn(L)?(e.consume(L),a=4,r.interrupt?t:A):n(L)}function f(L){return L===45?(e.consume(L),r.interrupt?t:A):n(L)}function g(L){const le="CDATA[";return L===le.charCodeAt(l++)?(e.consume(L),l===le.length?r.interrupt?t:I:g):n(L)}function b(L){return Rn(L)?(e.consume(L),s=String.fromCharCode(L),x):n(L)}function x(L){if(L===null||L===47||L===62||Ot(L)){const le=L===47,re=s.toLowerCase();return!le&&!i&&Sk.includes(re)?(a=1,r.interrupt?t(L):I(L)):mz.includes(s.toLowerCase())?(a=6,le?(e.consume(L),k):r.interrupt?t(L):I(L)):(a=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(L):i?y(L):v(L))}return L===45||kn(L)?(e.consume(L),s+=String.fromCharCode(L),x):n(L)}function k(L){return L===62?(e.consume(L),r.interrupt?t:I):n(L)}function y(L){return Nt(L)?(e.consume(L),y):C(L)}function v(L){return L===47?(e.consume(L),C):L===58||L===95||Rn(L)?(e.consume(L),E):Nt(L)?(e.consume(L),v):C(L)}function E(L){return L===45||L===46||L===58||L===95||kn(L)?(e.consume(L),E):N(L)}function N(L){return L===61?(e.consume(L),w):Nt(L)?(e.consume(L),N):v(L)}function w(L){return L===null||L===60||L===61||L===62||L===96?n(L):L===34||L===39?(e.consume(L),c=L,T):Nt(L)?(e.consume(L),w):j(L)}function T(L){return L===c?(e.consume(L),c=null,_):L===null||nt(L)?n(L):(e.consume(L),T)}function j(L){return L===null||L===34||L===39||L===47||L===60||L===61||L===62||L===96||Ot(L)?N(L):(e.consume(L),j)}function _(L){return L===47||L===62||Nt(L)?v(L):n(L)}function C(L){return L===62?(e.consume(L),O):n(L)}function O(L){return L===null||nt(L)?I(L):Nt(L)?(e.consume(L),O):n(L)}function I(L){return L===45&&a===2?(e.consume(L),B):L===60&&a===1?(e.consume(L),$):L===62&&a===4?(e.consume(L),K):L===63&&a===3?(e.consume(L),A):L===93&&a===5?(e.consume(L),q):nt(L)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(hz,V,z)(L)):L===null||nt(L)?(e.exit("htmlFlowData"),z(L)):(e.consume(L),I)}function z(L){return e.check(gz,M,V)(L)}function M(L){return e.enter("lineEnding"),e.consume(L),e.exit("lineEnding"),P}function P(L){return L===null||nt(L)?z(L):(e.enter("htmlFlowData"),I(L))}function B(L){return L===45?(e.consume(L),A):I(L)}function $(L){return L===47?(e.consume(L),s="",U):I(L)}function U(L){if(L===62){const le=s.toLowerCase();return Sk.includes(le)?(e.consume(L),K):I(L)}return Rn(L)&&s.length<8?(e.consume(L),s+=String.fromCharCode(L),U):I(L)}function q(L){return L===93?(e.consume(L),A):I(L)}function A(L){return L===62?(e.consume(L),K):L===45&&a===2?(e.consume(L),A):I(L)}function K(L){return L===null||nt(L)?(e.exit("htmlFlowData"),V(L)):(e.consume(L),K)}function V(L){return e.exit("htmlFlow"),t(L)}}function yz(e,t,n){const r=this;return a;function a(s){return nt(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),i):n(s)}function i(s){return r.parser.lazy[r.now().line]?n(s):t(s)}}function vz(e,t,n){return r;function r(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(_o,t,n)}}const kz={name:"htmlText",tokenize:wz};function wz(e,t,n){const r=this;let a,i,s;return l;function l(A){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(A),c}function c(A){return A===33?(e.consume(A),u):A===47?(e.consume(A),N):A===63?(e.consume(A),v):Rn(A)?(e.consume(A),j):n(A)}function u(A){return A===45?(e.consume(A),d):A===91?(e.consume(A),i=0,g):Rn(A)?(e.consume(A),y):n(A)}function d(A){return A===45?(e.consume(A),f):n(A)}function p(A){return A===null?n(A):A===45?(e.consume(A),m):nt(A)?(s=p,$(A)):(e.consume(A),p)}function m(A){return A===45?(e.consume(A),f):p(A)}function f(A){return A===62?B(A):A===45?m(A):p(A)}function g(A){const K="CDATA[";return A===K.charCodeAt(i++)?(e.consume(A),i===K.length?b:g):n(A)}function b(A){return A===null?n(A):A===93?(e.consume(A),x):nt(A)?(s=b,$(A)):(e.consume(A),b)}function x(A){return A===93?(e.consume(A),k):b(A)}function k(A){return A===62?B(A):A===93?(e.consume(A),k):b(A)}function y(A){return A===null||A===62?B(A):nt(A)?(s=y,$(A)):(e.consume(A),y)}function v(A){return A===null?n(A):A===63?(e.consume(A),E):nt(A)?(s=v,$(A)):(e.consume(A),v)}function E(A){return A===62?B(A):v(A)}function N(A){return Rn(A)?(e.consume(A),w):n(A)}function w(A){return A===45||kn(A)?(e.consume(A),w):T(A)}function T(A){return nt(A)?(s=T,$(A)):Nt(A)?(e.consume(A),T):B(A)}function j(A){return A===45||kn(A)?(e.consume(A),j):A===47||A===62||Ot(A)?_(A):n(A)}function _(A){return A===47?(e.consume(A),B):A===58||A===95||Rn(A)?(e.consume(A),C):nt(A)?(s=_,$(A)):Nt(A)?(e.consume(A),_):B(A)}function C(A){return A===45||A===46||A===58||A===95||kn(A)?(e.consume(A),C):O(A)}function O(A){return A===61?(e.consume(A),I):nt(A)?(s=O,$(A)):Nt(A)?(e.consume(A),O):_(A)}function I(A){return A===null||A===60||A===61||A===62||A===96?n(A):A===34||A===39?(e.consume(A),a=A,z):nt(A)?(s=I,$(A)):Nt(A)?(e.consume(A),I):(e.consume(A),M)}function z(A){return A===a?(e.consume(A),a=void 0,P):A===null?n(A):nt(A)?(s=z,$(A)):(e.consume(A),z)}function M(A){return A===null||A===34||A===39||A===60||A===61||A===96?n(A):A===47||A===62||Ot(A)?_(A):(e.consume(A),M)}function P(A){return A===47||A===62||Ot(A)?_(A):n(A)}function B(A){return A===62?(e.consume(A),e.exit("htmlTextData"),e.exit("htmlText"),t):n(A)}function $(A){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(A),e.exit("lineEnding"),U}function U(A){return Nt(A)?Et(e,q,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(A):q(A)}function q(A){return e.enter("htmlTextData"),s(A)}}const Kx={name:"labelEnd",resolveAll:Nz,resolveTo:Tz,tokenize:Az},Sz={tokenize:Iz},Ez={tokenize:Rz},Cz={tokenize:_z};function Nz(e){let t=-1;const n=[];for(;++t=3&&(u===null||nt(u))?(e.exit("thematicBreak"),t(u)):n(u)}function c(u){return u===a?(e.consume(u),r++,c):(e.exit("thematicBreakSequence"),Nt(u)?Et(e,l,"whitespace")(u):l(u))}}const Pn={continuation:{tokenize:Uz},exit:qz,name:"list",tokenize:$z},Fz={partial:!0,tokenize:Hz},Bz={partial:!0,tokenize:zz};function $z(e,t,n){const r=this,a=r.events[r.events.length-1];let i=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,s=0;return l;function l(f){const g=r.containerState.type||(f===42||f===43||f===45?"listUnordered":"listOrdered");if(g==="listUnordered"?!r.containerState.marker||f===r.containerState.marker:hb(f)){if(r.containerState.type||(r.containerState.type=g,e.enter(g,{_container:!0})),g==="listUnordered")return e.enter("listItemPrefix"),f===42||f===45?e.check(Dl,n,u)(f):u(f);if(!r.interrupt||f===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(f)}return n(f)}function c(f){return hb(f)&&++s<10?(e.consume(f),c):(!r.interrupt||s<2)&&(r.containerState.marker?f===r.containerState.marker:f===41||f===46)?(e.exit("listItemValue"),u(f)):n(f)}function u(f){return e.enter("listItemMarker"),e.consume(f),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||f,e.check(_o,r.interrupt?n:d,e.attempt(Fz,m,p))}function d(f){return r.containerState.initialBlankLine=!0,i++,m(f)}function p(f){return Nt(f)?(e.enter("listItemPrefixWhitespace"),e.consume(f),e.exit("listItemPrefixWhitespace"),m):n(f)}function m(f){return r.containerState.size=i+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(f)}}function Uz(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(_o,a,i);function a(l){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,Et(e,t,"listItemIndent",r.containerState.size+1)(l)}function i(l){return r.containerState.furtherBlankLines||!Nt(l)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,s(l)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(Bz,t,s)(l))}function s(l){return r.containerState._closeFlow=!0,r.interrupt=void 0,Et(e,e.attempt(Pn,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(l)}}function zz(e,t,n){const r=this;return Et(e,a,"listItemIndent",r.containerState.size+1);function a(i){const s=r.events[r.events.length-1];return s&&s[1].type==="listItemIndent"&&s[2].sliceSerialize(s[1],!0).length===r.containerState.size?t(i):n(i)}}function qz(e){e.exit(this.containerState.type)}function Hz(e,t,n){const r=this;return Et(e,a,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(i){const s=r.events[r.events.length-1];return!Nt(i)&&s&&s[1].type==="listItemPrefixWhitespace"?t(i):n(i)}}const Ek={name:"setextUnderline",resolveTo:Gz,tokenize:Vz};function Gz(e,t){let n=e.length,r,a,i;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(a=n)}else e[n][1].type==="content"&&e.splice(n,1),!i&&e[n][1].type==="definition"&&(i=n);const s={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",i?(e.splice(a,0,["enter",s,t]),e.splice(i+1,0,["exit",e[r][1],t]),e[r][1].end={...e[i][1].end}):e[r][1]=s,e.push(["exit",s,t]),e}function Vz(e,t,n){const r=this;let a;return i;function i(u){let d=r.events.length,p;for(;d--;)if(r.events[d][1].type!=="lineEnding"&&r.events[d][1].type!=="linePrefix"&&r.events[d][1].type!=="content"){p=r.events[d][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||p)?(e.enter("setextHeadingLine"),a=u,s(u)):n(u)}function s(u){return e.enter("setextHeadingLineSequence"),l(u)}function l(u){return u===a?(e.consume(u),l):(e.exit("setextHeadingLineSequence"),Nt(u)?Et(e,c,"lineSuffix")(u):c(u))}function c(u){return u===null||nt(u)?(e.exit("setextHeadingLine"),t(u)):n(u)}}const Wz={tokenize:Kz};function Kz(e){const t=this,n=e.attempt(_o,r,e.attempt(this.parser.constructs.flowInitial,a,Et(e,e.attempt(this.parser.constructs.flow,a,e.attempt(QU,a)),"linePrefix")));return n;function r(i){if(i===null){e.consume(i);return}return e.enter("lineEndingBlank"),e.consume(i),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function a(i){if(i===null){e.consume(i);return}return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const Yz={resolveAll:lI()},Xz=oI("string"),Zz=oI("text");function oI(e){return{resolveAll:lI(e==="text"?Jz:void 0),tokenize:t};function t(n){const r=this,a=this.parser.constructs[e],i=n.attempt(a,s,l);return s;function s(d){return u(d)?i(d):l(d)}function l(d){if(d===null){n.consume(d);return}return n.enter("data"),n.consume(d),c}function c(d){return u(d)?(n.exit("data"),i(d)):(n.consume(d),c)}function u(d){if(d===null)return!0;const p=a[d];let m=-1;if(p)for(;++m-1){const l=s[0];typeof l=="string"?s[0]=l.slice(r):s.shift()}i>0&&s.push(e[a].slice(0,i))}return s}function dq(e,t){let n=-1;const r=[];let a;for(;++n0){const ze=ue.tokenStack[ue.tokenStack.length-1];(ze[1]||Nk).call(ue,void 0,ze[0])}for(Z.position={start:ua(G.length>0?G[0][1].start:{line:1,column:1,offset:0}),end:ua(G.length>0?G[G.length-2][1].end:{line:1,column:1,offset:0})},Ae=-1;++Ae0&&(r.className=["language-"+a[0]]);let i={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(i.data={meta:t.meta}),e.patch(t,i),i=e.applyData(t,i),i={type:"element",tagName:"pre",properties:{},children:[i]},e.patch(t,i),i}function Cq(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Nq(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Tq(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),a=bs(r.toLowerCase()),i=e.footnoteOrder.indexOf(r);let s,l=e.footnoteCounts.get(r);l===void 0?(l=0,e.footnoteOrder.push(r),s=e.footnoteOrder.length):s=i+1,l+=1,e.footnoteCounts.set(r,l);const c={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+a,id:n+"fnref-"+a+(l>1?"-"+l:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(s)}]};e.patch(t,c);const u={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(t,u),e.applyData(t,u)}function Aq(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Iq(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function dI(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const a=e.all(t),i=a[0];i&&i.type==="text"?i.value="["+i.value:a.unshift({type:"text",value:"["});const s=a[a.length-1];return s&&s.type==="text"?s.value+=r:a.push({type:"text",value:r}),a}function Rq(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return dI(e,t);const a={src:bs(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(a.title=r.title);const i={type:"element",tagName:"img",properties:a,children:[]};return e.patch(t,i),e.applyData(t,i)}function _q(e,t){const n={src:bs(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function jq(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function Oq(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return dI(e,t);const a={href:bs(r.url||"")};r.title!==null&&r.title!==void 0&&(a.title=r.title);const i={type:"element",tagName:"a",properties:a,children:e.all(t)};return e.patch(t,i),e.applyData(t,i)}function Dq(e,t){const n={href:bs(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function Mq(e,t,n){const r=e.all(t),a=n?Lq(n):pI(t),i={},s=[];if(typeof t.checked=="boolean"){const d=r[0];let p;d&&d.type==="element"&&d.tagName==="p"?p=d:(p={type:"element",tagName:"p",properties:{},children:[]},r.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),i.className=["task-list-item"]}let l=-1;for(;++l1}function Pq(e,t){const n={},r=e.all(t);let a=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++a0){const s={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},l=zx(t.children[1]),c=GA(t.children[t.children.length-1]);l&&c&&(s.position={start:l,end:c}),a.push(s)}const i={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(t,i),e.applyData(t,i)}function zq(e,t,n){const r=n?n.children:void 0,i=(r?r.indexOf(t):1)===0?"th":"td",s=n&&n.type==="table"?n.align:void 0,l=s?s.length:t.children.length;let c=-1;const u=[];for(;++c0,!0),r[0]),a=r.index+r[0].length,r=n.exec(t);return i.push(Ik(t.slice(a),a>0,!1)),i.join("")}function Ik(e,t,n){let r=0,a=e.length;if(t){let i=e.codePointAt(r);for(;i===Tk||i===Ak;)r++,i=e.codePointAt(r)}if(n){let i=e.codePointAt(a-1);for(;i===Tk||i===Ak;)a--,i=e.codePointAt(a-1)}return a>r?e.slice(r,a):""}function Gq(e,t){const n={type:"text",value:Hq(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function Vq(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const Wq={blockquote:wq,break:Sq,code:Eq,delete:Cq,emphasis:Nq,footnoteReference:Tq,heading:Aq,html:Iq,imageReference:Rq,image:_q,inlineCode:jq,linkReference:Oq,link:Dq,listItem:Mq,list:Pq,paragraph:Fq,root:Bq,strong:$q,table:Uq,tableCell:qq,tableRow:zq,text:Gq,thematicBreak:Vq,toml:sl,yaml:sl,definition:sl,footnoteDefinition:sl};function sl(){}const mI=-1,Wc=0,so=1,dc=2,Yx=3,Xx=4,Zx=5,Jx=6,fI=7,hI=8,Kq=typeof self=="object"?self:globalThis,Rk=(e,t)=>{switch(e){case"Function":case"SharedWorker":case"Worker":case"eval":case"setInterval":case"setTimeout":throw new TypeError("unable to deserialize "+e)}return new Kq[e](t)},Yq=(e,t)=>{const n=(a,i)=>(e.set(i,a),a),r=a=>{if(e.has(a))return e.get(a);const[i,s]=t[a];switch(i){case Wc:case mI:return n(s,a);case so:{const l=n([],a);for(const c of s)l.push(r(c));return l}case dc:{const l=n({},a);for(const[c,u]of s)l[r(c)]=r(u);return l}case Yx:return n(new Date(s),a);case Xx:{const{source:l,flags:c}=s;return n(new RegExp(l,c),a)}case Zx:{const l=n(new Map,a);for(const[c,u]of s)l.set(r(c),r(u));return l}case Jx:{const l=n(new Set,a);for(const c of s)l.add(r(c));return l}case fI:{const{name:l,message:c}=s;return n(Rk(l,c),a)}case hI:return n(BigInt(s),a);case"BigInt":return n(Object(BigInt(s)),a);case"ArrayBuffer":return n(new Uint8Array(s).buffer,s);case"DataView":{const{buffer:l}=new Uint8Array(s);return n(new DataView(l),s)}}return n(Rk(i,s),a)};return r},_k=e=>Yq(new Map,e)(0),Si="",{toString:Xq}={},{keys:Zq}=Object,$s=e=>{const t=typeof e;if(t!=="object"||!e)return[Wc,t];const n=Xq.call(e).slice(8,-1);switch(n){case"Array":return[so,Si];case"Object":return[dc,Si];case"Date":return[Yx,Si];case"RegExp":return[Xx,Si];case"Map":return[Zx,Si];case"Set":return[Jx,Si];case"DataView":return[so,n]}return n.includes("Array")?[so,n]:n.includes("Error")?[fI,n]:[dc,n]},ol=([e,t])=>e===Wc&&(t==="function"||t==="symbol"),Jq=(e,t,n,r)=>{const a=(s,l)=>{const c=r.push(s)-1;return n.set(l,c),c},i=s=>{if(n.has(s))return n.get(s);let[l,c]=$s(s);switch(l){case Wc:{let d=s;switch(c){case"bigint":l=hI,d=s.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);d=null;break;case"undefined":return a([mI],s)}return a([l,d],s)}case so:{if(c){let m=s;return c==="DataView"?m=new Uint8Array(s.buffer):c==="ArrayBuffer"&&(m=new Uint8Array(s)),a([c,[...m]],s)}const d=[],p=a([l,d],s);for(const m of s)d.push(i(m));return p}case dc:{if(c)switch(c){case"BigInt":return a([c,s.toString()],s);case"Boolean":case"Number":case"String":return a([c,s.valueOf()],s)}if(t&&"toJSON"in s)return i(s.toJSON());const d=[],p=a([l,d],s);for(const m of Zq(s))(e||!ol($s(s[m])))&&d.push([i(m),i(s[m])]);return p}case Yx:return a([l,s.toISOString()],s);case Xx:{const{source:d,flags:p}=s;return a([l,{source:d,flags:p}],s)}case Zx:{const d=[],p=a([l,d],s);for(const[m,f]of s)(e||!(ol($s(m))||ol($s(f))))&&d.push([i(m),i(f)]);return p}case Jx:{const d=[],p=a([l,d],s);for(const m of s)(e||!ol($s(m)))&&d.push(i(m));return p}}const{message:u}=s;return a([l,{name:c,message:u}],s)};return i},jk=(e,{json:t,lossy:n}={})=>{const r=[];return Jq(!(t||n),!!t,new Map,r)(e),r},pc=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?_k(jk(e,t)):structuredClone(e):(e,t)=>_k(jk(e,t));function Qq(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function eH(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function tH(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||Qq,r=e.options.footnoteBackLabel||eH,a=e.options.footnoteLabel||"Footnotes",i=e.options.footnoteLabelTagName||"h2",s=e.options.footnoteLabelProperties||{className:["sr-only"]},l=[];let c=-1;for(;++c0&&g.push({type:"text",value:" "});let y=typeof n=="string"?n:n(c,f);typeof y=="string"&&(y={type:"text",value:y}),g.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+m+(f>1?"-"+f:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(c,f),className:["data-footnote-backref"]},children:Array.isArray(y)?y:[y]})}const x=d[d.length-1];if(x&&x.type==="element"&&x.tagName==="p"){const y=x.children[x.children.length-1];y&&y.type==="text"?y.value+=" ":x.children.push({type:"text",value:" "}),x.children.push(...g)}else d.push(...g);const k={type:"element",tagName:"li",properties:{id:t+"fn-"+m},children:e.wrap(d,!0)};e.patch(u,k),l.push(k)}if(l.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:i,properties:{...pc(s),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:` +`},{type:"element",tagName:"ol",properties:{},children:e.wrap(l,!0)},{type:"text",value:` +`}]}}const jo=(function(e){if(e==null)return iH;if(typeof e=="function")return Kc(e);if(typeof e=="object")return Array.isArray(e)?nH(e):rH(e);if(typeof e=="string")return aH(e);throw new Error("Expected function, string, or object as test")});function nH(e){const t=[];let n=-1;for(;++n":""))+")"})}return m;function m(){let f=gI,g,b,x;if((!t||i(c,u,d[d.length-1]||void 0))&&(f=lH(n(c,d)),f[0]===bb))return f;if("children"in c&&c.children){const k=c;if(k.children&&f[0]!==bI)for(b=(r?k.children.length:-1)+s,x=d.concat(k);b>-1&&b0&&n.push({type:"text",value:` +`}),n}function Ok(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function Dk(e,t){const n=uH(e,t),r=n.one(e,void 0),a=tH(n),i=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return a&&i.children.push({type:"text",value:` +`},a),i}function hH(e,t){return e&&"run"in e?async function(n,r){const a=Dk(n,{file:r,...t});await e.run(a,r)}:function(n,r){return Dk(n,{file:r,...e||t})}}function Mk(e){if(e)throw e}var ed,Lk;function gH(){if(Lk)return ed;Lk=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,a=function(u){return typeof Array.isArray=="function"?Array.isArray(u):t.call(u)==="[object Array]"},i=function(u){if(!u||t.call(u)!=="[object Object]")return!1;var d=e.call(u,"constructor"),p=u.constructor&&u.constructor.prototype&&e.call(u.constructor.prototype,"isPrototypeOf");if(u.constructor&&!d&&!p)return!1;var m;for(m in u);return typeof m>"u"||e.call(u,m)},s=function(u,d){n&&d.name==="__proto__"?n(u,d.name,{enumerable:!0,configurable:!0,value:d.newValue,writable:!0}):u[d.name]=d.newValue},l=function(u,d){if(d==="__proto__")if(e.call(u,d)){if(r)return r(u,d).value}else return;return u[d]};return ed=function c(){var u,d,p,m,f,g,b=arguments[0],x=1,k=arguments.length,y=!1;for(typeof b=="boolean"&&(y=b,b=arguments[1]||{},x=2),(b==null||typeof b!="object"&&typeof b!="function")&&(b={});xs.length;let c;l&&s.push(a);try{c=e.apply(this,s)}catch(u){const d=u;if(l&&n)throw d;return a(d)}l||(c&&c.then&&typeof c.then=="function"?c.then(i,a):c instanceof Error?a(c):i(c))}function a(s,...l){n||(n=!0,t(s,...l))}function i(s){a(null,s)}}const jr={basename:vH,dirname:kH,extname:wH,join:SH,sep:"/"};function vH(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');Oo(e);let n=0,r=-1,a=e.length,i;if(t===void 0||t.length===0||t.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(i){n=a+1;break}}else r<0&&(i=!0,r=a+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let s=-1,l=t.length-1;for(;a--;)if(e.codePointAt(a)===47){if(i){n=a+1;break}}else s<0&&(i=!0,s=a+1),l>-1&&(e.codePointAt(a)===t.codePointAt(l--)?l<0&&(r=a):(l=-1,r=s));return n===r?r=s:r<0&&(r=e.length),e.slice(n,r)}function kH(e){if(Oo(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function wH(e){Oo(e);let t=e.length,n=-1,r=0,a=-1,i=0,s;for(;t--;){const l=e.codePointAt(t);if(l===47){if(s){r=t+1;break}continue}n<0&&(s=!0,n=t+1),l===46?a<0?a=t:i!==1&&(i=1):a>-1&&(i=-1)}return a<0||n<0||i===0||i===1&&a===n-1&&a===r+1?"":e.slice(a,n)}function SH(...e){let t=-1,n;for(;++t0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function CH(e,t){let n="",r=0,a=-1,i=0,s=-1,l,c;for(;++s<=e.length;){if(s2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",r=0):(n=n.slice(0,c),r=n.length-1-n.lastIndexOf("/")),a=s,i=0;continue}}else if(n.length>0){n="",r=0,a=s,i=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(a+1,s):n=e.slice(a+1,s),r=s-a-1;a=s,i=0}else l===46&&i>-1?i++:i=-1}return n}function Oo(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const NH={cwd:TH};function TH(){return"/"}function vb(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function AH(e){if(typeof e=="string")e=new URL(e);else if(!vb(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return IH(e)}function IH(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n0){let[f,...g]=d;const b=r[m][1];yb(b)&&yb(f)&&(f=td(!0,b,f)),r[m]=[u,f,...g]}}}}const OH=new ty().freeze();function id(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function sd(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function od(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function Fk(e){if(!yb(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function Bk(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function ll(e){return DH(e)?e:new xI(e)}function DH(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function MH(e){return typeof e=="string"||LH(e)}function LH(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const PH="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",$k=[],Uk={allowDangerousHtml:!0},FH=/^(https?|ircs?|mailto|xmpp)$/i,BH=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function yI(e){const t=$H(e),n=UH(e);return zH(t.runSync(t.parse(n),n),e)}function $H(e){const t=e.rehypePlugins||$k,n=e.remarkPlugins||$k,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...Uk}:Uk;return OH().use(kq).use(n).use(hH,r).use(t)}function UH(e){const t=e.children||"",n=new xI;return typeof t=="string"&&(n.value=t),n}function zH(e,t){const n=t.allowedElements,r=t.allowElement,a=t.components,i=t.disallowedElements,s=t.skipHtml,l=t.unwrapDisallowed,c=t.urlTransform||qH;for(const d of BH)Object.hasOwn(t,d.from)&&(""+d.from+(d.to?"use `"+d.to+"` instead":"remove it")+PH+d.id,void 0);return ey(e,u),aU(e,{Fragment:o.Fragment,components:a,ignoreInvalidStyle:!0,jsx:o.jsx,jsxs:o.jsxs,passKeys:!0,passNode:!0});function u(d,p,m){if(d.type==="raw"&&m&&typeof p=="number")return s?m.children.splice(p,1):m.children[p]={type:"text",value:d.value},p;if(d.type==="element"){let f;for(f in Zu)if(Object.hasOwn(Zu,f)&&Object.hasOwn(d.properties,f)){const g=d.properties[f],b=Zu[f];(b===null||b.includes(d.tagName))&&(d.properties[f]=c(String(g||""),f,d))}}if(d.type==="element"){let f=n?!n.includes(d.tagName):i?i.includes(d.tagName):!1;if(!f&&r&&typeof p=="number"&&(f=!r(d,p,m)),f&&m&&typeof p=="number")return l&&d.children?m.children.splice(p,1,...d.children):m.children.splice(p,1),p}}}function qH(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),a=e.indexOf("/");return t===-1||a!==-1&&t>a||n!==-1&&t>n||r!==-1&&t>r||FH.test(e.slice(0,t))?e:""}function zk(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,a=n.indexOf(t);for(;a!==-1;)r++,a=n.indexOf(t,a+t.length);return r}function HH(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function GH(e,t,n){const a=jo((n||{}).ignore||[]),i=VH(t);let s=-1;for(;++s0?{type:"text",value:w}:void 0),w===!1?m.lastIndex=E+1:(g!==E&&y.push({type:"text",value:u.value.slice(g,E)}),Array.isArray(w)?y.push(...w):w&&y.push(w),g=E+v[0].length,k=!0),!m.global)break;v=m.exec(u.value)}return k?(g?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const a=zk(e,"(");let i=zk(e,")");for(;r!==-1&&a>i;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),i++;return[e,n]}function vI(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||si(n)||Gc(n))&&(!t||n!==47)}kI.peek=hG;function oG(){this.buffer()}function lG(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function cG(){this.buffer()}function uG(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function dG(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Sr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function pG(e){this.exit(e)}function mG(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Sr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function fG(e){this.exit(e)}function hG(){return"["}function kI(e,t,n,r){const a=n.createTracker(r);let i=a.move("[^");const s=n.enter("footnoteReference"),l=n.enter("reference");return i+=a.move(n.safe(n.associationId(e),{after:"]",before:i})),l(),s(),i+=a.move("]"),i}function gG(){return{enter:{gfmFootnoteCallString:oG,gfmFootnoteCall:lG,gfmFootnoteDefinitionLabelString:cG,gfmFootnoteDefinition:uG},exit:{gfmFootnoteCallString:dG,gfmFootnoteCall:pG,gfmFootnoteDefinitionLabelString:mG,gfmFootnoteDefinition:fG}}}function bG(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:kI},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,a,i,s){const l=i.createTracker(s);let c=l.move("[^");const u=i.enter("footnoteDefinition"),d=i.enter("label");return c+=l.move(i.safe(i.associationId(r),{before:c,after:"]"})),d(),c+=l.move("]:"),r.children&&r.children.length>0&&(l.shift(4),c+=l.move((t?` +`:" ")+i.indentLines(i.containerFlow(r,l.current()),t?wI:xG))),u(),c}}function xG(e,t,n){return t===0?e:wI(e,t,n)}function wI(e,t,n){return(n?"":" ")+e}const yG=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];SI.peek=EG;function vG(){return{canContainEols:["delete"],enter:{strikethrough:wG},exit:{strikethrough:SG}}}function kG(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:yG}],handlers:{delete:SI}}}function wG(e){this.enter({type:"delete",children:[]},e)}function SG(e){this.exit(e)}function SI(e,t,n,r){const a=n.createTracker(r),i=n.enter("strikethrough");let s=a.move("~~");return s+=n.containerPhrasing(e,{...a.current(),before:s,after:"~"}),s+=a.move("~~"),i(),s}function EG(){return"~"}function CG(e){return e.length}function NG(e,t){const n=t||{},r=(n.align||[]).concat(),a=n.stringLength||CG,i=[],s=[],l=[],c=[];let u=0,d=-1;for(;++du&&(u=e[d].length);++kc[k])&&(c[k]=v)}b.push(y)}s[d]=b,l[d]=x}let p=-1;if(typeof r=="object"&&"length"in r)for(;++pc[p]&&(c[p]=y),f[p]=y),m[p]=v}s.splice(1,0,m),l.splice(1,0,f),d=-1;const g=[];for(;++d "),i.shift(2);const s=n.indentLines(n.containerFlow(e,i.current()),IG);return a(),s}function IG(e,t,n){return">"+(n?"":" ")+e}function RG(e,t){return Hk(e,t.inConstruct,!0)&&!Hk(e,t.notInConstruct,!1)}function Hk(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++rs&&(s=i):i=1,a=r+t.length,r=n.indexOf(t,a);return s}function _G(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function jG(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function OG(e,t,n,r){const a=jG(n),i=e.value||"",s=a==="`"?"GraveAccent":"Tilde";if(_G(e,n)){const p=n.enter("codeIndented"),m=n.indentLines(i,DG);return p(),m}const l=n.createTracker(r),c=a.repeat(Math.max(EI(i,a)+1,3)),u=n.enter("codeFenced");let d=l.move(c);if(e.lang){const p=n.enter(`codeFencedLang${s}`);d+=l.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...l.current()})),p()}if(e.lang&&e.meta){const p=n.enter(`codeFencedMeta${s}`);d+=l.move(" "),d+=l.move(n.safe(e.meta,{before:d,after:` +`,encode:["`"],...l.current()})),p()}return d+=l.move(` +`),i&&(d+=l.move(i+` +`)),d+=l.move(c),u(),d}function DG(e,t,n){return(n?"":" ")+e}function ny(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function MG(e,t,n,r){const a=ny(n),i=a==='"'?"Quote":"Apostrophe",s=n.enter("definition");let l=n.enter("label");const c=n.createTracker(r);let u=c.move("[");return u+=c.move(n.safe(n.associationId(e),{before:u,after:"]",...c.current()})),u+=c.move("]: "),l(),!e.url||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),u+=c.move("<"),u+=c.move(n.safe(e.url,{before:u,after:">",...c.current()})),u+=c.move(">")):(l=n.enter("destinationRaw"),u+=c.move(n.safe(e.url,{before:u,after:e.title?" ":` +`,...c.current()}))),l(),e.title&&(l=n.enter(`title${i}`),u+=c.move(" "+a),u+=c.move(n.safe(e.title,{before:u,after:a,...c.current()})),u+=c.move(a),l()),s(),u}function LG(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function xo(e){return"&#x"+e.toString(16).toUpperCase()+";"}function mc(e,t,n){const r=es(e),a=es(t);return r===void 0?a===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}CI.peek=PG;function CI(e,t,n,r){const a=LG(n),i=n.enter("emphasis"),s=n.createTracker(r),l=s.move(a);let c=s.move(n.containerPhrasing(e,{after:a,before:l,...s.current()}));const u=c.charCodeAt(0),d=mc(r.before.charCodeAt(r.before.length-1),u,a);d.inside&&(c=xo(u)+c.slice(1));const p=c.charCodeAt(c.length-1),m=mc(r.after.charCodeAt(0),p,a);m.inside&&(c=c.slice(0,-1)+xo(p));const f=s.move(a);return i(),n.attentionEncodeSurroundingInfo={after:m.outside,before:d.outside},l+c+f}function PG(e,t,n){return n.options.emphasis||"*"}function FG(e,t){let n=!1;return ey(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,bb}),!!((!e.depth||e.depth<3)&&Vx(e)&&(t.options.setext||n))}function BG(e,t,n,r){const a=Math.max(Math.min(6,e.depth||1),1),i=n.createTracker(r);if(FG(e,n)){const d=n.enter("headingSetext"),p=n.enter("phrasing"),m=n.containerPhrasing(e,{...i.current(),before:` +`,after:` +`});return p(),d(),m+` +`+(a===1?"=":"-").repeat(m.length-(Math.max(m.lastIndexOf("\r"),m.lastIndexOf(` +`))+1))}const s="#".repeat(a),l=n.enter("headingAtx"),c=n.enter("phrasing");i.move(s+" ");let u=n.containerPhrasing(e,{before:"# ",after:` +`,...i.current()});return/^[\t ]/.test(u)&&(u=xo(u.charCodeAt(0))+u.slice(1)),u=u?s+" "+u:s,n.options.closeAtx&&(u+=" "+s),c(),l(),u}NI.peek=$G;function NI(e){return e.value||""}function $G(){return"<"}TI.peek=UG;function TI(e,t,n,r){const a=ny(n),i=a==='"'?"Quote":"Apostrophe",s=n.enter("image");let l=n.enter("label");const c=n.createTracker(r);let u=c.move("![");return u+=c.move(n.safe(e.alt,{before:u,after:"]",...c.current()})),u+=c.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),u+=c.move("<"),u+=c.move(n.safe(e.url,{before:u,after:">",...c.current()})),u+=c.move(">")):(l=n.enter("destinationRaw"),u+=c.move(n.safe(e.url,{before:u,after:e.title?" ":")",...c.current()}))),l(),e.title&&(l=n.enter(`title${i}`),u+=c.move(" "+a),u+=c.move(n.safe(e.title,{before:u,after:a,...c.current()})),u+=c.move(a),l()),u+=c.move(")"),s(),u}function UG(){return"!"}AI.peek=zG;function AI(e,t,n,r){const a=e.referenceType,i=n.enter("imageReference");let s=n.enter("label");const l=n.createTracker(r);let c=l.move("![");const u=n.safe(e.alt,{before:c,after:"]",...l.current()});c+=l.move(u+"]["),s();const d=n.stack;n.stack=[],s=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...l.current()});return s(),n.stack=d,i(),a==="full"||!u||u!==p?c+=l.move(p+"]"):a==="shortcut"?c=c.slice(0,-1):c+=l.move("]"),c}function zG(){return"!"}II.peek=qG;function II(e,t,n){let r=e.value||"",a="`",i=-1;for(;new RegExp("(^|[^`])"+a+"([^`]|$)").test(r);)a+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++i\u007F]/.test(e.url))}_I.peek=HG;function _I(e,t,n,r){const a=ny(n),i=a==='"'?"Quote":"Apostrophe",s=n.createTracker(r);let l,c;if(RI(e,n)){const d=n.stack;n.stack=[],l=n.enter("autolink");let p=s.move("<");return p+=s.move(n.containerPhrasing(e,{before:p,after:">",...s.current()})),p+=s.move(">"),l(),n.stack=d,p}l=n.enter("link"),c=n.enter("label");let u=s.move("[");return u+=s.move(n.containerPhrasing(e,{before:u,after:"](",...s.current()})),u+=s.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),u+=s.move("<"),u+=s.move(n.safe(e.url,{before:u,after:">",...s.current()})),u+=s.move(">")):(c=n.enter("destinationRaw"),u+=s.move(n.safe(e.url,{before:u,after:e.title?" ":")",...s.current()}))),c(),e.title&&(c=n.enter(`title${i}`),u+=s.move(" "+a),u+=s.move(n.safe(e.title,{before:u,after:a,...s.current()})),u+=s.move(a),c()),u+=s.move(")"),l(),u}function HG(e,t,n){return RI(e,n)?"<":"["}jI.peek=GG;function jI(e,t,n,r){const a=e.referenceType,i=n.enter("linkReference");let s=n.enter("label");const l=n.createTracker(r);let c=l.move("[");const u=n.containerPhrasing(e,{before:c,after:"]",...l.current()});c+=l.move(u+"]["),s();const d=n.stack;n.stack=[],s=n.enter("reference");const p=n.safe(n.associationId(e),{before:c,after:"]",...l.current()});return s(),n.stack=d,i(),a==="full"||!u||u!==p?c+=l.move(p+"]"):a==="shortcut"?c=c.slice(0,-1):c+=l.move("]"),c}function GG(){return"["}function ry(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function VG(e){const t=ry(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function WG(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function OI(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function KG(e,t,n,r){const a=n.enter("list"),i=n.bulletCurrent;let s=e.ordered?WG(n):ry(n);const l=e.ordered?s==="."?")":".":VG(n);let c=t&&n.bulletLastUsed?s===n.bulletLastUsed:!1;if(!e.ordered){const d=e.children?e.children[0]:void 0;if((s==="*"||s==="-")&&d&&(!d.children||!d.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),OI(n)===s&&d){let p=-1;for(;++p-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+i);let s=i.length+1;(a==="tab"||a==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(s=Math.ceil(s/4)*4);const l=n.createTracker(r);l.move(i+" ".repeat(s-i.length)),l.shift(s);const c=n.enter("listItem"),u=n.indentLines(n.containerFlow(e,l.current()),d);return c(),u;function d(p,m,f){return m?(f?"":" ".repeat(s))+p:(f?i:i+" ".repeat(s-i.length))+p}}function ZG(e,t,n,r){const a=n.enter("paragraph"),i=n.enter("phrasing"),s=n.containerPhrasing(e,r);return i(),a(),s}const JG=jo(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function QG(e,t,n,r){return(e.children.some(function(s){return JG(s)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function eV(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}DI.peek=tV;function DI(e,t,n,r){const a=eV(n),i=n.enter("strong"),s=n.createTracker(r),l=s.move(a+a);let c=s.move(n.containerPhrasing(e,{after:a,before:l,...s.current()}));const u=c.charCodeAt(0),d=mc(r.before.charCodeAt(r.before.length-1),u,a);d.inside&&(c=xo(u)+c.slice(1));const p=c.charCodeAt(c.length-1),m=mc(r.after.charCodeAt(0),p,a);m.inside&&(c=c.slice(0,-1)+xo(p));const f=s.move(a+a);return i(),n.attentionEncodeSurroundingInfo={after:m.outside,before:d.outside},l+c+f}function tV(e,t,n){return n.options.strong||"*"}function nV(e,t,n,r){return n.safe(e.value,r)}function rV(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function aV(e,t,n){const r=(OI(n)+(n.options.ruleSpaces?" ":"")).repeat(rV(n));return n.options.ruleSpaces?r.slice(0,-1):r}const MI={blockquote:AG,break:Gk,code:OG,definition:MG,emphasis:CI,hardBreak:Gk,heading:BG,html:NI,image:TI,imageReference:AI,inlineCode:II,link:_I,linkReference:jI,list:KG,listItem:XG,paragraph:ZG,root:QG,strong:DI,text:nV,thematicBreak:aV};function iV(){return{enter:{table:sV,tableData:Vk,tableHeader:Vk,tableRow:lV},exit:{codeText:cV,table:oV,tableData:dd,tableHeader:dd,tableRow:dd}}}function sV(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function oV(e){this.exit(e),this.data.inTable=void 0}function lV(e){this.enter({type:"tableRow",children:[]},e)}function dd(e){this.exit(e)}function Vk(e){this.enter({type:"tableCell",children:[]},e)}function cV(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,uV));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function uV(e,t){return t==="|"?t:e}function dV(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,a=t.stringLength,i=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` +`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:m,table:s,tableCell:c,tableRow:l}};function s(f,g,b,x){return u(d(f,b,x),f.align)}function l(f,g,b,x){const k=p(f,b,x),y=u([k]);return y.slice(0,y.indexOf(` +`))}function c(f,g,b,x){const k=b.enter("tableCell"),y=b.enter("phrasing"),v=b.containerPhrasing(f,{...x,before:i,after:i});return y(),k(),v}function u(f,g){return NG(f,{align:g,alignDelimiters:r,padding:n,stringLength:a})}function d(f,g,b){const x=f.children;let k=-1;const y=[],v=g.enter("table");for(;++k0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const IV={tokenize:PV,partial:!0};function RV(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:DV,continuation:{tokenize:MV},exit:LV}},text:{91:{name:"gfmFootnoteCall",tokenize:OV},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:_V,resolveTo:jV}}}}function _V(e,t,n){const r=this;let a=r.events.length;const i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s;for(;a--;){const c=r.events[a][1];if(c.type==="labelImage"){s=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return l;function l(c){if(!s||!s._balanced)return n(c);const u=Sr(r.sliceSerialize({start:s.end,end:r.now()}));return u.codePointAt(0)!==94||!i.includes(u.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),t(c))}}function jV(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},a={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};a.end.column++,a.end.offset++,a.end._bufferIndex++;const i={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},s={type:"chunkString",contentType:"string",start:Object.assign({},i.start),end:Object.assign({},i.end)},l=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",a,t],["exit",a,t],["enter",i,t],["enter",s,t],["exit",s,t],["exit",i,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...l),e}function OV(e,t,n){const r=this,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let i=0,s;return l;function l(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),c}function c(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(p){if(i>999||p===93&&!s||p===null||p===91||Ot(p))return n(p);if(p===93){e.exit("chunkString");const m=e.exit("gfmFootnoteCallString");return a.includes(Sr(r.sliceSerialize(m)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(p)}return Ot(p)||(s=!0),i++,e.consume(p),p===92?d:u}function d(p){return p===91||p===92||p===93?(e.consume(p),i++,u):u(p)}}function DV(e,t,n){const r=this,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let i,s=0,l;return c;function c(g){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(g){return g===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):n(g)}function d(g){if(s>999||g===93&&!l||g===null||g===91||Ot(g))return n(g);if(g===93){e.exit("chunkString");const b=e.exit("gfmFootnoteDefinitionLabelString");return i=Sr(r.sliceSerialize(b)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),m}return Ot(g)||(l=!0),s++,e.consume(g),g===92?p:d}function p(g){return g===91||g===92||g===93?(e.consume(g),s++,d):d(g)}function m(g){return g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),a.includes(i)||a.push(i),Et(e,f,"gfmFootnoteDefinitionWhitespace")):n(g)}function f(g){return t(g)}}function MV(e,t,n){return e.check(_o,t,e.attempt(IV,t,n))}function LV(e){e.exit("gfmFootnoteDefinition")}function PV(e,t,n){const r=this;return Et(e,a,"gfmFootnoteDefinitionIndent",5);function a(i){const s=r.events[r.events.length-1];return s&&s[1].type==="gfmFootnoteDefinitionIndent"&&s[2].sliceSerialize(s[1],!0).length===4?t(i):n(i)}}function FV(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:i,resolveAll:a};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function a(s,l){let c=-1;for(;++c1?c(g):(s.consume(g),p++,f);if(p<2&&!n)return c(g);const x=s.exit("strikethroughSequenceTemporary"),k=es(g);return x._open=!k||k===2&&!!b,x._close=!b||b===2&&!!k,l(g)}}}class BV{constructor(){this.map=[]}add(t,n,r){$V(this,t,n,r)}consume(t){if(this.map.sort(function(i,s){return i[0]-s[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let a=r.pop();for(;a;){for(const i of a)t.push(i);a=r.pop()}this.map.length=0}}function $V(e,t,n,r){let a=0;if(!(n===0&&r.length===0)){for(;a-1;){const M=r.events[O][1].type;if(M==="lineEnding"||M==="linePrefix")O--;else break}const I=O>-1?r.events[O][1].type:null,z=I==="tableHead"||I==="tableRow"?w:c;return z===w&&r.parser.lazy[r.now().line]?n(C):z(C)}function c(C){return e.enter("tableHead"),e.enter("tableRow"),u(C)}function u(C){return C===124||(s=!0,i+=1),d(C)}function d(C){return C===null?n(C):nt(C)?i>1?(i=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(C),e.exit("lineEnding"),f):n(C):Nt(C)?Et(e,d,"whitespace")(C):(i+=1,s&&(s=!1,a+=1),C===124?(e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),s=!0,d):(e.enter("data"),p(C)))}function p(C){return C===null||C===124||Ot(C)?(e.exit("data"),d(C)):(e.consume(C),C===92?m:p)}function m(C){return C===92||C===124?(e.consume(C),p):p(C)}function f(C){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(C):(e.enter("tableDelimiterRow"),s=!1,Nt(C)?Et(e,g,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(C):g(C))}function g(C){return C===45||C===58?x(C):C===124?(s=!0,e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),b):N(C)}function b(C){return Nt(C)?Et(e,x,"whitespace")(C):x(C)}function x(C){return C===58?(i+=1,s=!0,e.enter("tableDelimiterMarker"),e.consume(C),e.exit("tableDelimiterMarker"),k):C===45?(i+=1,k(C)):C===null||nt(C)?E(C):N(C)}function k(C){return C===45?(e.enter("tableDelimiterFiller"),y(C)):N(C)}function y(C){return C===45?(e.consume(C),y):C===58?(s=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(C),e.exit("tableDelimiterMarker"),v):(e.exit("tableDelimiterFiller"),v(C))}function v(C){return Nt(C)?Et(e,E,"whitespace")(C):E(C)}function E(C){return C===124?g(C):C===null||nt(C)?!s||a!==i?N(C):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(C)):N(C)}function N(C){return n(C)}function w(C){return e.enter("tableRow"),T(C)}function T(C){return C===124?(e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),T):C===null||nt(C)?(e.exit("tableRow"),t(C)):Nt(C)?Et(e,T,"whitespace")(C):(e.enter("data"),j(C))}function j(C){return C===null||C===124||Ot(C)?(e.exit("data"),T(C)):(e.consume(C),C===92?_:j)}function _(C){return C===92||C===124?(e.consume(C),j):j(C)}}function HV(e,t){let n=-1,r=!0,a=0,i=[0,0,0,0],s=[0,0,0,0],l=!1,c=0,u,d,p;const m=new BV;for(;++nn[2]+1){const g=n[2]+1,b=n[3]-n[2]-1;e.add(g,b,[])}}e.add(n[3]+1,0,[["exit",p,t]])}return a!==void 0&&(i.end=Object.assign({},Ai(t.events,a)),e.add(a,0,[["exit",i,t]]),i=void 0),i}function Kk(e,t,n,r,a){const i=[],s=Ai(t.events,n);a&&(a.end=Object.assign({},s),i.push(["exit",a,t])),r.end=Object.assign({},s),i.push(["exit",r,t]),e.add(n+1,0,i)}function Ai(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const GV={name:"tasklistCheck",tokenize:WV};function VV(){return{text:{91:GV}}}function WV(e,t,n){const r=this;return a;function a(c){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),i)}function i(c){return Ot(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),s):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),s):n(c)}function s(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),l):n(c)}function l(c){return nt(c)?t(c):Nt(c)?e.check({tokenize:KV},t,n)(c):n(c)}}function KV(e,t,n){return Et(e,r,"whitespace");function r(a){return a===null?n(a):t(a)}}function YV(e){return JA([vV(),RV(),FV(e),zV(),VV()])}const XV={};function HI(e){const t=this,n=e||XV,r=t.data(),a=r.micromarkExtensions||(r.micromarkExtensions=[]),i=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),s=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);a.push(YV(n)),i.push(gV()),s.push(bV(n))}function ZV(){return{enter:{mathFlow:e,mathFlowFenceMeta:t,mathText:i},exit:{mathFlow:a,mathFlowFence:r,mathFlowFenceMeta:n,mathFlowValue:l,mathText:s,mathTextData:l}};function e(c){const u={type:"element",tagName:"code",properties:{className:["language-math","math-display"]},children:[]};this.enter({type:"math",meta:null,value:"",data:{hName:"pre",hChildren:[u]}},c)}function t(){this.buffer()}function n(){const c=this.resume(),u=this.stack[this.stack.length-1];u.type,u.meta=c}function r(){this.data.mathFlowInside||(this.buffer(),this.data.mathFlowInside=!0)}function a(c){const u=this.resume().replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),d=this.stack[this.stack.length-1];d.type,this.exit(c),d.value=u;const p=d.data.hChildren[0];p.type,p.tagName,p.children.push({type:"text",value:u}),this.data.mathFlowInside=void 0}function i(c){this.enter({type:"inlineMath",value:"",data:{hName:"code",hProperties:{className:["language-math","math-inline"]},hChildren:[]}},c),this.buffer()}function s(c){const u=this.resume(),d=this.stack[this.stack.length-1];d.type,this.exit(c),d.value=u,d.data.hChildren.push({type:"text",value:u})}function l(c){this.config.enter.data.call(this,c),this.config.exit.data.call(this,c)}}function JV(e){let t=(e||{}).singleDollarTextMath;return t==null&&(t=!0),r.peek=a,{unsafe:[{character:"\r",inConstruct:"mathFlowMeta"},{character:` +`,inConstruct:"mathFlowMeta"},{character:"$",after:t?void 0:"\\$",inConstruct:"phrasing"},{character:"$",inConstruct:"mathFlowMeta"},{atBreak:!0,character:"$",after:"\\$"}],handlers:{math:n,inlineMath:r}};function n(i,s,l,c){const u=i.value||"",d=l.createTracker(c),p="$".repeat(Math.max(EI(u,"$")+1,2)),m=l.enter("mathFlow");let f=d.move(p);if(i.meta){const g=l.enter("mathFlowMeta");f+=d.move(l.safe(i.meta,{after:` +`,before:f,encode:["$"],...d.current()})),g()}return f+=d.move(` +`),u&&(f+=d.move(u+` +`)),f+=d.move(p),m(),f}function r(i,s,l){let c=i.value||"",u=1;for(t||u++;new RegExp("(^|[^$])"+"\\$".repeat(u)+"([^$]|$)").test(c);)u++;const d="$".repeat(u);/[^ \r\n]/.test(c)&&(/^[ \r\n]/.test(c)&&/[ \r\n]$/.test(c)||/^\$|\$$/.test(c))&&(c=" "+c+" ");let p=-1;for(;++p15?u="…"+l.slice(a-15,a):u=l.slice(0,a);var d;i+15e.replace(sW,"-$1").toLowerCase(),lW={"&":"&",">":">","<":"<",'"':""","'":"'"},cW=/[&><"']/g,wn=e=>String(e).replace(cW,t=>lW[t]),Ml=e=>e.type==="ordgroup"||e.type==="color"?e.body.length===1?Ml(e.body[0]):e:e.type==="font"?Ml(e.body):e,uW=new Set(["mathord","textord","atom"]),sa=e=>uW.has(Ml(e).type),dW=e=>{var t=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(e);return t?t[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(t[1])?null:t[1].toLowerCase():"_relative"},wb={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format "},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color ",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:e=>"#"+e},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(e,t)=>(t.push(e),t)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:e=>Math.max(0,e),cli:"--min-rule-thickness ",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:e=>Math.max(0,e),cli:"-s, --max-size ",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:e=>Math.max(0,e),cli:"-e, --max-expand ",cliProcessor:e=>e==="Infinity"?1/0:parseInt(e)},globalGroup:{type:"boolean",cli:!1}};function pW(e){if(typeof e!="string")return e.enum[0];switch(e){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{};default:throw new Error("Unexpected schema type; settings must declare an explicit default.")}}function mW(e){if(e.default!==void 0)return e.default;var t=Array.isArray(e.type)?e.type[0]:e.type;return pW(t)}function fW(e,t,n,r){var a=n[t];e[t]=a!==void 0?r.processor?r.processor(a):a:mW(r)}class iy{constructor(t){t===void 0&&(t={}),this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,t=t||{};for(var n of Object.keys(wb)){var r=wb[n];r&&fW(this,n,t,r)}}reportNonstrict(t,n,r){var a=this.strict;if(typeof a=="function"&&(a=a(t,n,r)),!(!a||a==="ignore")){if(a===!0||a==="error")throw new Ie("LaTeX-incompatible input and strict mode is set to 'error': "+(n+" ["+t+"]"),r);a==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(n+" ["+t+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+a+"': "+n+" ["+t+"]"))}}useStrictBehavior(t,n,r){var a=this.strict;if(typeof a=="function")try{a=a(t,n,r)}catch{a="error"}return!a||a==="ignore"?!1:a===!0||a==="error"?!0:a==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(n+" ["+t+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+a+"': "+n+" ["+t+"]")),!1)}isTrusted(t){if("url"in t&&t.url&&!t.protocol){var n=dW(t.url);if(n==null)return!1;t.protocol=n}var r=typeof this.trust=="function"?this.trust(t):this.trust;return!!r}}class da{constructor(t,n,r){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=t,this.size=n,this.cramped=r}sup(){return Dr[hW[this.id]]}sub(){return Dr[gW[this.id]]}fracNum(){return Dr[bW[this.id]]}fracDen(){return Dr[xW[this.id]]}cramp(){return Dr[yW[this.id]]}text(){return Dr[vW[this.id]]}isTight(){return this.size>=2}}var sy=0,fc=1,Gi=2,Qr=3,yo=4,ur=5,ts=6,_n=7,Dr=[new da(sy,0,!1),new da(fc,0,!0),new da(Gi,1,!1),new da(Qr,1,!0),new da(yo,2,!1),new da(ur,2,!0),new da(ts,3,!1),new da(_n,3,!0)],hW=[yo,ur,yo,ur,ts,_n,ts,_n],gW=[ur,ur,ur,ur,_n,_n,_n,_n],bW=[Gi,Qr,yo,ur,ts,_n,ts,_n],xW=[Qr,Qr,ur,ur,_n,_n,_n,_n],yW=[fc,fc,Qr,Qr,ur,ur,_n,_n],vW=[sy,fc,Gi,Qr,Gi,Qr,Gi,Qr],ft={DISPLAY:Dr[sy],TEXT:Dr[Gi],SCRIPT:Dr[yo],SCRIPTSCRIPT:Dr[ts]},Sb=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];function kW(e){for(var t=0;t=a[0]&&e<=a[1])return n.name}return null}var Ll=[];Sb.forEach(e=>e.blocks.forEach(t=>Ll.push(...t)));function GI(e){for(var t=0;t=Ll[t]&&e<=Ll[t+1])return!0;return!1}var mn=e=>e+" "+e,Ei=80,wW=function(t,n){return"M95,"+(622+t+n)+` +c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14 +c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54 +c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10 +s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429 +c69,-144,104.5,-217.7,106.5,-221 +l`+t/2.075+" -"+t+` +c5.3,-9.3,12,-14,20,-14 +H400000v`+(40+t)+`H845.2724 +s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7 +c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z +M`+(834+t)+" "+n+"h400000v"+(40+t)+"h-400000z"},SW=function(t,n){return"M263,"+(601+t+n)+`c0.7,0,18,39.7,52,119 +c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120 +c340,-704.7,510.7,-1060.3,512,-1067 +l`+t/2.084+" -"+t+` +c4.7,-7.3,11,-11,19,-11 +H40000v`+(40+t)+`H1012.3 +s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232 +c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1 +s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26 +c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z +M`+(1001+t)+" "+n+"h400000v"+(40+t)+"h-400000z"},EW=function(t,n){return"M983 "+(10+t+n)+` +l`+t/3.13+" -"+t+` +c4,-6.7,10,-10,18,-10 H400000v`+(40+t)+` +H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7 +s-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744 +c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30 +c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722 +c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5 +c53.7,-170.3,84.5,-266.8,92.5,-289.5z +M`+(1001+t)+" "+n+"h400000v"+(40+t)+"h-400000z"},CW=function(t,n){return"M424,"+(2398+t+n)+` +c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514 +c0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20 +s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121 +s209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081 +l`+t/4.223+" -"+t+`c4,-6.7,10,-10,18,-10 H400000 +v`+(40+t)+`H1014.6 +s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185 +c-2,6,-10,9,-24,9 +c-8,0,-12,-0.7,-12,-2z M`+(1001+t)+" "+n+` +h400000v`+(40+t)+"h-400000z"},NW=function(t,n){return"M473,"+(2713+t+n)+` +c339.3,-1799.3,509.3,-2700,510,-2702 l`+t/5.298+" -"+t+` +c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+t)+`H1017.7 +s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9 +c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200 +c0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26 +s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104, +606zM`+(1001+t)+" "+n+"h400000v"+(40+t)+"H1017.7z"},TW=function(t){var n=t/2;return"M400000 "+t+" H0 L"+n+" 0 l65 45 L145 "+(t-80)+" H400000z"},AW=function(t,n,r){var a=r-54-n-t;return"M702 "+(t+n)+"H400000"+(40+t)+` +H742v`+a+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1 +h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170 +c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667 +219 661 l218 661zM702 `+n+"H400000v"+(40+t)+"H742z"},IW=function(t,n,r){n=1e3*n;var a="";switch(t){case"sqrtMain":a=wW(n,Ei);break;case"sqrtSize1":a=SW(n,Ei);break;case"sqrtSize2":a=EW(n,Ei);break;case"sqrtSize3":a=CW(n,Ei);break;case"sqrtSize4":a=NW(n,Ei);break;case"sqrtTall":a=AW(n,Ei,r)}return a},RW=function(t,n){switch(t){case"⎜":return mn("M291 0 H417 V"+n+" H291z");case"∣":return mn("M145 0 H188 V"+n+" H145z");case"∥":return mn("M145 0 H188 V"+n+" H145z")+mn("M367 0 H410 V"+n+" H367z");case"⎟":return mn("M457 0 H583 V"+n+" H457z");case"⎢":return mn("M319 0 H403 V"+n+" H319z");case"⎥":return mn("M263 0 H347 V"+n+" H263z");case"⎪":return mn("M384 0 H504 V"+n+" H384z");case"⏐":return mn("M312 0 H355 V"+n+" H312z");case"‖":return mn("M257 0 H300 V"+n+" H257z")+mn("M478 0 H521 V"+n+" H478z");default:return""}},Xk={doubleleftarrow:`M262 157 +l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3 + 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28 + 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5 +c2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5 + 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87 +-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7 +-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z +m8 0v40h399730v-40zm0 194v40h399730v-40z`,doublerightarrow:`M399738 392l +-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5 + 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88 +-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68 +-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18 +-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782 +c-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3 +-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,leftarrow:`M400000 241H110l3-3c68.7-52.7 113.7-120 + 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8 +-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247 +c-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208 + 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3 + 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202 + l-3-3h399890zM100 241v40h399900v-40z`,leftbrace:`M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117 +-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7 + 5-6 9-10 13-.7 1-7.3 1-20 1H6z`,leftbraceunder:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13 + 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688 + 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7 +-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,leftgroup:`M400000 80 +H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0 + 435 0h399565z`,leftgroupunder:`M400000 262 +H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219 + 435 219h399565z`,leftharpoon:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3 +-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5 +-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7 +-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z`,leftharpoonplus:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5 + 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3 +-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7 +-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z +m0 0v40h400000v-40z`,leftharpoondown:`M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333 + 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5 + 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667 +-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z`,leftharpoondownplus:`M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12 + 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7 +-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0 +v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,lefthook:`M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5 +-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3 +-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21 + 71.5 23h399859zM103 281v-40h399897v40z`,leftlinesegment:mn("M40 281 V428 H0 V94 H40 V241 H400000 v40z"),leftbracketunder:mn("M0 0 h120 V290 H399995 v120 H0z"),leftbracketover:mn("M0 440 h120 V150 H399995 v-120 H0z"),leftmapsto:mn("M40 281 V448H0V74H40V241H400000v40z"),leftToFrom:`M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23 +-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8 +c28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3 + 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,longequal:mn("M0 50 h400000 v40H0z m0 194h40000v40H0z"),midbrace:`M200428 334 +c-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14 +-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7 + 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11 + 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,midbraceunder:`M199572 214 +c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14 + 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3 + 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0 +-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`,oiintSize1:`M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6 +-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z +m368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8 +60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z`,oiintSize2:`M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8 +-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z +m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2 +c0 110 84 276 504 276s502.4-166 502.4-276z`,oiiintSize1:`M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6 +-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z +m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0 +85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z`,oiiintSize2:`M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8 +-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z +m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1 +c0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z`,rightarrow:`M0 241v40h399891c-47.3 35.3-84 78-110 128 +-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 + 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 + 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85 +-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5 +-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67 + 151.7 139 205zm0 0v40h399900v-40z`,rightbrace:`M400000 542l +-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5 +s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1 +c124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z`,rightbraceunder:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3 + 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237 +-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`,rightgroup:`M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0 + 3-1 3-3v-38c-76-158-257-219-435-219H0z`,rightgroupunder:`M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18 + 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z`,rightharpoon:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3 +-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2 +-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 + 69.2 92 94.5zm0 0v40h399900v-40z`,rightharpoonplus:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11 +-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7 + 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z +m0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z`,rightharpoondown:`M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8 + 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5 +-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95 +-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z`,rightharpoondownplus:`M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8 + 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 + 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3 +-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z +m0-194v40h400000v-40zm0 0v40h400000v-40z`,righthook:`M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3 + 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0 +-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21 + 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,rightlinesegment:mn("M399960 241 V94 h40 V428 h-40 V281 H0 v-40z"),rightbracketunder:mn("M399995 0 h-120 V290 H0 v120 H400000z"),rightbracketover:mn("M399995 440 h-120 V150 H0 v-120 H399995z"),rightToFrom:`M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23 + 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32 +-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142 +-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,twoheadleftarrow:`M0 167c68 40 + 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69 +-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3 +-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19 +-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101 + 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z`,twoheadrightarrow:`M400000 167 +c-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3 + 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42 + 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333 +-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70 + 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z`,tilde1:`M200 55.538c-77 0-168 73.953-177 73.953-3 0-7 +-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0 + 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0 + 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128 +-68.267.847-113-73.952-191-73.952z`,tilde2:`M344 55.266c-142 0-300.638 81.316-311.5 86.418 +-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9 + 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114 +c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751 + 181.476 676 181.476c-149 0-189-126.21-332-126.21z`,tilde3:`M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457 +-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0 + 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697 + 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696 + -338 0-409-156.573-744-156.573z`,tilde4:`M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345 +-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409 + 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9 + 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409 + -175.236-744-175.236z`,vec:`M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5 +3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11 +10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63 +-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1 +-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59 +H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359 +c-16-25.333-24-45-24-59z`,widehat1:`M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22 +c-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z`,widehat2:`M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat3:`M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat4:`M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10 +-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widecheck1:`M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1, +-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z`,widecheck2:`M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck3:`M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck4:`M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10, +-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,baraboveleftarrow:`M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202 +c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5 +c-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130 +s-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47 +121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6 +s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11 +c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z +M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,rightarrowabovebar:`M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32 +-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0 +13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39 +-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5 +-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5 +-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67 +151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,baraboveshortleftharpoon:`M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11 +c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17 +c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21 +c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40 +c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z +M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,rightharpoonaboveshortbar:`M0,241 l0,40c399126,0,399993,0,399993,0 +c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199, +-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6 +c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z +M0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z`,shortbaraboveleftharpoon:`M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11 +c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9, +1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7, +-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z +M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z`,shortrightharpoonabovebar:`M53,241l0,40c398570,0,399437,0,399437,0 +c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199, +-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6 +c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z +M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`},_W=function(t,n){switch(t){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+n+` v1759 v84 h347 v-84 +H403z M403 1759 V0 H319 V1759 v`+n+" v1759 v84 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+n+` v1759 H0 v84 H347z +M347 1759 V0 H263 V1759 v`+n+" v1759 h84z";case"vert":return"M145 15 v585 v"+n+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-n+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+n+" v585 h43z";case"doublevert":return"M145 15 v585 v"+n+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-n+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+n+` v585 h43z +M367 15 v585 v`+n+` v585 c2.667,10,9.667,15,21,15 +c10,0,16.667,-5,20,-15 v-585 v`+-n+` v-585 c-2.667,-10,-9.667,-15,-21,-15 +c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+n+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+n+` v1715 h263 v84 H319z +MM319 602 V0 H403 V602 v`+n+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+n+` v1799 H0 v-84 H319z +MM319 602 V0 H403 V602 v`+n+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+n+` v602 h84z +M403 1759 V0 H319 V1759 v`+n+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+n+` v602 h84z +M347 1759 V0 h-84 V1759 v`+n+" v602 h84z";case"lparen":return`M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1 +c-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349, +-36,557 l0,`+(n+84)+`c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210, +949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9 +c0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5, +-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189 +l0,-`+(n+92)+`c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3, +-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z`;case"rparen":return`M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3, +63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5 +c11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,`+(n+9)+` +c-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664 +c-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11 +c0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17 +c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558 +l0,-`+(n+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7, +-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw new Error("Unknown stretchy delimiter.")}};function jW(e){return"toText"in e}class xs{constructor(t){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=t,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(t){return this.classes.includes(t)}toNode(){for(var t=document.createDocumentFragment(),n=0;n{if(jW(t))return t.toText();throw new Error("Expected MathDomNode with toText, got "+t.constructor.name)}).join("")}}var Eb={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:803/800,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:803/800},OW={ex:!0,em:!0,mu:!0},VI=function(t){return typeof t!="string"&&(t=t.unit),t in Eb||t in OW||t==="ex"},Ht=function(t,n){var r;if(t.unit in Eb)r=Eb[t.unit]/n.fontMetrics().ptPerEm/n.sizeMultiplier;else if(t.unit==="mu")r=n.fontMetrics().cssEmPerMu;else{var a;if(n.style.isTight()?a=n.havingStyle(n.style.text()):a=n,t.unit==="ex")r=a.fontMetrics().xHeight;else if(t.unit==="em")r=a.fontMetrics().quad;else throw new Ie("Invalid unit: '"+t.unit+"'");a!==n&&(r*=a.sizeMultiplier/n.sizeMultiplier)}return Math.min(t.number*r,n.maxSize)},De=function(t){return+t.toFixed(4)+"em"},Sa=function(t){return t.filter(n=>n).join(" ")},oy=function(t){var n="";for(var r of Object.keys(t)){var a=t[r];a!==void 0&&(n+=oW(r)+":"+a+";")}return n},WI=function(t,n,r){if(this.classes=t||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=r||{},n){n.style.isTight()&&this.classes.push("mtight");var a=n.getColor();a&&(this.style.color=a)}},KI=function(t){var n=document.createElement(t);n.className=Sa(this.classes),Object.assign(n.style,this.style);for(var r of Object.keys(this.attributes))n.setAttribute(r,this.attributes[r]);for(var a=0;a/=\x00-\x1f]/,YI=function(t){var n="<"+t;this.classes.length&&(n+=' class="'+wn(Sa(this.classes))+'"');var r=oy(this.style);r&&(n+=' style="'+wn(r)+'"');for(var a of Object.keys(this.attributes)){if(DW.test(a))throw new Ie("Invalid attribute name '"+a+"'");n+=" "+a+'="'+wn(this.attributes[a])+'"'}n+=">";for(var i=0;i",n};class ys{constructor(t,n,r,a){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,this.italic=void 0,WI.call(this,t,r,a),this.children=n||[]}setAttribute(t,n){this.attributes[t]=n}hasClass(t){return this.classes.includes(t)}toNode(){return KI.call(this,"span")}toMarkup(){return YI.call(this,"span")}}class Yc{constructor(t,n,r,a){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,WI.call(this,n,a),this.children=r||[],this.setAttribute("href",t)}setAttribute(t,n){this.attributes[t]=n}hasClass(t){return this.classes.includes(t)}toNode(){return KI.call(this,"a")}toMarkup(){return YI.call(this,"a")}}class MW{constructor(t,n,r){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=n,this.src=t,this.classes=["mord"],this.height=0,this.depth=0,this.maxFontSize=0,this.style=r}hasClass(t){return this.classes.includes(t)}toNode(){var t=document.createElement("img");return t.src=this.src,t.alt=this.alt,t.className="mord",Object.assign(t.style,this.style),t}toMarkup(){var t=''+wn(this.alt)+'0&&(n=document.createElement("span"),n.style.marginRight=De(this.italic)),this.classes.length>0&&(n=n||document.createElement("span"),n.className=Sa(this.classes)),Object.keys(this.style).length>0&&(n=n||document.createElement("span"),Object.assign(n.style,this.style)),n?(n.appendChild(t),n):t}toMarkup(){var t=!1,n="0&&(r+="margin-right:"+De(this.italic)+";"),r+=oy(this.style),r&&(t=!0,n+=' style="'+wn(r)+'"');var a=wn(this.text);return t?(n+=">",n+=a,n+="",n):a}}class na{constructor(t,n){this.children=void 0,this.attributes=void 0,this.children=t||[],this.attributes=n||{}}toNode(){var t="http://www.w3.org/2000/svg",n=document.createElementNS(t,"svg");for(var r of Object.keys(this.attributes))n.setAttribute(r,this.attributes[r]);for(var a=0;a':''}}class Cb{constructor(t){this.attributes=void 0,this.attributes=t||{}}toNode(){var t="http://www.w3.org/2000/svg",n=document.createElementNS(t,"line");for(var r of Object.keys(this.attributes))n.setAttribute(r,this.attributes[r]);return n}toMarkup(){var t=" but got "+String(e)+".")}var BW=e=>e instanceof ys||e instanceof Yc||e instanceof xs,Lr={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},ul={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},Zk={Å:"A",Ð:"D",Þ:"o",å:"a",ð:"d",þ:"o",А:"A",Б:"B",В:"B",Г:"F",Д:"A",Е:"E",Ж:"K",З:"3",И:"N",Й:"N",К:"K",Л:"N",М:"M",Н:"H",О:"O",П:"N",Р:"P",С:"C",Т:"T",У:"y",Ф:"O",Х:"X",Ц:"U",Ч:"h",Ш:"W",Щ:"W",Ъ:"B",Ы:"X",Ь:"B",Э:"3",Ю:"X",Я:"R",а:"a",б:"b",в:"a",г:"r",д:"y",е:"e",ж:"m",з:"e",и:"n",й:"n",к:"n",л:"n",м:"m",н:"n",о:"o",п:"n",р:"p",с:"c",т:"o",у:"y",ф:"b",х:"x",ц:"n",ч:"n",ш:"w",щ:"w",ъ:"a",ы:"m",ь:"a",э:"e",ю:"m",я:"r"};function $W(e,t){Lr[e]=t}function ly(e,t,n){if(!Lr[t])throw new Error("Font metrics not found for font: "+t+".");var r=e.charCodeAt(0),a=Lr[t][r];if(!a&&e[0]in Zk&&(r=Zk[e[0]].charCodeAt(0),a=Lr[t][r]),!a&&n==="text"&&GI(r)&&(a=Lr[t][77]),a)return{depth:a[0],height:a[1],italic:a[2],skew:a[3],width:a[4]}}var pd={};function UW(e){var t;if(e>=5?t=0:e>=3?t=1:t=2,!pd[t]){var n=pd[t]={cssEmPerMu:ul.quad[t]/18};for(var r in ul)ul.hasOwnProperty(r)&&(n[r]=ul[r][t])}return pd[t]}var $t={math:{},text:{}};function S(e,t,n,r,a,i){$t[e][a]={font:t,group:n,replace:r},i&&r&&($t[e][r]=$t[e][a])}var R="math",ye="text",D="main",W="ams",Ut="accent-token",Ve="bin",Dn="close",vs="inner",lt="mathord",ln="op-token",tr="open",Do="punct",Y="rel",oa="spacing",Q="textord";S(R,D,Y,"≡","\\equiv",!0);S(R,D,Y,"≺","\\prec",!0);S(R,D,Y,"≻","\\succ",!0);S(R,D,Y,"∼","\\sim",!0);S(R,D,Y,"⊥","\\perp");S(R,D,Y,"⪯","\\preceq",!0);S(R,D,Y,"⪰","\\succeq",!0);S(R,D,Y,"≃","\\simeq",!0);S(R,D,Y,"∣","\\mid",!0);S(R,D,Y,"≪","\\ll",!0);S(R,D,Y,"≫","\\gg",!0);S(R,D,Y,"≍","\\asymp",!0);S(R,D,Y,"∥","\\parallel");S(R,D,Y,"⋈","\\bowtie",!0);S(R,D,Y,"⌣","\\smile",!0);S(R,D,Y,"⊑","\\sqsubseteq",!0);S(R,D,Y,"⊒","\\sqsupseteq",!0);S(R,D,Y,"≐","\\doteq",!0);S(R,D,Y,"⌢","\\frown",!0);S(R,D,Y,"∋","\\ni",!0);S(R,D,Y,"∝","\\propto",!0);S(R,D,Y,"⊢","\\vdash",!0);S(R,D,Y,"⊣","\\dashv",!0);S(R,D,Y,"∋","\\owns");S(R,D,Do,".","\\ldotp");S(R,D,Do,"⋅","\\cdotp");S(R,D,Do,"⋅","·");S(ye,D,Q,"⋅","·");S(R,D,Q,"#","\\#");S(ye,D,Q,"#","\\#");S(R,D,Q,"&","\\&");S(ye,D,Q,"&","\\&");S(R,D,Q,"ℵ","\\aleph",!0);S(R,D,Q,"∀","\\forall",!0);S(R,D,Q,"ℏ","\\hbar",!0);S(R,D,Q,"∃","\\exists",!0);S(R,D,Q,"∇","\\nabla",!0);S(R,D,Q,"♭","\\flat",!0);S(R,D,Q,"ℓ","\\ell",!0);S(R,D,Q,"♮","\\natural",!0);S(R,D,Q,"♣","\\clubsuit",!0);S(R,D,Q,"℘","\\wp",!0);S(R,D,Q,"♯","\\sharp",!0);S(R,D,Q,"♢","\\diamondsuit",!0);S(R,D,Q,"ℜ","\\Re",!0);S(R,D,Q,"♡","\\heartsuit",!0);S(R,D,Q,"ℑ","\\Im",!0);S(R,D,Q,"♠","\\spadesuit",!0);S(R,D,Q,"§","\\S",!0);S(ye,D,Q,"§","\\S");S(R,D,Q,"¶","\\P",!0);S(ye,D,Q,"¶","\\P");S(R,D,Q,"†","\\dag");S(ye,D,Q,"†","\\dag");S(ye,D,Q,"†","\\textdagger");S(R,D,Q,"‡","\\ddag");S(ye,D,Q,"‡","\\ddag");S(ye,D,Q,"‡","\\textdaggerdbl");S(R,D,Dn,"⎱","\\rmoustache",!0);S(R,D,tr,"⎰","\\lmoustache",!0);S(R,D,Dn,"⟯","\\rgroup",!0);S(R,D,tr,"⟮","\\lgroup",!0);S(R,D,Ve,"∓","\\mp",!0);S(R,D,Ve,"⊖","\\ominus",!0);S(R,D,Ve,"⊎","\\uplus",!0);S(R,D,Ve,"⊓","\\sqcap",!0);S(R,D,Ve,"∗","\\ast");S(R,D,Ve,"⊔","\\sqcup",!0);S(R,D,Ve,"◯","\\bigcirc",!0);S(R,D,Ve,"∙","\\bullet",!0);S(R,D,Ve,"‡","\\ddagger");S(R,D,Ve,"≀","\\wr",!0);S(R,D,Ve,"⨿","\\amalg");S(R,D,Ve,"&","\\And");S(R,D,Y,"⟵","\\longleftarrow",!0);S(R,D,Y,"⇐","\\Leftarrow",!0);S(R,D,Y,"⟸","\\Longleftarrow",!0);S(R,D,Y,"⟶","\\longrightarrow",!0);S(R,D,Y,"⇒","\\Rightarrow",!0);S(R,D,Y,"⟹","\\Longrightarrow",!0);S(R,D,Y,"↔","\\leftrightarrow",!0);S(R,D,Y,"⟷","\\longleftrightarrow",!0);S(R,D,Y,"⇔","\\Leftrightarrow",!0);S(R,D,Y,"⟺","\\Longleftrightarrow",!0);S(R,D,Y,"↦","\\mapsto",!0);S(R,D,Y,"⟼","\\longmapsto",!0);S(R,D,Y,"↗","\\nearrow",!0);S(R,D,Y,"↩","\\hookleftarrow",!0);S(R,D,Y,"↪","\\hookrightarrow",!0);S(R,D,Y,"↘","\\searrow",!0);S(R,D,Y,"↼","\\leftharpoonup",!0);S(R,D,Y,"⇀","\\rightharpoonup",!0);S(R,D,Y,"↙","\\swarrow",!0);S(R,D,Y,"↽","\\leftharpoondown",!0);S(R,D,Y,"⇁","\\rightharpoondown",!0);S(R,D,Y,"↖","\\nwarrow",!0);S(R,D,Y,"⇌","\\rightleftharpoons",!0);S(R,W,Y,"≮","\\nless",!0);S(R,W,Y,"","\\@nleqslant");S(R,W,Y,"","\\@nleqq");S(R,W,Y,"⪇","\\lneq",!0);S(R,W,Y,"≨","\\lneqq",!0);S(R,W,Y,"","\\@lvertneqq");S(R,W,Y,"⋦","\\lnsim",!0);S(R,W,Y,"⪉","\\lnapprox",!0);S(R,W,Y,"⊀","\\nprec",!0);S(R,W,Y,"⋠","\\npreceq",!0);S(R,W,Y,"⋨","\\precnsim",!0);S(R,W,Y,"⪹","\\precnapprox",!0);S(R,W,Y,"≁","\\nsim",!0);S(R,W,Y,"","\\@nshortmid");S(R,W,Y,"∤","\\nmid",!0);S(R,W,Y,"⊬","\\nvdash",!0);S(R,W,Y,"⊭","\\nvDash",!0);S(R,W,Y,"⋪","\\ntriangleleft");S(R,W,Y,"⋬","\\ntrianglelefteq",!0);S(R,W,Y,"⊊","\\subsetneq",!0);S(R,W,Y,"","\\@varsubsetneq");S(R,W,Y,"⫋","\\subsetneqq",!0);S(R,W,Y,"","\\@varsubsetneqq");S(R,W,Y,"≯","\\ngtr",!0);S(R,W,Y,"","\\@ngeqslant");S(R,W,Y,"","\\@ngeqq");S(R,W,Y,"⪈","\\gneq",!0);S(R,W,Y,"≩","\\gneqq",!0);S(R,W,Y,"","\\@gvertneqq");S(R,W,Y,"⋧","\\gnsim",!0);S(R,W,Y,"⪊","\\gnapprox",!0);S(R,W,Y,"⊁","\\nsucc",!0);S(R,W,Y,"⋡","\\nsucceq",!0);S(R,W,Y,"⋩","\\succnsim",!0);S(R,W,Y,"⪺","\\succnapprox",!0);S(R,W,Y,"≆","\\ncong",!0);S(R,W,Y,"","\\@nshortparallel");S(R,W,Y,"∦","\\nparallel",!0);S(R,W,Y,"⊯","\\nVDash",!0);S(R,W,Y,"⋫","\\ntriangleright");S(R,W,Y,"⋭","\\ntrianglerighteq",!0);S(R,W,Y,"","\\@nsupseteqq");S(R,W,Y,"⊋","\\supsetneq",!0);S(R,W,Y,"","\\@varsupsetneq");S(R,W,Y,"⫌","\\supsetneqq",!0);S(R,W,Y,"","\\@varsupsetneqq");S(R,W,Y,"⊮","\\nVdash",!0);S(R,W,Y,"⪵","\\precneqq",!0);S(R,W,Y,"⪶","\\succneqq",!0);S(R,W,Y,"","\\@nsubseteqq");S(R,W,Ve,"⊴","\\unlhd");S(R,W,Ve,"⊵","\\unrhd");S(R,W,Y,"↚","\\nleftarrow",!0);S(R,W,Y,"↛","\\nrightarrow",!0);S(R,W,Y,"⇍","\\nLeftarrow",!0);S(R,W,Y,"⇏","\\nRightarrow",!0);S(R,W,Y,"↮","\\nleftrightarrow",!0);S(R,W,Y,"⇎","\\nLeftrightarrow",!0);S(R,W,Y,"△","\\vartriangle");S(R,W,Q,"ℏ","\\hslash");S(R,W,Q,"▽","\\triangledown");S(R,W,Q,"◊","\\lozenge");S(R,W,Q,"Ⓢ","\\circledS");S(R,W,Q,"®","\\circledR");S(ye,W,Q,"®","\\circledR");S(R,W,Q,"∡","\\measuredangle",!0);S(R,W,Q,"∄","\\nexists");S(R,W,Q,"℧","\\mho");S(R,W,Q,"Ⅎ","\\Finv",!0);S(R,W,Q,"⅁","\\Game",!0);S(R,W,Q,"‵","\\backprime");S(R,W,Q,"▲","\\blacktriangle");S(R,W,Q,"▼","\\blacktriangledown");S(R,W,Q,"■","\\blacksquare");S(R,W,Q,"⧫","\\blacklozenge");S(R,W,Q,"★","\\bigstar");S(R,W,Q,"∢","\\sphericalangle",!0);S(R,W,Q,"∁","\\complement",!0);S(R,W,Q,"ð","\\eth",!0);S(ye,D,Q,"ð","ð");S(R,W,Q,"╱","\\diagup");S(R,W,Q,"╲","\\diagdown");S(R,W,Q,"□","\\square");S(R,W,Q,"□","\\Box");S(R,W,Q,"◊","\\Diamond");S(R,W,Q,"¥","\\yen",!0);S(ye,W,Q,"¥","\\yen",!0);S(R,W,Q,"✓","\\checkmark",!0);S(ye,W,Q,"✓","\\checkmark");S(R,W,Q,"ℶ","\\beth",!0);S(R,W,Q,"ℸ","\\daleth",!0);S(R,W,Q,"ℷ","\\gimel",!0);S(R,W,Q,"ϝ","\\digamma",!0);S(R,W,Q,"ϰ","\\varkappa");S(R,W,tr,"┌","\\@ulcorner",!0);S(R,W,Dn,"┐","\\@urcorner",!0);S(R,W,tr,"└","\\@llcorner",!0);S(R,W,Dn,"┘","\\@lrcorner",!0);S(R,W,Y,"≦","\\leqq",!0);S(R,W,Y,"⩽","\\leqslant",!0);S(R,W,Y,"⪕","\\eqslantless",!0);S(R,W,Y,"≲","\\lesssim",!0);S(R,W,Y,"⪅","\\lessapprox",!0);S(R,W,Y,"≊","\\approxeq",!0);S(R,W,Ve,"⋖","\\lessdot");S(R,W,Y,"⋘","\\lll",!0);S(R,W,Y,"≶","\\lessgtr",!0);S(R,W,Y,"⋚","\\lesseqgtr",!0);S(R,W,Y,"⪋","\\lesseqqgtr",!0);S(R,W,Y,"≑","\\doteqdot");S(R,W,Y,"≓","\\risingdotseq",!0);S(R,W,Y,"≒","\\fallingdotseq",!0);S(R,W,Y,"∽","\\backsim",!0);S(R,W,Y,"⋍","\\backsimeq",!0);S(R,W,Y,"⫅","\\subseteqq",!0);S(R,W,Y,"⋐","\\Subset",!0);S(R,W,Y,"⊏","\\sqsubset",!0);S(R,W,Y,"≼","\\preccurlyeq",!0);S(R,W,Y,"⋞","\\curlyeqprec",!0);S(R,W,Y,"≾","\\precsim",!0);S(R,W,Y,"⪷","\\precapprox",!0);S(R,W,Y,"⊲","\\vartriangleleft");S(R,W,Y,"⊴","\\trianglelefteq");S(R,W,Y,"⊨","\\vDash",!0);S(R,W,Y,"⊪","\\Vvdash",!0);S(R,W,Y,"⌣","\\smallsmile");S(R,W,Y,"⌢","\\smallfrown");S(R,W,Y,"≏","\\bumpeq",!0);S(R,W,Y,"≎","\\Bumpeq",!0);S(R,W,Y,"≧","\\geqq",!0);S(R,W,Y,"⩾","\\geqslant",!0);S(R,W,Y,"⪖","\\eqslantgtr",!0);S(R,W,Y,"≳","\\gtrsim",!0);S(R,W,Y,"⪆","\\gtrapprox",!0);S(R,W,Ve,"⋗","\\gtrdot");S(R,W,Y,"⋙","\\ggg",!0);S(R,W,Y,"≷","\\gtrless",!0);S(R,W,Y,"⋛","\\gtreqless",!0);S(R,W,Y,"⪌","\\gtreqqless",!0);S(R,W,Y,"≖","\\eqcirc",!0);S(R,W,Y,"≗","\\circeq",!0);S(R,W,Y,"≜","\\triangleq",!0);S(R,W,Y,"∼","\\thicksim");S(R,W,Y,"≈","\\thickapprox");S(R,W,Y,"⫆","\\supseteqq",!0);S(R,W,Y,"⋑","\\Supset",!0);S(R,W,Y,"⊐","\\sqsupset",!0);S(R,W,Y,"≽","\\succcurlyeq",!0);S(R,W,Y,"⋟","\\curlyeqsucc",!0);S(R,W,Y,"≿","\\succsim",!0);S(R,W,Y,"⪸","\\succapprox",!0);S(R,W,Y,"⊳","\\vartriangleright");S(R,W,Y,"⊵","\\trianglerighteq");S(R,W,Y,"⊩","\\Vdash",!0);S(R,W,Y,"∣","\\shortmid");S(R,W,Y,"∥","\\shortparallel");S(R,W,Y,"≬","\\between",!0);S(R,W,Y,"⋔","\\pitchfork",!0);S(R,W,Y,"∝","\\varpropto");S(R,W,Y,"◀","\\blacktriangleleft");S(R,W,Y,"∴","\\therefore",!0);S(R,W,Y,"∍","\\backepsilon");S(R,W,Y,"▶","\\blacktriangleright");S(R,W,Y,"∵","\\because",!0);S(R,W,Y,"⋘","\\llless");S(R,W,Y,"⋙","\\gggtr");S(R,W,Ve,"⊲","\\lhd");S(R,W,Ve,"⊳","\\rhd");S(R,W,Y,"≂","\\eqsim",!0);S(R,D,Y,"⋈","\\Join");S(R,W,Y,"≑","\\Doteq",!0);S(R,W,Ve,"∔","\\dotplus",!0);S(R,W,Ve,"∖","\\smallsetminus");S(R,W,Ve,"⋒","\\Cap",!0);S(R,W,Ve,"⋓","\\Cup",!0);S(R,W,Ve,"⩞","\\doublebarwedge",!0);S(R,W,Ve,"⊟","\\boxminus",!0);S(R,W,Ve,"⊞","\\boxplus",!0);S(R,W,Ve,"⋇","\\divideontimes",!0);S(R,W,Ve,"⋉","\\ltimes",!0);S(R,W,Ve,"⋊","\\rtimes",!0);S(R,W,Ve,"⋋","\\leftthreetimes",!0);S(R,W,Ve,"⋌","\\rightthreetimes",!0);S(R,W,Ve,"⋏","\\curlywedge",!0);S(R,W,Ve,"⋎","\\curlyvee",!0);S(R,W,Ve,"⊝","\\circleddash",!0);S(R,W,Ve,"⊛","\\circledast",!0);S(R,W,Ve,"⋅","\\centerdot");S(R,W,Ve,"⊺","\\intercal",!0);S(R,W,Ve,"⋒","\\doublecap");S(R,W,Ve,"⋓","\\doublecup");S(R,W,Ve,"⊠","\\boxtimes",!0);S(R,W,Y,"⇢","\\dashrightarrow",!0);S(R,W,Y,"⇠","\\dashleftarrow",!0);S(R,W,Y,"⇇","\\leftleftarrows",!0);S(R,W,Y,"⇆","\\leftrightarrows",!0);S(R,W,Y,"⇚","\\Lleftarrow",!0);S(R,W,Y,"↞","\\twoheadleftarrow",!0);S(R,W,Y,"↢","\\leftarrowtail",!0);S(R,W,Y,"↫","\\looparrowleft",!0);S(R,W,Y,"⇋","\\leftrightharpoons",!0);S(R,W,Y,"↶","\\curvearrowleft",!0);S(R,W,Y,"↺","\\circlearrowleft",!0);S(R,W,Y,"↰","\\Lsh",!0);S(R,W,Y,"⇈","\\upuparrows",!0);S(R,W,Y,"↿","\\upharpoonleft",!0);S(R,W,Y,"⇃","\\downharpoonleft",!0);S(R,D,Y,"⊶","\\origof",!0);S(R,D,Y,"⊷","\\imageof",!0);S(R,W,Y,"⊸","\\multimap",!0);S(R,W,Y,"↭","\\leftrightsquigarrow",!0);S(R,W,Y,"⇉","\\rightrightarrows",!0);S(R,W,Y,"⇄","\\rightleftarrows",!0);S(R,W,Y,"↠","\\twoheadrightarrow",!0);S(R,W,Y,"↣","\\rightarrowtail",!0);S(R,W,Y,"↬","\\looparrowright",!0);S(R,W,Y,"↷","\\curvearrowright",!0);S(R,W,Y,"↻","\\circlearrowright",!0);S(R,W,Y,"↱","\\Rsh",!0);S(R,W,Y,"⇊","\\downdownarrows",!0);S(R,W,Y,"↾","\\upharpoonright",!0);S(R,W,Y,"⇂","\\downharpoonright",!0);S(R,W,Y,"⇝","\\rightsquigarrow",!0);S(R,W,Y,"⇝","\\leadsto");S(R,W,Y,"⇛","\\Rrightarrow",!0);S(R,W,Y,"↾","\\restriction");S(R,D,Q,"‘","`");S(R,D,Q,"$","\\$");S(ye,D,Q,"$","\\$");S(ye,D,Q,"$","\\textdollar");S(R,D,Q,"%","\\%");S(ye,D,Q,"%","\\%");S(R,D,Q,"_","\\_");S(ye,D,Q,"_","\\_");S(ye,D,Q,"_","\\textunderscore");S(R,D,Q,"∠","\\angle",!0);S(R,D,Q,"∞","\\infty",!0);S(R,D,Q,"′","\\prime");S(R,D,Q,"△","\\triangle");S(R,D,Q,"Γ","\\Gamma",!0);S(R,D,Q,"Δ","\\Delta",!0);S(R,D,Q,"Θ","\\Theta",!0);S(R,D,Q,"Λ","\\Lambda",!0);S(R,D,Q,"Ξ","\\Xi",!0);S(R,D,Q,"Π","\\Pi",!0);S(R,D,Q,"Σ","\\Sigma",!0);S(R,D,Q,"Υ","\\Upsilon",!0);S(R,D,Q,"Φ","\\Phi",!0);S(R,D,Q,"Ψ","\\Psi",!0);S(R,D,Q,"Ω","\\Omega",!0);S(R,D,Q,"A","Α");S(R,D,Q,"B","Β");S(R,D,Q,"E","Ε");S(R,D,Q,"Z","Ζ");S(R,D,Q,"H","Η");S(R,D,Q,"I","Ι");S(R,D,Q,"K","Κ");S(R,D,Q,"M","Μ");S(R,D,Q,"N","Ν");S(R,D,Q,"O","Ο");S(R,D,Q,"P","Ρ");S(R,D,Q,"T","Τ");S(R,D,Q,"X","Χ");S(R,D,Q,"¬","\\neg",!0);S(R,D,Q,"¬","\\lnot");S(R,D,Q,"⊤","\\top");S(R,D,Q,"⊥","\\bot");S(R,D,Q,"∅","\\emptyset");S(R,W,Q,"∅","\\varnothing");S(R,D,lt,"α","\\alpha",!0);S(R,D,lt,"β","\\beta",!0);S(R,D,lt,"γ","\\gamma",!0);S(R,D,lt,"δ","\\delta",!0);S(R,D,lt,"ϵ","\\epsilon",!0);S(R,D,lt,"ζ","\\zeta",!0);S(R,D,lt,"η","\\eta",!0);S(R,D,lt,"θ","\\theta",!0);S(R,D,lt,"ι","\\iota",!0);S(R,D,lt,"κ","\\kappa",!0);S(R,D,lt,"λ","\\lambda",!0);S(R,D,lt,"μ","\\mu",!0);S(R,D,lt,"ν","\\nu",!0);S(R,D,lt,"ξ","\\xi",!0);S(R,D,lt,"ο","\\omicron",!0);S(R,D,lt,"π","\\pi",!0);S(R,D,lt,"ρ","\\rho",!0);S(R,D,lt,"σ","\\sigma",!0);S(R,D,lt,"τ","\\tau",!0);S(R,D,lt,"υ","\\upsilon",!0);S(R,D,lt,"ϕ","\\phi",!0);S(R,D,lt,"χ","\\chi",!0);S(R,D,lt,"ψ","\\psi",!0);S(R,D,lt,"ω","\\omega",!0);S(R,D,lt,"ε","\\varepsilon",!0);S(R,D,lt,"ϑ","\\vartheta",!0);S(R,D,lt,"ϖ","\\varpi",!0);S(R,D,lt,"ϱ","\\varrho",!0);S(R,D,lt,"ς","\\varsigma",!0);S(R,D,lt,"φ","\\varphi",!0);S(R,D,Ve,"∗","*",!0);S(R,D,Ve,"+","+");S(R,D,Ve,"−","-",!0);S(R,D,Ve,"⋅","\\cdot",!0);S(R,D,Ve,"∘","\\circ",!0);S(R,D,Ve,"÷","\\div",!0);S(R,D,Ve,"±","\\pm",!0);S(R,D,Ve,"×","\\times",!0);S(R,D,Ve,"∩","\\cap",!0);S(R,D,Ve,"∪","\\cup",!0);S(R,D,Ve,"∖","\\setminus",!0);S(R,D,Ve,"∧","\\land");S(R,D,Ve,"∨","\\lor");S(R,D,Ve,"∧","\\wedge",!0);S(R,D,Ve,"∨","\\vee",!0);S(R,D,Q,"√","\\surd");S(R,D,tr,"⟨","\\langle",!0);S(R,D,tr,"∣","\\lvert");S(R,D,tr,"∥","\\lVert");S(R,D,Dn,"?","?");S(R,D,Dn,"!","!");S(R,D,Dn,"⟩","\\rangle",!0);S(R,D,Dn,"∣","\\rvert");S(R,D,Dn,"∥","\\rVert");S(R,D,Y,"=","=");S(R,D,Y,":",":");S(R,D,Y,"≈","\\approx",!0);S(R,D,Y,"≅","\\cong",!0);S(R,D,Y,"≥","\\ge");S(R,D,Y,"≥","\\geq",!0);S(R,D,Y,"←","\\gets");S(R,D,Y,">","\\gt",!0);S(R,D,Y,"∈","\\in",!0);S(R,D,Y,"","\\@not");S(R,D,Y,"⊂","\\subset",!0);S(R,D,Y,"⊃","\\supset",!0);S(R,D,Y,"⊆","\\subseteq",!0);S(R,D,Y,"⊇","\\supseteq",!0);S(R,W,Y,"⊈","\\nsubseteq",!0);S(R,W,Y,"⊉","\\nsupseteq",!0);S(R,D,Y,"⊨","\\models");S(R,D,Y,"←","\\leftarrow",!0);S(R,D,Y,"≤","\\le");S(R,D,Y,"≤","\\leq",!0);S(R,D,Y,"<","\\lt",!0);S(R,D,Y,"→","\\rightarrow",!0);S(R,D,Y,"→","\\to");S(R,W,Y,"≱","\\ngeq",!0);S(R,W,Y,"≰","\\nleq",!0);S(R,D,oa," ","\\ ");S(R,D,oa," ","\\space");S(R,D,oa," ","\\nobreakspace");S(ye,D,oa," ","\\ ");S(ye,D,oa," "," ");S(ye,D,oa," ","\\space");S(ye,D,oa," ","\\nobreakspace");S(R,D,oa,"","\\nobreak");S(R,D,oa,"","\\allowbreak");S(R,D,Do,",",",");S(R,D,Do,";",";");S(R,W,Ve,"⊼","\\barwedge",!0);S(R,W,Ve,"⊻","\\veebar",!0);S(R,D,Ve,"⊙","\\odot",!0);S(R,D,Ve,"⊕","\\oplus",!0);S(R,D,Ve,"⊗","\\otimes",!0);S(R,D,Q,"∂","\\partial",!0);S(R,D,Ve,"⊘","\\oslash",!0);S(R,W,Ve,"⊚","\\circledcirc",!0);S(R,W,Ve,"⊡","\\boxdot",!0);S(R,D,Ve,"△","\\bigtriangleup");S(R,D,Ve,"▽","\\bigtriangledown");S(R,D,Ve,"†","\\dagger");S(R,D,Ve,"⋄","\\diamond");S(R,D,Ve,"⋆","\\star");S(R,D,Ve,"◃","\\triangleleft");S(R,D,Ve,"▹","\\triangleright");S(R,D,tr,"{","\\{");S(ye,D,Q,"{","\\{");S(ye,D,Q,"{","\\textbraceleft");S(R,D,Dn,"}","\\}");S(ye,D,Q,"}","\\}");S(ye,D,Q,"}","\\textbraceright");S(R,D,tr,"{","\\lbrace");S(R,D,Dn,"}","\\rbrace");S(R,D,tr,"[","\\lbrack",!0);S(ye,D,Q,"[","\\lbrack",!0);S(R,D,Dn,"]","\\rbrack",!0);S(ye,D,Q,"]","\\rbrack",!0);S(R,D,tr,"(","\\lparen",!0);S(R,D,Dn,")","\\rparen",!0);S(ye,D,Q,"<","\\textless",!0);S(ye,D,Q,">","\\textgreater",!0);S(R,D,tr,"⌊","\\lfloor",!0);S(R,D,Dn,"⌋","\\rfloor",!0);S(R,D,tr,"⌈","\\lceil",!0);S(R,D,Dn,"⌉","\\rceil",!0);S(R,D,Q,"\\","\\backslash");S(R,D,Q,"∣","|");S(R,D,Q,"∣","\\vert");S(ye,D,Q,"|","\\textbar",!0);S(R,D,Q,"∥","\\|");S(R,D,Q,"∥","\\Vert");S(ye,D,Q,"∥","\\textbardbl");S(ye,D,Q,"~","\\textasciitilde");S(ye,D,Q,"\\","\\textbackslash");S(ye,D,Q,"^","\\textasciicircum");S(R,D,Y,"↑","\\uparrow",!0);S(R,D,Y,"⇑","\\Uparrow",!0);S(R,D,Y,"↓","\\downarrow",!0);S(R,D,Y,"⇓","\\Downarrow",!0);S(R,D,Y,"↕","\\updownarrow",!0);S(R,D,Y,"⇕","\\Updownarrow",!0);S(R,D,ln,"∐","\\coprod");S(R,D,ln,"⋁","\\bigvee");S(R,D,ln,"⋀","\\bigwedge");S(R,D,ln,"⨄","\\biguplus");S(R,D,ln,"⋂","\\bigcap");S(R,D,ln,"⋃","\\bigcup");S(R,D,ln,"∫","\\int");S(R,D,ln,"∫","\\intop");S(R,D,ln,"∬","\\iint");S(R,D,ln,"∭","\\iiint");S(R,D,ln,"∏","\\prod");S(R,D,ln,"∑","\\sum");S(R,D,ln,"⨂","\\bigotimes");S(R,D,ln,"⨁","\\bigoplus");S(R,D,ln,"⨀","\\bigodot");S(R,D,ln,"∮","\\oint");S(R,D,ln,"∯","\\oiint");S(R,D,ln,"∰","\\oiiint");S(R,D,ln,"⨆","\\bigsqcup");S(R,D,ln,"∫","\\smallint");S(ye,D,vs,"…","\\textellipsis");S(R,D,vs,"…","\\mathellipsis");S(ye,D,vs,"…","\\ldots",!0);S(R,D,vs,"…","\\ldots",!0);S(R,D,vs,"⋯","\\@cdots",!0);S(R,D,vs,"⋱","\\ddots",!0);S(R,D,Q,"⋮","\\varvdots");S(ye,D,Q,"⋮","\\varvdots");S(R,D,Ut,"ˊ","\\acute");S(R,D,Ut,"ˋ","\\grave");S(R,D,Ut,"¨","\\ddot");S(R,D,Ut,"~","\\tilde");S(R,D,Ut,"ˉ","\\bar");S(R,D,Ut,"˘","\\breve");S(R,D,Ut,"ˇ","\\check");S(R,D,Ut,"^","\\hat");S(R,D,Ut,"⃗","\\vec");S(R,D,Ut,"˙","\\dot");S(R,D,Ut,"˚","\\mathring");S(R,D,lt,"","\\@imath");S(R,D,lt,"","\\@jmath");S(R,D,Q,"ı","ı");S(R,D,Q,"ȷ","ȷ");S(ye,D,Q,"ı","\\i",!0);S(ye,D,Q,"ȷ","\\j",!0);S(ye,D,Q,"ß","\\ss",!0);S(ye,D,Q,"æ","\\ae",!0);S(ye,D,Q,"œ","\\oe",!0);S(ye,D,Q,"ø","\\o",!0);S(ye,D,Q,"Æ","\\AE",!0);S(ye,D,Q,"Œ","\\OE",!0);S(ye,D,Q,"Ø","\\O",!0);S(ye,D,Ut,"ˊ","\\'");S(ye,D,Ut,"ˋ","\\`");S(ye,D,Ut,"ˆ","\\^");S(ye,D,Ut,"˜","\\~");S(ye,D,Ut,"ˉ","\\=");S(ye,D,Ut,"˘","\\u");S(ye,D,Ut,"˙","\\.");S(ye,D,Ut,"¸","\\c");S(ye,D,Ut,"˚","\\r");S(ye,D,Ut,"ˇ","\\v");S(ye,D,Ut,"¨",'\\"');S(ye,D,Ut,"˝","\\H");S(ye,D,Ut,"◯","\\textcircled");var XI={"--":!0,"---":!0,"``":!0,"''":!0};S(ye,D,Q,"–","--",!0);S(ye,D,Q,"–","\\textendash");S(ye,D,Q,"—","---",!0);S(ye,D,Q,"—","\\textemdash");S(ye,D,Q,"‘","`",!0);S(ye,D,Q,"‘","\\textquoteleft");S(ye,D,Q,"’","'",!0);S(ye,D,Q,"’","\\textquoteright");S(ye,D,Q,"“","``",!0);S(ye,D,Q,"“","\\textquotedblleft");S(ye,D,Q,"”","''",!0);S(ye,D,Q,"”","\\textquotedblright");S(R,D,Q,"°","\\degree",!0);S(ye,D,Q,"°","\\degree");S(ye,D,Q,"°","\\textdegree",!0);S(R,D,Q,"£","\\pounds");S(R,D,Q,"£","\\mathsterling",!0);S(ye,D,Q,"£","\\pounds");S(ye,D,Q,"£","\\textsterling",!0);S(R,W,Q,"✠","\\maltese");S(ye,W,Q,"✠","\\maltese");var Jk='0123456789/@."';for(var md=0;md{var t=e.charCodeAt(0),n=e.charCodeAt(1),r=(t-55296)*1024+(n-56320)+65536;if(119808<=r&&r<120484){var a=Math.floor((r-119808)/26);return lw[a]}else if(120782<=r&&r<=120831){var i=Math.floor((r-120782)/10);return qW[i]}else{if(r===120485||r===120486)return lw[0];if(120486{if(Sa(e.classes)!==Sa(t.classes)||e.skew!==t.skew||e.maxFontSize!==t.maxFontSize||e.italic!==0&&e.hasClass("mathnormal"))return!1;if(e.classes.length===1){var n=e.classes[0];if(n==="mbin"||n==="mord")return!1}for(var r of Object.keys(e.style))if(e.style[r]!==t.style[r])return!1;for(var a of Object.keys(t.style))if(e.style[a]!==t.style[a])return!1;return!0},ZI=e=>{for(var t=0;tn&&(n=s.height),s.depth>r&&(r=s.depth),s.maxFontSize>a&&(a=s.maxFontSize)}t.height=n,t.depth=r,t.maxFontSize=a},Ee=function(t,n,r,a){var i=new ys(t,n,r,a);return uy(i),i},Ca=(e,t,n,r)=>new ys(e,t,n,r),ns=function(t,n,r){var a=Ee([t],[],n);return a.height=Math.max(r||n.fontMetrics().defaultRuleThickness,n.minRuleThickness),a.style.borderBottomWidth=De(a.height),a.maxFontSize=1,a},WW=function(t,n,r,a){var i=new Yc(t,n,r,a);return uy(i),i},la=function(t){var n=new xs(t);return uy(n),n},rs=function(t,n){return t instanceof xs?Ee([],[t],n):t},KW=function(t){if(t.positionType==="individualShift"){for(var n=t.children,r=[n[0]],a=-n[0].shift-n[0].elem.depth,i=a,s=1;s{var n=Ee(["mspace"],[],t),r=Ht(e,t);return n.style.marginRight=De(r),n},ml=(e,t,n)=>{var r,a;switch(e){case"amsrm":r="AMS";break;case"textrm":r="Main";break;case"textsf":r="SansSerif";break;case"texttt":r="Typewriter";break;default:r=e}return t==="textbf"&&n==="textit"?a="BoldItalic":t==="textbf"?a="Bold":n==="textit"?a="Italic":a="Regular",r+"-"+a},_b={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathsfit:{variant:"sans-serif-italic",fontName:"SansSerif-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},QI={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},eR=function(t,n){var[r,a,i]=QI[t],s=new Ea(r),l=new na([s],{width:De(a),height:De(i),style:"width:"+De(a),viewBox:"0 0 "+1e3*a+" "+1e3*i,preserveAspectRatio:"xMinYMin"}),c=Ca(["overlay"],[l],n);return c.height=i,c.style.height=De(i),c.style.width=De(a),c},qt={number:3,unit:"mu"},Ba={number:4,unit:"mu"},Wr={number:5,unit:"mu"},YW={mord:{mop:qt,mbin:Ba,mrel:Wr,minner:qt},mop:{mord:qt,mop:qt,mrel:Wr,minner:qt},mbin:{mord:Ba,mop:Ba,mopen:Ba,minner:Ba},mrel:{mord:Wr,mop:Wr,mopen:Wr,minner:Wr},mopen:{},mclose:{mop:qt,mbin:Ba,mrel:Wr,minner:qt},mpunct:{mord:qt,mop:qt,mrel:Wr,mopen:qt,mclose:qt,mpunct:qt,minner:qt},minner:{mord:qt,mop:qt,mbin:Ba,mrel:Wr,mopen:qt,mpunct:qt,minner:qt}},XW={mord:{mop:qt},mop:{mord:qt,mop:qt},mbin:{},mrel:{},mopen:{},mclose:{mop:qt},mpunct:{},minner:{mop:qt}},tR={},gc={},bc={};function He(e){for(var{type:t,names:n,props:r,handler:a,htmlBuilder:i,mathmlBuilder:s}=e,l={type:t,numArgs:r.numArgs,argTypes:r.argTypes,allowedInArgument:!!r.allowedInArgument,allowedInText:!!r.allowedInText,allowedInMath:r.allowedInMath===void 0?!0:r.allowedInMath,numOptionalArgs:r.numOptionalArgs||0,infix:!!r.infix,primitive:!!r.primitive,handler:a},c=0;c{var x=b.classes[0],k=g.classes[0];x==="mbin"&&JW.has(k)?b.classes[0]="mord":k==="mbin"&&ZW.has(x)&&(g.classes[0]="mord")},{node:p},m,f),jb(i,(g,b)=>{var x,k,y=Db(b),v=Db(g),E=y&&v?g.hasClass("mtight")?(x=XW[y])==null?void 0:x[v]:(k=YW[y])==null?void 0:k[v]:null;if(E)return JI(E,u)},{node:p},m,f),i},jb=function(t,n,r,a,i){a&&t.push(a);for(var s=0;sm=>{t.splice(p+1,0,m),s++})(s)}a&&t.pop()},nR=function(t){return t instanceof xs||t instanceof Yc||t instanceof ys&&t.hasClass("enclosing")?t:null},Ob=function(t,n){var r=nR(t);if(r){var a=r.children;if(a.length){if(n==="right")return Ob(a[a.length-1],"right");if(n==="left")return Ob(a[0],"left")}}return t},Db=function(t,n){if(!t)return null;n&&(t=Ob(t,n));var r=t.classes[0];return eK[r]||null},vo=function(t,n){var r=["nulldelimiter"].concat(t.baseSizingClasses());return Ee(n.concat(r))},It=function(t,n,r){if(!t)return Ee();if(gc[t.type]){var a=gc[t.type](t,n);if(r&&n.size!==r.size){a=Ee(n.sizingClasses(r),[a],n);var i=n.sizeMultiplier/r.sizeMultiplier;a.height*=i,a.depth*=i}return a}else throw new Ie("Got group of unknown type: '"+t.type+"'")};function fl(e,t){var n=Ee(["base"],e,t),r=Ee(["strut"]);return r.style.height=De(n.height+n.depth),n.depth&&(r.style.verticalAlign=De(-n.depth)),n.children.unshift(r),n}function Mb(e,t){var n=null;e.length===1&&e[0].type==="tag"&&(n=e[0].tag,e=e[0].body);var r=hn(e,t,"root"),a;r.length===2&&r[1].hasClass("tag")&&(a=r.pop());for(var i=[],s=[],l=0;l0&&(i.push(fl(s,t)),s=[]),i.push(r[l]));s.length>0&&i.push(fl(s,t));var u;n?(u=fl(hn(n,t,!0),t),u.classes=["tag"],i.push(u)):a&&i.push(a);var d=Ee(["katex-html"],i);if(d.setAttribute("aria-hidden","true"),u){var p=u.children[0];p.style.height=De(d.height+d.depth),d.depth&&(p.style.verticalAlign=De(-d.depth))}return d}function rR(e){return new xs(e)}class Re{constructor(t,n,r){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=t,this.attributes={},this.children=n||[],this.classes=r||[]}setAttribute(t,n){this.attributes[t]=n}getAttribute(t){return this.attributes[t]}toNode(){var t=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&t.setAttribute(n,this.attributes[n]);this.classes.length>0&&(t.className=Sa(this.classes));for(var r=0;r0&&(t+=' class ="'+wn(Sa(this.classes))+'"'),t+=">";for(var r=0;r",t}toText(){return this.children.map(t=>t.toText()).join("")}}class on{constructor(t){this.text=void 0,this.text=t}toNode(){return document.createTextNode(this.text)}toMarkup(){return wn(this.toText())}toText(){return this.text}}class aR{constructor(t){this.width=void 0,this.character=void 0,this.width=t,t>=.05555&&t<=.05556?this.character=" ":t>=.1666&&t<=.1667?this.character=" ":t>=.2222&&t<=.2223?this.character=" ":t>=.2777&&t<=.2778?this.character="  ":t>=-.05556&&t<=-.05555?this.character=" ⁣":t>=-.1667&&t<=-.1666?this.character=" ⁣":t>=-.2223&&t<=-.2222?this.character=" ⁣":t>=-.2778&&t<=-.2777?this.character=" ⁣":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var t=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return t.setAttribute("width",De(this.width)),t}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}}var tK=new Set(["\\imath","\\jmath"]),nK=new Set(["mrow","mtable"]),mr=function(t,n,r){return $t[n][t]&&$t[n][t].replace&&t.charCodeAt(0)!==55349&&!(XI.hasOwnProperty(t)&&r&&(r.fontFamily&&r.fontFamily.slice(4,6)==="tt"||r.font&&r.font.slice(4,6)==="tt"))&&(t=$t[n][t].replace),new on(t)},dy=function(t){return t.length===1?t[0]:new Re("mrow",t)},rK={mathit:"italic",boldsymbol:e=>e.type==="textord"?"bold":"bold-italic",mathbf:"bold",mathbb:"double-struck",mathsfit:"sans-serif-italic",mathfrak:"fraktur",mathscr:"script",mathcal:"script",mathsf:"sans-serif",mathtt:"monospace"},py=(e,t)=>{if(e.mode==="text"){if(t.fontFamily==="texttt")return"monospace";if(t.fontFamily==="textsf")return t.fontShape==="textit"&&t.fontWeight==="textbf"?"sans-serif-bold-italic":t.fontShape==="textit"?"sans-serif-italic":t.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(t.fontShape==="textit"&&t.fontWeight==="textbf")return"bold-italic";if(t.fontShape==="textit")return"italic";if(t.fontWeight==="textbf")return"bold"}var n=t.font;if(!n||n==="mathnormal")return null;var r=e.mode,a=rK[n];if(a)return typeof a=="function"?a(e):a;var i=e.text;if(tK.has(i))return null;if($t[r][i]){var s=$t[r][i].replace;s&&(i=s)}var l=_b[n].fontName;return ly(i,l,r)?_b[n].variant:null};function bd(e){if(!e)return!1;if(e.type==="mi"&&e.children.length===1){var t=e.children[0];return t instanceof on&&t.text==="."}else if(e.type==="mo"&&e.children.length===1&&e.getAttribute("separator")==="true"&&e.getAttribute("lspace")==="0em"&&e.getAttribute("rspace")==="0em"){var n=e.children[0];return n instanceof on&&n.text===","}else return!1}var nr=function(t,n,r){if(t.length===1){var a=Dt(t[0],n);return r&&a instanceof Re&&a.type==="mo"&&(a.setAttribute("lspace","0em"),a.setAttribute("rspace","0em")),[a]}for(var i=[],s,l=0;l=1&&(s.type==="mn"||bd(s))){var u=c.children[0];u instanceof Re&&u.type==="mn"&&(u.children=[...s.children,...u.children],i.pop())}else if(s.type==="mi"&&s.children.length===1){var d=s.children[0];if(d instanceof on&&d.text==="̸"&&(c.type==="mo"||c.type==="mi"||c.type==="mn")){var p=c.children[0];p instanceof on&&p.text.length>0&&(p.text=p.text.slice(0,1)+"̸"+p.text.slice(1),i.pop())}}}i.push(c),s=c}return i},Na=function(t,n,r){return dy(nr(t,n,r))},Dt=function(t,n){if(!t)return new Re("mrow");if(bc[t.type])return bc[t.type](t,n);throw new Ie("Got group of unknown type: '"+t.type+"'")};function cw(e,t,n,r,a){var i=nr(e,n),s;i.length===1&&i[0]instanceof Re&&nK.has(i[0].type)?s=i[0]:s=new Re("mrow",i);var l=new Re("annotation",[new on(t)]);l.setAttribute("encoding","application/x-tex");var c=new Re("semantics",[s,l]),u=new Re("math",[c]);u.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),r&&u.setAttribute("display","block");var d=a?"katex":"katex-mathml";return Ee([d],[u])}var aK=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],uw=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],dw=function(t,n){return n.size<2?t:aK[t-1][n.size-1]};class Yr{constructor(t){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=t.style,this.color=t.color,this.size=t.size||Yr.BASESIZE,this.textSize=t.textSize||this.size,this.phantom=!!t.phantom,this.font=t.font||"",this.fontFamily=t.fontFamily||"",this.fontWeight=t.fontWeight||"",this.fontShape=t.fontShape||"",this.sizeMultiplier=uw[this.size-1],this.maxSize=t.maxSize,this.minRuleThickness=t.minRuleThickness,this._fontMetrics=void 0}extend(t){var n={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};return Object.assign(n,t),new Yr(n)}havingStyle(t){return this.style===t?this:this.extend({style:t,size:dw(this.textSize,t)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(t){return this.size===t&&this.textSize===t?this:this.extend({style:this.style.text(),size:t,textSize:t,sizeMultiplier:uw[t-1]})}havingBaseStyle(t){t=t||this.style.text();var n=dw(Yr.BASESIZE,t);return this.size===n&&this.textSize===Yr.BASESIZE&&this.style===t?this:this.extend({style:t,size:n})}havingBaseSizing(){var t;switch(this.style.id){case 4:case 5:t=3;break;case 6:case 7:t=1;break;default:t=6}return this.extend({style:this.style.text(),size:t})}withColor(t){return this.extend({color:t})}withPhantom(){return this.extend({phantom:!0})}withFont(t){return this.extend({font:t})}withTextFontFamily(t){return this.extend({fontFamily:t,font:""})}withTextFontWeight(t){return this.extend({fontWeight:t,font:""})}withTextFontShape(t){return this.extend({fontShape:t,font:""})}sizingClasses(t){return t.size!==this.size?["sizing","reset-size"+t.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==Yr.BASESIZE?["sizing","reset-size"+this.size,"size"+Yr.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=UW(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}}Yr.BASESIZE=6;var iR=function(t){return new Yr({style:t.displayMode?ft.DISPLAY:ft.TEXT,maxSize:t.maxSize,minRuleThickness:t.minRuleThickness})},sR=function(t,n){if(n.displayMode){var r=["katex-display"];n.leqno&&r.push("leqno"),n.fleqn&&r.push("fleqn"),t=Ee(r,[t])}return t},iK=function(t,n,r){var a=iR(r),i;if(r.output==="mathml")return cw(t,n,a,r.displayMode,!0);if(r.output==="html"){var s=Mb(t,a);i=Ee(["katex"],[s])}else{var l=cw(t,n,a,r.displayMode,!1),c=Mb(t,a);i=Ee(["katex"],[l,c])}return sR(i,r)},sK=function(t,n,r){var a=iR(r),i=Mb(t,a),s=Ee(["katex"],[i]);return sR(s,r)},oK={widehat:"^",widecheck:"ˇ",widetilde:"~",utilde:"~",overleftarrow:"←",underleftarrow:"←",xleftarrow:"←",overrightarrow:"→",underrightarrow:"→",xrightarrow:"→",underbrace:"⏟",overbrace:"⏞",underbracket:"⎵",overbracket:"⎴",overgroup:"⏠",undergroup:"⏡",overleftrightarrow:"↔",underleftrightarrow:"↔",xleftrightarrow:"↔",Overrightarrow:"⇒",xRightarrow:"⇒",overleftharpoon:"↼",xleftharpoonup:"↼",overrightharpoon:"⇀",xrightharpoonup:"⇀",xLeftarrow:"⇐",xLeftrightarrow:"⇔",xhookleftarrow:"↩",xhookrightarrow:"↪",xmapsto:"↦",xrightharpoondown:"⇁",xleftharpoondown:"↽",xrightleftharpoons:"⇌",xleftrightharpoons:"⇋",xtwoheadleftarrow:"↞",xtwoheadrightarrow:"↠",xlongequal:"=",xtofrom:"⇄",xrightleftarrows:"⇄",xrightequilibrium:"⇌",xleftequilibrium:"⇋","\\cdrightarrow":"→","\\cdleftarrow":"←","\\cdlongequal":"="},Jc=function(t){var n=new Re("mo",[new on(oK[t.replace(/^\\/,"")])]);return n.setAttribute("stretchy","true"),n},lK={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overbracket:[["leftbracketover","rightbracketover"],1.6,440],underbracket:[["leftbracketunder","rightbracketunder"],1.6,410],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},cK=new Set(["widehat","widecheck","widetilde","utilde"]),Qc=function(t,n){function r(){var l=4e5,c=t.label.slice(1);if(cK.has(c)&&"base"in t){var u=t.base.type==="ordgroup"?t.base.body.length:1,d,p,m;if(u>5)c==="widehat"||c==="widecheck"?(d=420,l=2364,m=.42,p=c+"4"):(d=312,l=2340,m=.34,p="tilde4");else{var f=[1,1,2,2,3,3][u];c==="widehat"||c==="widecheck"?(l=[0,1062,2364,2364,2364][f],d=[0,239,300,360,420][f],m=[0,.24,.3,.3,.36,.42][f],p=c+f):(l=[0,600,1033,2339,2340][f],d=[0,260,286,306,312][f],m=[0,.26,.286,.3,.306,.34][f],p="tilde"+f)}var g=new Ea(p),b=new na([g],{width:"100%",height:De(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:Ca([],[b],n),minWidth:0,height:m}}else{var x=[],k=lK[c];if(!k)throw new Error('No SVG data for "'+c+'".');var[y,v,E]=k,N=E/1e3,w=y.length,T,j;if(w===1){if(k.length!==4)throw new Error('Expected 4-tuple for single-path SVG data "'+c+'".');T=["hide-tail"],j=[k[3]]}else if(w===2)T=["halfarrow-left","halfarrow-right"],j=["xMinYMin","xMaxYMin"];else if(w===3)T=["brace-left","brace-center","brace-right"],j=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support + `+w+" children.");for(var _=0;_0&&(a.style.minWidth=De(i)),a},uK=function(t,n,r,a,i){var s,l=t.height+t.depth+r+a;if(/fbox|color|angl/.test(n)){if(s=Ee(["stretchy",n],[],i),n==="fbox"){var c=i.color&&i.getColor();c&&(s.style.borderColor=c)}}else{var u=[];/^[bx]cancel$/.test(n)&&u.push(new Cb({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(n)&&u.push(new Cb({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var d=new na(u,{width:"100%",height:De(l)});s=Ca([],[d],i)}return s.height=l,s.style.height=De(l),s},dK={bin:1,close:1,inner:1,open:1,punct:1,rel:1},pK={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1};function mK(e){return e in dK}function vt(e,t){if(!e||e.type!==t)throw new Error("Expected node of type "+t+", but got "+(e?"node of type "+e.type:String(e)));return e}function eu(e){var t=tu(e);if(!t)throw new Error("Expected node of symbol group type, but got "+(e?"node of type "+e.type:String(e)));return t}function tu(e){return e&&(e.type==="atom"||pK.hasOwnProperty(e.type))?e:null}var oR=e=>{if(e instanceof er)return e;if(BW(e)&&e.children.length===1)return oR(e.children[0])},my=(e,t)=>{var n,r,a;e&&e.type==="supsub"?(r=vt(e.base,"accent"),n=r.base,e.base=n,a=FW(It(e,t)),e.base=r):(r=vt(e,"accent"),n=r.base);var i=It(n,t.havingCrampedStyle()),s=r.isShifty&&sa(n),l=0;if(s){var c,u;l=(c=(u=oR(i))==null?void 0:u.skew)!=null?c:0}var d=r.label==="\\c",p=d?i.height+i.depth:Math.min(i.height,t.fontMetrics().xHeight),m;if(r.isStretchy)m=Qc(r,t),m=At({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"elem",elem:m,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+De(2*l)+")",marginLeft:De(2*l)}:void 0}]});else{var f,g;r.label==="\\vec"?(f=eR("vec",t),g=QI.vec[1]):(f=Zc({mode:r.mode,text:r.label},t,"textord"),f=PW(f),f.italic=0,g=f.width,d&&(p+=f.depth)),m=Ee(["accent-body"],[f]);var b=r.label==="\\textcircled";b&&(m.classes.push("accent-full"),p=i.height);var x=l;b||(x-=g/2),m.style.left=De(x),r.label==="\\textcircled"&&(m.style.top=".2em"),m=At({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"kern",size:-p},{type:"elem",elem:m}]})}var k=Ee(["mord","accent"],[m],t);return a?(a.children[0]=k,a.height=Math.max(k.height,a.height),a.classes[0]="mord",a):k},lR=(e,t)=>{var n=e.isStretchy?Jc(e.label):new Re("mo",[mr(e.label,e.mode)]),r=new Re("mover",[Dt(e.base,t),n]);return r.setAttribute("accent","true"),r},fK=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(e=>"\\"+e).join("|"));He({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:(e,t)=>{var n=xc(t[0]),r=!fK.test(e.funcName),a=!r||e.funcName==="\\widehat"||e.funcName==="\\widetilde"||e.funcName==="\\widecheck";return{type:"accent",mode:e.parser.mode,label:e.funcName,isStretchy:r,isShifty:a,base:n}},htmlBuilder:my,mathmlBuilder:lR});He({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(e,t)=>{var n=t[0],r=e.parser.mode;return r==="math"&&(e.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+e.funcName+" works only in text mode"),r="text"),{type:"accent",mode:r,label:e.funcName,isStretchy:!1,isShifty:!0,base:n}},htmlBuilder:my,mathmlBuilder:lR});He({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(e,t)=>{var{parser:n,funcName:r}=e,a=t[0];return{type:"accentUnder",mode:n.mode,label:r,base:a}},htmlBuilder:(e,t)=>{var n=It(e.base,t),r=Qc(e,t),a=e.label==="\\utilde"?.12:0,i=At({positionType:"top",positionData:n.height,children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:a},{type:"elem",elem:n}]});return Ee(["mord","accentunder"],[i],t)},mathmlBuilder:(e,t)=>{var n=Jc(e.label),r=new Re("munder",[Dt(e.base,t),n]);return r.setAttribute("accentunder","true"),r}});var hl=e=>{var t=new Re("mpadded",e?[e]:[]);return t.setAttribute("width","+0.6em"),t.setAttribute("lspace","0.3em"),t};He({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(e,t,n){var{parser:r,funcName:a}=e;return{type:"xArrow",mode:r.mode,label:a,body:t[0],below:n[0]}},htmlBuilder(e,t){var n=t.style,r=t.havingStyle(n.sup()),a=rs(It(e.body,r,t),t),i=e.label.slice(0,2)==="\\x"?"x":"cd";a.classes.push(i+"-arrow-pad");var s;e.below&&(r=t.havingStyle(n.sub()),s=rs(It(e.below,r,t),t),s.classes.push(i+"-arrow-pad"));var l=Qc(e,t),c=-t.fontMetrics().axisHeight+.5*l.height,u=-t.fontMetrics().axisHeight-.5*l.height-.111;(a.depth>.25||e.label==="\\xleftequilibrium")&&(u-=a.depth);var d;if(s){var p=-t.fontMetrics().axisHeight+s.height+.5*l.height+.111;d=At({positionType:"individualShift",children:[{type:"elem",elem:a,shift:u},{type:"elem",elem:l,shift:c,wrapperClasses:["svg-align"]},{type:"elem",elem:s,shift:p}]})}else d=At({positionType:"individualShift",children:[{type:"elem",elem:a,shift:u},{type:"elem",elem:l,shift:c,wrapperClasses:["svg-align"]}]});return Ee(["mrel","x-arrow"],[d],t)},mathmlBuilder(e,t){var n=Jc(e.label);n.setAttribute("minsize",e.label.charAt(0)==="x"?"1.75em":"3.0em");var r;if(e.body){var a=hl(Dt(e.body,t));if(e.below){var i=hl(Dt(e.below,t));r=new Re("munderover",[n,i,a])}else r=new Re("mover",[n,a])}else if(e.below){var s=hl(Dt(e.below,t));r=new Re("munder",[n,s])}else r=hl(),r=new Re("mover",[n,r]);return r}});function cR(e,t){var n=hn(e.body,t,!0);return Ee([e.mclass],n,t)}function uR(e,t){var n,r=nr(e.body,t);return e.mclass==="minner"?n=new Re("mpadded",r):e.mclass==="mord"?e.isCharacterBox?(n=r[0],n.type="mi"):n=new Re("mi",r):(e.isCharacterBox?(n=r[0],n.type="mo"):n=new Re("mo",r),e.mclass==="mbin"?(n.attributes.lspace="0.22em",n.attributes.rspace="0.22em"):e.mclass==="mpunct"?(n.attributes.lspace="0em",n.attributes.rspace="0.17em"):e.mclass==="mopen"||e.mclass==="mclose"?(n.attributes.lspace="0em",n.attributes.rspace="0em"):e.mclass==="minner"&&(n.attributes.lspace="0.0556em",n.attributes.width="+0.1111em")),n}He({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(e,t){var{parser:n,funcName:r}=e,a=t[0];return{type:"mclass",mode:n.mode,mclass:"m"+r.slice(5),body:sn(a),isCharacterBox:sa(a)}},htmlBuilder:cR,mathmlBuilder:uR});var nu=e=>{var t=e.type==="ordgroup"&&e.body.length?e.body[0]:e;return t.type==="atom"&&(t.family==="bin"||t.family==="rel")?"m"+t.family:"mord"};He({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(e,t){var{parser:n}=e;return{type:"mclass",mode:n.mode,mclass:nu(t[0]),body:sn(t[1]),isCharacterBox:sa(t[1])}}});He({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(e,t){var{parser:n,funcName:r}=e,a=t[1],i=t[0],s;r!=="\\stackrel"?s=nu(a):s="mrel";var l={type:"op",mode:a.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:r!=="\\stackrel",body:sn(a)},c={type:"supsub",mode:i.mode,base:l,sup:r==="\\underset"?null:i,sub:r==="\\underset"?i:null};return{type:"mclass",mode:n.mode,mclass:s,body:[c],isCharacterBox:sa(c)}},htmlBuilder:cR,mathmlBuilder:uR});He({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:n}=e;return{type:"pmb",mode:n.mode,mclass:nu(t[0]),body:sn(t[0])}},htmlBuilder(e,t){var n=hn(e.body,t,!0),r=Ee([e.mclass],n,t);return r.style.textShadow="0.02em 0.01em 0.04px",r},mathmlBuilder(e,t){var n=nr(e.body,t),r=new Re("mstyle",n);return r.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),r}});var hK={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},pw=()=>({type:"styling",body:[],mode:"math",style:"display",resetFont:!0}),mw=e=>e.type==="textord"&&e.text==="@",gK=(e,t)=>(e.type==="mathord"||e.type==="atom")&&e.text===t;function bK(e,t,n){var r=hK[e];switch(r){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return n.callFunction(r,[t[0]],[t[1]]);case"\\uparrow":case"\\downarrow":{var a=n.callFunction("\\\\cdleft",[t[0]],[]),i={type:"atom",text:r,mode:"math",family:"rel"},s=n.callFunction("\\Big",[i],[]),l=n.callFunction("\\\\cdright",[t[1]],[]),c={type:"ordgroup",mode:"math",body:[a,s,l]};return n.callFunction("\\\\cdparent",[c],[])}case"\\\\cdlongequal":return n.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var u={type:"textord",text:"\\Vert",mode:"math"};return n.callFunction("\\Big",[u],[])}default:return{type:"textord",text:" ",mode:"math"}}}function xK(e){var t=[];for(e.gullet.beginGroup(),e.gullet.macros.set("\\cr","\\\\\\relax"),e.gullet.beginGroup();;){t.push(e.parseExpression(!1,"\\\\")),e.gullet.endGroup(),e.gullet.beginGroup();var n=e.fetch().text;if(n==="&"||n==="\\\\")e.consume();else if(n==="\\end"){t[t.length-1].length===0&&t.pop();break}else throw new Ie("Expected \\\\ or \\cr or \\end",e.nextToken)}for(var r=[],a=[r],i=0;iAV".includes(u))for(var p=0;p<2;p++){for(var m=!0,f=c+1;fAV=|." after @',s[c]);var g=bK(u,d,e),b={type:"styling",body:[g],mode:"math",style:"display",resetFont:!0};r.push(b),l=pw()}i%2===0?r.push(l):r.shift(),r=[],a.push(r)}e.gullet.endGroup(),e.gullet.endGroup();var x=new Array(a[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:a,arraystretch:1,addJot:!0,rowGaps:[null],cols:x,colSeparationType:"CD",hLinesBeforeRow:new Array(a.length+1).fill([])}}He({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(e,t){var{parser:n,funcName:r}=e;return{type:"cdlabel",mode:n.mode,side:r.slice(4),label:t[0]}},htmlBuilder(e,t){var n=t.havingStyle(t.style.sup()),r=rs(It(e.label,n,t),t);return r.classes.push("cd-label-"+e.side),r.style.bottom=De(.8-r.depth),r.height=0,r.depth=0,r},mathmlBuilder(e,t){var n=new Re("mrow",[Dt(e.label,t)]);return n=new Re("mpadded",[n]),n.setAttribute("width","0"),e.side==="left"&&n.setAttribute("lspace","-1width"),n.setAttribute("voffset","0.7em"),n=new Re("mstyle",[n]),n.setAttribute("displaystyle","false"),n.setAttribute("scriptlevel","1"),n}});He({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(e,t){var{parser:n}=e;return{type:"cdlabelparent",mode:n.mode,fragment:t[0]}},htmlBuilder(e,t){var n=rs(It(e.fragment,t),t);return n.classes.push("cd-vert-arrow"),n},mathmlBuilder(e,t){return new Re("mrow",[Dt(e.fragment,t)])}});He({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(e,t){for(var{parser:n}=e,r=vt(t[0],"ordgroup"),a=r.body,i="",s=0;s=1114111)throw new Ie("\\@char with invalid code point "+i);return c<=65535?u=String.fromCharCode(c):(c-=65536,u=String.fromCharCode((c>>10)+55296,(c&1023)+56320)),{type:"textord",mode:n.mode,text:u}}});var dR=(e,t)=>{var n=hn(e.body,t.withColor(e.color),!1);return la(n)},pR=(e,t)=>{var n=nr(e.body,t.withColor(e.color)),r=new Re("mstyle",n);return r.setAttribute("mathcolor",e.color),r};He({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(e,t){var{parser:n}=e,r=vt(t[0],"color-token").color,a=t[1];return{type:"color",mode:n.mode,color:r,body:sn(a)}},htmlBuilder:dR,mathmlBuilder:pR});He({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(e,t){var{parser:n,breakOnTokenText:r}=e,a=vt(t[0],"color-token").color;n.gullet.macros.set("\\current@color",a);var i=n.parseExpression(!0,r);return{type:"color",mode:n.mode,color:a,body:i}},htmlBuilder:dR,mathmlBuilder:pR});He({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(e,t,n){var{parser:r}=e,a=r.gullet.future().text==="["?r.parseSizeGroup(!0):null,i=!r.settings.displayMode||!r.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:r.mode,newLine:i,size:a&&vt(a,"size").value}},htmlBuilder(e,t){var n=Ee(["mspace"],[],t);return e.newLine&&(n.classes.push("newline"),e.size&&(n.style.marginTop=De(Ht(e.size,t)))),n},mathmlBuilder(e,t){var n=new Re("mspace");return e.newLine&&(n.setAttribute("linebreak","newline"),e.size&&n.setAttribute("height",De(Ht(e.size,t)))),n}});var Lb={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},mR=e=>{var t=e.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(t))throw new Ie("Expected a control sequence",e);return t},yK=e=>{var t=e.gullet.popToken();return t.text==="="&&(t=e.gullet.popToken(),t.text===" "&&(t=e.gullet.popToken())),t},fR=(e,t,n,r)=>{var a=e.gullet.macros.get(n.text);a==null&&(n.noexpand=!0,a={tokens:[n],numArgs:0,unexpandable:!e.gullet.isExpandable(n.text)}),e.gullet.macros.set(t,a,r)};He({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(e){var{parser:t,funcName:n}=e;t.consumeSpaces();var r=t.fetch();if(Lb[r.text])return(n==="\\global"||n==="\\\\globallong")&&(r.text=Lb[r.text]),vt(t.parseFunction(),"internal");throw new Ie("Invalid token after macro prefix",r)}});He({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:n}=e,r=t.gullet.popToken(),a=r.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(a))throw new Ie("Expected a control sequence",r);for(var i=0,s,l=[[]];t.gullet.future().text!=="{";)if(r=t.gullet.popToken(),r.text==="#"){if(t.gullet.future().text==="{"){s=t.gullet.future(),l[i].push("{");break}if(r=t.gullet.popToken(),!/^[1-9]$/.test(r.text))throw new Ie('Invalid argument number "'+r.text+'"');if(parseInt(r.text)!==i+1)throw new Ie('Argument number "'+r.text+'" out of order');i++,l.push([])}else{if(r.text==="EOF")throw new Ie("Expected a macro definition");l[i].push(r.text)}var{tokens:c}=t.gullet.consumeArg();return s&&c.unshift(s),(n==="\\edef"||n==="\\xdef")&&(c=t.gullet.expandTokens(c),c.reverse()),t.gullet.macros.set(a,{tokens:c,numArgs:i,delimiters:l},n===Lb[n]),{type:"internal",mode:t.mode}}});He({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:n}=e,r=mR(t.gullet.popToken());t.gullet.consumeSpaces();var a=yK(t);return fR(t,r,a,n==="\\\\globallet"),{type:"internal",mode:t.mode}}});He({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:n}=e,r=mR(t.gullet.popToken()),a=t.gullet.popToken(),i=t.gullet.popToken();return fR(t,r,i,n==="\\\\globalfuture"),t.gullet.pushToken(i),t.gullet.pushToken(a),{type:"internal",mode:t.mode}}});var Ks=function(t,n,r){var a=$t.math[t]&&$t.math[t].replace,i=ly(a||t,n,r);if(!i)throw new Error("Unsupported symbol "+t+" and font size "+n+".");return i},fy=function(t,n,r,a){var i=r.havingBaseStyle(n),s=Ee(a.concat(i.sizingClasses(r)),[t],r),l=i.sizeMultiplier/r.sizeMultiplier;return s.height*=l,s.depth*=l,s.maxFontSize=i.sizeMultiplier,s},hR=function(t,n,r){var a=n.havingBaseStyle(r),i=(1-n.sizeMultiplier/a.sizeMultiplier)*n.fontMetrics().axisHeight;t.classes.push("delimcenter"),t.style.top=De(i),t.height-=i,t.depth+=i},vK=function(t,n,r,a,i,s){var l=An(t,"Main-Regular",i,a),c=fy(l,n,a,s);return hR(c,a,n),c},kK=function(t,n,r,a){return An(t,"Size"+n+"-Regular",r,a)},gR=function(t,n,r,a,i,s){var l=kK(t,n,i,a),c=fy(Ee(["delimsizing","size"+n],[l],a),ft.TEXT,a,s);return r&&hR(c,a,ft.TEXT),c},xd=function(t,n,r){var a;n==="Size1-Regular"?a="delim-size1":a="delim-size4";var i=Ee(["delimsizinginner",a],[Ee([],[An(t,n,r)])]);return{type:"elem",elem:i}},yd=function(t,n,r){var a=Lr["Size4-Regular"][t.charCodeAt(0)]?Lr["Size4-Regular"][t.charCodeAt(0)][4]:Lr["Size1-Regular"][t.charCodeAt(0)][4],i=new Ea("inner",RW(t,Math.round(1e3*n))),s=new na([i],{width:De(a),height:De(n),style:"width:"+De(a),viewBox:"0 0 "+1e3*a+" "+Math.round(1e3*n),preserveAspectRatio:"xMinYMin"}),l=Ca([],[s],r);return l.height=n,l.style.height=De(n),l.style.width=De(a),{type:"elem",elem:l}},Pb=.008,gl={type:"kern",size:-1*Pb},wK=new Set(["|","\\lvert","\\rvert","\\vert"]),SK=new Set(["\\|","\\lVert","\\rVert","\\Vert"]),bR=function(t,n,r,a,i,s){var l,c,u,d,p="",m=0;l=u=d=t,c=null;var f="Size1-Regular";t==="\\uparrow"?u=d="⏐":t==="\\Uparrow"?u=d="‖":t==="\\downarrow"?l=u="⏐":t==="\\Downarrow"?l=u="‖":t==="\\updownarrow"?(l="\\uparrow",u="⏐",d="\\downarrow"):t==="\\Updownarrow"?(l="\\Uparrow",u="‖",d="\\Downarrow"):wK.has(t)?(u="∣",p="vert",m=333):SK.has(t)?(u="∥",p="doublevert",m=556):t==="["||t==="\\lbrack"?(l="⎡",u="⎢",d="⎣",f="Size4-Regular",p="lbrack",m=667):t==="]"||t==="\\rbrack"?(l="⎤",u="⎥",d="⎦",f="Size4-Regular",p="rbrack",m=667):t==="\\lfloor"||t==="⌊"?(u=l="⎢",d="⎣",f="Size4-Regular",p="lfloor",m=667):t==="\\lceil"||t==="⌈"?(l="⎡",u=d="⎢",f="Size4-Regular",p="lceil",m=667):t==="\\rfloor"||t==="⌋"?(u=l="⎥",d="⎦",f="Size4-Regular",p="rfloor",m=667):t==="\\rceil"||t==="⌉"?(l="⎤",u=d="⎥",f="Size4-Regular",p="rceil",m=667):t==="("||t==="\\lparen"?(l="⎛",u="⎜",d="⎝",f="Size4-Regular",p="lparen",m=875):t===")"||t==="\\rparen"?(l="⎞",u="⎟",d="⎠",f="Size4-Regular",p="rparen",m=875):t==="\\{"||t==="\\lbrace"?(l="⎧",c="⎨",d="⎩",u="⎪",f="Size4-Regular"):t==="\\}"||t==="\\rbrace"?(l="⎫",c="⎬",d="⎭",u="⎪",f="Size4-Regular"):t==="\\lgroup"||t==="⟮"?(l="⎧",d="⎩",u="⎪",f="Size4-Regular"):t==="\\rgroup"||t==="⟯"?(l="⎫",d="⎭",u="⎪",f="Size4-Regular"):t==="\\lmoustache"||t==="⎰"?(l="⎧",d="⎭",u="⎪",f="Size4-Regular"):(t==="\\rmoustache"||t==="⎱")&&(l="⎫",d="⎩",u="⎪",f="Size4-Regular");var g=Ks(l,f,i),b=g.height+g.depth,x=Ks(u,f,i),k=x.height+x.depth,y=Ks(d,f,i),v=y.height+y.depth,E=0,N=1;if(c!==null){var w=Ks(c,f,i);E=w.height+w.depth,N=2}var T=b+v+E,j=Math.max(0,Math.ceil((n-T)/(N*k))),_=T+j*N*k,C=a.fontMetrics().axisHeight;r&&(C*=a.sizeMultiplier);var O=_/2-C,I=[];if(p.length>0){var z=_-b-v,M=Math.round(_*1e3),P=_W(p,Math.round(z*1e3)),B=new Ea(p,P),$=De(m/1e3),U=De(M/1e3),q=new na([B],{width:$,height:U,viewBox:"0 0 "+m+" "+M}),A=Ca([],[q],a);A.height=M/1e3,A.style.width=$,A.style.height=U,I.push({type:"elem",elem:A})}else{if(I.push(xd(d,f,i)),I.push(gl),c===null){var K=_-b-v+2*Pb;I.push(yd(u,K,a))}else{var V=(_-b-v-E)/2+2*Pb;I.push(yd(u,V,a)),I.push(gl),I.push(xd(c,f,i)),I.push(gl),I.push(yd(u,V,a))}I.push(gl),I.push(xd(l,f,i))}var L=a.havingBaseStyle(ft.TEXT),le=At({positionType:"bottom",positionData:O,children:I});return fy(Ee(["delimsizing","mult"],[le],L),ft.TEXT,a,s)},vd=80,kd=.08,wd=function(t,n,r,a,i){var s=IW(t,a,r),l=new Ea(t,s),c=new na([l],{width:"400em",height:De(n),viewBox:"0 0 400000 "+r,preserveAspectRatio:"xMinYMin slice"});return Ca(["hide-tail"],[c],i)},EK=function(t,n){var r=n.havingBaseSizing(),a=wR("\\surd",t*r.sizeMultiplier,kR,r),i=r.sizeMultiplier,s=Math.max(0,n.minRuleThickness-n.fontMetrics().sqrtRuleThickness),l,c,u,d,p;return a.type==="small"?(d=1e3+1e3*s+vd,t<1?i=1:t<1.4&&(i=.7),c=(1+s+kd)/i,u=(1+s)/i,l=wd("sqrtMain",c,d,s,n),l.style.minWidth="0.853em",p=.833/i):a.type==="large"?(d=(1e3+vd)*oo[a.size],u=(oo[a.size]+s)/i,c=(oo[a.size]+s+kd)/i,l=wd("sqrtSize"+a.size,c,d,s,n),l.style.minWidth="1.02em",p=1/i):(c=t+s+kd,u=t+s,d=Math.floor(1e3*t+s)+vd,l=wd("sqrtTall",c,d,s,n),l.style.minWidth="0.742em",p=1.056),l.height=u,l.style.height=De(c),{span:l,advanceWidth:p,ruleWidth:(n.fontMetrics().sqrtRuleThickness+s)*i}},xR=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","\\surd"]),CK=new Set(["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱"]),yR=new Set(["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"]),oo=[0,1.2,1.8,2.4,3],vR=function(t,n,r,a,i){if(t==="<"||t==="\\lt"||t==="⟨"?t="\\langle":(t===">"||t==="\\gt"||t==="⟩")&&(t="\\rangle"),xR.has(t)||yR.has(t))return gR(t,n,!1,r,a,i);if(CK.has(t))return bR(t,oo[n],!1,r,a,i);throw new Ie("Illegal delimiter: '"+t+"'")},NK=[{type:"small",style:ft.SCRIPTSCRIPT},{type:"small",style:ft.SCRIPT},{type:"small",style:ft.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],TK=[{type:"small",style:ft.SCRIPTSCRIPT},{type:"small",style:ft.SCRIPT},{type:"small",style:ft.TEXT},{type:"stack"}],kR=[{type:"small",style:ft.SCRIPTSCRIPT},{type:"small",style:ft.SCRIPT},{type:"small",style:ft.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],AK=function(t){if(t.type==="small")return"Main-Regular";if(t.type==="large")return"Size"+t.size+"-Regular";if(t.type==="stack")return"Size4-Regular";var n=t.type;throw new Error("Add support for delim type '"+n+"' here.")},wR=function(t,n,r,a){for(var i=Math.min(2,3-a.style.size),s=i;sn)return l}return r[r.length-1]},Fb=function(t,n,r,a,i,s){t==="<"||t==="\\lt"||t==="⟨"?t="\\langle":(t===">"||t==="\\gt"||t==="⟩")&&(t="\\rangle");var l;yR.has(t)?l=NK:xR.has(t)?l=kR:l=TK;var c=wR(t,n,l,a);return c.type==="small"?vK(t,c.style,r,a,i,s):c.type==="large"?gR(t,c.size,r,a,i,s):bR(t,n,r,a,i,s)},Sd=function(t,n,r,a,i,s){var l=a.fontMetrics().axisHeight*a.sizeMultiplier,c=901,u=5/a.fontMetrics().ptPerEm,d=Math.max(n-l,r+l),p=Math.max(d/500*c,2*d-u);return Fb(t,p,!0,a,i,s)},fw={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},IK=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","<",">","\\langle","⟨","\\rangle","⟩","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."]);function hw(e){return"isMiddle"in e}function ru(e,t){var n=tu(e);if(n&&IK.has(n.text))return n;throw n?new Ie("Invalid delimiter '"+n.text+"' after '"+t.funcName+"'",e):new Ie("Invalid delimiter type '"+e.type+"'",e)}He({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:(e,t)=>{var n=ru(t[0],e);return{type:"delimsizing",mode:e.parser.mode,size:fw[e.funcName].size,mclass:fw[e.funcName].mclass,delim:n.text}},htmlBuilder:(e,t)=>e.delim==="."?Ee([e.mclass]):vR(e.delim,e.size,t,e.mode,[e.mclass]),mathmlBuilder:e=>{var t=[];e.delim!=="."&&t.push(mr(e.delim,e.mode));var n=new Re("mo",t);e.mclass==="mopen"||e.mclass==="mclose"?n.setAttribute("fence","true"):n.setAttribute("fence","false"),n.setAttribute("stretchy","true");var r=De(oo[e.size]);return n.setAttribute("minsize",r),n.setAttribute("maxsize",r),n}});function gw(e){if(!e.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}He({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(e,t)=>{var n=e.parser.gullet.macros.get("\\current@color");if(n&&typeof n!="string")throw new Ie("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:e.parser.mode,delim:ru(t[0],e).text,color:n}}});He({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(e,t)=>{var n=ru(t[0],e),r=e.parser;++r.leftrightDepth;var a=r.parseExpression(!1);--r.leftrightDepth,r.expect("\\right",!1);var i=vt(r.parseFunction(),"leftright-right");return{type:"leftright",mode:r.mode,body:a,left:n.text,right:i.delim,rightColor:i.color}},htmlBuilder:(e,t)=>{gw(e);for(var n=hn(e.body,t,!0,["mopen","mclose"]),r=0,a=0,i=!1,s=0;s{gw(e);var n=nr(e.body,t);if(e.left!=="."){var r=new Re("mo",[mr(e.left,e.mode)]);r.setAttribute("fence","true"),n.unshift(r)}if(e.right!=="."){var a=new Re("mo",[mr(e.right,e.mode)]);a.setAttribute("fence","true"),e.rightColor&&a.setAttribute("mathcolor",e.rightColor),n.push(a)}return dy(n)}});He({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(e,t)=>{var n=ru(t[0],e);if(!e.parser.leftrightDepth)throw new Ie("\\middle without preceding \\left",n);return{type:"middle",mode:e.parser.mode,delim:n.text}},htmlBuilder:(e,t)=>{var n;return e.delim==="."?n=vo(t,[]):(n=vR(e.delim,1,t,e.mode,[]),n.isMiddle={delim:e.delim,options:t}),n},mathmlBuilder:(e,t)=>{var n=e.delim==="\\vert"||e.delim==="|"?mr("|","text"):mr(e.delim,e.mode),r=new Re("mo",[n]);return r.setAttribute("fence","true"),r.setAttribute("lspace","0.05em"),r.setAttribute("rspace","0.05em"),r}});var au=(e,t)=>{var n=rs(It(e.body,t),t),r=e.label.slice(1),a=t.sizeMultiplier,i,s,l=sa(e.body);if(r==="sout")i=Ee(["stretchy","sout"]),i.height=t.fontMetrics().defaultRuleThickness/a,s=-.5*t.fontMetrics().xHeight;else if(r==="phase"){var c=Ht({number:.6,unit:"pt"},t),u=Ht({number:.35,unit:"ex"},t),d=t.havingBaseSizing();a=a/d.sizeMultiplier;var p=n.height+n.depth+c+u;n.style.paddingLeft=De(p/2+c);var m=Math.floor(1e3*p*a),f=TW(m),g=new na([new Ea("phase",f)],{width:"400em",height:De(m/1e3),viewBox:"0 0 400000 "+m,preserveAspectRatio:"xMinYMin slice"});i=Ca(["hide-tail"],[g],t),i.style.height=De(p),s=n.depth+c+u}else{/cancel/.test(r)?l||n.classes.push("cancel-pad"):r==="angl"?n.classes.push("anglpad"):n.classes.push("boxpad");var b,x,k=0;/box/.test(r)?(k=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness),b=t.fontMetrics().fboxsep+(r==="colorbox"?0:k),x=b):r==="angl"?(k=Math.max(t.fontMetrics().defaultRuleThickness,t.minRuleThickness),b=4*k,x=Math.max(0,.25-n.depth)):(b=l?.2:0,x=b),i=uK(n,r,b,x,t),/fbox|boxed|fcolorbox/.test(r)?(i.style.borderStyle="solid",i.style.borderWidth=De(k)):r==="angl"&&k!==.049&&(i.style.borderTopWidth=De(k),i.style.borderRightWidth=De(k)),s=n.depth+x,e.backgroundColor&&(i.style.backgroundColor=e.backgroundColor,e.borderColor&&(i.style.borderColor=e.borderColor))}var y;if(e.backgroundColor)y=At({positionType:"individualShift",children:[{type:"elem",elem:i,shift:s},{type:"elem",elem:n,shift:0}]});else{var v=/cancel|phase/.test(r)?["svg-align"]:[];y=At({positionType:"individualShift",children:[{type:"elem",elem:n,shift:0},{type:"elem",elem:i,shift:s,wrapperClasses:v}]})}return/cancel/.test(r)&&(y.height=n.height,y.depth=n.depth),/cancel/.test(r)&&!l?Ee(["mord","cancel-lap"],[y],t):Ee(["mord"],[y],t)},iu=(e,t)=>{var n,r=new Re(e.label.includes("colorbox")?"mpadded":"menclose",[Dt(e.body,t)]);switch(e.label){case"\\cancel":r.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":r.setAttribute("notation","downdiagonalstrike");break;case"\\phase":r.setAttribute("notation","phasorangle");break;case"\\sout":r.setAttribute("notation","horizontalstrike");break;case"\\fbox":r.setAttribute("notation","box");break;case"\\angl":r.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(n=t.fontMetrics().fboxsep*t.fontMetrics().ptPerEm,r.setAttribute("width","+"+2*n+"pt"),r.setAttribute("height","+"+2*n+"pt"),r.setAttribute("lspace",n+"pt"),r.setAttribute("voffset",n+"pt"),e.label==="\\fcolorbox"){var a=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness);r.setAttribute("style","border: "+De(a)+" solid "+e.borderColor)}break;case"\\xcancel":r.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return e.backgroundColor&&r.setAttribute("mathbackground",e.backgroundColor),r};He({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","hbox"]},handler(e,t,n){var{parser:r,funcName:a}=e,i=vt(t[0],"color-token").color,s=t[1];return{type:"enclose",mode:r.mode,label:a,backgroundColor:i,body:s}},htmlBuilder:au,mathmlBuilder:iu});He({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","hbox"]},handler(e,t,n){var{parser:r,funcName:a}=e,i=vt(t[0],"color-token").color,s=vt(t[1],"color-token").color,l=t[2];return{type:"enclose",mode:r.mode,label:a,backgroundColor:s,borderColor:i,body:l}},htmlBuilder:au,mathmlBuilder:iu});He({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(e,t){var{parser:n}=e;return{type:"enclose",mode:n.mode,label:"\\fbox",body:t[0]}}});He({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\phase"],props:{numArgs:1},handler(e,t){var{parser:n,funcName:r}=e,a=t[0];return{type:"enclose",mode:n.mode,label:r,body:a}},htmlBuilder:au,mathmlBuilder:iu});He({type:"enclose",names:["\\sout"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:n,funcName:r}=e;n.mode==="math"&&n.settings.reportNonstrict("mathVsSout","LaTeX's \\sout works only in text mode");var a=t[0];return{type:"enclose",mode:n.mode,label:r,body:a}},htmlBuilder:au,mathmlBuilder:iu});He({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(e,t){var{parser:n}=e;return{type:"enclose",mode:n.mode,label:"\\angl",body:t[0]}}});var SR={};function Ur(e){for(var{type:t,names:n,props:r,handler:a,htmlBuilder:i,mathmlBuilder:s}=e,l={type:t,numArgs:r.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:a},c=0;c{var t=e.parser.settings;if(!t.displayMode)throw new Ie("{"+e.envName+"} can be used only in display mode.")},RK=new Set(["gather","gather*"]);function hy(e){if(!e.includes("ed"))return!e.includes("*")}function _a(e,t,n){var{hskipBeforeAndAfter:r,addJot:a,cols:i,arraystretch:s,colSeparationType:l,autoTag:c,singleRow:u,emptySingleRow:d,maxNumCols:p,leqno:m}=t;if(e.gullet.beginGroup(),u||e.gullet.macros.set("\\cr","\\\\\\relax"),!s){var f=e.gullet.expandMacroAsText("\\arraystretch");if(f==null)s=1;else if(s=parseFloat(f),!s||s<0)throw new Ie("Invalid \\arraystretch: "+f)}e.gullet.beginGroup();var g=[],b=[g],x=[],k=[],y=c!=null?[]:void 0;function v(){c&&e.gullet.macros.set("\\@eqnsw","1",!0)}function E(){y&&(e.gullet.macros.get("\\df@tag")?(y.push(e.subparse([new Qn("\\df@tag")])),e.gullet.macros.set("\\df@tag",void 0,!0)):y.push(!!c&&e.gullet.macros.get("\\@eqnsw")==="1"))}for(v(),k.push(bw(e));;){var N=e.parseExpression(!1,u?"\\end":"\\\\");e.gullet.endGroup(),e.gullet.beginGroup();var w={type:"ordgroup",mode:e.mode,body:N};n&&(w={type:"styling",mode:e.mode,style:n,resetFont:!0,body:[w]}),g.push(w);var T=e.fetch().text;if(T==="&"){if(p&&g.length===p){if(u||l)throw new Ie("Too many tab characters: &",e.nextToken);e.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}e.consume()}else if(T==="\\end"){E(),g.length===1&&w.type==="styling"&&w.body.length===1&&w.body[0].type==="ordgroup"&&w.body[0].body.length===0&&(b.length>1||!d)&&b.pop(),k.length0&&(v+=.25),u.push({pos:v,isDashed:ue[be]})}for(E(s[0]),r=0;r0&&(O+=y,Tue))for(r=0;r=l)){var he=void 0;if(a>0||t.hskipBeforeAndAfter){var tt,Me;he=(tt=(Me=L)==null?void 0:Me.pregap)!=null?tt:m,he!==0&&(P=Ee(["arraycolsep"],[]),P.style.width=De(he),M.push(P))}var Fe=[];for(r=0;r0){for(var X=ns("hline",n,d),ae=ns("hdashline",n,d),te=[{type:"elem",elem:ee,shift:0}];u.length>0;){var J=u.pop(),H=J.pos-I;J.isDashed?te.push({type:"elem",elem:ae,shift:H}):te.push({type:"elem",elem:X,shift:H})}ee=At({positionType:"individualShift",children:te})}if($.length===0)return Ee(["mord"],[ee],n);var G=At({positionType:"individualShift",children:$}),Z=Ee(["tag"],[G],n);return la([ee,Z])},_K={c:"center ",l:"left ",r:"right "},qr=function(t,n){for(var r=[],a=new Re("mtd",[],["mtr-glue"]),i=new Re("mtd",[],["mml-eqn-num"]),s=0;s0){var g=t.cols,b="",x=!1,k=0,y=g.length;g[0].type==="separator"&&(m+="top ",k=1),g[g.length-1].type==="separator"&&(m+="bottom ",y-=1);for(var v=k;v0?"left ":"",m+=_[_.length-1].length>0?"right ":"";for(var C=1;C<_.length-1;C++)j+=_[C].length===0?"none ":_[C][0]?"dashed ":"solid ";return/[sd]/.test(j)&&d.setAttribute("rowlines",j.trim()),m!==""&&(d=new Re("menclose",[d]),d.setAttribute("notation",m.trim())),t.arraystretch&&t.arraystretch<1&&(d=new Re("mstyle",[d]),d.setAttribute("scriptlevel","1")),d},CR=function(t,n){t.envName.includes("ed")||su(t);var r=[],a=t.envName.includes("at")?"alignat":"align",i=t.envName==="split",s=_a(t.parser,{cols:r,addJot:!0,autoTag:i?void 0:hy(t.envName),emptySingleRow:!0,colSeparationType:a,maxNumCols:i?2:void 0,leqno:t.parser.settings.leqno},"display"),l=0,c=0,u={type:"ordgroup",mode:t.mode,body:[]};if(n[0]&&n[0].type==="ordgroup"){for(var d="",p=0;p0&&f&&(x=1),r[g]={type:"align",align:b,pregap:x,postgap:0}}return s.colSeparationType=f?"align":"alignat",s};Ur({type:"array",names:["array","darray"],props:{numArgs:1},handler(e,t){var n=tu(t[0]),r=n?[t[0]]:vt(t[0],"ordgroup").body,a=r.map(function(s){var l=eu(s),c=l.text;if("lcr".includes(c))return{type:"align",align:c};if(c==="|")return{type:"separator",separator:"|"};if(c===":")return{type:"separator",separator:":"};throw new Ie("Unknown column alignment: "+c,s)}),i={cols:a,hskipBeforeAndAfter:!0,maxNumCols:a.length};return _a(e.parser,i,gy(e.envName))},htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(e){var t={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[e.envName.replace("*","")],n="c",r={hskipBeforeAndAfter:!1,cols:[{type:"align",align:n}]};if(e.envName.charAt(e.envName.length-1)==="*"){var a=e.parser;if(a.consumeSpaces(),a.fetch().text==="["){if(a.consume(),a.consumeSpaces(),n=a.fetch().text,!"lcr".includes(n))throw new Ie("Expected l or c or r",a.nextToken);a.consume(),a.consumeSpaces(),a.expect("]"),a.consume(),r.cols=[{type:"align",align:n}]}}var i=_a(e.parser,r,gy(e.envName)),s=Math.max(0,...i.body.map(l=>l.length));return i.cols=new Array(s).fill({type:"align",align:n}),t?{type:"leftright",mode:e.mode,body:[i],left:t[0],right:t[1],rightColor:void 0}:i},htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(e){var t={arraystretch:.5},n=_a(e.parser,t,"script");return n.colSeparationType="small",n},htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["subarray"],props:{numArgs:1},handler(e,t){var n=tu(t[0]),r=n?[t[0]]:vt(t[0],"ordgroup").body,a=r.map(function(l){var c=eu(l),u=c.text;if("lc".includes(u))return{type:"align",align:u};throw new Ie("Unknown column alignment: "+u,l)});if(a.length>1)throw new Ie("{subarray} can contain only one column");var i={cols:a,hskipBeforeAndAfter:!1,arraystretch:.5},s=_a(e.parser,i,"script");if(s.body.length>0&&s.body[0].length>1)throw new Ie("{subarray} can contain only one column");return s},htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(e){var t={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},n=_a(e.parser,t,gy(e.envName));return{type:"leftright",mode:e.mode,body:[n],left:e.envName.includes("r")?".":"\\{",right:e.envName.includes("r")?"\\}":".",rightColor:void 0}},htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:CR,htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(e){RK.has(e.envName)&&su(e);var t={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:hy(e.envName),emptySingleRow:!0,leqno:e.parser.settings.leqno};return _a(e.parser,t,"display")},htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:CR,htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(e){su(e);var t={autoTag:hy(e.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:e.parser.settings.leqno};return _a(e.parser,t,"display")},htmlBuilder:zr,mathmlBuilder:qr});Ur({type:"array",names:["CD"],props:{numArgs:0},handler(e){return su(e),xK(e.parser)},htmlBuilder:zr,mathmlBuilder:qr});F("\\nonumber","\\gdef\\@eqnsw{0}");F("\\notag","\\nonumber");He({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(e,t){throw new Ie(e.funcName+" valid only within array environment")}});var xw=SR;He({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(e,t){var{parser:n,funcName:r}=e,a=t[0];if(a.type!=="ordgroup")throw new Ie("Invalid environment name",a);for(var i="",s=0;s{var n=e.font,r=t.withFont(n);return It(e.body,r)},TR=(e,t)=>{var n=e.font,r=t.withFont(n);return Dt(e.body,r)},yw={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak"};He({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(e,t)=>{var{parser:n,funcName:r}=e,a=xc(t[0]),i=r;return i in yw&&(i=yw[i]),{type:"font",mode:n.mode,font:i.slice(1),body:a}},htmlBuilder:NR,mathmlBuilder:TR});He({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(e,t)=>{var{parser:n}=e,r=t[0];return{type:"mclass",mode:n.mode,mclass:nu(r),body:[{type:"font",mode:n.mode,font:"boldsymbol",body:r}],isCharacterBox:sa(r)}}});He({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(e,t)=>{var{parser:n,funcName:r,breakOnTokenText:a}=e,{mode:i}=n,s=n.parseExpression(!0,a);return{type:"font",mode:i,font:"math"+r.slice(1),body:{type:"ordgroup",mode:n.mode,body:s}}},htmlBuilder:NR,mathmlBuilder:TR});var jK=(e,t)=>{var n=t.style,r=n.fracNum(),a=n.fracDen(),i;i=t.havingStyle(r);var s=It(e.numer,i,t);if(e.continued){var l=8.5/t.fontMetrics().ptPerEm,c=3.5/t.fontMetrics().ptPerEm;s.height=s.height0?g=3*m:g=7*m,b=t.fontMetrics().denom1):(p>0?(f=t.fontMetrics().num2,g=m):(f=t.fontMetrics().num3,g=3*m),b=t.fontMetrics().denom2);var x;if(d){var y=t.fontMetrics().axisHeight;f-s.depth-(y+.5*p){var n=new Re("mfrac",[Dt(e.numer,t),Dt(e.denom,t)]);if(!e.hasBarLine)n.setAttribute("linethickness","0px");else if(e.barSize){var r=Ht(e.barSize,t);n.setAttribute("linethickness",De(r))}if(e.leftDelim!=null||e.rightDelim!=null){var a=[];if(e.leftDelim!=null){var i=new Re("mo",[new on(e.leftDelim.replace("\\",""))]);i.setAttribute("fence","true"),a.push(i)}if(a.push(n),e.rightDelim!=null){var s=new Re("mo",[new on(e.rightDelim.replace("\\",""))]);s.setAttribute("fence","true"),a.push(s)}return dy(a)}return n},AR=(e,t)=>{if(!t)return e;var n={type:"styling",mode:e.mode,style:t,body:[e]};return n};He({type:"genfrac",names:["\\cfrac","\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(e,t)=>{var{parser:n,funcName:r}=e,a=t[0],i=t[1],s,l=null,c=null;switch(r){case"\\cfrac":case"\\dfrac":case"\\frac":case"\\tfrac":s=!0;break;case"\\\\atopfrac":s=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":s=!1,l="(",c=")";break;case"\\\\bracefrac":s=!1,l="\\{",c="\\}";break;case"\\\\brackfrac":s=!1,l="[",c="]";break;default:throw new Error("Unrecognized genfrac command")}var u=r==="\\cfrac",d=null;return u||r.startsWith("\\d")?d="display":r.startsWith("\\t")&&(d="text"),AR({type:"genfrac",mode:n.mode,numer:a,denom:i,continued:u,hasBarLine:s,leftDelim:l,rightDelim:c,barSize:null},d)},htmlBuilder:jK,mathmlBuilder:OK});He({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(e){var{parser:t,funcName:n,token:r}=e,a;switch(n){case"\\over":a="\\frac";break;case"\\choose":a="\\binom";break;case"\\atop":a="\\\\atopfrac";break;case"\\brace":a="\\\\bracefrac";break;case"\\brack":a="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:t.mode,replaceWith:a,token:r}}});var vw=["display","text","script","scriptscript"],kw=function(t){var n=null;return t.length>0&&(n=t,n=n==="."?null:n),n};He({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(e,t){var{parser:n}=e,r=t[4],a=t[5],i=xc(t[0]),s=i.type==="atom"&&i.family==="open"?kw(i.text):null,l=xc(t[1]),c=l.type==="atom"&&l.family==="close"?kw(l.text):null,u=vt(t[2],"size"),d,p=null;u.isBlank?d=!0:(p=u.value,d=p.number>0);var m=null,f=t[3];if(f.type==="ordgroup"){if(f.body.length>0){var g=vt(f.body[0],"textord");m=vw[Number(g.text)]}}else f=vt(f,"textord"),m=vw[Number(f.text)];return AR({type:"genfrac",mode:n.mode,numer:r,denom:a,continued:!1,hasBarLine:d,barSize:p,leftDelim:s,rightDelim:c},m)}});He({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(e,t){var{parser:n,funcName:r,token:a}=e;return{type:"infix",mode:n.mode,replaceWith:"\\\\abovefrac",size:vt(t[0],"size").value,token:a}}});He({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(e,t)=>{var{parser:n,funcName:r}=e,a=t[0],i=vt(t[1],"infix").size;if(!i)throw new Error("\\\\abovefrac expected size, but got "+String(i));var s=t[2],l=i.number>0;return{type:"genfrac",mode:n.mode,numer:a,denom:s,continued:!1,hasBarLine:l,barSize:i,leftDelim:null,rightDelim:null}}});var IR=(e,t)=>{var n=t.style,r,a;e.type==="supsub"?(r=e.sup?It(e.sup,t.havingStyle(n.sup()),t):It(e.sub,t.havingStyle(n.sub()),t),a=vt(e.base,"horizBrace")):a=vt(e,"horizBrace");var i=It(a.base,t.havingBaseStyle(ft.DISPLAY)),s=Qc(a,t),l;if(a.isOver?l=At({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"kern",size:.1},{type:"elem",elem:s,wrapperClasses:["svg-align"]}]}):l=At({positionType:"bottom",positionData:i.depth+.1+s.height,children:[{type:"elem",elem:s,wrapperClasses:["svg-align"]},{type:"kern",size:.1},{type:"elem",elem:i}]}),r){var c=Ee(["minner",a.isOver?"mover":"munder"],[l],t);a.isOver?l=At({positionType:"firstBaseline",children:[{type:"elem",elem:c},{type:"kern",size:.2},{type:"elem",elem:r}]}):l=At({positionType:"bottom",positionData:c.depth+.2+r.height+r.depth,children:[{type:"elem",elem:r},{type:"kern",size:.2},{type:"elem",elem:c}]})}return Ee(["minner",a.isOver?"mover":"munder"],[l],t)},DK=(e,t)=>{var n=Jc(e.label);return new Re(e.isOver?"mover":"munder",[Dt(e.base,t),n])};He({type:"horizBrace",names:["\\overbrace","\\underbrace","\\overbracket","\\underbracket"],props:{numArgs:1},handler(e,t){var{parser:n,funcName:r}=e;return{type:"horizBrace",mode:n.mode,label:r,isOver:r.includes("\\over"),base:t[0]}},htmlBuilder:IR,mathmlBuilder:DK});He({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(e,t)=>{var{parser:n}=e,r=t[1],a=vt(t[0],"url").url;return n.settings.isTrusted({command:"\\href",url:a})?{type:"href",mode:n.mode,href:a,body:sn(r)}:n.formatUnsupportedCmd("\\href")},htmlBuilder:(e,t)=>{var n=hn(e.body,t,!1);return WW(e.href,[],n,t)},mathmlBuilder:(e,t)=>{var n=Na(e.body,t);return n instanceof Re||(n=new Re("mrow",[n])),n.setAttribute("href",e.href),n}});He({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(e,t)=>{var{parser:n}=e,r=vt(t[0],"url").url;if(!n.settings.isTrusted({command:"\\url",url:r}))return n.formatUnsupportedCmd("\\url");for(var a=[],i=0;i{var{parser:n,funcName:r,token:a}=e,i=vt(t[0],"raw").string,s=t[1];n.settings.strict&&n.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var l,c={};switch(r){case"\\htmlClass":c.class=i,l={command:"\\htmlClass",class:i};break;case"\\htmlId":c.id=i,l={command:"\\htmlId",id:i};break;case"\\htmlStyle":c.style=i,l={command:"\\htmlStyle",style:i};break;case"\\htmlData":{for(var u=i.split(","),d=0;d{var n=hn(e.body,t,!1),r=["enclosing"];e.attributes.class&&r.push(...e.attributes.class.trim().split(/\s+/));var a=Ee(r,n,t);for(var i in e.attributes)i!=="class"&&e.attributes.hasOwnProperty(i)&&a.setAttribute(i,e.attributes[i]);return a},mathmlBuilder:(e,t)=>Na(e.body,t)});He({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInArgument:!0,allowedInText:!0},handler:(e,t)=>{var{parser:n}=e;return{type:"htmlmathml",mode:n.mode,html:sn(t[0]),mathml:sn(t[1])}},htmlBuilder:(e,t)=>{var n=hn(e.html,t,!1);return la(n)},mathmlBuilder:(e,t)=>Na(e.mathml,t)});var Ed=function(t){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(t))return{number:+t,unit:"bp"};var n=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(t);if(!n)throw new Ie("Invalid size: '"+t+"' in \\includegraphics");var r={number:+(n[1]+n[2]),unit:n[3]};if(!VI(r))throw new Ie("Invalid unit: '"+r.unit+"' in \\includegraphics.");return r};He({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(e,t,n)=>{var{parser:r}=e,a={number:0,unit:"em"},i={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(n[0])for(var c=vt(n[0],"raw").string,u=c.split(","),d=0;d{var n=Ht(e.height,t),r=0;e.totalheight.number>0&&(r=Ht(e.totalheight,t)-n);var a=0;e.width.number>0&&(a=Ht(e.width,t));var i={height:De(n+r)};a>0&&(i.width=De(a)),r>0&&(i.verticalAlign=De(-r));var s=new MW(e.src,e.alt,i);return s.height=n,s.depth=r,s},mathmlBuilder:(e,t)=>{var n=new Re("mglyph",[]);n.setAttribute("alt",e.alt);var r=Ht(e.height,t),a=0;if(e.totalheight.number>0&&(a=Ht(e.totalheight,t)-r,n.setAttribute("valign",De(-a))),n.setAttribute("height",De(r+a)),e.width.number>0){var i=Ht(e.width,t);n.setAttribute("width",De(i))}return n.setAttribute("src",e.src),n}});He({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(e,t){var{parser:n,funcName:r}=e,a=vt(t[0],"size");if(n.settings.strict){var i=r[1]==="m",s=a.value.unit==="mu";i?(s||n.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" supports only mu units, "+("not "+a.value.unit+" units")),n.mode!=="math"&&n.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" works only in math mode")):s&&n.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" doesn't support mu units")}return{type:"kern",mode:n.mode,dimension:a.value}},htmlBuilder(e,t){return JI(e.dimension,t)},mathmlBuilder(e,t){var n=Ht(e.dimension,t);return new aR(n)}});He({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(e,t)=>{var{parser:n,funcName:r}=e,a=t[0];return{type:"lap",mode:n.mode,alignment:r.slice(5),body:a}},htmlBuilder:(e,t)=>{var n;e.alignment==="clap"?(n=Ee([],[It(e.body,t)]),n=Ee(["inner"],[n],t)):n=Ee(["inner"],[It(e.body,t)]);var r=Ee(["fix"],[]),a=Ee([e.alignment],[n,r],t),i=Ee(["strut"]);return i.style.height=De(a.height+a.depth),a.depth&&(i.style.verticalAlign=De(-a.depth)),a.children.unshift(i),a=Ee(["thinbox"],[a],t),Ee(["mord","vbox"],[a],t)},mathmlBuilder:(e,t)=>{var n=new Re("mpadded",[Dt(e.body,t)]);if(e.alignment!=="rlap"){var r=e.alignment==="llap"?"-1":"-0.5";n.setAttribute("lspace",r+"width")}return n.setAttribute("width","0px"),n}});He({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(e,t){var{funcName:n,parser:r}=e,a=r.mode;r.switchMode("math");var i=n==="\\("?"\\)":"$",s=r.parseExpression(!1,i);return r.expect(i),r.switchMode(a),{type:"styling",mode:r.mode,style:"text",resetFont:!0,body:s}}});He({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(e,t){throw new Ie("Mismatched "+e.funcName)}});var ww=(e,t)=>{switch(t.style.size){case ft.DISPLAY.size:return e.display;case ft.TEXT.size:return e.text;case ft.SCRIPT.size:return e.script;case ft.SCRIPTSCRIPT.size:return e.scriptscript;default:return e.text}};He({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(e,t)=>{var{parser:n}=e;return{type:"mathchoice",mode:n.mode,display:sn(t[0]),text:sn(t[1]),script:sn(t[2]),scriptscript:sn(t[3])}},htmlBuilder:(e,t)=>{var n=ww(e,t),r=hn(n,t,!1);return la(r)},mathmlBuilder:(e,t)=>{var n=ww(e,t);return Na(n,t)}});var RR=(e,t,n,r,a,i,s)=>{e=Ee([],[e]);var l=n&&sa(n),c,u;if(t){var d=It(t,r.havingStyle(a.sup()),r);u={elem:d,kern:Math.max(r.fontMetrics().bigOpSpacing1,r.fontMetrics().bigOpSpacing3-d.depth)}}if(n){var p=It(n,r.havingStyle(a.sub()),r);c={elem:p,kern:Math.max(r.fontMetrics().bigOpSpacing2,r.fontMetrics().bigOpSpacing4-p.height)}}var m;if(u&&c){var f=r.fontMetrics().bigOpSpacing5+c.elem.height+c.elem.depth+c.kern+e.depth+s;m=At({positionType:"bottom",positionData:f,children:[{type:"kern",size:r.fontMetrics().bigOpSpacing5},{type:"elem",elem:c.elem,marginLeft:De(-i)},{type:"kern",size:c.kern},{type:"elem",elem:e},{type:"kern",size:u.kern},{type:"elem",elem:u.elem,marginLeft:De(i)},{type:"kern",size:r.fontMetrics().bigOpSpacing5}]})}else if(c){var g=e.height-s;m=At({positionType:"top",positionData:g,children:[{type:"kern",size:r.fontMetrics().bigOpSpacing5},{type:"elem",elem:c.elem,marginLeft:De(-i)},{type:"kern",size:c.kern},{type:"elem",elem:e}]})}else if(u){var b=e.depth+s;m=At({positionType:"bottom",positionData:b,children:[{type:"elem",elem:e},{type:"kern",size:u.kern},{type:"elem",elem:u.elem,marginLeft:De(i)},{type:"kern",size:r.fontMetrics().bigOpSpacing5}]})}else return e;var x=[m];if(c&&i!==0&&!l){var k=Ee(["mspace"],[],r);k.style.marginRight=De(i),x.unshift(k)}return Ee(["mop","op-limits"],x,r)},_R=new Set(["\\smallint"]),ks=(e,t)=>{var n,r,a=!1,i;e.type==="supsub"?(n=e.sup,r=e.sub,i=vt(e.base,"op"),a=!0):i=vt(e,"op");var s=t.style,l=!1;s.size===ft.DISPLAY.size&&i.symbol&&!_R.has(i.name)&&(l=!0);var c,u;if(i.symbol){var d=l?"Size2-Regular":"Size1-Regular",p="";if((i.name==="\\oiint"||i.name==="\\oiiint")&&(p=i.name.slice(1),i.name=p==="oiint"?"\\iint":"\\iiint"),c=An(i.name,d,"math",t,["mop","op-symbol",l?"large-op":"small-op"]),u=c.italic,p.length>0){var m=eR(p+"Size"+(l?"2":"1"),t);c=At({positionType:"individualShift",children:[{type:"elem",elem:c,shift:0},{type:"elem",elem:m,shift:l?.08:0}]}),i.name="\\"+p,c.classes.unshift("mop"),c.italic=u}}else if(i.body){var f=hn(i.body,t,!0);f.length===1&&f[0]instanceof er?(c=f[0],c.classes[0]="mop"):c=Ee(["mop"],f,t)}else{for(var g=[],b=1;b{var n;if(e.symbol)n=new Re("mo",[mr(e.name,e.mode)]),_R.has(e.name)&&n.setAttribute("largeop","false");else if(e.body)n=new Re("mo",nr(e.body,t));else{n=new Re("mi",[new on(e.name.slice(1))]);var r=new Re("mo",[mr("⁡","text")]);e.parentIsSupSub?n=new Re("mrow",[n,r]):n=rR([n,r])}return n},MK={"∏":"\\prod","∐":"\\coprod","∑":"\\sum","⋀":"\\bigwedge","⋁":"\\bigvee","⋂":"\\bigcap","⋃":"\\bigcup","⨀":"\\bigodot","⨁":"\\bigoplus","⨂":"\\bigotimes","⨄":"\\biguplus","⨆":"\\bigsqcup"};He({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","∏","∐","∑","⋀","⋁","⋂","⋃","⨀","⨁","⨂","⨄","⨆"],props:{numArgs:0},handler:(e,t)=>{var{parser:n,funcName:r}=e,a=r;return a.length===1&&(a=MK[a]),{type:"op",mode:n.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:a}},htmlBuilder:ks,mathmlBuilder:Mo});He({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(e,t)=>{var{parser:n}=e,r=t[0];return{type:"op",mode:n.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:sn(r)}},htmlBuilder:ks,mathmlBuilder:Mo});var LK={"∫":"\\int","∬":"\\iint","∭":"\\iiint","∮":"\\oint","∯":"\\oiint","∰":"\\oiiint"};He({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(e){var{parser:t,funcName:n}=e;return{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:n}},htmlBuilder:ks,mathmlBuilder:Mo});He({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(e){var{parser:t,funcName:n}=e;return{type:"op",mode:t.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:n}},htmlBuilder:ks,mathmlBuilder:Mo});He({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","∫","∬","∭","∮","∯","∰"],props:{numArgs:0,allowedInArgument:!0},handler(e){var{parser:t,funcName:n}=e,r=n;return r.length===1&&(r=LK[r]),{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:r}},htmlBuilder:ks,mathmlBuilder:Mo});var jR=(e,t)=>{var n,r,a=!1,i;e.type==="supsub"?(n=e.sup,r=e.sub,i=vt(e.base,"operatorname"),a=!0):i=vt(e,"operatorname");var s;if(i.body.length>0){for(var l=i.body.map(p=>{var m="text"in p?p.text:void 0;return typeof m=="string"?{type:"textord",mode:p.mode,text:m}:p}),c=hn(l,t.withFont("mathrm"),!0),u=0;u{for(var n=nr(e.body,t.withFont("mathrm")),r=!0,a=0;ad.toText()).join("");n=[new on(l)]}var c=new Re("mi",n);c.setAttribute("mathvariant","normal");var u=new Re("mo",[mr("⁡","text")]);return e.parentIsSupSub?new Re("mrow",[c,u]):rR([c,u])};He({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:(e,t)=>{var{parser:n,funcName:r}=e,a=t[0];return{type:"operatorname",mode:n.mode,body:sn(a),alwaysHandleSupSub:r==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},htmlBuilder:jR,mathmlBuilder:PK});F("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");pi({type:"ordgroup",htmlBuilder(e,t){return e.semisimple?la(hn(e.body,t,!1)):Ee(["mord"],hn(e.body,t,!0),t)},mathmlBuilder(e,t){return Na(e.body,t,!0)}});He({type:"overline",names:["\\overline"],props:{numArgs:1},handler(e,t){var{parser:n}=e,r=t[0];return{type:"overline",mode:n.mode,body:r}},htmlBuilder(e,t){var n=It(e.body,t.havingCrampedStyle()),r=ns("overline-line",t),a=t.fontMetrics().defaultRuleThickness,i=At({positionType:"firstBaseline",children:[{type:"elem",elem:n},{type:"kern",size:3*a},{type:"elem",elem:r},{type:"kern",size:a}]});return Ee(["mord","overline"],[i],t)},mathmlBuilder(e,t){var n=new Re("mo",[new on("‾")]);n.setAttribute("stretchy","true");var r=new Re("mover",[Dt(e.body,t),n]);return r.setAttribute("accent","true"),r}});He({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(e,t)=>{var{parser:n}=e,r=t[0];return{type:"phantom",mode:n.mode,body:sn(r)}},htmlBuilder:(e,t)=>{var n=hn(e.body,t.withPhantom(),!1);return la(n)},mathmlBuilder:(e,t)=>{var n=nr(e.body,t);return new Re("mphantom",n)}});F("\\hphantom","\\smash{\\phantom{#1}}");He({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(e,t)=>{var{parser:n}=e,r=t[0];return{type:"vphantom",mode:n.mode,body:r}},htmlBuilder:(e,t)=>{var n=Ee(["inner"],[It(e.body,t.withPhantom())]),r=Ee(["fix"],[]);return Ee(["mord","rlap"],[n,r],t)},mathmlBuilder:(e,t)=>{var n=nr(sn(e.body),t),r=new Re("mphantom",n),a=new Re("mpadded",[r]);return a.setAttribute("width","0px"),a}});He({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(e,t){var{parser:n}=e,r=vt(t[0],"size").value,a=t[1];return{type:"raisebox",mode:n.mode,dy:r,body:a}},htmlBuilder(e,t){var n=It(e.body,t),r=Ht(e.dy,t);return At({positionType:"shift",positionData:-r,children:[{type:"elem",elem:n}]})},mathmlBuilder(e,t){var n=new Re("mpadded",[Dt(e.body,t)]),r=e.dy.number+e.dy.unit;return n.setAttribute("voffset",r),n}});He({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(e){var{parser:t}=e;return{type:"internal",mode:t.mode}}});He({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(e,t,n){var{parser:r}=e,a=n[0],i=vt(t[0],"size"),s=vt(t[1],"size");return{type:"rule",mode:r.mode,shift:a&&vt(a,"size").value,width:i.value,height:s.value}},htmlBuilder(e,t){var n=Ee(["mord","rule"],[],t),r=Ht(e.width,t),a=Ht(e.height,t),i=e.shift?Ht(e.shift,t):0;return n.style.borderRightWidth=De(r),n.style.borderTopWidth=De(a),n.style.bottom=De(i),n.width=r,n.height=a+i,n.depth=-i,n.maxFontSize=a*1.125*t.sizeMultiplier,n},mathmlBuilder(e,t){var n=Ht(e.width,t),r=Ht(e.height,t),a=e.shift?Ht(e.shift,t):0,i=t.color&&t.getColor()||"black",s=new Re("mspace");s.setAttribute("mathbackground",i),s.setAttribute("width",De(n)),s.setAttribute("height",De(r));var l=new Re("mpadded",[s]);return a>=0?l.setAttribute("height",De(a)):(l.setAttribute("height",De(a)),l.setAttribute("depth",De(-a))),l.setAttribute("voffset",De(a)),l}});function OR(e,t,n){for(var r=hn(e,t,!1),a=t.sizeMultiplier/n.sizeMultiplier,i=0;i{var n=t.havingSize(e.size);return OR(e.body,n,t)};He({type:"sizing",names:Sw,props:{numArgs:0,allowedInText:!0},handler:(e,t)=>{var{breakOnTokenText:n,funcName:r,parser:a}=e,i=a.parseExpression(!1,n);return{type:"sizing",mode:a.mode,size:Sw.indexOf(r)+1,body:i}},htmlBuilder:FK,mathmlBuilder:(e,t)=>{var n=t.havingSize(e.size),r=nr(e.body,n),a=new Re("mstyle",r);return a.setAttribute("mathsize",De(n.sizeMultiplier)),a}});He({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(e,t,n)=>{var{parser:r}=e,a=!1,i=!1,s=n[0]&&vt(n[0],"ordgroup");if(s)for(var l,c=0;c{var n=Ee([],[It(e.body,t)]);if(!e.smashHeight&&!e.smashDepth)return n;if(e.smashHeight&&(n.height=0),e.smashDepth&&(n.depth=0),e.smashHeight&&e.smashDepth)return Ee(["mord","smash"],[n],t);if(n.children)for(var r=0;r{var n=new Re("mpadded",[Dt(e.body,t)]);return e.smashHeight&&n.setAttribute("height","0px"),e.smashDepth&&n.setAttribute("depth","0px"),n}});He({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(e,t,n){var{parser:r}=e,a=n[0],i=t[0];return{type:"sqrt",mode:r.mode,body:i,index:a}},htmlBuilder(e,t){var n=It(e.body,t.havingCrampedStyle());n.height===0&&(n.height=t.fontMetrics().xHeight),n=rs(n,t);var r=t.fontMetrics(),a=r.defaultRuleThickness,i=a;t.style.idn.height+n.depth+s&&(s=(s+p-n.height-n.depth)/2);var m=c.height-n.height-s-u;n.style.paddingLeft=De(d);var f=At({positionType:"firstBaseline",children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:-(n.height+m)},{type:"elem",elem:c},{type:"kern",size:u}]});if(e.index){var g=t.havingStyle(ft.SCRIPTSCRIPT),b=It(e.index,g,t),x=.6*(f.height-f.depth),k=At({positionType:"shift",positionData:-x,children:[{type:"elem",elem:b}]}),y=Ee(["root"],[k]);return Ee(["mord","sqrt"],[y,f],t)}else return Ee(["mord","sqrt"],[f],t)},mathmlBuilder(e,t){var{body:n,index:r}=e;return r?new Re("mroot",[Dt(n,t),Dt(r,t)]):new Re("msqrt",[Dt(n,t)])}});var Bb={display:ft.DISPLAY,text:ft.TEXT,script:ft.SCRIPT,scriptscript:ft.SCRIPTSCRIPT};function BK(e){return e in Bb}He({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e,t){var{breakOnTokenText:n,funcName:r,parser:a}=e,i=a.parseExpression(!0,n),s=r.slice(1,r.length-5);if(!BK(s))throw new Error("Unknown style: "+s);return{type:"styling",mode:a.mode,style:s,body:i}},htmlBuilder(e,t){var n=Bb[e.style],r=t.havingStyle(n);return e.resetFont&&(r=r.withFont("")),OR(e.body,r,t)},mathmlBuilder(e,t){var n=Bb[e.style],r=t.havingStyle(n);e.resetFont&&(r=r.withFont(""));var a=nr(e.body,r),i=new Re("mstyle",a),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},l=s[e.style];return i.setAttribute("scriptlevel",l[0]),i.setAttribute("displaystyle",l[1]),i}});var $K=function(t,n){var r=t.base;if(r)if(r.type==="op"){var a=r.limits&&(n.style.size===ft.DISPLAY.size||r.alwaysHandleSupSub);return a?ks:null}else if(r.type==="operatorname"){var i=r.alwaysHandleSupSub&&(n.style.size===ft.DISPLAY.size||r.limits);return i?jR:null}else{if(r.type==="accent")return sa(r.base)?my:null;if(r.type==="horizBrace"){var s=!t.sub;return s===r.isOver?IR:null}else return null}else return null};pi({type:"supsub",htmlBuilder(e,t){var n=$K(e,t);if(n)return n(e,t);var{base:r,sup:a,sub:i}=e,s=It(r,t),l,c,u=t.fontMetrics(),d=0,p=0,m=r&&sa(r);if(a){var f=t.havingStyle(t.style.sup());l=It(a,f,t),m||(d=s.height-f.fontMetrics().supDrop*f.sizeMultiplier/t.sizeMultiplier)}if(i){var g=t.havingStyle(t.style.sub());c=It(i,g,t),m||(p=s.depth+g.fontMetrics().subDrop*g.sizeMultiplier/t.sizeMultiplier)}var b;t.style===ft.DISPLAY?b=u.sup1:t.style.cramped?b=u.sup3:b=u.sup2;var x=t.sizeMultiplier,k=De(.5/u.ptPerEm/x),y=null;if(c){var v=e.base&&e.base.type==="op"&&e.base.name&&(e.base.name==="\\oiint"||e.base.name==="\\oiiint");if(s instanceof er||v){var E;y=De(-((E=s.italic)!=null?E:0))}}var N;if(l&&c){d=Math.max(d,b,l.depth+.25*u.xHeight),p=Math.max(p,u.sub2);var w=u.defaultRuleThickness,T=4*w;if(d-l.depth-(c.height-p)0&&(d+=j,p-=j)}var _=[{type:"elem",elem:c,shift:p,marginRight:k,marginLeft:y},{type:"elem",elem:l,shift:-d,marginRight:k}];N=At({positionType:"individualShift",children:_})}else if(c){p=Math.max(p,u.sub1,c.height-.8*u.xHeight);var C=[{type:"elem",elem:c,marginLeft:y,marginRight:k}];N=At({positionType:"shift",positionData:p,children:C})}else if(l)d=Math.max(d,b,l.depth+.25*u.xHeight),N=At({positionType:"shift",positionData:-d,children:[{type:"elem",elem:l,marginRight:k}]});else throw new Error("supsub must have either sup or sub.");var O=Db(s,"right")||"mord";return Ee([O],[s,Ee(["msupsub"],[N])],t)},mathmlBuilder(e,t){var n=!1,r,a;e.base&&e.base.type==="horizBrace"&&(a=!!e.sup,a===e.base.isOver&&(n=!0,r=e.base.isOver)),e.base&&(e.base.type==="op"||e.base.type==="operatorname")&&(e.base.parentIsSupSub=!0);var i=[Dt(e.base,t)];e.sub&&i.push(Dt(e.sub,t)),e.sup&&i.push(Dt(e.sup,t));var s;if(n)s=r?"mover":"munder";else if(e.sub)if(e.sup){var u=e.base;u&&u.type==="op"&&u.limits&&t.style===ft.DISPLAY||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(t.style===ft.DISPLAY||u.limits)?s="munderover":s="msubsup"}else{var c=e.base;c&&c.type==="op"&&c.limits&&(t.style===ft.DISPLAY||c.alwaysHandleSupSub)||c&&c.type==="operatorname"&&c.alwaysHandleSupSub&&(c.limits||t.style===ft.DISPLAY)?s="munder":s="msub"}else{var l=e.base;l&&l.type==="op"&&l.limits&&(t.style===ft.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||t.style===ft.DISPLAY)?s="mover":s="msup"}return new Re(s,i)}});pi({type:"atom",htmlBuilder(e,t){return cy(e.text,e.mode,t,["m"+e.family])},mathmlBuilder(e,t){var n=new Re("mo",[mr(e.text,e.mode)]);if(e.family==="bin"){var r=py(e,t);r==="bold-italic"&&n.setAttribute("mathvariant",r)}else e.family==="punct"?n.setAttribute("separator","true"):(e.family==="open"||e.family==="close")&&n.setAttribute("stretchy","false");return n}});var DR={mi:"italic",mn:"normal",mtext:"normal"};pi({type:"mathord",htmlBuilder(e,t){return Zc(e,t,"mathord")},mathmlBuilder(e,t){var n=new Re("mi",[mr(e.text,e.mode,t)]),r=py(e,t)||"italic";return r!==DR[n.type]&&n.setAttribute("mathvariant",r),n}});pi({type:"textord",htmlBuilder(e,t){return Zc(e,t,"textord")},mathmlBuilder(e,t){var n=mr(e.text,e.mode,t),r=py(e,t)||"normal",a;return e.mode==="text"?a=new Re("mtext",[n]):/[0-9]/.test(e.text)?a=new Re("mn",[n]):e.text==="\\prime"?a=new Re("mo",[n]):a=new Re("mi",[n]),r!==DR[a.type]&&a.setAttribute("mathvariant",r),a}});var Cd={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},Nd={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};pi({type:"spacing",htmlBuilder(e,t){if(Nd.hasOwnProperty(e.text)){var n=Nd[e.text].className||"";if(e.mode==="text"){var r=Zc(e,t,"textord");return r.classes.push(n),r}else return Ee(["mspace",n],[cy(e.text,e.mode,t)],t)}else{if(Cd.hasOwnProperty(e.text))return Ee(["mspace",Cd[e.text]],[],t);throw new Ie('Unknown type of space "'+e.text+'"')}},mathmlBuilder(e,t){var n;if(Nd.hasOwnProperty(e.text))n=new Re("mtext",[new on(" ")]);else{if(Cd.hasOwnProperty(e.text))return new Re("mspace");throw new Ie('Unknown type of space "'+e.text+'"')}return n}});var Ew=()=>{var e=new Re("mtd",[]);return e.setAttribute("width","50%"),e};pi({type:"tag",mathmlBuilder(e,t){var n=new Re("mtable",[new Re("mtr",[Ew(),new Re("mtd",[Na(e.body,t)]),Ew(),new Re("mtd",[Na(e.tag,t)])])]);return n.setAttribute("width","100%"),n}});var Cw={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Nw={"\\textbf":"textbf","\\textmd":"textmd"},UK={"\\textit":"textit","\\textup":"textup"},Tw=(e,t)=>{var n=e.font;if(n){if(Cw[n])return t.withTextFontFamily(Cw[n]);if(Nw[n])return t.withTextFontWeight(Nw[n]);if(n==="\\emph")return t.fontShape==="textit"?t.withTextFontShape("textup"):t.withTextFontShape("textit")}else return t;return t.withTextFontShape(UK[n])};He({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(e,t){var{parser:n,funcName:r}=e,a=t[0];return{type:"text",mode:n.mode,body:sn(a),font:r}},htmlBuilder(e,t){var n=Tw(e,t),r=hn(e.body,n,!0);return Ee(["mord","text"],r,n)},mathmlBuilder(e,t){var n=Tw(e,t);return Na(e.body,n)}});He({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:n}=e;return{type:"underline",mode:n.mode,body:t[0]}},htmlBuilder(e,t){var n=It(e.body,t),r=ns("underline-line",t),a=t.fontMetrics().defaultRuleThickness,i=At({positionType:"top",positionData:n.height,children:[{type:"kern",size:a},{type:"elem",elem:r},{type:"kern",size:3*a},{type:"elem",elem:n}]});return Ee(["mord","underline"],[i],t)},mathmlBuilder(e,t){var n=new Re("mo",[new on("‾")]);n.setAttribute("stretchy","true");var r=new Re("munder",[Dt(e.body,t),n]);return r.setAttribute("accentunder","true"),r}});He({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(e,t){var{parser:n}=e;return{type:"vcenter",mode:n.mode,body:t[0]}},htmlBuilder(e,t){var n=It(e.body,t),r=t.fontMetrics().axisHeight,a=.5*(n.height-r-(n.depth+r));return At({positionType:"shift",positionData:a,children:[{type:"elem",elem:n}]})},mathmlBuilder(e,t){var n=new Re("mpadded",[Dt(e.body,t)],["vcenter"]);return new Re("mrow",[n])}});He({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(e,t,n){throw new Ie("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(e,t){for(var n=Aw(e),r=[],a=t.havingStyle(t.style.text()),i=0;ie.body.replace(/ /g,e.star?"␣":" "),ba=tR,MR=`[ \r + ]`,zK="\\\\[a-zA-Z@]+",qK="\\\\[^\uD800-\uDFFF]",HK="("+zK+")"+MR+"*",GK=`\\\\( +|[ \r ]+ +?)[ \r ]*`,$b="[̀-ͯ]",VK=new RegExp($b+"+$"),WK="("+MR+"+)|"+(GK+"|")+"([!-\\[\\]-‧‪-퟿豈-￿]"+($b+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+($b+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+HK)+("|"+qK+")");class Iw{constructor(t,n){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=t,this.settings=n,this.tokenRegex=new RegExp(WK,"g"),this.catcodes={"%":14,"~":13}}setCatcode(t,n){this.catcodes[t]=n}lex(){var t=this.input,n=this.tokenRegex.lastIndex;if(n===t.length)return new Qn("EOF",new Fn(this,n,n));var r=this.tokenRegex.exec(t);if(r===null||r.index!==n)throw new Ie("Unexpected character: '"+t[n]+"'",new Qn(t[n],new Fn(this,n,n+1)));var a=r[6]||r[3]||(r[2]?"\\ ":" ");if(this.catcodes[a]===14){var i=t.indexOf(` +`,this.tokenRegex.lastIndex);return i===-1?(this.tokenRegex.lastIndex=t.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=i+1,this.lex()}return new Qn(a,new Fn(this,n,this.tokenRegex.lastIndex))}}class KK{constructor(t,n){t===void 0&&(t={}),n===void 0&&(n={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=n,this.builtins=t,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new Ie("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var t=this.undefStack.pop();for(var n in t)t.hasOwnProperty(n)&&(t[n]==null?delete this.current[n]:this.current[n]=t[n])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(t){return this.current.hasOwnProperty(t)||this.builtins.hasOwnProperty(t)}get(t){return this.current.hasOwnProperty(t)?this.current[t]:this.builtins[t]}set(t,n,r){if(r===void 0&&(r=!1),r){for(var a=0;a0&&(this.undefStack[this.undefStack.length-1][t]=n)}else{var i=this.undefStack[this.undefStack.length-1];i&&!i.hasOwnProperty(t)&&(i[t]=this.current[t])}n==null?delete this.current[t]:this.current[t]=n}}var YK=ER;F("\\noexpand",function(e){var t=e.popToken();return e.isExpandable(t.text)&&(t.noexpand=!0,t.treatAsRelax=!0),{tokens:[t],numArgs:0}});F("\\expandafter",function(e){var t=e.popToken();return e.expandOnce(!0),{tokens:[t],numArgs:0}});F("\\@firstoftwo",function(e){var t=e.consumeArgs(2);return{tokens:t[0],numArgs:0}});F("\\@secondoftwo",function(e){var t=e.consumeArgs(2);return{tokens:t[1],numArgs:0}});F("\\@ifnextchar",function(e){var t=e.consumeArgs(3);e.consumeSpaces();var n=e.future();return t[0].length===1&&t[0][0].text===n.text?{tokens:t[1],numArgs:0}:{tokens:t[2],numArgs:0}});F("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");F("\\TextOrMath",function(e){var t=e.consumeArgs(2);return e.mode==="text"?{tokens:t[0],numArgs:0}:{tokens:t[1],numArgs:0}});var Rw={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};F("\\char",function(e){var t=e.popToken(),n,r=0;if(t.text==="'")n=8,t=e.popToken();else if(t.text==='"')n=16,t=e.popToken();else if(t.text==="`")if(t=e.popToken(),t.text[0]==="\\")r=t.text.charCodeAt(1);else{if(t.text==="EOF")throw new Ie("\\char` missing argument");r=t.text.charCodeAt(0)}else n=10;if(n){if(r=Rw[t.text],r==null||r>=n)throw new Ie("Invalid base-"+n+" digit "+t.text);for(var a;(a=Rw[e.future().text])!=null&&a{var a=e.consumeArg().tokens;if(a.length!==1)throw new Ie("\\newcommand's first argument must be a macro name");var i=a[0].text,s=e.isDefined(i);if(s&&!t)throw new Ie("\\newcommand{"+i+"} attempting to redefine "+(i+"; use \\renewcommand"));if(!s&&!n)throw new Ie("\\renewcommand{"+i+"} when command "+i+" does not yet exist; use \\newcommand");var l=0;if(a=e.consumeArg().tokens,a.length===1&&a[0].text==="["){for(var c="",u=e.expandNextToken();u.text!=="]"&&u.text!=="EOF";)c+=u.text,u=e.expandNextToken();if(!c.match(/^\s*[0-9]+\s*$/))throw new Ie("Invalid number of arguments: "+c);l=parseInt(c),a=e.consumeArg().tokens}return s&&r||e.macros.set(i,{tokens:a,numArgs:l}),""};F("\\newcommand",e=>by(e,!1,!0,!1));F("\\renewcommand",e=>by(e,!0,!1,!1));F("\\providecommand",e=>by(e,!0,!0,!0));F("\\message",e=>{var t=e.consumeArgs(1)[0];return console.log(t.reverse().map(n=>n.text).join("")),""});F("\\errmessage",e=>{var t=e.consumeArgs(1)[0];return console.error(t.reverse().map(n=>n.text).join("")),""});F("\\show",e=>{var t=e.popToken(),n=t.text;return console.log(t,e.macros.get(n),ba[n],$t.math[n],$t.text[n]),""});F("\\bgroup","{");F("\\egroup","}");F("~","\\nobreakspace");F("\\lq","`");F("\\rq","'");F("\\aa","\\r a");F("\\AA","\\r A");F("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`©}");F("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");F("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}");F("ℬ","\\mathscr{B}");F("ℰ","\\mathscr{E}");F("ℱ","\\mathscr{F}");F("ℋ","\\mathscr{H}");F("ℐ","\\mathscr{I}");F("ℒ","\\mathscr{L}");F("ℳ","\\mathscr{M}");F("ℛ","\\mathscr{R}");F("ℭ","\\mathfrak{C}");F("ℌ","\\mathfrak{H}");F("ℨ","\\mathfrak{Z}");F("\\Bbbk","\\Bbb{k}");F("\\llap","\\mathllap{\\textrm{#1}}");F("\\rlap","\\mathrlap{\\textrm{#1}}");F("\\clap","\\mathclap{\\textrm{#1}}");F("\\mathstrut","\\vphantom{(}");F("\\underbar","\\underline{\\text{#1}}");F("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}\\nobreak}{\\char"338}');F("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}");F("\\ne","\\neq");F("≠","\\neq");F("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`∉}}");F("∉","\\notin");F("≘","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`≘}}");F("≙","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`≘}}");F("≚","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`≚}}");F("≛","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`≛}}");F("≝","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`≝}}");F("≞","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`≞}}");F("≟","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`≟}}");F("⟂","\\perp");F("‼","\\mathclose{!\\mkern-0.8mu!}");F("∌","\\notni");F("⌜","\\ulcorner");F("⌝","\\urcorner");F("⌞","\\llcorner");F("⌟","\\lrcorner");F("©","\\copyright");F("®","\\textregistered");F("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');F("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');F("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');F("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');F("\\vdots","{\\varvdots\\rule{0pt}{15pt}}");F("⋮","\\vdots");F("\\varGamma","\\mathit{\\Gamma}");F("\\varDelta","\\mathit{\\Delta}");F("\\varTheta","\\mathit{\\Theta}");F("\\varLambda","\\mathit{\\Lambda}");F("\\varXi","\\mathit{\\Xi}");F("\\varPi","\\mathit{\\Pi}");F("\\varSigma","\\mathit{\\Sigma}");F("\\varUpsilon","\\mathit{\\Upsilon}");F("\\varPhi","\\mathit{\\Phi}");F("\\varPsi","\\mathit{\\Psi}");F("\\varOmega","\\mathit{\\Omega}");F("\\substack","\\begin{subarray}{c}#1\\end{subarray}");F("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");F("\\boxed","\\fbox{$\\displaystyle{#1}$}");F("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");F("\\implies","\\DOTSB\\;\\Longrightarrow\\;");F("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");F("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}");F("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");var _w={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"},XK=new Set(["bin","rel"]);F("\\dots",function(e){var t="\\dotso",n=e.expandAfterFuture().text;return n in _w?t=_w[n]:(n.slice(0,4)==="\\not"||n in $t.math&&XK.has($t.math[n].group))&&(t="\\dotsb"),t});var xy={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};F("\\dotso",function(e){var t=e.future().text;return t in xy?"\\ldots\\,":"\\ldots"});F("\\dotsc",function(e){var t=e.future().text;return t in xy&&t!==","?"\\ldots\\,":"\\ldots"});F("\\cdots",function(e){var t=e.future().text;return t in xy?"\\@cdots\\,":"\\@cdots"});F("\\dotsb","\\cdots");F("\\dotsm","\\cdots");F("\\dotsi","\\!\\cdots");F("\\dotsx","\\ldots\\,");F("\\DOTSI","\\relax");F("\\DOTSB","\\relax");F("\\DOTSX","\\relax");F("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");F("\\,","\\tmspace+{3mu}{.1667em}");F("\\thinspace","\\,");F("\\>","\\mskip{4mu}");F("\\:","\\tmspace+{4mu}{.2222em}");F("\\medspace","\\:");F("\\;","\\tmspace+{5mu}{.2777em}");F("\\thickspace","\\;");F("\\!","\\tmspace-{3mu}{.1667em}");F("\\negthinspace","\\!");F("\\negmedspace","\\tmspace-{4mu}{.2222em}");F("\\negthickspace","\\tmspace-{5mu}{.277em}");F("\\enspace","\\kern.5em ");F("\\enskip","\\hskip.5em\\relax");F("\\quad","\\hskip1em\\relax");F("\\qquad","\\hskip2em\\relax");F("\\tag","\\@ifstar\\tag@literal\\tag@paren");F("\\tag@paren","\\tag@literal{({#1})}");F("\\tag@literal",e=>{if(e.macros.get("\\df@tag"))throw new Ie("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});F("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");F("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");F("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");F("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");F("\\newline","\\\\\\relax");F("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");var LR=De(Lr["Main-Regular"][84][1]-.7*Lr["Main-Regular"][65][1]);F("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+LR+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");F("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+LR+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");F("\\hspace","\\@ifstar\\@hspacer\\@hspace");F("\\@hspace","\\hskip #1\\relax");F("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");F("\\ordinarycolon",":");F("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");F("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');F("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');F("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');F("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');F("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');F("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');F("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');F("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');F("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');F("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');F("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');F("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');F("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');F("∷","\\dblcolon");F("∹","\\eqcolon");F("≔","\\coloneqq");F("≕","\\eqqcolon");F("⩴","\\Coloneqq");F("\\ratio","\\vcentcolon");F("\\coloncolon","\\dblcolon");F("\\colonequals","\\coloneqq");F("\\coloncolonequals","\\Coloneqq");F("\\equalscolon","\\eqqcolon");F("\\equalscoloncolon","\\Eqqcolon");F("\\colonminus","\\coloneq");F("\\coloncolonminus","\\Coloneq");F("\\minuscolon","\\eqcolon");F("\\minuscoloncolon","\\Eqcolon");F("\\coloncolonapprox","\\Colonapprox");F("\\coloncolonsim","\\Colonsim");F("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");F("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");F("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");F("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");F("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`∌}}");F("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");F("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");F("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");F("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");F("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");F("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");F("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");F("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");F("\\gvertneqq","\\html@mathml{\\@gvertneqq}{≩}");F("\\lvertneqq","\\html@mathml{\\@lvertneqq}{≨}");F("\\ngeqq","\\html@mathml{\\@ngeqq}{≱}");F("\\ngeqslant","\\html@mathml{\\@ngeqslant}{≱}");F("\\nleqq","\\html@mathml{\\@nleqq}{≰}");F("\\nleqslant","\\html@mathml{\\@nleqslant}{≰}");F("\\nshortmid","\\html@mathml{\\@nshortmid}{∤}");F("\\nshortparallel","\\html@mathml{\\@nshortparallel}{∦}");F("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{⊈}");F("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{⊉}");F("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{⊊}");F("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{⫋}");F("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{⊋}");F("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{⫌}");F("\\imath","\\html@mathml{\\@imath}{ı}");F("\\jmath","\\html@mathml{\\@jmath}{ȷ}");F("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`⟦}}");F("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`⟧}}");F("⟦","\\llbracket");F("⟧","\\rrbracket");F("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`⦃}}");F("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`⦄}}");F("⦃","\\lBrace");F("⦄","\\rBrace");F("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`⦵}}");F("⦵","\\minuso");F("\\darr","\\downarrow");F("\\dArr","\\Downarrow");F("\\Darr","\\Downarrow");F("\\lang","\\langle");F("\\rang","\\rangle");F("\\uarr","\\uparrow");F("\\uArr","\\Uparrow");F("\\Uarr","\\Uparrow");F("\\N","\\mathbb{N}");F("\\R","\\mathbb{R}");F("\\Z","\\mathbb{Z}");F("\\alef","\\aleph");F("\\alefsym","\\aleph");F("\\Alpha","\\mathrm{A}");F("\\Beta","\\mathrm{B}");F("\\bull","\\bullet");F("\\Chi","\\mathrm{X}");F("\\clubs","\\clubsuit");F("\\cnums","\\mathbb{C}");F("\\Complex","\\mathbb{C}");F("\\Dagger","\\ddagger");F("\\diamonds","\\diamondsuit");F("\\empty","\\emptyset");F("\\Epsilon","\\mathrm{E}");F("\\Eta","\\mathrm{H}");F("\\exist","\\exists");F("\\harr","\\leftrightarrow");F("\\hArr","\\Leftrightarrow");F("\\Harr","\\Leftrightarrow");F("\\hearts","\\heartsuit");F("\\image","\\Im");F("\\infin","\\infty");F("\\Iota","\\mathrm{I}");F("\\isin","\\in");F("\\Kappa","\\mathrm{K}");F("\\larr","\\leftarrow");F("\\lArr","\\Leftarrow");F("\\Larr","\\Leftarrow");F("\\lrarr","\\leftrightarrow");F("\\lrArr","\\Leftrightarrow");F("\\Lrarr","\\Leftrightarrow");F("\\Mu","\\mathrm{M}");F("\\natnums","\\mathbb{N}");F("\\Nu","\\mathrm{N}");F("\\Omicron","\\mathrm{O}");F("\\plusmn","\\pm");F("\\rarr","\\rightarrow");F("\\rArr","\\Rightarrow");F("\\Rarr","\\Rightarrow");F("\\real","\\Re");F("\\reals","\\mathbb{R}");F("\\Reals","\\mathbb{R}");F("\\Rho","\\mathrm{P}");F("\\sdot","\\cdot");F("\\sect","\\S");F("\\spades","\\spadesuit");F("\\sub","\\subset");F("\\sube","\\subseteq");F("\\supe","\\supseteq");F("\\Tau","\\mathrm{T}");F("\\thetasym","\\vartheta");F("\\weierp","\\wp");F("\\Zeta","\\mathrm{Z}");F("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");F("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");F("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");F("\\bra","\\mathinner{\\langle{#1}|}");F("\\ket","\\mathinner{|{#1}\\rangle}");F("\\braket","\\mathinner{\\langle{#1}\\rangle}");F("\\Bra","\\left\\langle#1\\right|");F("\\Ket","\\left|#1\\right\\rangle");var PR=e=>t=>{var n=t.consumeArg().tokens,r=t.consumeArg().tokens,a=t.consumeArg().tokens,i=t.consumeArg().tokens,s=t.macros.get("|"),l=t.macros.get("\\|");t.macros.beginGroup();var c=p=>m=>{e&&(m.macros.set("|",s),a.length&&m.macros.set("\\|",l));var f=p;if(!p&&a.length){var g=m.future();g.text==="|"&&(m.popToken(),f=!0)}return{tokens:f?a:r,numArgs:0}};t.macros.set("|",c(!1)),a.length&&t.macros.set("\\|",c(!0));var u=t.consumeArg().tokens,d=t.expandTokens([...i,...u,...n]);return t.macros.endGroup(),{tokens:d.reverse(),numArgs:0}};F("\\bra@ket",PR(!1));F("\\bra@set",PR(!0));F("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");F("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");F("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");F("\\angln","{\\angl n}");F("\\blue","\\textcolor{##6495ed}{#1}");F("\\orange","\\textcolor{##ffa500}{#1}");F("\\pink","\\textcolor{##ff00af}{#1}");F("\\red","\\textcolor{##df0030}{#1}");F("\\green","\\textcolor{##28ae7b}{#1}");F("\\gray","\\textcolor{gray}{#1}");F("\\purple","\\textcolor{##9d38bd}{#1}");F("\\blueA","\\textcolor{##ccfaff}{#1}");F("\\blueB","\\textcolor{##80f6ff}{#1}");F("\\blueC","\\textcolor{##63d9ea}{#1}");F("\\blueD","\\textcolor{##11accd}{#1}");F("\\blueE","\\textcolor{##0c7f99}{#1}");F("\\tealA","\\textcolor{##94fff5}{#1}");F("\\tealB","\\textcolor{##26edd5}{#1}");F("\\tealC","\\textcolor{##01d1c1}{#1}");F("\\tealD","\\textcolor{##01a995}{#1}");F("\\tealE","\\textcolor{##208170}{#1}");F("\\greenA","\\textcolor{##b6ffb0}{#1}");F("\\greenB","\\textcolor{##8af281}{#1}");F("\\greenC","\\textcolor{##74cf70}{#1}");F("\\greenD","\\textcolor{##1fab54}{#1}");F("\\greenE","\\textcolor{##0d923f}{#1}");F("\\goldA","\\textcolor{##ffd0a9}{#1}");F("\\goldB","\\textcolor{##ffbb71}{#1}");F("\\goldC","\\textcolor{##ff9c39}{#1}");F("\\goldD","\\textcolor{##e07d10}{#1}");F("\\goldE","\\textcolor{##a75a05}{#1}");F("\\redA","\\textcolor{##fca9a9}{#1}");F("\\redB","\\textcolor{##ff8482}{#1}");F("\\redC","\\textcolor{##f9685d}{#1}");F("\\redD","\\textcolor{##e84d39}{#1}");F("\\redE","\\textcolor{##bc2612}{#1}");F("\\maroonA","\\textcolor{##ffbde0}{#1}");F("\\maroonB","\\textcolor{##ff92c6}{#1}");F("\\maroonC","\\textcolor{##ed5fa6}{#1}");F("\\maroonD","\\textcolor{##ca337c}{#1}");F("\\maroonE","\\textcolor{##9e034e}{#1}");F("\\purpleA","\\textcolor{##ddd7ff}{#1}");F("\\purpleB","\\textcolor{##c6b9fc}{#1}");F("\\purpleC","\\textcolor{##aa87ff}{#1}");F("\\purpleD","\\textcolor{##7854ab}{#1}");F("\\purpleE","\\textcolor{##543b78}{#1}");F("\\mintA","\\textcolor{##f5f9e8}{#1}");F("\\mintB","\\textcolor{##edf2df}{#1}");F("\\mintC","\\textcolor{##e0e5cc}{#1}");F("\\grayA","\\textcolor{##f6f7f7}{#1}");F("\\grayB","\\textcolor{##f0f1f2}{#1}");F("\\grayC","\\textcolor{##e3e5e6}{#1}");F("\\grayD","\\textcolor{##d6d8da}{#1}");F("\\grayE","\\textcolor{##babec2}{#1}");F("\\grayF","\\textcolor{##888d93}{#1}");F("\\grayG","\\textcolor{##626569}{#1}");F("\\grayH","\\textcolor{##3b3e40}{#1}");F("\\grayI","\\textcolor{##21242c}{#1}");F("\\kaBlue","\\textcolor{##314453}{#1}");F("\\kaGreen","\\textcolor{##71B307}{#1}");var FR={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};class ZK{constructor(t,n,r){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=n,this.expansionCount=0,this.feed(t),this.macros=new KK(YK,n.macros),this.mode=r,this.stack=[]}feed(t){this.lexer=new Iw(t,this.settings)}switchMode(t){this.mode=t}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(t){this.stack.push(t)}pushTokens(t){this.stack.push(...t)}scanArgument(t){var n,r,a;if(t){if(this.consumeSpaces(),this.future().text!=="[")return null;n=this.popToken(),{tokens:a,end:r}=this.consumeArg(["]"])}else({tokens:a,start:n,end:r}=this.consumeArg());return this.pushToken(new Qn("EOF",r.loc)),this.pushTokens(a),new Qn("",Fn.range(n,r))}consumeSpaces(){for(;;){var t=this.future();if(t.text===" ")this.stack.pop();else break}}consumeArg(t){var n=[],r=t&&t.length>0;r||this.consumeSpaces();var a=this.future(),i,s=0,l=0;do{if(i=this.popToken(),n.push(i),i.text==="{")++s;else if(i.text==="}"){if(--s,s===-1)throw new Ie("Extra }",i)}else if(i.text==="EOF")throw new Ie("Unexpected end of input in a macro argument, expected '"+(t&&r?t[l]:"}")+"'",i);if(t&&r)if((s===0||s===1&&t[l]==="{")&&i.text===t[l]){if(++l,l===t.length){n.splice(-l,l);break}}else l=0}while(s!==0||r);return a.text==="{"&&n[n.length-1].text==="}"&&(n.pop(),n.shift()),n.reverse(),{tokens:n,start:a,end:i}}consumeArgs(t,n){if(n){if(n.length!==t+1)throw new Ie("The length of delimiters doesn't match the number of args!");for(var r=n[0],a=0;athis.settings.maxExpand)throw new Ie("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(t){var n=this.popToken(),r=n.text,a=n.noexpand?null:this._getExpansion(r);if(a==null||t&&a.unexpandable){if(t&&a==null&&r[0]==="\\"&&!this.isDefined(r))throw new Ie("Undefined control sequence: "+r);return this.pushToken(n),!1}this.countExpansion(1);var i=a.tokens,s=this.consumeArgs(a.numArgs,a.delimiters);if(a.numArgs){i=i.slice();for(var l=i.length-1;l>=0;--l){var c=i[l];if(c.text==="#"){if(l===0)throw new Ie("Incomplete placeholder at end of macro body",c);if(c=i[--l],c.text==="#")i.splice(l+1,1);else if(/^[1-9]$/.test(c.text))i.splice(l,2,...s[+c.text-1]);else throw new Ie("Not a valid argument number",c)}}}return this.pushTokens(i),i.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var t=this.stack.pop();return t.treatAsRelax&&(t.text="\\relax"),t}}expandMacro(t){return this.macros.has(t)?this.expandTokens([new Qn(t)]):void 0}expandTokens(t){var n=[],r=this.stack.length;for(this.pushTokens(t);this.stack.length>r;)if(this.expandOnce(!0)===!1){var a=this.stack.pop();a.treatAsRelax&&(a.noexpand=!1,a.treatAsRelax=!1),n.push(a)}return this.countExpansion(n.length),n}expandMacroAsText(t){var n=this.expandMacro(t);return n&&n.map(r=>r.text).join("")}_getExpansion(t){var n=this.macros.get(t);if(n==null)return n;if(t.length===1){var r=this.lexer.catcodes[t];if(r!=null&&r!==13)return}var a=typeof n=="function"?n(this):n;if(typeof a=="string"){var i=0;if(a.includes("#"))for(var s=a.replace(/##/g,"");s.includes("#"+(i+1));)++i;for(var l=new Iw(a,this.settings),c=[],u=l.lex();u.text!=="EOF";)c.push(u),u=l.lex();c.reverse();var d={tokens:c,numArgs:i};return d}return a}isDefined(t){return this.macros.has(t)||ba.hasOwnProperty(t)||$t.math.hasOwnProperty(t)||$t.text.hasOwnProperty(t)||FR.hasOwnProperty(t)}isExpandable(t){var n=this.macros.get(t);return n!=null?typeof n=="string"||typeof n=="function"||!n.unexpandable:ba.hasOwnProperty(t)&&!ba[t].primitive}}var jw=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,bl=Object.freeze({"₊":"+","₋":"-","₌":"=","₍":"(","₎":")","₀":"0","₁":"1","₂":"2","₃":"3","₄":"4","₅":"5","₆":"6","₇":"7","₈":"8","₉":"9","ₐ":"a","ₑ":"e","ₕ":"h","ᵢ":"i","ⱼ":"j","ₖ":"k","ₗ":"l","ₘ":"m","ₙ":"n","ₒ":"o","ₚ":"p","ᵣ":"r","ₛ":"s","ₜ":"t","ᵤ":"u","ᵥ":"v","ₓ":"x","ᵦ":"β","ᵧ":"γ","ᵨ":"ρ","ᵩ":"ϕ","ᵪ":"χ","⁺":"+","⁻":"-","⁼":"=","⁽":"(","⁾":")","⁰":"0","¹":"1","²":"2","³":"3","⁴":"4","⁵":"5","⁶":"6","⁷":"7","⁸":"8","⁹":"9","ᴬ":"A","ᴮ":"B","ᴰ":"D","ᴱ":"E","ᴳ":"G","ᴴ":"H","ᴵ":"I","ᴶ":"J","ᴷ":"K","ᴸ":"L","ᴹ":"M","ᴺ":"N","ᴼ":"O","ᴾ":"P","ᴿ":"R","ᵀ":"T","ᵁ":"U","ⱽ":"V","ᵂ":"W","ᵃ":"a","ᵇ":"b","ᶜ":"c","ᵈ":"d","ᵉ":"e","ᶠ":"f","ᵍ":"g",ʰ:"h","ⁱ":"i",ʲ:"j","ᵏ":"k",ˡ:"l","ᵐ":"m",ⁿ:"n","ᵒ":"o","ᵖ":"p",ʳ:"r",ˢ:"s","ᵗ":"t","ᵘ":"u","ᵛ":"v",ʷ:"w",ˣ:"x",ʸ:"y","ᶻ":"z","ᵝ":"β","ᵞ":"γ","ᵟ":"δ","ᵠ":"ϕ","ᵡ":"χ","ᶿ":"θ"}),Td={"́":{text:"\\'",math:"\\acute"},"̀":{text:"\\`",math:"\\grave"},"̈":{text:'\\"',math:"\\ddot"},"̃":{text:"\\~",math:"\\tilde"},"̄":{text:"\\=",math:"\\bar"},"̆":{text:"\\u",math:"\\breve"},"̌":{text:"\\v",math:"\\check"},"̂":{text:"\\^",math:"\\hat"},"̇":{text:"\\.",math:"\\dot"},"̊":{text:"\\r",math:"\\mathring"},"̋":{text:"\\H"},"̧":{text:"\\c"}},Ow={á:"á",à:"à",ä:"ä",ǟ:"ǟ",ã:"ã",ā:"ā",ă:"ă",ắ:"ắ",ằ:"ằ",ẵ:"ẵ",ǎ:"ǎ",â:"â",ấ:"ấ",ầ:"ầ",ẫ:"ẫ",ȧ:"ȧ",ǡ:"ǡ",å:"å",ǻ:"ǻ",ḃ:"ḃ",ć:"ć",ḉ:"ḉ",č:"č",ĉ:"ĉ",ċ:"ċ",ç:"ç",ď:"ď",ḋ:"ḋ",ḑ:"ḑ",é:"é",è:"è",ë:"ë",ẽ:"ẽ",ē:"ē",ḗ:"ḗ",ḕ:"ḕ",ĕ:"ĕ",ḝ:"ḝ",ě:"ě",ê:"ê",ế:"ế",ề:"ề",ễ:"ễ",ė:"ė",ȩ:"ȩ",ḟ:"ḟ",ǵ:"ǵ",ḡ:"ḡ",ğ:"ğ",ǧ:"ǧ",ĝ:"ĝ",ġ:"ġ",ģ:"ģ",ḧ:"ḧ",ȟ:"ȟ",ĥ:"ĥ",ḣ:"ḣ",ḩ:"ḩ",í:"í",ì:"ì",ï:"ï",ḯ:"ḯ",ĩ:"ĩ",ī:"ī",ĭ:"ĭ",ǐ:"ǐ",î:"î",ǰ:"ǰ",ĵ:"ĵ",ḱ:"ḱ",ǩ:"ǩ",ķ:"ķ",ĺ:"ĺ",ľ:"ľ",ļ:"ļ",ḿ:"ḿ",ṁ:"ṁ",ń:"ń",ǹ:"ǹ",ñ:"ñ",ň:"ň",ṅ:"ṅ",ņ:"ņ",ó:"ó",ò:"ò",ö:"ö",ȫ:"ȫ",õ:"õ",ṍ:"ṍ",ṏ:"ṏ",ȭ:"ȭ",ō:"ō",ṓ:"ṓ",ṑ:"ṑ",ŏ:"ŏ",ǒ:"ǒ",ô:"ô",ố:"ố",ồ:"ồ",ỗ:"ỗ",ȯ:"ȯ",ȱ:"ȱ",ő:"ő",ṕ:"ṕ",ṗ:"ṗ",ŕ:"ŕ",ř:"ř",ṙ:"ṙ",ŗ:"ŗ",ś:"ś",ṥ:"ṥ",š:"š",ṧ:"ṧ",ŝ:"ŝ",ṡ:"ṡ",ş:"ş",ẗ:"ẗ",ť:"ť",ṫ:"ṫ",ţ:"ţ",ú:"ú",ù:"ù",ü:"ü",ǘ:"ǘ",ǜ:"ǜ",ǖ:"ǖ",ǚ:"ǚ",ũ:"ũ",ṹ:"ṹ",ū:"ū",ṻ:"ṻ",ŭ:"ŭ",ǔ:"ǔ",û:"û",ů:"ů",ű:"ű",ṽ:"ṽ",ẃ:"ẃ",ẁ:"ẁ",ẅ:"ẅ",ŵ:"ŵ",ẇ:"ẇ",ẘ:"ẘ",ẍ:"ẍ",ẋ:"ẋ",ý:"ý",ỳ:"ỳ",ÿ:"ÿ",ỹ:"ỹ",ȳ:"ȳ",ŷ:"ŷ",ẏ:"ẏ",ẙ:"ẙ",ź:"ź",ž:"ž",ẑ:"ẑ",ż:"ż",Á:"Á",À:"À",Ä:"Ä",Ǟ:"Ǟ",Ã:"Ã",Ā:"Ā",Ă:"Ă",Ắ:"Ắ",Ằ:"Ằ",Ẵ:"Ẵ",Ǎ:"Ǎ",Â:"Â",Ấ:"Ấ",Ầ:"Ầ",Ẫ:"Ẫ",Ȧ:"Ȧ",Ǡ:"Ǡ",Å:"Å",Ǻ:"Ǻ",Ḃ:"Ḃ",Ć:"Ć",Ḉ:"Ḉ",Č:"Č",Ĉ:"Ĉ",Ċ:"Ċ",Ç:"Ç",Ď:"Ď",Ḋ:"Ḋ",Ḑ:"Ḑ",É:"É",È:"È",Ë:"Ë",Ẽ:"Ẽ",Ē:"Ē",Ḗ:"Ḗ",Ḕ:"Ḕ",Ĕ:"Ĕ",Ḝ:"Ḝ",Ě:"Ě",Ê:"Ê",Ế:"Ế",Ề:"Ề",Ễ:"Ễ",Ė:"Ė",Ȩ:"Ȩ",Ḟ:"Ḟ",Ǵ:"Ǵ",Ḡ:"Ḡ",Ğ:"Ğ",Ǧ:"Ǧ",Ĝ:"Ĝ",Ġ:"Ġ",Ģ:"Ģ",Ḧ:"Ḧ",Ȟ:"Ȟ",Ĥ:"Ĥ",Ḣ:"Ḣ",Ḩ:"Ḩ",Í:"Í",Ì:"Ì",Ï:"Ï",Ḯ:"Ḯ",Ĩ:"Ĩ",Ī:"Ī",Ĭ:"Ĭ",Ǐ:"Ǐ",Î:"Î",İ:"İ",Ĵ:"Ĵ",Ḱ:"Ḱ",Ǩ:"Ǩ",Ķ:"Ķ",Ĺ:"Ĺ",Ľ:"Ľ",Ļ:"Ļ",Ḿ:"Ḿ",Ṁ:"Ṁ",Ń:"Ń",Ǹ:"Ǹ",Ñ:"Ñ",Ň:"Ň",Ṅ:"Ṅ",Ņ:"Ņ",Ó:"Ó",Ò:"Ò",Ö:"Ö",Ȫ:"Ȫ",Õ:"Õ",Ṍ:"Ṍ",Ṏ:"Ṏ",Ȭ:"Ȭ",Ō:"Ō",Ṓ:"Ṓ",Ṑ:"Ṑ",Ŏ:"Ŏ",Ǒ:"Ǒ",Ô:"Ô",Ố:"Ố",Ồ:"Ồ",Ỗ:"Ỗ",Ȯ:"Ȯ",Ȱ:"Ȱ",Ő:"Ő",Ṕ:"Ṕ",Ṗ:"Ṗ",Ŕ:"Ŕ",Ř:"Ř",Ṙ:"Ṙ",Ŗ:"Ŗ",Ś:"Ś",Ṥ:"Ṥ",Š:"Š",Ṧ:"Ṧ",Ŝ:"Ŝ",Ṡ:"Ṡ",Ş:"Ş",Ť:"Ť",Ṫ:"Ṫ",Ţ:"Ţ",Ú:"Ú",Ù:"Ù",Ü:"Ü",Ǘ:"Ǘ",Ǜ:"Ǜ",Ǖ:"Ǖ",Ǚ:"Ǚ",Ũ:"Ũ",Ṹ:"Ṹ",Ū:"Ū",Ṻ:"Ṻ",Ŭ:"Ŭ",Ǔ:"Ǔ",Û:"Û",Ů:"Ů",Ű:"Ű",Ṽ:"Ṽ",Ẃ:"Ẃ",Ẁ:"Ẁ",Ẅ:"Ẅ",Ŵ:"Ŵ",Ẇ:"Ẇ",Ẍ:"Ẍ",Ẋ:"Ẋ",Ý:"Ý",Ỳ:"Ỳ",Ÿ:"Ÿ",Ỹ:"Ỹ",Ȳ:"Ȳ",Ŷ:"Ŷ",Ẏ:"Ẏ",Ź:"Ź",Ž:"Ž",Ẑ:"Ẑ",Ż:"Ż",ά:"ά",ὰ:"ὰ",ᾱ:"ᾱ",ᾰ:"ᾰ",έ:"έ",ὲ:"ὲ",ή:"ή",ὴ:"ὴ",ί:"ί",ὶ:"ὶ",ϊ:"ϊ",ΐ:"ΐ",ῒ:"ῒ",ῑ:"ῑ",ῐ:"ῐ",ό:"ό",ὸ:"ὸ",ύ:"ύ",ὺ:"ὺ",ϋ:"ϋ",ΰ:"ΰ",ῢ:"ῢ",ῡ:"ῡ",ῠ:"ῠ",ώ:"ώ",ὼ:"ὼ",Ύ:"Ύ",Ὺ:"Ὺ",Ϋ:"Ϋ",Ῡ:"Ῡ",Ῠ:"Ῠ",Ώ:"Ώ",Ὼ:"Ὼ"};class ou{constructor(t,n){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new ZK(t,n,this.mode),this.settings=n,this.leftrightDepth=0,this.nextToken=null}expect(t,n){if(n===void 0&&(n=!0),this.fetch().text!==t)throw new Ie("Expected '"+t+"', got '"+this.fetch().text+"'",this.fetch());n&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(t){this.mode=t,this.gullet.switchMode(t)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var t=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),t}finally{this.gullet.endGroups()}}subparse(t){var n=this.nextToken;this.consume(),this.gullet.pushToken(new Qn("}")),this.gullet.pushTokens(t);var r=this.parseExpression(!1);return this.expect("}"),this.nextToken=n,r}parseExpression(t,n){for(var r=[];;){this.mode==="math"&&this.consumeSpaces();var a=this.fetch();if(ou.endOfExpression.has(a.text)||n&&a.text===n||t&&ba[a.text]&&ba[a.text].infix)break;var i=this.parseAtom(n);if(i){if(i.type==="internal")continue}else break;r.push(i)}return this.mode==="text"&&this.formLigatures(r),this.handleInfixNodes(r)}handleInfixNodes(t){for(var n=-1,r,a=0;a=128)this.settings.strict&&(GI(n.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+n[0]+'" used in math mode',t):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+n[0]+'"'+(" ("+n.charCodeAt(0)+")"),t)),s={type:"textord",mode:"text",loc:Fn.range(t),text:n};else return null;if(this.consume(),i)for(var d=0;du&&(u=d):d&&(u!==void 0&&u>-1&&c.push(` +`.repeat(u)||" "),u=-1,c.push(d))}return c.join("")}function VR(e,t,n){return e.type==="element"?TY(e,t,n):e.type==="text"?n.whitespace==="normal"?WR(e,n):AY(e):[]}function TY(e,t,n){const r=KR(e,n),a=e.children||[];let i=-1,s=[];if(CY(e))return s;let l,c;for(zb(e)||zw(e)&&Fw(t,e,zw)?c=` +`:EY(e)?(l=2,c=2):GR(e)&&(l=1,c=1);++ie.length)&&(t=e.length);for(var n=0,r=Array(t);n=4)return[e[0],e[1],e[2],e[3],"".concat(e[0],".").concat(e[1]),"".concat(e[0],".").concat(e[2]),"".concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[0]),"".concat(e[1],".").concat(e[2]),"".concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[1]),"".concat(e[2],".").concat(e[3]),"".concat(e[3],".").concat(e[0]),"".concat(e[3],".").concat(e[1]),"".concat(e[3],".").concat(e[2]),"".concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[1],".").concat(e[3]),"".concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[2],".").concat(e[3]),"".concat(e[0],".").concat(e[3],".").concat(e[1]),"".concat(e[0],".").concat(e[3],".").concat(e[2]),"".concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[1],".").concat(e[2],".").concat(e[3]),"".concat(e[1],".").concat(e[3],".").concat(e[0]),"".concat(e[1],".").concat(e[3],".").concat(e[2]),"".concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[0],".").concat(e[3]),"".concat(e[2],".").concat(e[1],".").concat(e[0]),"".concat(e[2],".").concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[3],".").concat(e[0]),"".concat(e[2],".").concat(e[3],".").concat(e[1]),"".concat(e[3],".").concat(e[0],".").concat(e[1]),"".concat(e[3],".").concat(e[0],".").concat(e[2]),"".concat(e[3],".").concat(e[1],".").concat(e[0]),"".concat(e[3],".").concat(e[1],".").concat(e[2]),"".concat(e[3],".").concat(e[2],".").concat(e[0]),"".concat(e[3],".").concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[1],".").concat(e[2],".").concat(e[3]),"".concat(e[0],".").concat(e[1],".").concat(e[3],".").concat(e[2]),"".concat(e[0],".").concat(e[2],".").concat(e[1],".").concat(e[3]),"".concat(e[0],".").concat(e[2],".").concat(e[3],".").concat(e[1]),"".concat(e[0],".").concat(e[3],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[3],".").concat(e[2],".").concat(e[1]),"".concat(e[1],".").concat(e[0],".").concat(e[2],".").concat(e[3]),"".concat(e[1],".").concat(e[0],".").concat(e[3],".").concat(e[2]),"".concat(e[1],".").concat(e[2],".").concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[2],".").concat(e[3],".").concat(e[0]),"".concat(e[1],".").concat(e[3],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[3],".").concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[0],".").concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[0],".").concat(e[3],".").concat(e[1]),"".concat(e[2],".").concat(e[1],".").concat(e[0],".").concat(e[3]),"".concat(e[2],".").concat(e[1],".").concat(e[3],".").concat(e[0]),"".concat(e[2],".").concat(e[3],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[3],".").concat(e[1],".").concat(e[0]),"".concat(e[3],".").concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[3],".").concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[3],".").concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[3],".").concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[3],".").concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[3],".").concat(e[2],".").concat(e[1],".").concat(e[0])]}var Id={};function qY(e){if(e.length===0||e.length===1)return e;var t=e.join(".");return Id[t]||(Id[t]=zY(e)),Id[t]}function HY(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,r=e.filter(function(i){return i!=="token"}),a=qY(r);return a.reduce(function(i,s){return Li(Li({},i),n[s])},t)}function Hw(e){return e.join(" ")}function GY(e,t){var n=0;return function(r){return n+=1,r.map(function(a,i){return ZR({node:a,stylesheet:e,useInlineStyles:t,key:"code-segment-".concat(n,"-").concat(i)})})}}function ZR(e){var t=e.node,n=e.stylesheet,r=e.style,a=r===void 0?{}:r,i=e.useInlineStyles,s=e.key,l=t.properties,c=t.type,u=t.tagName,d=t.value;if(c==="text")return d;if(u){var p=GY(n,i),m;if(!i)m=Li(Li({},l),{},{className:Hw(l.className)});else{var f=Object.keys(n).reduce(function(k,y){return y.split(".").forEach(function(v){k.includes(v)||k.push(v)}),k},[]),g=l.className&&l.className.includes("token")?["token"]:[],b=l.className&&g.concat(l.className.filter(function(k){return!f.includes(k)}));m=Li(Li({},l),{},{className:Hw(b)||void 0,style:HY(l.className,Object.assign({},l.style,a),n)})}var x=p(t.children);return $n.createElement(u,A7({key:s},m),x)}}const VY=(function(e,t){var n=e.listLanguages();return n.indexOf(t)!==-1});var WY=["language","children","style","customStyle","codeTagProps","useInlineStyles","showLineNumbers","showInlineLineNumbers","startingLineNumber","lineNumberContainerStyle","lineNumberStyle","wrapLines","wrapLongLines","lineProps","renderer","PreTag","CodeTag","code","astGenerator"];function Gw(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function xa(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:[],n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],r=0;r2&&arguments[2]!==void 0?arguments[2]:[];return Pl({children:N,lineNumber:w,lineNumberStyle:l,largestLineNumber:s,showInlineLineNumbers:a,lineProps:n,className:T,showLineNumbers:r,wrapLongLines:c,wrapLines:t})}function b(N,w){if(r&&w&&a){var T=QR(l,w,s);N.unshift(JR(w,T))}return N}function x(N,w){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];return t||T.length>0?g(N,w,T):b(N,w)}for(var k=function(){var w=d[f],T=w.children[0].value,j=YY(T);if(j){var _=T.split(` +`);_.forEach(function(C,O){var I=r&&p.length+i,z={type:"text",value:"".concat(C,` +`)};if(O===0){var M=d.slice(m+1,f).concat(Pl({children:[z],className:w.properties.className})),P=x(M,I);p.push(P)}else if(O===_.length-1){var B=d[f+1]&&d[f+1].children&&d[f+1].children[0],$={type:"text",value:"".concat(C)};if(B){var U=Pl({children:[$],className:w.properties.className});d.splice(f+1,0,U)}else{var q=[$],A=x(q,I,w.properties.className);p.push(A)}}else{var K=[z],V=x(K,I,w.properties.className);p.push(V)}}),m=f}f++};f4&&g.slice(0,4)===r&&a.test(f)&&(f.charAt(4)==="-"?b=c(f):f=u(f),x=t),new x(b,f))}function c(m){var f=m.slice(5).replace(i,p);return r+f.charAt(0).toUpperCase()+f.slice(1)}function u(m){var f=m.slice(4);return i.test(f)?m:(f=f.replace(s,d),f.charAt(0)!=="-"&&(f="-"+f),r+f)}function d(m){return"-"+m.toLowerCase()}function p(m){return m.charAt(1).toUpperCase()}return Gd}var Vd,cS;function fX(){if(cS)return Vd;cS=1,Vd=t;var e=/[#.]/g;function t(n,r){for(var a=n||"",i=r||"div",s={},l=0,c,u,d;l=48&&n<=57}return Xd}var Zd,gS;function vJ(){if(gS)return Zd;gS=1,Zd=e;function e(t){var n=typeof t=="string"?t.charCodeAt(0):t;return n>=97&&n<=102||n>=65&&n<=70||n>=48&&n<=57}return Zd}var Jd,bS;function kJ(){if(bS)return Jd;bS=1,Jd=e;function e(t){var n=typeof t=="string"?t.charCodeAt(0):t;return n>=97&&n<=122||n>=65&&n<=90}return Jd}var Qd,xS;function wJ(){if(xS)return Qd;xS=1;var e=kJ(),t=s6();Qd=n;function n(r){return e(r)||t(r)}return Qd}var ep,yS;function SJ(){if(yS)return ep;yS=1;var e,t=59;ep=n;function n(r){var a="&"+r+";",i;return e=e||document.createElement("i"),e.innerHTML=a,i=e.textContent,i.charCodeAt(i.length-1)===t&&r!=="semi"||i===a?!1:i}return ep}var tp,vS;function EJ(){if(vS)return tp;vS=1;var e=xJ,t=yJ,n=s6(),r=vJ(),a=wJ(),i=SJ();tp=q;var s={}.hasOwnProperty,l=String.fromCharCode,c=Function.prototype,u={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},d=9,p=10,m=12,f=32,g=38,b=59,x=60,k=61,y=35,v=88,E=120,N=65533,w="named",T="hexadecimal",j="decimal",_={};_[T]=16,_[j]=10;var C={};C[w]=a,C[j]=n,C[T]=r;var O=1,I=2,z=3,M=4,P=5,B=6,$=7,U={};U[O]="Named character references must be terminated by a semicolon",U[I]="Numeric character references must be terminated by a semicolon",U[z]="Named character references cannot be empty",U[M]="Numeric character references cannot be empty",U[P]="Named character references must be known",U[B]="Numeric character references cannot be disallowed",U[$]="Numeric character references cannot be outside the permissible Unicode range";function q(L,le){var re={},ne,de;le||(le={});for(de in u)ne=le[de],re[de]=ne??u[de];return(re.position.indent||re.position.start)&&(re.indent=re.position.indent||[],re.position=re.position.start),A(L,re)}function A(L,le){var re=le.additional,ne=le.nonTerminated,de=le.text,Se=le.reference,he=le.warning,tt=le.textContext,Me=le.referenceContext,Fe=le.warningContext,ge=le.position,me=le.indent||[],xe=L.length,ce=0,Ne=-1,Te=ge.column||1,Ge=ge.line||1,ee="",X=[],ae,te,J,H,G,Z,ue,be,Ae,ze,Le,ke,We,Xe,st,se,$e,Qe,ot;for(typeof re=="string"&&(re=re.charCodeAt(0)),se=ie(),be=he?et:c,ce--,xe++;++ce65535&&(Z-=65536,ze+=l(Z>>>10|55296),Z=56320|Z&1023),Z=ze+l(Z))):Xe!==w&&be(M,Qe)),Z?(at(),se=ie(),ce=ot-1,Te+=ot-We+1,X.push(Z),$e=ie(),$e.offset++,Se&&Se.call(Me,Z,{start:se,end:$e},L.slice(We-1,ot)),se=$e):(H=L.slice(We-1,ot),ee+=H,Te+=H.length,ce=ot-1)}else G===10&&(Ge++,Ne++,Te=0),G===G?(ee+=l(G),Te++):at();return X.join("");function ie(){return{line:Ge,column:Te,offset:ce+(ge.offset||0)}}function et(Ct,zt){var tn=ie();tn.column+=zt,tn.offset+=zt,he.call(Fe,U[Ct],tn,Ct)}function at(){ee&&(X.push(ee),de&&de.call(tt,ee,{start:se,end:ie()}),ee="")}}function K(L){return L>=55296&&L<=57343||L>1114111}function V(L){return L>=1&&L<=8||L===11||L>=13&&L<=31||L>=127&&L<=159||L>=64976&&L<=65007||(L&65535)===65535||(L&65535)===65534}return tp}var np={exports:{}},kS;function CJ(){return kS||(kS=1,(function(e){var t=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};var n=(function(r){var a=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,i=0,s={},l={manual:r.Prism&&r.Prism.manual,disableWorkerMessageHandler:r.Prism&&r.Prism.disableWorkerMessageHandler,util:{encode:function y(v){return v instanceof c?new c(v.type,y(v.content),v.alias):Array.isArray(v)?v.map(y):v.replace(/&/g,"&").replace(/"u")return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(N){var y=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(N.stack)||[])[1];if(y){var v=document.getElementsByTagName("script");for(var E in v)if(v[E].src==y)return v[E]}return null}},isActive:function(y,v,E){for(var N="no-"+v;y;){var w=y.classList;if(w.contains(v))return!0;if(w.contains(N))return!1;y=y.parentElement}return!!E}},languages:{plain:s,plaintext:s,text:s,txt:s,extend:function(y,v){var E=l.util.clone(l.languages[y]);for(var N in v)E[N]=v[N];return E},insertBefore:function(y,v,E,N){N=N||l.languages;var w=N[y],T={};for(var j in w)if(w.hasOwnProperty(j)){if(j==v)for(var _ in E)E.hasOwnProperty(_)&&(T[_]=E[_]);E.hasOwnProperty(j)||(T[j]=w[j])}var C=N[y];return N[y]=T,l.languages.DFS(l.languages,function(O,I){I===C&&O!=y&&(this[O]=T)}),T},DFS:function y(v,E,N,w){w=w||{};var T=l.util.objId;for(var j in v)if(v.hasOwnProperty(j)){E.call(v,j,v[j],N||j);var _=v[j],C=l.util.type(_);C==="Object"&&!w[T(_)]?(w[T(_)]=!0,y(_,E,null,w)):C==="Array"&&!w[T(_)]&&(w[T(_)]=!0,y(_,E,j,w))}}},plugins:{},highlightAll:function(y,v){l.highlightAllUnder(document,y,v)},highlightAllUnder:function(y,v,E){var N={callback:E,container:y,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};l.hooks.run("before-highlightall",N),N.elements=Array.prototype.slice.apply(N.container.querySelectorAll(N.selector)),l.hooks.run("before-all-elements-highlight",N);for(var w=0,T;T=N.elements[w++];)l.highlightElement(T,v===!0,N.callback)},highlightElement:function(y,v,E){var N=l.util.getLanguage(y),w=l.languages[N];l.util.setLanguage(y,N);var T=y.parentElement;T&&T.nodeName.toLowerCase()==="pre"&&l.util.setLanguage(T,N);var j=y.textContent,_={element:y,language:N,grammar:w,code:j};function C(I){_.highlightedCode=I,l.hooks.run("before-insert",_),_.element.innerHTML=_.highlightedCode,l.hooks.run("after-highlight",_),l.hooks.run("complete",_),E&&E.call(_.element)}if(l.hooks.run("before-sanity-check",_),T=_.element.parentElement,T&&T.nodeName.toLowerCase()==="pre"&&!T.hasAttribute("tabindex")&&T.setAttribute("tabindex","0"),!_.code){l.hooks.run("complete",_),E&&E.call(_.element);return}if(l.hooks.run("before-highlight",_),!_.grammar){C(l.util.encode(_.code));return}if(v&&r.Worker){var O=new Worker(l.filename);O.onmessage=function(I){C(I.data)},O.postMessage(JSON.stringify({language:_.language,code:_.code,immediateClose:!0}))}else C(l.highlight(_.code,_.grammar,_.language))},highlight:function(y,v,E){var N={code:y,grammar:v,language:E};if(l.hooks.run("before-tokenize",N),!N.grammar)throw new Error('The language "'+N.language+'" has no grammar.');return N.tokens=l.tokenize(N.code,N.grammar),l.hooks.run("after-tokenize",N),c.stringify(l.util.encode(N.tokens),N.language)},tokenize:function(y,v){var E=v.rest;if(E){for(var N in E)v[N]=E[N];delete v.rest}var w=new p;return m(w,w.head,y),d(y,w,v,w.head,0),g(w)},hooks:{all:{},add:function(y,v){var E=l.hooks.all;E[y]=E[y]||[],E[y].push(v)},run:function(y,v){var E=l.hooks.all[y];if(!(!E||!E.length))for(var N=0,w;w=E[N++];)w(v)}},Token:c};r.Prism=l;function c(y,v,E,N){this.type=y,this.content=v,this.alias=E,this.length=(N||"").length|0}c.stringify=function y(v,E){if(typeof v=="string")return v;if(Array.isArray(v)){var N="";return v.forEach(function(C){N+=y(C,E)}),N}var w={type:v.type,content:y(v.content,E),tag:"span",classes:["token",v.type],attributes:{},language:E},T=v.alias;T&&(Array.isArray(T)?Array.prototype.push.apply(w.classes,T):w.classes.push(T)),l.hooks.run("wrap",w);var j="";for(var _ in w.attributes)j+=" "+_+'="'+(w.attributes[_]||"").replace(/"/g,""")+'"';return"<"+w.tag+' class="'+w.classes.join(" ")+'"'+j+">"+w.content+""};function u(y,v,E,N){y.lastIndex=v;var w=y.exec(E);if(w&&N&&w[1]){var T=w[1].length;w.index+=T,w[0]=w[0].slice(T)}return w}function d(y,v,E,N,w,T){for(var j in E)if(!(!E.hasOwnProperty(j)||!E[j])){var _=E[j];_=Array.isArray(_)?_:[_];for(var C=0;C<_.length;++C){if(T&&T.cause==j+","+C)return;var O=_[C],I=O.inside,z=!!O.lookbehind,M=!!O.greedy,P=O.alias;if(M&&!O.pattern.global){var B=O.pattern.toString().match(/[imsuy]*$/)[0];O.pattern=RegExp(O.pattern.source,B+"g")}for(var $=O.pattern||O,U=N.next,q=w;U!==v.tail&&!(T&&q>=T.reach);q+=U.value.length,U=U.next){var A=U.value;if(v.length>y.length)return;if(!(A instanceof c)){var K=1,V;if(M){if(V=u($,q,y,z),!V||V.index>=y.length)break;var ne=V.index,L=V.index+V[0].length,le=q;for(le+=U.value.length;ne>=le;)U=U.next,le+=U.value.length;if(le-=U.value.length,q=le,U.value instanceof c)continue;for(var re=U;re!==v.tail&&(leT.reach&&(T.reach=tt);var Me=U.prev;Se&&(Me=m(v,Me,Se),q+=Se.length),f(v,Me,K);var Fe=new c(j,I?l.tokenize(de,I):de,P,de);if(U=m(v,Me,Fe),he&&m(v,U,he),K>1){var ge={cause:j+","+C,reach:tt};d(y,v,E,U.prev,q,ge),T&&ge.reach>T.reach&&(T.reach=ge.reach)}}}}}}function p(){var y={value:null,prev:null,next:null},v={value:null,prev:y,next:null};y.next=v,this.head=y,this.tail=v,this.length=0}function m(y,v,E){var N=v.next,w={value:E,prev:v,next:N};return v.next=w,N.prev=w,y.length++,w}function f(y,v,E){for(var N=v.next,w=0;w/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},t.languages.markup.tag.inside["attr-value"].inside.entity=t.languages.markup.entity,t.languages.markup.doctype.inside["internal-subset"].inside=t.languages.markup,t.hooks.add("wrap",function(n){n.type==="entity"&&(n.attributes.title=n.content.value.replace(/&/,"&"))}),Object.defineProperty(t.languages.markup.tag,"addInlined",{value:function(r,a){var i={};i["language-"+a]={pattern:/(^$)/i,lookbehind:!0,inside:t.languages[a]},i.cdata=/^$/i;var s={"included-cdata":{pattern://i,inside:i}};s["language-"+a]={pattern:/[\s\S]+/,inside:t.languages[a]};var l={};l[r]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return r}),"i"),lookbehind:!0,greedy:!0,inside:s},t.languages.insertBefore("markup","cdata",l)}}),Object.defineProperty(t.languages.markup.tag,"addAttribute",{value:function(n,r){t.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+n+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[r,"language-"+r],inside:t.languages[r]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),t.languages.html=t.languages.markup,t.languages.mathml=t.languages.markup,t.languages.svg=t.languages.markup,t.languages.xml=t.languages.extend("markup",{}),t.languages.ssml=t.languages.xml,t.languages.atom=t.languages.xml,t.languages.rss=t.languages.xml}return rp}var ap,SS;function TJ(){if(SS)return ap;SS=1,ap=e,e.displayName="css",e.aliases=[];function e(t){(function(n){var r=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;n.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+r.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+r.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+r.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:r,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},n.languages.css.atrule.inside.rest=n.languages.css;var a=n.languages.markup;a&&(a.tag.addInlined("style","css"),a.tag.addAttribute("style","css"))})(t)}return ap}var ip,ES;function AJ(){if(ES)return ip;ES=1,ip=e,e.displayName="clike",e.aliases=[];function e(t){t.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/}}return ip}var sp,CS;function IJ(){if(CS)return sp;CS=1,sp=e,e.displayName="javascript",e.aliases=["js"];function e(t){t.languages.javascript=t.languages.extend("clike",{"class-name":[t.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),t.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,t.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:t.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:t.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:t.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:t.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:t.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),t.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:t.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),t.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),t.languages.markup&&(t.languages.markup.tag.addInlined("script","javascript"),t.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),t.languages.js=t.languages.javascript}return sp}var op,NS;function RJ(){if(NS)return op;NS=1;var e=typeof globalThis=="object"?globalThis:typeof self=="object"?self:typeof window=="object"?window:typeof $l=="object"?$l:{},t=N();e.Prism={manual:!0,disableWorkerMessageHandler:!0};var n=yX(),r=EJ(),a=CJ(),i=NJ(),s=TJ(),l=AJ(),c=IJ();t();var u={}.hasOwnProperty;function d(){}d.prototype=a;var p=new d;op=p,p.highlight=g,p.register=m,p.alias=f,p.registered=b,p.listLanguages=x,m(i),m(s),m(l),m(c),p.util.encode=v,p.Token.stringify=k;function m(w){if(typeof w!="function"||!w.displayName)throw new Error("Expected `function` for `grammar`, got `"+w+"`");p.languages[w.displayName]===void 0&&w(p)}function f(w,T){var j=p.languages,_=w,C,O,I,z;T&&(_={},_[w]=T);for(C in _)for(O=_[C],O=typeof O=="string"?[O]:O,I=O.length,z=-1;++z code[class*="language-"]':{background:"#f5f2f0",padding:".1em",borderRadius:".3em",whiteSpace:"normal"},comment:{color:"slategray"},prolog:{color:"slategray"},doctype:{color:"slategray"},cdata:{color:"slategray"},punctuation:{color:"#999"},namespace:{Opacity:".7"},property:{color:"#905"},tag:{color:"#905"},boolean:{color:"#905"},number:{color:"#905"},constant:{color:"#905"},symbol:{color:"#905"},deleted:{color:"#905"},selector:{color:"#690"},"attr-name":{color:"#690"},string:{color:"#690"},char:{color:"#690"},builtin:{color:"#690"},inserted:{color:"#690"},operator:{color:"#9a6e3a",background:"hsla(0, 0%, 100%, .5)"},entity:{color:"#9a6e3a",background:"hsla(0, 0%, 100%, .5)",cursor:"help"},url:{color:"#9a6e3a",background:"hsla(0, 0%, 100%, .5)"},".language-css .token.string":{color:"#9a6e3a",background:"hsla(0, 0%, 100%, .5)"},".style .token.string":{color:"#9a6e3a",background:"hsla(0, 0%, 100%, .5)"},atrule:{color:"#07a"},"attr-value":{color:"#07a"},keyword:{color:"#07a"},function:{color:"#DD4A68"},"class-name":{color:"#DD4A68"},regex:{color:"#e90"},important:{color:"#e90",fontWeight:"bold"},variable:{color:"#e90"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}};var lp,TS;function jJ(){if(TS)return lp;TS=1,lp=e,e.displayName="abap",e.aliases=[];function e(t){t.languages.abap={comment:/^\*.*/m,string:/(`|')(?:\\.|(?!\1)[^\\\r\n])*\1/,"string-template":{pattern:/([|}])(?:\\.|[^\\|{\r\n])*(?=[|{])/,lookbehind:!0,alias:"string"},"eol-comment":{pattern:/(^|\s)".*/m,lookbehind:!0,alias:"comment"},keyword:{pattern:/(\s|\.|^)(?:SCIENTIFIC_WITH_LEADING_ZERO|SCALE_PRESERVING_SCIENTIFIC|RMC_COMMUNICATION_FAILURE|END-ENHANCEMENT-SECTION|MULTIPLY-CORRESPONDING|SUBTRACT-CORRESPONDING|VERIFICATION-MESSAGE|DIVIDE-CORRESPONDING|ENHANCEMENT-SECTION|CURRENCY_CONVERSION|RMC_SYSTEM_FAILURE|START-OF-SELECTION|MOVE-CORRESPONDING|RMC_INVALID_STATUS|CUSTOMER-FUNCTION|END-OF-DEFINITION|ENHANCEMENT-POINT|SYSTEM-EXCEPTIONS|ADD-CORRESPONDING|SCALE_PRESERVING|SELECTION-SCREEN|CURSOR-SELECTION|END-OF-SELECTION|LOAD-OF-PROGRAM|SCROLL-BOUNDARY|SELECTION-TABLE|EXCEPTION-TABLE|IMPLEMENTATIONS|PARAMETER-TABLE|RIGHT-JUSTIFIED|UNIT_CONVERSION|AUTHORITY-CHECK|LIST-PROCESSING|SIGN_AS_POSTFIX|COL_BACKGROUND|IMPLEMENTATION|INTERFACE-POOL|TRANSFORMATION|IDENTIFICATION|ENDENHANCEMENT|LINE-SELECTION|INITIALIZATION|LEFT-JUSTIFIED|SELECT-OPTIONS|SELECTION-SETS|COMMUNICATION|CORRESPONDING|DECIMAL_SHIFT|PRINT-CONTROL|VALUE-REQUEST|CHAIN-REQUEST|FUNCTION-POOL|FIELD-SYMBOLS|FUNCTIONALITY|INVERTED-DATE|SELECTION-SET|CLASS-METHODS|OUTPUT-LENGTH|CLASS-CODING|COL_NEGATIVE|ERRORMESSAGE|FIELD-GROUPS|HELP-REQUEST|NO-EXTENSION|NO-TOPOFPAGE|REDEFINITION|DISPLAY-MODE|ENDINTERFACE|EXIT-COMMAND|FIELD-SYMBOL|NO-SCROLLING|SHORTDUMP-ID|ACCESSPOLICY|CLASS-EVENTS|COL_POSITIVE|DECLARATIONS|ENHANCEMENTS|FILTER-TABLE|SWITCHSTATES|SYNTAX-CHECK|TRANSPORTING|ASYNCHRONOUS|SYNTAX-TRACE|TOKENIZATION|USER-COMMAND|WITH-HEADING|ABAP-SOURCE|BREAK-POINT|CHAIN-INPUT|COMPRESSION|FIXED-POINT|NEW-SECTION|NON-UNICODE|OCCURRENCES|RESPONSIBLE|SYSTEM-CALL|TRACE-TABLE|ABBREVIATED|CHAR-TO-HEX|END-OF-FILE|ENDFUNCTION|ENVIRONMENT|ASSOCIATION|COL_HEADING|EDITOR-CALL|END-OF-PAGE|ENGINEERING|IMPLEMENTED|INTENSIFIED|RADIOBUTTON|SYSTEM-EXIT|TOP-OF-PAGE|TRANSACTION|APPLICATION|CONCATENATE|DESTINATION|ENHANCEMENT|IMMEDIATELY|NO-GROUPING|PRECOMPILED|REPLACEMENT|TITLE-LINES|ACTIVATION|BYTE-ORDER|CLASS-POOL|CONNECTION|CONVERSION|DEFINITION|DEPARTMENT|EXPIRATION|INHERITING|MESSAGE-ID|NO-HEADING|PERFORMING|QUEUE-ONLY|RIGHTSPACE|SCIENTIFIC|STATUSINFO|STRUCTURES|SYNCPOINTS|WITH-TITLE|ATTRIBUTES|BOUNDARIES|CLASS-DATA|COL_NORMAL|DD\/MM\/YYYY|DESCENDING|INTERFACES|LINE-COUNT|MM\/DD\/YYYY|NON-UNIQUE|PRESERVING|SELECTIONS|STATEMENTS|SUBROUTINE|TRUNCATION|TYPE-POOLS|ARITHMETIC|BACKGROUND|ENDPROVIDE|EXCEPTIONS|IDENTIFIER|INDEX-LINE|OBLIGATORY|PARAMETERS|PERCENTAGE|PUSHBUTTON|RESOLUTION|COMPONENTS|DEALLOCATE|DISCONNECT|DUPLICATES|FIRST-LINE|HEAD-LINES|NO-DISPLAY|OCCURRENCE|RESPECTING|RETURNCODE|SUBMATCHES|TRACE-FILE|ASCENDING|BYPASSING|ENDMODULE|EXCEPTION|EXCLUDING|EXPORTING|INCREMENT|MATCHCODE|PARAMETER|PARTIALLY|PREFERRED|REFERENCE|REPLACING|RETURNING|SELECTION|SEPARATED|SPECIFIED|STATEMENT|TIMESTAMP|TYPE-POOL|ACCEPTING|APPENDAGE|ASSIGNING|COL_GROUP|COMPARING|CONSTANTS|DANGEROUS|IMPORTING|INSTANCES|LEFTSPACE|LOG-POINT|QUICKINFO|READ-ONLY|SCROLLING|SQLSCRIPT|STEP-LOOP|TOP-LINES|TRANSLATE|APPENDING|AUTHORITY|CHARACTER|COMPONENT|CONDITION|DIRECTORY|DUPLICATE|MESSAGING|RECEIVING|SUBSCREEN|ACCORDING|COL_TOTAL|END-LINES|ENDMETHOD|ENDSELECT|EXPANDING|EXTENSION|INCLUDING|INFOTYPES|INTERFACE|INTERVALS|LINE-SIZE|PF-STATUS|PROCEDURE|PROTECTED|REQUESTED|RESUMABLE|RIGHTPLUS|SAP-SPOOL|SECONDARY|STRUCTURE|SUBSTRING|TABLEVIEW|NUMOFCHAR|ADJACENT|ANALYSIS|ASSIGNED|BACKWARD|CHANNELS|CHECKBOX|CONTINUE|CRITICAL|DATAINFO|DD\/MM\/YY|DURATION|ENCODING|ENDCLASS|FUNCTION|LEFTPLUS|LINEFEED|MM\/DD\/YY|OVERFLOW|RECEIVED|SKIPPING|SORTABLE|STANDARD|SUBTRACT|SUPPRESS|TABSTRIP|TITLEBAR|TRUNCATE|UNASSIGN|WHENEVER|ANALYZER|COALESCE|COMMENTS|CONDENSE|DECIMALS|DEFERRED|ENDWHILE|EXPLICIT|KEYWORDS|MESSAGES|POSITION|PRIORITY|RECEIVER|RENAMING|TIMEZONE|TRAILING|ALLOCATE|CENTERED|CIRCULAR|CONTROLS|CURRENCY|DELETING|DESCRIBE|DISTANCE|ENDCATCH|EXPONENT|EXTENDED|GENERATE|IGNORING|INCLUDES|INTERNAL|MAJOR-ID|MODIFIER|NEW-LINE|OPTIONAL|PROPERTY|ROLLBACK|STARTING|SUPPLIED|ABSTRACT|CHANGING|CONTEXTS|CREATING|CUSTOMER|DATABASE|DAYLIGHT|DEFINING|DISTINCT|DIVISION|ENABLING|ENDCHAIN|ESCAPING|HARMLESS|IMPLICIT|INACTIVE|LANGUAGE|MINOR-ID|MULTIPLY|NEW-PAGE|NO-TITLE|POS_HIGH|SEPARATE|TEXTPOOL|TRANSFER|SELECTOR|DBMAXLEN|ITERATOR|ARCHIVE|BIT-XOR|BYTE-CO|COLLECT|COMMENT|CURRENT|DEFAULT|DISPLAY|ENDFORM|EXTRACT|LEADING|LISTBOX|LOCATOR|MEMBERS|METHODS|NESTING|POS_LOW|PROCESS|PROVIDE|RAISING|RESERVE|SECONDS|SUMMARY|VISIBLE|BETWEEN|BIT-AND|BYTE-CS|CLEANUP|COMPUTE|CONTROL|CONVERT|DATASET|ENDCASE|FORWARD|HEADERS|HOTSPOT|INCLUDE|INVERSE|KEEPING|NO-ZERO|OBJECTS|OVERLAY|PADDING|PATTERN|PROGRAM|REFRESH|SECTION|SUMMING|TESTING|VERSION|WINDOWS|WITHOUT|BIT-NOT|BYTE-CA|BYTE-NA|CASTING|CONTEXT|COUNTRY|DYNAMIC|ENABLED|ENDLOOP|EXECUTE|FRIENDS|HANDLER|HEADING|INITIAL|\*-INPUT|LOGFILE|MAXIMUM|MINIMUM|NO-GAPS|NO-SIGN|PRAGMAS|PRIMARY|PRIVATE|REDUCED|REPLACE|REQUEST|RESULTS|UNICODE|WARNING|ALIASES|BYTE-CN|BYTE-NS|CALLING|COL_KEY|COLUMNS|CONNECT|ENDEXEC|ENTRIES|EXCLUDE|FILTERS|FURTHER|HELP-ID|LOGICAL|MAPPING|MESSAGE|NAMETAB|OPTIONS|PACKAGE|PERFORM|RECEIVE|STATICS|VARYING|BINDING|CHARLEN|GREATER|XSTRLEN|ACCEPT|APPEND|DETAIL|ELSEIF|ENDING|ENDTRY|FORMAT|FRAMES|GIVING|HASHED|HEADER|IMPORT|INSERT|MARGIN|MODULE|NATIVE|OBJECT|OFFSET|REMOTE|RESUME|SAVING|SIMPLE|SUBMIT|TABBED|TOKENS|UNIQUE|UNPACK|UPDATE|WINDOW|YELLOW|ACTUAL|ASPECT|CENTER|CURSOR|DELETE|DIALOG|DIVIDE|DURING|ERRORS|EVENTS|EXTEND|FILTER|HANDLE|HAVING|IGNORE|LITTLE|MEMORY|NO-GAP|OCCURS|OPTION|PERSON|PLACES|PUBLIC|REDUCE|REPORT|RESULT|SINGLE|SORTED|SWITCH|SYNTAX|TARGET|VALUES|WRITER|ASSERT|BLOCKS|BOUNDS|BUFFER|CHANGE|COLUMN|COMMIT|CONCAT|COPIES|CREATE|DDMMYY|DEFINE|ENDIAN|ESCAPE|EXPAND|KERNEL|LAYOUT|LEGACY|LEVELS|MMDDYY|NUMBER|OUTPUT|RANGES|READER|RETURN|SCREEN|SEARCH|SELECT|SHARED|SOURCE|STABLE|STATIC|SUBKEY|SUFFIX|TABLES|UNWIND|YYMMDD|ASSIGN|BACKUP|BEFORE|BINARY|BIT-OR|BLANKS|CLIENT|CODING|COMMON|DEMAND|DYNPRO|EXCEPT|EXISTS|EXPORT|FIELDS|GLOBAL|GROUPS|LENGTH|LOCALE|MEDIUM|METHOD|MODIFY|NESTED|OTHERS|REJECT|SCROLL|SUPPLY|SYMBOL|ENDFOR|STRLEN|ALIGN|BEGIN|BOUND|ENDAT|ENTRY|EVENT|FINAL|FLUSH|GRANT|INNER|SHORT|USING|WRITE|AFTER|BLACK|BLOCK|CLOCK|COLOR|COUNT|DUMMY|EMPTY|ENDDO|ENDON|GREEN|INDEX|INOUT|LEAVE|LEVEL|LINES|MODIF|ORDER|OUTER|RANGE|RESET|RETRY|RIGHT|SMART|SPLIT|STYLE|TABLE|THROW|UNDER|UNTIL|UPPER|UTF-8|WHERE|ALIAS|BLANK|CLEAR|CLOSE|EXACT|FETCH|FIRST|FOUND|GROUP|LLANG|LOCAL|OTHER|REGEX|SPOOL|TITLE|TYPES|VALID|WHILE|ALPHA|BOXED|CATCH|CHAIN|CHECK|CLASS|COVER|ENDIF|EQUIV|FIELD|FLOOR|FRAME|INPUT|LOWER|MATCH|NODES|PAGES|PRINT|RAISE|ROUND|SHIFT|SPACE|SPOTS|STAMP|STATE|TASKS|TIMES|TRMAC|ULINE|UNION|VALUE|WIDTH|EQUAL|LOG10|TRUNC|BLOB|CASE|CEIL|CLOB|COND|EXIT|FILE|GAPS|HOLD|INCL|INTO|KEEP|KEYS|LAST|LINE|LONG|LPAD|MAIL|MODE|OPEN|PINK|READ|ROWS|TEST|THEN|ZERO|AREA|BACK|BADI|BYTE|CAST|EDIT|EXEC|FAIL|FIND|FKEQ|FONT|FREE|GKEQ|HIDE|INIT|ITNO|LATE|LOOP|MAIN|MARK|MOVE|NEXT|NULL|RISK|ROLE|UNIT|WAIT|ZONE|BASE|CALL|CODE|DATA|DATE|FKGE|GKGE|HIGH|KIND|LEFT|LIST|MASK|MESH|NAME|NODE|PACK|PAGE|POOL|SEND|SIGN|SIZE|SOME|STOP|TASK|TEXT|TIME|USER|VARY|WITH|WORD|BLUE|CONV|COPY|DEEP|ELSE|FORM|FROM|HINT|ICON|JOIN|LIKE|LOAD|ONLY|PART|SCAN|SKIP|SORT|TYPE|UNIX|VIEW|WHEN|WORK|ACOS|ASIN|ATAN|COSH|EACH|FRAC|LESS|RTTI|SINH|SQRT|TANH|AVG|BIT|DIV|ISO|LET|OUT|PAD|SQL|ALL|CI_|CPI|END|LOB|LPI|MAX|MIN|NEW|OLE|RUN|SET|\?TO|YES|ABS|ADD|AND|BIG|FOR|HDB|JOB|LOW|NOT|SAP|TRY|VIA|XML|ANY|GET|IDS|KEY|MOD|OFF|PUT|RAW|RED|REF|SUM|TAB|XSD|CNT|COS|EXP|LOG|SIN|TAN|XOR|AT|CO|CP|DO|GT|ID|IF|NS|OR|BT|CA|CS|GE|NA|NB|EQ|IN|LT|NE|NO|OF|ON|PF|TO|AS|BY|CN|IS|LE|NP|UP|E|I|M|O|Z|C|X)\b/i,lookbehind:!0},number:/\b\d+\b/,operator:{pattern:/(\s)(?:\*\*?|<[=>]?|>=?|\?=|[-+\/=])(?=\s)/,lookbehind:!0},"string-operator":{pattern:/(\s)&&?(?=\s)/,lookbehind:!0,alias:"keyword"},"token-operator":[{pattern:/(\w)(?:->?|=>|[~|{}])(?=\w)/,lookbehind:!0,alias:"punctuation"},{pattern:/[|{}]/,alias:"punctuation"}],punctuation:/[,.:()]/}}return lp}var cp,AS;function OJ(){if(AS)return cp;AS=1,cp=e,e.displayName="abnf",e.aliases=[];function e(t){(function(n){var r="(?:ALPHA|BIT|CHAR|CR|CRLF|CTL|DIGIT|DQUOTE|HEXDIG|HTAB|LF|LWSP|OCTET|SP|VCHAR|WSP)";n.languages.abnf={comment:/;.*/,string:{pattern:/(?:%[is])?"[^"\n\r]*"/,greedy:!0,inside:{punctuation:/^%[is]/}},range:{pattern:/%(?:b[01]+-[01]+|d\d+-\d+|x[A-F\d]+-[A-F\d]+)/i,alias:"number"},terminal:{pattern:/%(?:b[01]+(?:\.[01]+)*|d\d+(?:\.\d+)*|x[A-F\d]+(?:\.[A-F\d]+)*)/i,alias:"number"},repetition:{pattern:/(^|[^\w-])(?:\d*\*\d*|\d+)/,lookbehind:!0,alias:"operator"},definition:{pattern:/(^[ \t]*)(?:[a-z][\w-]*|<[^<>\r\n]*>)(?=\s*=)/m,lookbehind:!0,alias:"keyword",inside:{punctuation:/<|>/}},"core-rule":{pattern:RegExp("(?:(^|[^<\\w-])"+r+"|<"+r+">)(?![\\w-])","i"),lookbehind:!0,alias:["rule","constant"],inside:{punctuation:/<|>/}},rule:{pattern:/(^|[^<\w-])[a-z][\w-]*|<[^<>\r\n]*>/i,lookbehind:!0,inside:{punctuation:/<|>/}},operator:/=\/?|\//,punctuation:/[()\[\]]/}})(t)}return cp}var up,IS;function DJ(){if(IS)return up;IS=1,up=e,e.displayName="actionscript",e.aliases=[];function e(t){t.languages.actionscript=t.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|dynamic|each|else|extends|final|finally|for|function|get|if|implements|import|in|include|instanceof|interface|internal|is|namespace|native|new|null|override|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|use|var|void|while|with)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<>?>?|[!=]=?)=?|[~?@]/}),t.languages.actionscript["class-name"].alias="function",delete t.languages.actionscript.parameter,delete t.languages.actionscript["literal-property"],t.languages.markup&&t.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:t.languages.markup}})}return up}var dp,RS;function MJ(){if(RS)return dp;RS=1,dp=e,e.displayName="ada",e.aliases=[];function e(t){t.languages.ada={comment:/--.*/,string:/"(?:""|[^"\r\f\n])*"/,number:[{pattern:/\b\d(?:_?\d)*#[\dA-F](?:_?[\dA-F])*(?:\.[\dA-F](?:_?[\dA-F])*)?#(?:E[+-]?\d(?:_?\d)*)?/i},{pattern:/\b\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:E[+-]?\d(?:_?\d)*)?\b/i}],"attr-name":/\b'\w+/,keyword:/\b(?:abort|abs|abstract|accept|access|aliased|all|and|array|at|begin|body|case|constant|declare|delay|delta|digits|do|else|elsif|end|entry|exception|exit|for|function|generic|goto|if|in|interface|is|limited|loop|mod|new|not|null|of|others|out|overriding|package|pragma|private|procedure|protected|raise|range|record|rem|renames|requeue|return|reverse|select|separate|some|subtype|synchronized|tagged|task|terminate|then|type|until|use|when|while|with|xor)\b/i,boolean:/\b(?:false|true)\b/i,operator:/<[=>]?|>=?|=>?|:=|\/=?|\*\*?|[&+-]/,punctuation:/\.\.?|[,;():]/,char:/'.'/,variable:/\b[a-z](?:\w)*\b/i}}return dp}var pp,_S;function LJ(){if(_S)return pp;_S=1,pp=e,e.displayName="agda",e.aliases=[];function e(t){(function(n){n.languages.agda={comment:/\{-[\s\S]*?(?:-\}|$)|--.*/,string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},punctuation:/[(){}⦃⦄.;@]/,"class-name":{pattern:/((?:data|record) +)\S+/,lookbehind:!0},function:{pattern:/(^[ \t]*)(?!\s)[^:\r\n]+(?=:)/m,lookbehind:!0},operator:{pattern:/(^\s*|\s)(?:[=|:∀→λ\\?_]|->)(?=\s)/,lookbehind:!0},keyword:/\b(?:Set|abstract|constructor|data|eta-equality|field|forall|hiding|import|in|inductive|infix|infixl|infixr|instance|let|macro|module|mutual|no-eta-equality|open|overlap|pattern|postulate|primitive|private|public|quote|quoteContext|quoteGoal|quoteTerm|record|renaming|rewrite|syntax|tactic|unquote|unquoteDecl|unquoteDef|using|variable|where|with)\b/}})(t)}return pp}var mp,jS;function PJ(){if(jS)return mp;jS=1,mp=e,e.displayName="al",e.aliases=[];function e(t){t.languages.al={comment:/\/\/.*|\/\*[\s\S]*?\*\//,string:{pattern:/'(?:''|[^'\r\n])*'(?!')|"(?:""|[^"\r\n])*"(?!")/,greedy:!0},function:{pattern:/(\b(?:event|procedure|trigger)\s+|(?:^|[^.])\.\s*)[a-z_]\w*(?=\s*\()/i,lookbehind:!0},keyword:[/\b(?:array|asserterror|begin|break|case|do|downto|else|end|event|exit|for|foreach|function|if|implements|in|indataset|interface|internal|local|of|procedure|program|protected|repeat|runonclient|securityfiltering|suppressdispose|temporary|then|to|trigger|until|var|while|with|withevents)\b/i,/\b(?:action|actions|addafter|addbefore|addfirst|addlast|area|assembly|chartpart|codeunit|column|controladdin|cuegroup|customizes|dataitem|dataset|dotnet|elements|enum|enumextension|extends|field|fieldattribute|fieldelement|fieldgroup|fieldgroups|fields|filter|fixed|grid|group|key|keys|label|labels|layout|modify|moveafter|movebefore|movefirst|movelast|page|pagecustomization|pageextension|part|profile|query|repeater|report|requestpage|schema|separator|systempart|table|tableelement|tableextension|textattribute|textelement|type|usercontrol|value|xmlport)\b/i],number:/\b(?:0x[\da-f]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)(?:F|LL?|U(?:LL?)?)?\b/i,boolean:/\b(?:false|true)\b/i,variable:/\b(?:Curr(?:FieldNo|Page|Report)|x?Rec|RequestOptionsPage)\b/,"class-name":/\b(?:automation|biginteger|bigtext|blob|boolean|byte|char|clienttype|code|completiontriggererrorlevel|connectiontype|database|dataclassification|datascope|date|dateformula|datetime|decimal|defaultlayout|dialog|dictionary|dotnetassembly|dotnettypedeclaration|duration|errorinfo|errortype|executioncontext|executionmode|fieldclass|fieldref|fieldtype|file|filterpagebuilder|guid|httpclient|httpcontent|httpheaders|httprequestmessage|httpresponsemessage|instream|integer|joker|jsonarray|jsonobject|jsontoken|jsonvalue|keyref|list|moduledependencyinfo|moduleinfo|none|notification|notificationscope|objecttype|option|outstream|pageresult|record|recordid|recordref|reportformat|securityfilter|sessionsettings|tableconnectiontype|tablefilter|testaction|testfield|testfilterfield|testpage|testpermissions|testrequestpage|text|textbuilder|textconst|textencoding|time|transactionmodel|transactiontype|variant|verbosity|version|view|views|webserviceactioncontext|webserviceactionresultcode|xmlattribute|xmlattributecollection|xmlcdata|xmlcomment|xmldeclaration|xmldocument|xmldocumenttype|xmlelement|xmlnamespacemanager|xmlnametable|xmlnode|xmlnodelist|xmlprocessinginstruction|xmlreadoptions|xmltext|xmlwriteoptions)\b/i,operator:/\.\.|:[=:]|[-+*/]=?|<>|[<>]=?|=|\b(?:and|div|mod|not|or|xor)\b/i,punctuation:/[()\[\]{}:.;,]/}}return mp}var fp,OS;function FJ(){if(OS)return fp;OS=1,fp=e,e.displayName="antlr4",e.aliases=["g4"];function e(t){t.languages.antlr4={comment:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,string:{pattern:/'(?:\\.|[^\\'\r\n])*'/,greedy:!0},"character-class":{pattern:/\[(?:\\.|[^\\\]\r\n])*\]/,greedy:!0,alias:"regex",inside:{range:{pattern:/([^[]|(?:^|[^\\])(?:\\\\)*\\\[)-(?!\])/,lookbehind:!0,alias:"punctuation"},escape:/\\(?:u(?:[a-fA-F\d]{4}|\{[a-fA-F\d]+\})|[pP]\{[=\w-]+\}|[^\r\nupP])/,punctuation:/[\[\]]/}},action:{pattern:/\{(?:[^{}]|\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})*\})*\}/,greedy:!0,inside:{content:{pattern:/(\{)[\s\S]+(?=\})/,lookbehind:!0},punctuation:/[{}]/}},command:{pattern:/(->\s*(?!\s))(?:\s*(?:,\s*)?\b[a-z]\w*(?:\s*\([^()\r\n]*\))?)+(?=\s*;)/i,lookbehind:!0,inside:{function:/\b\w+(?=\s*(?:[,(]|$))/,punctuation:/[,()]/}},annotation:{pattern:/@\w+(?:::\w+)*/,alias:"keyword"},label:{pattern:/#[ \t]*\w+/,alias:"punctuation"},keyword:/\b(?:catch|channels|finally|fragment|grammar|import|lexer|locals|mode|options|parser|returns|throws|tokens)\b/,definition:[{pattern:/\b[a-z]\w*(?=\s*:)/,alias:["rule","class-name"]},{pattern:/\b[A-Z]\w*(?=\s*:)/,alias:["token","constant"]}],constant:/\b[A-Z][A-Z_]*\b/,operator:/\.\.|->|[|~]|[*+?]\??/,punctuation:/[;:()=]/},t.languages.g4=t.languages.antlr4}return fp}var hp,DS;function BJ(){if(DS)return hp;DS=1,hp=e,e.displayName="apacheconf",e.aliases=[];function e(t){t.languages.apacheconf={comment:/#.*/,"directive-inline":{pattern:/(^[\t ]*)\b(?:AcceptFilter|AcceptPathInfo|AccessFileName|Action|Add(?:Alt|AltByEncoding|AltByType|Charset|DefaultCharset|Description|Encoding|Handler|Icon|IconByEncoding|IconByType|InputFilter|Language|ModuleInfo|OutputFilter|OutputFilterByType|Type)|Alias|AliasMatch|Allow(?:CONNECT|EncodedSlashes|Methods|Override|OverrideList)?|Anonymous(?:_LogEmail|_MustGiveEmail|_NoUserID|_VerifyEmail)?|AsyncRequestWorkerFactor|Auth(?:BasicAuthoritative|BasicFake|BasicProvider|BasicUseDigestAlgorithm|DBDUserPWQuery|DBDUserRealmQuery|DBMGroupFile|DBMType|DBMUserFile|Digest(?:Algorithm|Domain|NonceLifetime|Provider|Qop|ShmemSize)|Form(?:Authoritative|Body|DisableNoStore|FakeBasicAuth|Location|LoginRequiredLocation|LoginSuccessLocation|LogoutLocation|Method|Mimetype|Password|Provider|SitePassphrase|Size|Username)|GroupFile|LDAP(?:AuthorizePrefix|BindAuthoritative|BindDN|BindPassword|CharsetConfig|CompareAsUser|CompareDNOnServer|DereferenceAliases|GroupAttribute|GroupAttributeIsDN|InitialBindAsUser|InitialBindPattern|MaxSubGroupDepth|RemoteUserAttribute|RemoteUserIsDN|SearchAsUser|SubGroupAttribute|SubGroupClass|Url)|Merging|Name|nCache(?:Context|Enable|ProvideFor|SOCache|Timeout)|nzFcgiCheckAuthnProvider|nzFcgiDefineProvider|Type|UserFile|zDBDLoginToReferer|zDBDQuery|zDBDRedirectQuery|zDBMType|zSendForbiddenOnFailure)|BalancerGrowth|BalancerInherit|BalancerMember|BalancerPersist|BrowserMatch|BrowserMatchNoCase|BufferedLogs|BufferSize|Cache(?:DefaultExpire|DetailHeader|DirLength|DirLevels|Disable|Enable|File|Header|IgnoreCacheControl|IgnoreHeaders|IgnoreNoLastMod|IgnoreQueryString|IgnoreURLSessionIdentifiers|KeyBaseURL|LastModifiedFactor|Lock|LockMaxAge|LockPath|MaxExpire|MaxFileSize|MinExpire|MinFileSize|NegotiatedDocs|QuickHandler|ReadSize|ReadTime|Root|Socache(?:MaxSize|MaxTime|MinTime|ReadSize|ReadTime)?|StaleOnError|StoreExpired|StoreNoStore|StorePrivate)|CGIDScriptTimeout|CGIMapExtension|CharsetDefault|CharsetOptions|CharsetSourceEnc|CheckCaseOnly|CheckSpelling|ChrootDir|ContentDigest|CookieDomain|CookieExpires|CookieName|CookieStyle|CookieTracking|CoreDumpDirectory|CustomLog|Dav|DavDepthInfinity|DavGenericLockDB|DavLockDB|DavMinTimeout|DBDExptime|DBDInitSQL|DBDKeep|DBDMax|DBDMin|DBDParams|DBDPersist|DBDPrepareSQL|DBDriver|DefaultIcon|DefaultLanguage|DefaultRuntimeDir|DefaultType|Define|Deflate(?:BufferSize|CompressionLevel|FilterNote|InflateLimitRequestBody|InflateRatio(?:Burst|Limit)|MemLevel|WindowSize)|Deny|DirectoryCheckHandler|DirectoryIndex|DirectoryIndexRedirect|DirectorySlash|DocumentRoot|DTracePrivileges|DumpIOInput|DumpIOOutput|EnableExceptionHook|EnableMMAP|EnableSendfile|Error|ErrorDocument|ErrorLog|ErrorLogFormat|Example|ExpiresActive|ExpiresByType|ExpiresDefault|ExtendedStatus|ExtFilterDefine|ExtFilterOptions|FallbackResource|FileETag|FilterChain|FilterDeclare|FilterProtocol|FilterProvider|FilterTrace|ForceLanguagePriority|ForceType|ForensicLog|GprofDir|GracefulShutdownTimeout|Group|Header|HeaderName|Heartbeat(?:Address|Listen|MaxServers|Storage)|HostnameLookups|IdentityCheck|IdentityCheckTimeout|ImapBase|ImapDefault|ImapMenu|Include|IncludeOptional|Index(?:HeadInsert|Ignore|IgnoreReset|Options|OrderDefault|StyleSheet)|InputSed|ISAPI(?:AppendLogToErrors|AppendLogToQuery|CacheFile|FakeAsync|LogNotSupported|ReadAheadBuffer)|KeepAlive|KeepAliveTimeout|KeptBodySize|LanguagePriority|LDAP(?:CacheEntries|CacheTTL|ConnectionPoolTTL|ConnectionTimeout|LibraryDebug|OpCacheEntries|OpCacheTTL|ReferralHopLimit|Referrals|Retries|RetryDelay|SharedCacheFile|SharedCacheSize|Timeout|TrustedClientCert|TrustedGlobalCert|TrustedMode|VerifyServerCert)|Limit(?:InternalRecursion|Request(?:Body|Fields|FieldSize|Line)|XMLRequestBody)|Listen|ListenBackLog|LoadFile|LoadModule|LogFormat|LogLevel|LogMessage|LuaAuthzProvider|LuaCodeCache|Lua(?:Hook(?:AccessChecker|AuthChecker|CheckUserID|Fixups|InsertFilter|Log|MapToStorage|TranslateName|TypeChecker)|Inherit|InputFilter|MapHandler|OutputFilter|PackageCPath|PackagePath|QuickHandler|Root|Scope)|Max(?:ConnectionsPerChild|KeepAliveRequests|MemFree|RangeOverlaps|RangeReversals|Ranges|RequestWorkers|SpareServers|SpareThreads|Threads)|MergeTrailers|MetaDir|MetaFiles|MetaSuffix|MimeMagicFile|MinSpareServers|MinSpareThreads|MMapFile|ModemStandard|ModMimeUsePathInfo|MultiviewsMatch|Mutex|NameVirtualHost|NoProxy|NWSSLTrustedCerts|NWSSLUpgradeable|Options|Order|OutputSed|PassEnv|PidFile|PrivilegesMode|Protocol|ProtocolEcho|Proxy(?:AddHeaders|BadHeader|Block|Domain|ErrorOverride|ExpressDBMFile|ExpressDBMType|ExpressEnable|FtpDirCharset|FtpEscapeWildcards|FtpListOnWildcard|HTML(?:BufSize|CharsetOut|DocType|Enable|Events|Extended|Fixups|Interp|Links|Meta|StripComments|URLMap)|IOBufferSize|MaxForwards|Pass(?:Inherit|InterpolateEnv|Match|Reverse|ReverseCookieDomain|ReverseCookiePath)?|PreserveHost|ReceiveBufferSize|Remote|RemoteMatch|Requests|SCGIInternalRedirect|SCGISendfile|Set|SourceAddress|Status|Timeout|Via)|ReadmeName|ReceiveBufferSize|Redirect|RedirectMatch|RedirectPermanent|RedirectTemp|ReflectorHeader|RemoteIP(?:Header|InternalProxy|InternalProxyList|ProxiesHeader|TrustedProxy|TrustedProxyList)|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|RequestHeader|RequestReadTimeout|Require|Rewrite(?:Base|Cond|Engine|Map|Options|Rule)|RLimitCPU|RLimitMEM|RLimitNPROC|Satisfy|ScoreBoardFile|Script(?:Alias|AliasMatch|InterpreterSource|Log|LogBuffer|LogLength|Sock)?|SecureListen|SeeRequestTail|SendBufferSize|Server(?:Admin|Alias|Limit|Name|Path|Root|Signature|Tokens)|Session(?:Cookie(?:Name|Name2|Remove)|Crypto(?:Cipher|Driver|Passphrase|PassphraseFile)|DBD(?:CookieName|CookieName2|CookieRemove|DeleteLabel|InsertLabel|PerUser|SelectLabel|UpdateLabel)|Env|Exclude|Header|Include|MaxAge)?|SetEnv|SetEnvIf|SetEnvIfExpr|SetEnvIfNoCase|SetHandler|SetInputFilter|SetOutputFilter|SSIEndTag|SSIErrorMsg|SSIETag|SSILastModified|SSILegacyExprParser|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|SSL(?:CACertificateFile|CACertificatePath|CADNRequestFile|CADNRequestPath|CARevocationCheck|CARevocationFile|CARevocationPath|CertificateChainFile|CertificateFile|CertificateKeyFile|CipherSuite|Compression|CryptoDevice|Engine|FIPS|HonorCipherOrder|InsecureRenegotiation|OCSP(?:DefaultResponder|Enable|OverrideResponder|ResponderTimeout|ResponseMaxAge|ResponseTimeSkew|UseRequestNonce)|OpenSSLConfCmd|Options|PassPhraseDialog|Protocol|Proxy(?:CACertificateFile|CACertificatePath|CARevocation(?:Check|File|Path)|CheckPeer(?:CN|Expire|Name)|CipherSuite|Engine|MachineCertificate(?:ChainFile|File|Path)|Protocol|Verify|VerifyDepth)|RandomSeed|RenegBufferSize|Require|RequireSSL|Session(?:Cache|CacheTimeout|TicketKeyFile|Tickets)|SRPUnknownUserSeed|SRPVerifierFile|Stapling(?:Cache|ErrorCacheTimeout|FakeTryLater|ForceURL|ResponderTimeout|ResponseMaxAge|ResponseTimeSkew|ReturnResponderErrors|StandardCacheTimeout)|StrictSNIVHostCheck|UserName|UseStapling|VerifyClient|VerifyDepth)|StartServers|StartThreads|Substitute|Suexec|SuexecUserGroup|ThreadLimit|ThreadsPerChild|ThreadStackSize|TimeOut|TraceEnable|TransferLog|TypesConfig|UnDefine|UndefMacro|UnsetEnv|Use|UseCanonicalName|UseCanonicalPhysicalPort|User|UserDir|VHostCGIMode|VHostCGIPrivs|VHostGroup|VHostPrivs|VHostSecure|VHostUser|Virtual(?:DocumentRoot|ScriptAlias)(?:IP)?|WatchdogInterval|XBitHack|xml2EncAlias|xml2EncDefault|xml2StartParse)\b/im,lookbehind:!0,alias:"property"},"directive-block":{pattern:/<\/?\b(?:Auth[nz]ProviderAlias|Directory|DirectoryMatch|Else|ElseIf|Files|FilesMatch|If|IfDefine|IfModule|IfVersion|Limit|LimitExcept|Location|LocationMatch|Macro|Proxy|Require(?:All|Any|None)|VirtualHost)\b.*>/i,inside:{"directive-block":{pattern:/^<\/?\w+/,inside:{punctuation:/^<\/?/},alias:"tag"},"directive-block-parameter":{pattern:/.*[^>]/,inside:{punctuation:/:/,string:{pattern:/("|').*\1/,inside:{variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/}}},alias:"attr-value"},punctuation:/>/},alias:"tag"},"directive-flags":{pattern:/\[(?:[\w=],?)+\]/,alias:"keyword"},string:{pattern:/("|').*\1/,inside:{variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/}},variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/,regex:/\^?.*\$|\^.*\$?/}}return hp}var gp,MS;function Ey(){if(MS)return gp;MS=1,gp=e,e.displayName="sql",e.aliases=[];function e(t){t.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}}return gp}var bp,LS;function $J(){if(LS)return bp;LS=1;var e=Ey();bp=t,t.displayName="apex",t.aliases=[];function t(n){n.register(e),(function(r){var a=/\b(?:(?:after|before)(?=\s+[a-z])|abstract|activate|and|any|array|as|asc|autonomous|begin|bigdecimal|blob|boolean|break|bulk|by|byte|case|cast|catch|char|class|collect|commit|const|continue|currency|date|datetime|decimal|default|delete|desc|do|double|else|end|enum|exception|exit|export|extends|final|finally|float|for|from|get(?=\s*[{};])|global|goto|group|having|hint|if|implements|import|in|inner|insert|instanceof|int|integer|interface|into|join|like|limit|list|long|loop|map|merge|new|not|null|nulls|number|object|of|on|or|outer|override|package|parallel|pragma|private|protected|public|retrieve|return|rollback|select|set|short|sObject|sort|static|string|super|switch|synchronized|system|testmethod|then|this|throw|time|transaction|transient|trigger|try|undelete|update|upsert|using|virtual|void|webservice|when|where|while|(?:inherited|with|without)\s+sharing)\b/i,i=/\b(?:(?=[a-z_]\w*\s*[<\[])|(?!))[A-Z_]\w*(?:\s*\.\s*[A-Z_]\w*)*\b(?:\s*(?:\[\s*\]|<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>))*/.source.replace(//g,function(){return a.source});function s(c){return RegExp(c.replace(//g,function(){return i}),"i")}var l={keyword:a,punctuation:/[()\[\]{};,:.<>]/};r.languages.apex={comment:r.languages.clike.comment,string:r.languages.clike.string,sql:{pattern:/((?:[=,({:]|\breturn)\s*)\[[^\[\]]*\]/i,lookbehind:!0,greedy:!0,alias:"language-sql",inside:r.languages.sql},annotation:{pattern:/@\w+\b/,alias:"punctuation"},"class-name":[{pattern:s(/(\b(?:class|enum|extends|implements|instanceof|interface|new|trigger\s+\w+\s+on)\s+)/.source),lookbehind:!0,inside:l},{pattern:s(/(\(\s*)(?=\s*\)\s*[\w(])/.source),lookbehind:!0,inside:l},{pattern:s(/(?=\s*\w+\s*[;=,(){:])/.source),inside:l}],trigger:{pattern:/(\btrigger\s+)\w+\b/i,lookbehind:!0,alias:"class-name"},keyword:a,function:/\b[a-z_]\w*(?=\s*\()/i,boolean:/\b(?:false|true)\b/i,number:/(?:\B\.\d+|\b\d+(?:\.\d+|L)?)\b/i,operator:/[!=](?:==?)?|\?\.?|&&|\|\||--|\+\+|[-+*/^&|]=?|:|<{1,3}=?/,punctuation:/[()\[\]{};,.]/}})(n)}return bp}var xp,PS;function UJ(){if(PS)return xp;PS=1,xp=e,e.displayName="apl",e.aliases=[];function e(t){t.languages.apl={comment:/(?:⍝|#[! ]).*$/m,string:{pattern:/'(?:[^'\r\n]|'')*'/,greedy:!0},number:/¯?(?:\d*\.?\b\d+(?:e[+¯]?\d+)?|¯|∞)(?:j¯?(?:(?:\d+(?:\.\d+)?|\.\d+)(?:e[+¯]?\d+)?|¯|∞))?/i,statement:/:[A-Z][a-z][A-Za-z]*\b/,"system-function":{pattern:/⎕[A-Z]+/i,alias:"function"},constant:/[⍬⌾#⎕⍞]/,function:/[-+×÷⌈⌊∣|⍳⍸?*⍟○!⌹<≤=>≥≠≡≢∊⍷∪∩~∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⊆⊇⌷⍋⍒⊤⊥⍕⍎⊣⊢⍁⍂≈⍯↗¤→]/,"monadic-operator":{pattern:/[\\\/⌿⍀¨⍨⌶&∥]/,alias:"operator"},"dyadic-operator":{pattern:/[.⍣⍠⍤∘⌸@⌺⍥]/,alias:"operator"},assignment:{pattern:/←/,alias:"keyword"},punctuation:/[\[;\]()◇⋄]/,dfn:{pattern:/[{}⍺⍵⍶⍹∇⍫:]/,alias:"builtin"}}}return xp}var yp,FS;function zJ(){if(FS)return yp;FS=1,yp=e,e.displayName="applescript",e.aliases=[];function e(t){t.languages.applescript={comment:[/\(\*(?:\(\*(?:[^*]|\*(?!\)))*\*\)|(?!\(\*)[\s\S])*?\*\)/,/--.+/,/#.+/],string:/"(?:\\.|[^"\\\r\n])*"/,number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e-?\d+)?\b/i,operator:[/[&=≠≤≥*+\-\/÷^]|[<>]=?/,/\b(?:(?:begin|end|start)s? with|(?:contains?|(?:does not|doesn't) contain)|(?:is|isn't|is not) (?:contained by|in)|(?:(?:is|isn't|is not) )?(?:greater|less) than(?: or equal)?(?: to)?|(?:comes|(?:does not|doesn't) come) (?:after|before)|(?:is|isn't|is not) equal(?: to)?|(?:(?:does not|doesn't) equal|equal to|equals|is not|isn't)|(?:a )?(?:ref(?: to)?|reference to)|(?:and|as|div|mod|not|or))\b/],keyword:/\b(?:about|above|after|against|apart from|around|aside from|at|back|before|beginning|behind|below|beneath|beside|between|but|by|considering|continue|copy|does|eighth|else|end|equal|error|every|exit|false|fifth|first|for|fourth|from|front|get|given|global|if|ignoring|in|instead of|into|is|it|its|last|local|me|middle|my|ninth|of|on|onto|out of|over|prop|property|put|repeat|return|returning|second|set|seventh|since|sixth|some|tell|tenth|that|the|then|third|through|thru|timeout|times|to|transaction|true|try|until|where|while|whose|with|without)\b/,"class-name":/\b(?:POSIX file|RGB color|alias|application|boolean|centimeters|centimetres|class|constant|cubic centimeters|cubic centimetres|cubic feet|cubic inches|cubic meters|cubic metres|cubic yards|date|degrees Celsius|degrees Fahrenheit|degrees Kelvin|feet|file|gallons|grams|inches|integer|kilograms|kilometers|kilometres|list|liters|litres|meters|metres|miles|number|ounces|pounds|quarts|real|record|reference|script|square feet|square kilometers|square kilometres|square meters|square metres|square miles|square yards|text|yards)\b/,punctuation:/[{}():,¬«»《》]/}}return yp}var vp,BS;function qJ(){if(BS)return vp;BS=1,vp=e,e.displayName="aql",e.aliases=[];function e(t){t.languages.aql={comment:/\/\/.*|\/\*[\s\S]*?\*\//,property:{pattern:/([{,]\s*)(?:(?!\d)\w+|(["'´`])(?:(?!\2)[^\\\r\n]|\\.)*\2)(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(["'])(?:(?!\1)[^\\\r\n]|\\.)*\1/,greedy:!0},identifier:{pattern:/([´`])(?:(?!\1)[^\\\r\n]|\\.)*\1/,greedy:!0},variable:/@@?\w+/,keyword:[{pattern:/(\bWITH\s+)COUNT(?=\s+INTO\b)/i,lookbehind:!0},/\b(?:AGGREGATE|ALL|AND|ANY|ASC|COLLECT|DESC|DISTINCT|FILTER|FOR|GRAPH|IN|INBOUND|INSERT|INTO|K_PATHS|K_SHORTEST_PATHS|LET|LIKE|LIMIT|NONE|NOT|NULL|OR|OUTBOUND|REMOVE|REPLACE|RETURN|SHORTEST_PATH|SORT|UPDATE|UPSERT|WINDOW|WITH)\b/i,{pattern:/(^|[^\w.[])(?:KEEP|PRUNE|SEARCH|TO)\b/i,lookbehind:!0},{pattern:/(^|[^\w.[])(?:CURRENT|NEW|OLD)\b/,lookbehind:!0},{pattern:/\bOPTIONS(?=\s*\{)/i}],function:/\b(?!\d)\w+(?=\s*\()/,boolean:/\b(?:false|true)\b/i,range:{pattern:/\.\./,alias:"operator"},number:[/\b0b[01]+/i,/\b0x[0-9a-f]+/i,/(?:\B\.\d+|\b(?:0|[1-9]\d*)(?:\.\d+)?)(?:e[+-]?\d+)?/i],operator:/\*{2,}|[=!]~|[!=<>]=?|&&|\|\||[-+*/%]/,punctuation:/::|[?.:,;()[\]{}]/}}return vp}var kp,$S;function fi(){if($S)return kp;$S=1,kp=e,e.displayName="c",e.aliases=[];function e(t){t.languages.c=t.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),t.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),t.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},t.languages.c.string],char:t.languages.c.char,comment:t.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:t.languages.c}}}}),t.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete t.languages.c.boolean}return kp}var wp,US;function Cy(){if(US)return wp;US=1;var e=fi();wp=t,t.displayName="cpp",t.aliases=[];function t(n){n.register(e),(function(r){var a=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,i=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,function(){return a.source});r.languages.cpp=r.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,function(){return a.source})),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:a,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),r.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,function(){return i})+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),r.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:r.languages.cpp}}}}),r.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),r.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:r.languages.extend("cpp",{})}}),r.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},r.languages.cpp["base-clause"])})(n)}return wp}var Sp,zS;function HJ(){if(zS)return Sp;zS=1;var e=Cy();Sp=t,t.displayName="arduino",t.aliases=["ino"];function t(n){n.register(e),n.languages.arduino=n.languages.extend("cpp",{keyword:/\b(?:String|array|bool|boolean|break|byte|case|catch|continue|default|do|double|else|finally|for|function|goto|if|in|instanceof|int|integer|long|loop|new|null|return|setup|string|switch|throw|try|void|while|word)\b/,constant:/\b(?:ANALOG_MESSAGE|DEFAULT|DIGITAL_MESSAGE|EXTERNAL|FIRMATA_STRING|HIGH|INPUT|INPUT_PULLUP|INTERNAL|INTERNAL1V1|INTERNAL2V56|LED_BUILTIN|LOW|OUTPUT|REPORT_ANALOG|REPORT_DIGITAL|SET_PIN_MODE|SYSEX_START|SYSTEM_RESET)\b/,builtin:/\b(?:Audio|BSSID|Bridge|Client|Console|EEPROM|Esplora|EsploraTFT|Ethernet|EthernetClient|EthernetServer|EthernetUDP|File|FileIO|FileSystem|Firmata|GPRS|GSM|GSMBand|GSMClient|GSMModem|GSMPIN|GSMScanner|GSMServer|GSMVoiceCall|GSM_SMS|HttpClient|IPAddress|IRread|Keyboard|KeyboardController|LiquidCrystal|LiquidCrystal_I2C|Mailbox|Mouse|MouseController|PImage|Process|RSSI|RobotControl|RobotMotor|SD|SPI|SSID|Scheduler|Serial|Server|Servo|SoftwareSerial|Stepper|Stream|TFT|Task|USBHost|WiFi|WiFiClient|WiFiServer|WiFiUDP|Wire|YunClient|YunServer|abs|addParameter|analogRead|analogReadResolution|analogReference|analogWrite|analogWriteResolution|answerCall|attach|attachGPRS|attachInterrupt|attached|autoscroll|available|background|beep|begin|beginPacket|beginSD|beginSMS|beginSpeaker|beginTFT|beginTransmission|beginWrite|bit|bitClear|bitRead|bitSet|bitWrite|blink|blinkVersion|buffer|changePIN|checkPIN|checkPUK|checkReg|circle|cityNameRead|cityNameWrite|clear|clearScreen|click|close|compassRead|config|connect|connected|constrain|cos|countryNameRead|countryNameWrite|createChar|cursor|debugPrint|delay|delayMicroseconds|detach|detachInterrupt|digitalRead|digitalWrite|disconnect|display|displayLogos|drawBMP|drawCompass|encryptionType|end|endPacket|endSMS|endTransmission|endWrite|exists|exitValue|fill|find|findUntil|flush|gatewayIP|get|getAsynchronously|getBand|getButton|getCurrentCarrier|getIMEI|getKey|getModifiers|getOemKey|getPINUsed|getResult|getSignalStrength|getSocket|getVoiceCallStatus|getXChange|getYChange|hangCall|height|highByte|home|image|interrupts|isActionDone|isDirectory|isListening|isPIN|isPressed|isValid|keyPressed|keyReleased|keyboardRead|knobRead|leftToRight|line|lineFollowConfig|listen|listenOnLocalhost|loadImage|localIP|lowByte|macAddress|maintain|map|max|messageAvailable|micros|millis|min|mkdir|motorsStop|motorsWrite|mouseDragged|mouseMoved|mousePressed|mouseReleased|move|noAutoscroll|noBlink|noBuffer|noCursor|noDisplay|noFill|noInterrupts|noListenOnLocalhost|noStroke|noTone|onReceive|onRequest|open|openNextFile|overflow|parseCommand|parseFloat|parseInt|parsePacket|pauseMode|peek|pinMode|playFile|playMelody|point|pointTo|position|pow|prepare|press|print|printFirmwareVersion|printVersion|println|process|processInput|pulseIn|put|random|randomSeed|read|readAccelerometer|readBlue|readButton|readBytes|readBytesUntil|readGreen|readJoystickButton|readJoystickSwitch|readJoystickX|readJoystickY|readLightSensor|readMessage|readMicrophone|readNetworks|readRed|readSlider|readString|readStringUntil|readTemperature|ready|rect|release|releaseAll|remoteIP|remoteNumber|remotePort|remove|requestFrom|retrieveCallingNumber|rewindDirectory|rightToLeft|rmdir|robotNameRead|robotNameWrite|run|runAsynchronously|runShellCommand|runShellCommandAsynchronously|running|scanNetworks|scrollDisplayLeft|scrollDisplayRight|seek|sendAnalog|sendDigitalPortPair|sendDigitalPorts|sendString|sendSysex|serialEvent|setBand|setBitOrder|setClockDivider|setCursor|setDNS|setDataMode|setFirmwareVersion|setMode|setPINUsed|setSpeed|setTextSize|setTimeout|shiftIn|shiftOut|shutdown|sin|size|sqrt|startLoop|step|stop|stroke|subnetMask|switchPIN|tan|tempoWrite|text|tone|transfer|tuneWrite|turn|updateIR|userNameRead|userNameWrite|voiceCall|waitContinue|width|write|writeBlue|writeGreen|writeJSON|writeMessage|writeMicroseconds|writeRGB|writeRed|yield)\b/}),n.languages.ino=n.languages.arduino}return Sp}var Ep,qS;function GJ(){if(qS)return Ep;qS=1,Ep=e,e.displayName="arff",e.aliases=[];function e(t){t.languages.arff={comment:/%.*/,string:{pattern:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:/@(?:attribute|data|end|relation)\b/i,number:/\b\d+(?:\.\d+)?\b/,punctuation:/[{},]/}}return Ep}var Cp,HS;function VJ(){if(HS)return Cp;HS=1,Cp=e,e.displayName="asciidoc",e.aliases=["adoc"];function e(t){(function(n){var r={pattern:/(^[ \t]*)\[(?!\[)(?:(["'$`])(?:(?!\2)[^\\]|\\.)*\2|\[(?:[^\[\]\\]|\\.)*\]|[^\[\]\\"'$`]|\\.)*\]/m,lookbehind:!0,inside:{quoted:{pattern:/([$`])(?:(?!\1)[^\\]|\\.)*\1/,inside:{punctuation:/^[$`]|[$`]$/}},interpreted:{pattern:/'(?:[^'\\]|\\.)*'/,inside:{punctuation:/^'|'$/}},string:/"(?:[^"\\]|\\.)*"/,variable:/\w+(?==)/,punctuation:/^\[|\]$|,/,operator:/=/,"attr-value":/(?!^\s+$).+/}},a=n.languages.asciidoc={"comment-block":{pattern:/^(\/{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1/m,alias:"comment"},table:{pattern:/^\|={3,}(?:(?:\r?\n|\r(?!\n)).*)*?(?:\r?\n|\r)\|={3,}$/m,inside:{specifiers:{pattern:/(?:(?:(?:\d+(?:\.\d+)?|\.\d+)[+*](?:[<^>](?:\.[<^>])?|\.[<^>])?|[<^>](?:\.[<^>])?|\.[<^>])[a-z]*|[a-z]+)(?=\|)/,alias:"attr-value"},punctuation:{pattern:/(^|[^\\])[|!]=*/,lookbehind:!0}}},"passthrough-block":{pattern:/^(\+{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^\++|\++$/}},"literal-block":{pattern:/^(-{4,}|\.{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^(?:-+|\.+)|(?:-+|\.+)$/}},"other-block":{pattern:/^(--|\*{4,}|_{4,}|={4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^(?:-+|\*+|_+|=+)|(?:-+|\*+|_+|=+)$/}},"list-punctuation":{pattern:/(^[ \t]*)(?:-|\*{1,5}|\.{1,5}|(?:[a-z]|\d+)\.|[xvi]+\))(?= )/im,lookbehind:!0,alias:"punctuation"},"list-label":{pattern:/(^[ \t]*)[a-z\d].+(?::{2,4}|;;)(?=\s)/im,lookbehind:!0,alias:"symbol"},"indented-block":{pattern:/((\r?\n|\r)\2)([ \t]+)\S.*(?:(?:\r?\n|\r)\3.+)*(?=\2{2}|$)/,lookbehind:!0},comment:/^\/\/.*/m,title:{pattern:/^.+(?:\r?\n|\r)(?:={3,}|-{3,}|~{3,}|\^{3,}|\+{3,})$|^={1,5} .+|^\.(?![\s.]).*/m,alias:"important",inside:{punctuation:/^(?:\.|=+)|(?:=+|-+|~+|\^+|\++)$/}},"attribute-entry":{pattern:/^:[^:\r\n]+:(?: .*?(?: \+(?:\r?\n|\r).*?)*)?$/m,alias:"tag"},attributes:r,hr:{pattern:/^'{3,}$/m,alias:"punctuation"},"page-break":{pattern:/^<{3,}$/m,alias:"punctuation"},admonition:{pattern:/^(?:CAUTION|IMPORTANT|NOTE|TIP|WARNING):/m,alias:"keyword"},callout:[{pattern:/(^[ \t]*)/m,lookbehind:!0,alias:"symbol"},{pattern:/<\d+>/,alias:"symbol"}],macro:{pattern:/\b[a-z\d][a-z\d-]*::?(?:[^\s\[\]]*\[(?:[^\]\\"']|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/,inside:{function:/^[a-z\d-]+(?=:)/,punctuation:/^::?/,attributes:{pattern:/(?:\[(?:[^\]\\"']|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/,inside:r.inside}}},inline:{pattern:/(^|[^\\])(?:(?:\B\[(?:[^\]\\"']|(["'])(?:(?!\2)[^\\]|\\.)*\2|\\.)*\])?(?:\b_(?!\s)(?: _|[^_\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: _|[^_\\\r\n]|\\.)+)*_\b|\B``(?!\s).+?(?:(?:\r?\n|\r).+?)*''\B|\B`(?!\s)(?:[^`'\s]|\s+\S)+['`]\B|\B(['*+#])(?!\s)(?: \3|(?!\3)[^\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: \3|(?!\3)[^\\\r\n]|\\.)+)*\3\B)|(?:\[(?:[^\]\\"']|(["'])(?:(?!\4)[^\\]|\\.)*\4|\\.)*\])?(?:(__|\*\*|\+\+\+?|##|\$\$|[~^]).+?(?:(?:\r?\n|\r).+?)*\5|\{[^}\r\n]+\}|\[\[\[?.+?(?:(?:\r?\n|\r).+?)*\]?\]\]|<<.+?(?:(?:\r?\n|\r).+?)*>>|\(\(\(?.+?(?:(?:\r?\n|\r).+?)*\)?\)\)))/m,lookbehind:!0,inside:{attributes:r,url:{pattern:/^(?:\[\[\[?.+?\]?\]\]|<<.+?>>)$/,inside:{punctuation:/^(?:\[\[\[?|<<)|(?:\]\]\]?|>>)$/}},"attribute-ref":{pattern:/^\{.+\}$/,inside:{variable:{pattern:/(^\{)[a-z\d,+_-]+/,lookbehind:!0},operator:/^[=?!#%@$]|!(?=[:}])/,punctuation:/^\{|\}$|::?/}},italic:{pattern:/^(['_])[\s\S]+\1$/,inside:{punctuation:/^(?:''?|__?)|(?:''?|__?)$/}},bold:{pattern:/^\*[\s\S]+\*$/,inside:{punctuation:/^\*\*?|\*\*?$/}},punctuation:/^(?:``?|\+{1,3}|##?|\$\$|[~^]|\(\(\(?)|(?:''?|\+{1,3}|##?|\$\$|[~^`]|\)?\)\))$/}},replacement:{pattern:/\((?:C|R|TM)\)/,alias:"builtin"},entity:/&#?[\da-z]{1,8};/i,"line-continuation":{pattern:/(^| )\+$/m,lookbehind:!0,alias:"punctuation"}};function i(s){s=s.split(" ");for(var l={},c=0,u=s.length;c>=?|<<=?|&&?|\|\|?|[-+*/%&|^!=<>?]=?/,punctuation:/[(),:]/}}return Tp}var Ap,WS;function lu(){if(WS)return Ap;WS=1,Ap=e,e.displayName="csharp",e.aliases=["dotnet","cs"];function e(t){(function(n){function r(K,V){return K.replace(/<<(\d+)>>/g,function(L,le){return"(?:"+V[+le]+")"})}function a(K,V,L){return RegExp(r(K,V),"")}function i(K,V){for(var L=0;L>/g,function(){return"(?:"+K+")"});return K.replace(/<>/g,"[^\\s\\S]")}var s={type:"bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",typeDeclaration:"class enum interface record struct",contextual:"add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",other:"abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield"};function l(K){return"\\b(?:"+K.trim().replace(/ /g,"|")+")\\b"}var c=l(s.typeDeclaration),u=RegExp(l(s.type+" "+s.typeDeclaration+" "+s.contextual+" "+s.other)),d=l(s.typeDeclaration+" "+s.contextual+" "+s.other),p=l(s.type+" "+s.typeDeclaration+" "+s.other),m=i(/<(?:[^<>;=+\-*/%&|^]|<>)*>/.source,2),f=i(/\((?:[^()]|<>)*\)/.source,2),g=/@?\b[A-Za-z_]\w*\b/.source,b=r(/<<0>>(?:\s*<<1>>)?/.source,[g,m]),x=r(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source,[d,b]),k=/\[\s*(?:,\s*)*\]/.source,y=r(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,[x,k]),v=r(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,[m,f,k]),E=r(/\(<<0>>+(?:,<<0>>+)+\)/.source,[v]),N=r(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,[E,x,k]),w={keyword:u,punctuation:/[<>()?,.:[\]]/},T=/'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source,j=/"(?:\\.|[^\\"\r\n])*"/.source,_=/@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;n.languages.csharp=n.languages.extend("clike",{string:[{pattern:a(/(^|[^$\\])<<0>>/.source,[_]),lookbehind:!0,greedy:!0},{pattern:a(/(^|[^@$\\])<<0>>/.source,[j]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:a(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source,[x]),lookbehind:!0,inside:w},{pattern:a(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source,[g,N]),lookbehind:!0,inside:w},{pattern:a(/(\busing\s+)<<0>>(?=\s*=)/.source,[g]),lookbehind:!0},{pattern:a(/(\b<<0>>\s+)<<1>>/.source,[c,b]),lookbehind:!0,inside:w},{pattern:a(/(\bcatch\s*\(\s*)<<0>>/.source,[x]),lookbehind:!0,inside:w},{pattern:a(/(\bwhere\s+)<<0>>/.source,[g]),lookbehind:!0},{pattern:a(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source,[y]),lookbehind:!0,inside:w},{pattern:a(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source,[N,p,g]),inside:w}],keyword:u,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),n.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),n.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:a(/([(,]\s*)<<0>>(?=\s*:)/.source,[g]),lookbehind:!0,alias:"punctuation"}}),n.languages.insertBefore("csharp","class-name",{namespace:{pattern:a(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,[g]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:a(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source,[f]),lookbehind:!0,alias:"class-name",inside:w},"return-type":{pattern:a(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,[N,x]),inside:w,alias:"class-name"},"constructor-invocation":{pattern:a(/(\bnew\s+)<<0>>(?=\s*[[({])/.source,[N]),lookbehind:!0,inside:w,alias:"class-name"},"generic-method":{pattern:a(/<<0>>\s*<<1>>(?=\s*\()/.source,[g,m]),inside:{function:a(/^<<0>>/.source,[g]),generic:{pattern:RegExp(m),alias:"class-name",inside:w}}},"type-list":{pattern:a(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source,[c,b,g,N,u.source,f,/\bnew\s*\(\s*\)/.source]),lookbehind:!0,inside:{"record-arguments":{pattern:a(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source,[b,f]),lookbehind:!0,greedy:!0,inside:n.languages.csharp},keyword:u,"class-name":{pattern:RegExp(N),greedy:!0,inside:w},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var C=j+"|"+T,O=r(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,[C]),I=i(r(/[^"'/()]|<<0>>|\(<>*\)/.source,[O]),2),z=/\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source,M=r(/<<0>>(?:\s*\(<<1>>*\))?/.source,[x,I]);n.languages.insertBefore("csharp","class-name",{attribute:{pattern:a(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source,[z,M]),lookbehind:!0,greedy:!0,inside:{target:{pattern:a(/^<<0>>(?=\s*:)/.source,[z]),alias:"keyword"},"attribute-arguments":{pattern:a(/\(<<0>>*\)/.source,[I]),inside:n.languages.csharp},"class-name":{pattern:RegExp(x),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var P=/:[^}\r\n]+/.source,B=i(r(/[^"'/()]|<<0>>|\(<>*\)/.source,[O]),2),$=r(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[B,P]),U=i(r(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<>*\)/.source,[C]),2),q=r(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[U,P]);function A(K,V){return{interpolation:{pattern:a(/((?:^|[^{])(?:\{\{)*)<<0>>/.source,[K]),lookbehind:!0,inside:{"format-string":{pattern:a(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source,[V,P]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:n.languages.csharp}}},string:/[\s\S]+/}}n.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:a(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,[$]),lookbehind:!0,greedy:!0,inside:A($,B)},{pattern:a(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source,[q]),lookbehind:!0,greedy:!0,inside:A(q,U)}],char:{pattern:RegExp(T),greedy:!0}}),n.languages.dotnet=n.languages.cs=n.languages.csharp})(t)}return Ap}var Ip,KS;function YJ(){if(KS)return Ip;KS=1;var e=lu();Ip=t,t.displayName="aspnet",t.aliases=[];function t(n){n.register(e),n.languages.aspnet=n.languages.extend("markup",{"page-directive":{pattern:/<%\s*@.*%>/,alias:"tag",inside:{"page-directive":{pattern:/<%\s*@\s*(?:Assembly|Control|Implements|Import|Master(?:Type)?|OutputCache|Page|PreviousPageType|Reference|Register)?|%>/i,alias:"tag"},rest:n.languages.markup.tag.inside}},directive:{pattern:/<%.*%>/,alias:"tag",inside:{directive:{pattern:/<%\s*?[$=%#:]{0,2}|%>/,alias:"tag"},rest:n.languages.csharp}}}),n.languages.aspnet.tag.pattern=/<(?!%)\/?[^\s>\/]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/,n.languages.insertBefore("inside","punctuation",{directive:n.languages.aspnet.directive},n.languages.aspnet.tag.inside["attr-value"]),n.languages.insertBefore("aspnet","comment",{"asp-comment":{pattern:/<%--[\s\S]*?--%>/,alias:["asp","comment"]}}),n.languages.insertBefore("aspnet",n.languages.javascript?"script":"tag",{"asp-script":{pattern:/(]*>)[\s\S]*?(?=<\/script>)/i,lookbehind:!0,alias:["asp","script"],inside:n.languages.csharp||{}}})}return Ip}var Rp,YS;function XJ(){if(YS)return Rp;YS=1,Rp=e,e.displayName="autohotkey",e.aliases=[];function e(t){t.languages.autohotkey={comment:[{pattern:/(^|\s);.*/,lookbehind:!0},{pattern:/(^[\t ]*)\/\*(?:[\r\n](?![ \t]*\*\/)|[^\r\n])*(?:[\r\n][ \t]*\*\/)?/m,lookbehind:!0,greedy:!0}],tag:{pattern:/^([ \t]*)[^\s,`":]+(?=:[ \t]*$)/m,lookbehind:!0},string:/"(?:[^"\n\r]|"")*"/,variable:/%\w+%/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/\?|\/\/?=?|:=|\|[=|]?|&[=&]?|\+[=+]?|-[=-]?|\*[=*]?|<(?:<=?|>|=)?|>>?=?|[.^!=~]=?|\b(?:AND|NOT|OR)\b/,boolean:/\b(?:false|true)\b/,selector:/\b(?:AutoTrim|BlockInput|Break|Click|ClipWait|Continue|Control|ControlClick|ControlFocus|ControlGet|ControlGetFocus|ControlGetPos|ControlGetText|ControlMove|ControlSend|ControlSendRaw|ControlSetText|CoordMode|Critical|DetectHiddenText|DetectHiddenWindows|Drive|DriveGet|DriveSpaceFree|EnvAdd|EnvDiv|EnvGet|EnvMult|EnvSet|EnvSub|EnvUpdate|Exit|ExitApp|FileAppend|FileCopy|FileCopyDir|FileCreateDir|FileCreateShortcut|FileDelete|FileEncoding|FileGetAttrib|FileGetShortcut|FileGetSize|FileGetTime|FileGetVersion|FileInstall|FileMove|FileMoveDir|FileRead|FileReadLine|FileRecycle|FileRecycleEmpty|FileRemoveDir|FileSelectFile|FileSelectFolder|FileSetAttrib|FileSetTime|FormatTime|GetKeyState|Gosub|Goto|GroupActivate|GroupAdd|GroupClose|GroupDeactivate|Gui|GuiControl|GuiControlGet|Hotkey|ImageSearch|IniDelete|IniRead|IniWrite|Input|InputBox|KeyWait|ListHotkeys|ListLines|ListVars|Loop|Menu|MouseClick|MouseClickDrag|MouseGetPos|MouseMove|MsgBox|OnExit|OutputDebug|Pause|PixelGetColor|PixelSearch|PostMessage|Process|Progress|Random|RegDelete|RegRead|RegWrite|Reload|Repeat|Return|Run|RunAs|RunWait|Send|SendEvent|SendInput|SendMessage|SendMode|SendPlay|SendRaw|SetBatchLines|SetCapslockState|SetControlDelay|SetDefaultMouseSpeed|SetEnv|SetFormat|SetKeyDelay|SetMouseDelay|SetNumlockState|SetRegView|SetScrollLockState|SetStoreCapslockMode|SetTimer|SetTitleMatchMode|SetWinDelay|SetWorkingDir|Shutdown|Sleep|Sort|SoundBeep|SoundGet|SoundGetWaveVolume|SoundPlay|SoundSet|SoundSetWaveVolume|SplashImage|SplashTextOff|SplashTextOn|SplitPath|StatusBarGetText|StatusBarWait|StringCaseSense|StringGetPos|StringLeft|StringLen|StringLower|StringMid|StringReplace|StringRight|StringSplit|StringTrimLeft|StringTrimRight|StringUpper|Suspend|SysGet|Thread|ToolTip|Transform|TrayTip|URLDownloadToFile|WinActivate|WinActivateBottom|WinClose|WinGet|WinGetActiveStats|WinGetActiveTitle|WinGetClass|WinGetPos|WinGetText|WinGetTitle|WinHide|WinKill|WinMaximize|WinMenuSelectItem|WinMinimize|WinMinimizeAll|WinMinimizeAllUndo|WinMove|WinRestore|WinSet|WinSetTitle|WinShow|WinWait|WinWaitActive|WinWaitClose|WinWaitNotActive)\b/i,constant:/\b(?:a_ahkpath|a_ahkversion|a_appdata|a_appdatacommon|a_autotrim|a_batchlines|a_caretx|a_carety|a_computername|a_controldelay|a_cursor|a_dd|a_ddd|a_dddd|a_defaultmousespeed|a_desktop|a_desktopcommon|a_detecthiddentext|a_detecthiddenwindows|a_endchar|a_eventinfo|a_exitreason|a_fileencoding|a_formatfloat|a_formatinteger|a_gui|a_guicontrol|a_guicontrolevent|a_guievent|a_guiheight|a_guiwidth|a_guix|a_guiy|a_hour|a_iconfile|a_iconhidden|a_iconnumber|a_icontip|a_index|a_ipaddress1|a_ipaddress2|a_ipaddress3|a_ipaddress4|a_is64bitos|a_isadmin|a_iscompiled|a_iscritical|a_ispaused|a_issuspended|a_isunicode|a_keydelay|a_language|a_lasterror|a_linefile|a_linenumber|a_loopfield|a_loopfileattrib|a_loopfiledir|a_loopfileext|a_loopfilefullpath|a_loopfilelongpath|a_loopfilename|a_loopfileshortname|a_loopfileshortpath|a_loopfilesize|a_loopfilesizekb|a_loopfilesizemb|a_loopfiletimeaccessed|a_loopfiletimecreated|a_loopfiletimemodified|a_loopreadline|a_loopregkey|a_loopregname|a_loopregsubkey|a_loopregtimemodified|a_loopregtype|a_mday|a_min|a_mm|a_mmm|a_mmmm|a_mon|a_mousedelay|a_msec|a_mydocuments|a_now|a_nowutc|a_numbatchlines|a_ostype|a_osversion|a_priorhotkey|a_priorkey|a_programfiles|a_programs|a_programscommon|a_ptrsize|a_regview|a_screendpi|a_screenheight|a_screenwidth|a_scriptdir|a_scriptfullpath|a_scripthwnd|a_scriptname|a_sec|a_space|a_startmenu|a_startmenucommon|a_startup|a_startupcommon|a_stringcasesense|a_tab|a_temp|a_thisfunc|a_thishotkey|a_thislabel|a_thismenu|a_thismenuitem|a_thismenuitempos|a_tickcount|a_timeidle|a_timeidlephysical|a_timesincepriorhotkey|a_timesincethishotkey|a_titlematchmode|a_titlematchmodespeed|a_username|a_wday|a_windelay|a_windir|a_workingdir|a_yday|a_year|a_yweek|a_yyyy|clipboard|clipboardall|comspec|errorlevel|programfiles)\b/i,builtin:/\b(?:abs|acos|asc|asin|atan|ceil|chr|class|comobjactive|comobjarray|comobjconnect|comobjcreate|comobjerror|comobjflags|comobjget|comobjquery|comobjtype|comobjvalue|cos|dllcall|exp|fileexist|Fileopen|floor|format|il_add|il_create|il_destroy|instr|isfunc|islabel|IsObject|ln|log|ltrim|lv_add|lv_delete|lv_deletecol|lv_getcount|lv_getnext|lv_gettext|lv_insert|lv_insertcol|lv_modify|lv_modifycol|lv_setimagelist|mod|numget|numput|onmessage|regexmatch|regexreplace|registercallback|round|rtrim|sb_seticon|sb_setparts|sb_settext|sin|sqrt|strlen|strreplace|strsplit|substr|tan|tv_add|tv_delete|tv_get|tv_getchild|tv_getcount|tv_getnext|tv_getparent|tv_getprev|tv_getselection|tv_gettext|tv_modify|varsetcapacity|winactive|winexist|__Call|__Get|__New|__Set)\b/i,symbol:/\b(?:alt|altdown|altup|appskey|backspace|browser_back|browser_favorites|browser_forward|browser_home|browser_refresh|browser_search|browser_stop|bs|capslock|ctrl|ctrlbreak|ctrldown|ctrlup|del|delete|down|end|enter|esc|escape|f1|f10|f11|f12|f13|f14|f15|f16|f17|f18|f19|f2|f20|f21|f22|f23|f24|f3|f4|f5|f6|f7|f8|f9|home|ins|insert|joy1|joy10|joy11|joy12|joy13|joy14|joy15|joy16|joy17|joy18|joy19|joy2|joy20|joy21|joy22|joy23|joy24|joy25|joy26|joy27|joy28|joy29|joy3|joy30|joy31|joy32|joy4|joy5|joy6|joy7|joy8|joy9|joyaxes|joybuttons|joyinfo|joyname|joypov|joyr|joyu|joyv|joyx|joyy|joyz|lalt|launch_app1|launch_app2|launch_mail|launch_media|lbutton|lcontrol|lctrl|left|lshift|lwin|lwindown|lwinup|mbutton|media_next|media_play_pause|media_prev|media_stop|numlock|numpad0|numpad1|numpad2|numpad3|numpad4|numpad5|numpad6|numpad7|numpad8|numpad9|numpadadd|numpadclear|numpaddel|numpaddiv|numpaddot|numpaddown|numpadend|numpadenter|numpadhome|numpadins|numpadleft|numpadmult|numpadpgdn|numpadpgup|numpadright|numpadsub|numpadup|pgdn|pgup|printscreen|ralt|rbutton|rcontrol|rctrl|right|rshift|rwin|rwindown|rwinup|scrolllock|shift|shiftdown|shiftup|space|tab|up|volume_down|volume_mute|volume_up|wheeldown|wheelleft|wheelright|wheelup|xbutton1|xbutton2)\b/i,important:/#\b(?:AllowSameLineComments|ClipboardTimeout|CommentFlag|DerefChar|ErrorStdOut|EscapeChar|HotkeyInterval|HotkeyModifierTimeout|Hotstring|If|IfTimeout|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Include|IncludeAgain|InputLevel|InstallKeybdHook|InstallMouseHook|KeyHistory|MaxHotkeysPerInterval|MaxMem|MaxThreads|MaxThreadsBuffer|MaxThreadsPerHotkey|MenuMaskKey|NoEnv|NoTrayIcon|Persistent|SingleInstance|UseHook|Warn|WinActivateForce)\b/i,keyword:/\b(?:Abort|AboveNormal|Add|ahk_class|ahk_exe|ahk_group|ahk_id|ahk_pid|All|Alnum|Alpha|AltSubmit|AltTab|AltTabAndMenu|AltTabMenu|AltTabMenuDismiss|AlwaysOnTop|AutoSize|Background|BackgroundTrans|BelowNormal|between|BitAnd|BitNot|BitOr|BitShiftLeft|BitShiftRight|BitXOr|Bold|Border|Button|ByRef|Catch|Checkbox|Checked|CheckedGray|Choose|ChooseString|Close|Color|ComboBox|Contains|ControlList|Count|Date|DateTime|Days|DDL|Default|DeleteAll|Delimiter|Deref|Destroy|Digit|Disable|Disabled|DropDownList|Edit|Eject|Else|Enable|Enabled|Error|Exist|Expand|ExStyle|FileSystem|Finally|First|Flash|Float|FloatFast|Focus|Font|for|global|Grid|Group|GroupBox|GuiClose|GuiContextMenu|GuiDropFiles|GuiEscape|GuiSize|Hdr|Hidden|Hide|High|HKCC|HKCR|HKCU|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_LOCAL_MACHINE|HKEY_USERS|HKLM|HKU|Hours|HScroll|Icon|IconSmall|ID|IDLast|If|IfEqual|IfExist|IfGreater|IfGreaterOrEqual|IfInString|IfLess|IfLessOrEqual|IfMsgBox|IfNotEqual|IfNotExist|IfNotInString|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Ignore|ImageList|in|Integer|IntegerFast|Interrupt|is|italic|Join|Label|LastFound|LastFoundExist|Limit|Lines|List|ListBox|ListView|local|Lock|Logoff|Low|Lower|Lowercase|MainWindow|Margin|Maximize|MaximizeBox|MaxSize|Minimize|MinimizeBox|MinMax|MinSize|Minutes|MonthCal|Mouse|Move|Multi|NA|No|NoActivate|NoDefault|NoHide|NoIcon|NoMainWindow|norm|Normal|NoSort|NoSortHdr|NoStandard|Not|NoTab|NoTimers|Number|Off|Ok|On|OwnDialogs|Owner|Parse|Password|Picture|Pixel|Pos|Pow|Priority|ProcessName|Radio|Range|Read|ReadOnly|Realtime|Redraw|Region|REG_BINARY|REG_DWORD|REG_EXPAND_SZ|REG_MULTI_SZ|REG_SZ|Relative|Rename|Report|Resize|Restore|Retry|RGB|Screen|Seconds|Section|Serial|SetLabel|ShiftAltTab|Show|Single|Slider|SortDesc|Standard|static|Status|StatusBar|StatusCD|strike|Style|Submit|SysMenu|Tab2|TabStop|Text|Theme|Throw|Tile|ToggleCheck|ToggleEnable|ToolWindow|Top|Topmost|TransColor|Transparent|Tray|TreeView|Try|TryAgain|Type|UnCheck|underline|Unicode|Unlock|Until|UpDown|Upper|Uppercase|UseErrorLevel|Vis|VisFirst|Visible|VScroll|Wait|WaitClose|WantCtrlA|WantF2|WantReturn|While|Wrap|Xdigit|xm|xp|xs|Yes|ym|yp|ys)\b/i,function:/[^(); \t,\n+*\-=?>:\\\/<&%\[\]]+(?=\()/,punctuation:/[{}[\]():,]/}}return Rp}var _p,XS;function ZJ(){if(XS)return _p;XS=1,_p=e,e.displayName="autoit",e.aliases=[];function e(t){t.languages.autoit={comment:[/;.*/,{pattern:/(^[\t ]*)#(?:comments-start|cs)[\s\S]*?^[ \t]*#(?:ce|comments-end)/m,lookbehind:!0}],url:{pattern:/(^[\t ]*#include\s+)(?:<[^\r\n>]+>|"[^\r\n"]+")/m,lookbehind:!0},string:{pattern:/(["'])(?:\1\1|(?!\1)[^\r\n])*\1/,greedy:!0,inside:{variable:/([%$@])\w+\1/}},directive:{pattern:/(^[\t ]*)#[\w-]+/m,lookbehind:!0,alias:"keyword"},function:/\b\w+(?=\()/,variable:/[$@]\w+/,keyword:/\b(?:Case|Const|Continue(?:Case|Loop)|Default|Dim|Do|Else(?:If)?|End(?:Func|If|Select|Switch|With)|Enum|Exit(?:Loop)?|For|Func|Global|If|In|Local|Next|Null|ReDim|Select|Static|Step|Switch|Then|To|Until|Volatile|WEnd|While|With)\b/i,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b/i,boolean:/\b(?:False|True)\b/i,operator:/<[=>]?|[-+*\/=&>]=?|[?^]|\b(?:And|Not|Or)\b/i,punctuation:/[\[\]().,:]/}}return _p}var jp,ZS;function JJ(){if(ZS)return jp;ZS=1,jp=e,e.displayName="avisynth",e.aliases=["avs"];function e(t){(function(n){function r(d,p){return d.replace(/<<(\d+)>>/g,function(m,f){return p[+f]})}function a(d,p,m){return RegExp(r(d,p),m)}var i=/bool|clip|float|int|string|val/.source,s=[/is(?:bool|clip|float|int|string)|defined|(?:(?:internal)?function|var)?exists?/.source,/apply|assert|default|eval|import|nop|select|undefined/.source,/opt_(?:allowfloataudio|avipadscanlines|dwchannelmask|enable_(?:b64a|planartopackedrgb|v210|y3_10_10|y3_10_16)|usewaveextensible|vdubplanarhack)|set(?:cachemode|maxcpu|memorymax|planarlegacyalignment|workingdir)/.source,/hex(?:value)?|value/.source,/abs|ceil|continued(?:denominator|numerator)?|exp|floor|fmod|frac|log(?:10)?|max|min|muldiv|pi|pow|rand|round|sign|spline|sqrt/.source,/a?sinh?|a?cosh?|a?tan[2h]?/.source,/(?:bit(?:and|not|x?or|[lr]?shift[aslu]?|sh[lr]|sa[lr]|[lr]rotatel?|ro[rl]|te?st|set(?:count)?|cl(?:ea)?r|ch(?:an)?ge?))/.source,/average(?:[bgr]|chroma[uv]|luma)|(?:[rgb]|chroma[uv]|luma|rgb|[yuv](?=difference(?:fromprevious|tonext)))difference(?:fromprevious|tonext)?|[yuvrgb]plane(?:median|min|max|minmaxdifference)/.source,/getprocessinfo|logmsg|script(?:dir(?:utf8)?|file(?:utf8)?|name(?:utf8)?)|setlogparams/.source,/chr|(?:fill|find|left|mid|replace|rev|right)str|format|[lu]case|ord|str(?:cmpi?|fromutf8|len|toutf8)|time|trim(?:all|left|right)/.source,/isversionorgreater|version(?:number|string)/.source,/buildpixeltype|colorspacenametopixeltype/.source,/addautoloaddir|on(?:cpu|cuda)|prefetch|setfiltermtmode/.source].join("|"),l=[/has(?:audio|video)/.source,/height|width/.source,/frame(?:count|rate)|framerate(?:denominator|numerator)/.source,/getparity|is(?:field|frame)based/.source,/bitspercomponent|componentsize|hasalpha|is(?:planar(?:rgba?)?|interleaved|rgb(?:24|32|48|64)?|y(?:8|u(?:va?|y2))?|yv(?:12|16|24|411)|420|422|444|packedrgb)|numcomponents|pixeltype/.source,/audio(?:bits|channels|duration|length(?:[fs]|hi|lo)?|rate)|isaudio(?:float|int)/.source].join("|"),c=[/avi(?:file)?source|directshowsource|image(?:reader|source|sourceanim)|opendmlsource|segmented(?:avisource|directshowsource)|wavsource/.source,/coloryuv|convertbacktoyuy2|convertto(?:RGB(?:24|32|48|64)|(?:planar)?RGBA?|Y8?|YV(?:12|16|24|411)|YUVA?(?:411|420|422|444)|YUY2)|fixluminance|gr[ae]yscale|invert|levels|limiter|mergea?rgb|merge(?:chroma|luma)|rgbadjust|show(?:alpha|blue|green|red)|swapuv|tweak|[uv]toy8?|ytouv/.source,/(?:colorkey|reset)mask|layer|mask(?:hs)?|merge|overlay|subtract/.source,/addborders|(?:bicubic|bilinear|blackman|gauss|lanczos4|lanczos|point|sinc|spline(?:16|36|64))resize|crop(?:bottom)?|flip(?:horizontal|vertical)|(?:horizontal|vertical)?reduceby2|letterbox|skewrows|turn(?:180|left|right)/.source,/blur|fixbrokenchromaupsampling|generalconvolution|(?:spatial|temporal)soften|sharpen/.source,/trim|(?:un)?alignedsplice|(?:assume|assumescaled|change|convert)FPS|(?:delete|duplicate)frame|dissolve|fade(?:in|io|out)[02]?|freezeframe|interleave|loop|reverse|select(?:even|odd|(?:range)?every)/.source,/assume[bt]ff|assume(?:field|frame)based|bob|complementparity|doubleweave|peculiarblend|pulldown|separate(?:columns|fields|rows)|swapfields|weave(?:columns|rows)?/.source,/amplify(?:db)?|assumesamplerate|audiodub(?:ex)?|audiotrim|convertaudioto(?:(?:8|16|24|32)bit|float)|converttomono|delayaudio|ensurevbrmp3sync|get(?:left|right)?channel|kill(?:audio|video)|mergechannels|mixaudio|monotostereo|normalize|resampleaudio|ssrc|supereq|timestretch/.source,/animate|applyrange|conditional(?:filter|reader|select)|frameevaluate|scriptclip|tcp(?:server|source)|writefile(?:end|if|start)?/.source,/imagewriter/.source,/blackness|blankclip|colorbars(?:hd)?|compare|dumpfiltergraph|echo|histogram|info|messageclip|preroll|setgraphanalysis|show(?:framenumber|smpte|time)|showfiveversions|stack(?:horizontal|vertical)|subtitle|tone|version/.source].join("|"),u=[s,l,c].join("|");n.languages.avisynth={comment:[{pattern:/(^|[^\\])\[\*(?:[^\[*]|\[(?!\*)|\*(?!\])|\[\*(?:[^\[*]|\[(?!\*)|\*(?!\]))*\*\])*\*\]/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\$])#.*/,lookbehind:!0,greedy:!0}],argument:{pattern:a(/\b(?:<<0>>)\s+("?)\w+\1/.source,[i],"i"),inside:{keyword:/^\w+/}},"argument-label":{pattern:/([,(][\s\\]*)\w+\s*=(?!=)/,lookbehind:!0,inside:{"argument-name":{pattern:/^\w+/,alias:"punctuation"},punctuation:/=$/}},string:[{pattern:/"""[\s\S]*?"""/,greedy:!0},{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0,inside:{constant:{pattern:/\b(?:DEFAULT_MT_MODE|(?:MAINSCRIPT|PROGRAM|SCRIPT)DIR|(?:MACHINE|USER)_(?:CLASSIC|PLUS)_PLUGINS)\b/}}}],variable:/\b(?:last)\b/i,boolean:/\b(?:false|no|true|yes)\b/i,keyword:/\b(?:catch|else|for|function|global|if|return|try|while|__END__)\b/i,constant:/\bMT_(?:MULTI_INSTANCE|NICE_FILTER|SERIALIZED|SPECIAL_MT)\b/,"builtin-function":{pattern:a(/\b(?:<<0>>)\b/.source,[u],"i"),alias:"function"},"type-cast":{pattern:a(/\b(?:<<0>>)(?=\s*\()/.source,[i],"i"),alias:"keyword"},function:{pattern:/\b[a-z_]\w*(?=\s*\()|(\.)[a-z_]\w*\b/i,lookbehind:!0},"line-continuation":{pattern:/(^[ \t]*)\\|\\(?=[ \t]*$)/m,lookbehind:!0,alias:"punctuation"},number:/\B\$(?:[\da-f]{6}|[\da-f]{8})\b|(?:(?:\b|\B-)\d+(?:\.\d*)?\b|\B\.\d+\b)/i,operator:/\+\+?|[!=<>]=?|&&|\|\||[?:*/%-]/,punctuation:/[{}\[\]();,.]/},n.languages.avs=n.languages.avisynth})(t)}return jp}var Op,JS;function QJ(){if(JS)return Op;JS=1,Op=e,e.displayName="avroIdl",e.aliases=[];function e(t){t.languages["avro-idl"]={comment:{pattern:/\/\/.*|\/\*[\s\S]*?\*\//,greedy:!0},string:{pattern:/(^|[^\\])"(?:[^\r\n"\\]|\\.)*"/,lookbehind:!0,greedy:!0},annotation:{pattern:/@(?:[$\w.-]|`[^\r\n`]+`)+/,greedy:!0,alias:"function"},"function-identifier":{pattern:/`[^\r\n`]+`(?=\s*\()/,greedy:!0,alias:"function"},identifier:{pattern:/`[^\r\n`]+`/,greedy:!0},"class-name":{pattern:/(\b(?:enum|error|protocol|record|throws)\b\s+)[$\w]+/,lookbehind:!0,greedy:!0},keyword:/\b(?:array|boolean|bytes|date|decimal|double|enum|error|false|fixed|float|idl|import|int|local_timestamp_ms|long|map|null|oneway|protocol|record|schema|string|throws|time_ms|timestamp_ms|true|union|uuid|void)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:[{pattern:/(^|[^\w.])-?(?:(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|0x(?:[a-f0-9]+(?:\.[a-f0-9]*)?|\.[a-f0-9]+)(?:p[+-]?\d+)?)[dfl]?(?![\w.])/i,lookbehind:!0},/-?\b(?:Infinity|NaN)\b/],operator:/=/,punctuation:/[()\[\]{}<>.:,;-]/},t.languages.avdl=t.languages["avro-idl"]}return Op}var Dp,QS;function o6(){if(QS)return Dp;QS=1,Dp=e,e.displayName="bash",e.aliases=["shell"];function e(t){(function(n){var r="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",a={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},i={bash:a,environment:{pattern:RegExp("\\$"+r),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+r),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};n.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+r),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:i},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:a}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:i},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:i.entity}}],environment:{pattern:RegExp("\\$?"+r),alias:"constant"},variable:i.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},a.inside=n.languages.bash;for(var s=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],l=i.variable[1].inside,c=0;c?^\w +\-.])*"/,greedy:!0},number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SELECT CASE|SHARED|SHELL|SINGLE|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,function:/\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,operator:/<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,punctuation:/[,;:()]/}}return Mp}var Lp,t2;function eQ(){if(t2)return Lp;t2=1,Lp=e,e.displayName="batch",e.aliases=[];function e(t){(function(n){var r=/%%?[~:\w]+%?|!\S+!/,a={pattern:/\/[a-z?]+(?=[ :]|$):?|-[a-z]\b|--[a-z-]+\b/im,alias:"attr-name",inside:{punctuation:/:/}},i=/"(?:[\\"]"|[^"])*"(?!")/,s=/(?:\b|-)\d+\b/;n.languages.batch={comment:[/^::.*/m,{pattern:/((?:^|[&(])[ \t]*)rem\b(?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im,lookbehind:!0}],label:{pattern:/^:.*/m,alias:"property"},command:[{pattern:/((?:^|[&(])[ \t]*)for(?: \/[a-z?](?:[ :](?:"[^"]*"|[^\s"/]\S*))?)* \S+ in \([^)]+\) do/im,lookbehind:!0,inside:{keyword:/\b(?:do|in)\b|^for\b/i,string:i,parameter:a,variable:r,number:s,punctuation:/[()',]/}},{pattern:/((?:^|[&(])[ \t]*)if(?: \/[a-z?](?:[ :](?:"[^"]*"|[^\s"/]\S*))?)* (?:not )?(?:cmdextversion \d+|defined \w+|errorlevel \d+|exist \S+|(?:"[^"]*"|(?!")(?:(?!==)\S)+)?(?:==| (?:equ|geq|gtr|leq|lss|neq) )(?:"[^"]*"|[^\s"]\S*))/im,lookbehind:!0,inside:{keyword:/\b(?:cmdextversion|defined|errorlevel|exist|not)\b|^if\b/i,string:i,parameter:a,variable:r,number:s,operator:/\^|==|\b(?:equ|geq|gtr|leq|lss|neq)\b/i}},{pattern:/((?:^|[&()])[ \t]*)else\b/im,lookbehind:!0,inside:{keyword:/^else\b/i}},{pattern:/((?:^|[&(])[ \t]*)set(?: \/[a-z](?:[ :](?:"[^"]*"|[^\s"/]\S*))?)* (?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im,lookbehind:!0,inside:{keyword:/^set\b/i,string:i,parameter:a,variable:[r,/\w+(?=(?:[*\/%+\-&^|]|<<|>>)?=)/],number:s,operator:/[*\/%+\-&^|]=?|<<=?|>>=?|[!~_=]/,punctuation:/[()',]/}},{pattern:/((?:^|[&(])[ \t]*@?)\w+\b(?:"(?:[\\"]"|[^"])*"(?!")|[^"^&)\r\n]|\^(?:\r\n|[\s\S]))*/m,lookbehind:!0,inside:{keyword:/^\w+\b/,string:i,parameter:a,label:{pattern:/(^\s*):\S+/m,lookbehind:!0,alias:"property"},variable:r,number:s,operator:/\^/}}],operator:/[&@]/,punctuation:/[()']/}})(t)}return Lp}var Pp,n2;function tQ(){if(n2)return Pp;n2=1,Pp=e,e.displayName="bbcode",e.aliases=["shortcode"];function e(t){t.languages.bbcode={tag:{pattern:/\[\/?[^\s=\]]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+))?(?:\s+[^\s=\]]+\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+))*\s*\]/,inside:{tag:{pattern:/^\[\/?[^\s=\]]+/,inside:{punctuation:/^\[\/?/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+)/,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\]/,"attr-name":/[^\s=\]]+/}}},t.languages.shortcode=t.languages.bbcode}return Pp}var Fp,r2;function nQ(){if(r2)return Fp;r2=1,Fp=e,e.displayName="bicep",e.aliases=[];function e(t){t.languages.bicep={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],property:[{pattern:/([\r\n][ \t]*)[a-z_]\w*(?=[ \t]*:)/i,lookbehind:!0},{pattern:/([\r\n][ \t]*)'(?:\\.|\$(?!\{)|[^'\\\r\n$])*'(?=[ \t]*:)/,lookbehind:!0,greedy:!0}],string:[{pattern:/'''[^'][\s\S]*?'''/,greedy:!0},{pattern:/(^|[^\\'])'(?:\\.|\$(?!\{)|[^'\\\r\n$])*'/,lookbehind:!0,greedy:!0}],"interpolated-string":{pattern:/(^|[^\\'])'(?:\\.|\$(?:(?!\{)|\{[^{}\r\n]*\})|[^'\\\r\n$])*'/,lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/\$\{[^{}\r\n]*\}/,inside:{expression:{pattern:/(^\$\{)[\s\S]+(?=\}$)/,lookbehind:!0},punctuation:/^\$\{|\}$/}},string:/[\s\S]+/}},datatype:{pattern:/(\b(?:output|param)\b[ \t]+\w+[ \t]+)\w+\b/,lookbehind:!0,alias:"class-name"},boolean:/\b(?:false|true)\b/,keyword:/\b(?:existing|for|if|in|module|null|output|param|resource|targetScope|var)\b/,decorator:/@\w+\b/,function:/\b[a-z_]\w*(?=[ \t]*\()/i,number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:E[+-]?\d+)?/i,operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/,punctuation:/[{}[\];(),.:]/},t.languages.bicep["interpolated-string"].inside.interpolation.inside.expression.inside=t.languages.bicep}return Fp}var Bp,a2;function rQ(){if(a2)return Bp;a2=1,Bp=e,e.displayName="birb",e.aliases=[];function e(t){t.languages.birb=t.languages.extend("clike",{string:{pattern:/r?("|')(?:\\.|(?!\1)[^\\])*\1/,greedy:!0},"class-name":[/\b[A-Z](?:[\d_]*[a-zA-Z]\w*)?\b/,/\b(?:[A-Z]\w*|(?!(?:var|void)\b)[a-z]\w*)(?=\s+\w+\s*[;,=()])/],keyword:/\b(?:assert|break|case|class|const|default|else|enum|final|follows|for|grab|if|nest|new|next|noSeeb|return|static|switch|throw|var|void|while)\b/,operator:/\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?|:/,variable:/\b[a-z_]\w*\b/}),t.languages.insertBefore("birb","function",{metadata:{pattern:/<\w+>/,greedy:!0,alias:"symbol"}})}return Bp}var $p,i2;function aQ(){if(i2)return $p;i2=1;var e=fi();$p=t,t.displayName="bison",t.aliases=[];function t(n){n.register(e),n.languages.bison=n.languages.extend("c",{}),n.languages.insertBefore("bison","comment",{bison:{pattern:/^(?:[^%]|%(?!%))*%%[\s\S]*?%%/,inside:{c:{pattern:/%\{[\s\S]*?%\}|\{(?:\{[^}]*\}|[^{}])*\}/,inside:{delimiter:{pattern:/^%?\{|%?\}$/,alias:"punctuation"},"bison-variable":{pattern:/[$@](?:<[^\s>]+>)?[\w$]+/,alias:"variable",inside:{punctuation:/<|>/}},rest:n.languages.c}},comment:n.languages.c.comment,string:n.languages.c.string,property:/\S+(?=:)/,keyword:/%\w+/,number:{pattern:/(^|[^@])\b(?:0x[\da-f]+|\d+)/i,lookbehind:!0},punctuation:/%[%?]|[|:;\[\]<>]/}}})}return $p}var Up,s2;function iQ(){if(s2)return Up;s2=1,Up=e,e.displayName="bnf",e.aliases=["rbnf"];function e(t){t.languages.bnf={string:{pattern:/"[^\r\n"]*"|'[^\r\n']*'/},definition:{pattern:/<[^<>\r\n\t]+>(?=\s*::=)/,alias:["rule","keyword"],inside:{punctuation:/^<|>$/}},rule:{pattern:/<[^<>\r\n\t]+>/,inside:{punctuation:/^<|>$/}},operator:/::=|[|()[\]{}*+?]|\.{3}/},t.languages.rbnf=t.languages.bnf}return Up}var zp,o2;function sQ(){if(o2)return zp;o2=1,zp=e,e.displayName="brainfuck",e.aliases=[];function e(t){t.languages.brainfuck={pointer:{pattern:/<|>/,alias:"keyword"},increment:{pattern:/\+/,alias:"inserted"},decrement:{pattern:/-/,alias:"deleted"},branching:{pattern:/\[|\]/,alias:"important"},operator:/[.,]/,comment:/\S+/}}return zp}var qp,l2;function oQ(){if(l2)return qp;l2=1,qp=e,e.displayName="brightscript",e.aliases=[];function e(t){t.languages.brightscript={comment:/(?:\brem|').*/i,"directive-statement":{pattern:/(^[\t ]*)#(?:const|else(?:[\t ]+if)?|end[\t ]+if|error|if).*/im,lookbehind:!0,alias:"property",inside:{"error-message":{pattern:/(^#error).+/,lookbehind:!0},directive:{pattern:/^#(?:const|else(?:[\t ]+if)?|end[\t ]+if|error|if)/,alias:"keyword"},expression:{pattern:/[\s\S]+/,inside:null}}},property:{pattern:/([\r\n{,][\t ]*)(?:(?!\d)\w+|"(?:[^"\r\n]|"")*"(?!"))(?=[ \t]*:)/,lookbehind:!0,greedy:!0},string:{pattern:/"(?:[^"\r\n]|"")*"(?!")/,greedy:!0},"class-name":{pattern:/(\bAs[\t ]+)\w+/i,lookbehind:!0},keyword:/\b(?:As|Dim|Each|Else|Elseif|End|Exit|For|Function|Goto|If|In|Print|Return|Step|Stop|Sub|Then|To|While)\b/i,boolean:/\b(?:false|true)\b/i,function:/\b(?!\d)\w+(?=[\t ]*\()/,number:/(?:\b\d+(?:\.\d+)?(?:[ed][+-]\d+)?|&h[a-f\d]+)\b[%&!#]?/i,operator:/--|\+\+|>>=?|<<=?|<>|[-+*/\\<>]=?|[:^=?]|\b(?:and|mod|not|or)\b/i,punctuation:/[.,;()[\]{}]/,constant:/\b(?:LINE_NUM)\b/i},t.languages.brightscript["directive-statement"].inside.expression.inside=t.languages.brightscript}return qp}var Hp,c2;function lQ(){if(c2)return Hp;c2=1,Hp=e,e.displayName="bro",e.aliases=[];function e(t){t.languages.bro={comment:{pattern:/(^|[^\\$])#.*/,lookbehind:!0,inside:{italic:/\b(?:FIXME|TODO|XXX)\b/}},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},boolean:/\b[TF]\b/,function:{pattern:/(\b(?:event|function|hook)[ \t]+)\w+(?:::\w+)?/,lookbehind:!0},builtin:/(?:@(?:load(?:-(?:plugin|sigs))?|unload|prefixes|ifn?def|else|(?:end)?if|DIR|FILENAME))|(?:&?(?:add_func|create_expire|default|delete_func|encrypt|error_handler|expire_func|group|log|mergeable|optional|persistent|priority|raw_output|read_expire|redef|rotate_interval|rotate_size|synchronized|type_column|write_expire))/,constant:{pattern:/(\bconst[ \t]+)\w+/i,lookbehind:!0},keyword:/\b(?:add|addr|alarm|any|bool|break|const|continue|count|delete|double|else|enum|event|export|file|for|function|global|hook|if|in|int|interval|local|module|next|of|opaque|pattern|port|print|record|return|schedule|set|string|subnet|table|time|timeout|using|vector|when)\b/,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&|\|\|?|\?|\*|\/|~|\^|%/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,punctuation:/[{}[\];(),.:]/}}return Hp}var Gp,u2;function cQ(){if(u2)return Gp;u2=1,Gp=e,e.displayName="bsl",e.aliases=[];function e(t){t.languages.bsl={comment:/\/\/.*/,string:[{pattern:/"(?:[^"]|"")*"(?!")/,greedy:!0},{pattern:/'(?:[^'\r\n\\]|\\.)*'/}],keyword:[{pattern:/(^|[^\w\u0400-\u0484\u0487-\u052f\u1d2b\u1d78\u2de0-\u2dff\ua640-\ua69f\ufe2e\ufe2f])(?:пока|для|новый|прервать|попытка|исключение|вызватьисключение|иначе|конецпопытки|неопределено|функция|перем|возврат|конецфункции|если|иначеесли|процедура|конецпроцедуры|тогда|знач|экспорт|конецесли|из|каждого|истина|ложь|по|цикл|конеццикла|выполнить)(?![\w\u0400-\u0484\u0487-\u052f\u1d2b\u1d78\u2de0-\u2dff\ua640-\ua69f\ufe2e\ufe2f])/i,lookbehind:!0},{pattern:/\b(?:break|do|each|else|elseif|enddo|endfunction|endif|endprocedure|endtry|except|execute|export|false|for|function|if|in|new|null|procedure|raise|return|then|to|true|try|undefined|val|var|while)\b/i}],number:{pattern:/(^(?=\d)|[^\w\u0400-\u0484\u0487-\u052f\u1d2b\u1d78\u2de0-\u2dff\ua640-\ua69f\ufe2e\ufe2f])(?:\d+(?:\.\d*)?|\.\d+)(?:E[+-]?\d+)?/i,lookbehind:!0},operator:[/[<>+\-*/]=?|[%=]/,{pattern:/(^|[^\w\u0400-\u0484\u0487-\u052f\u1d2b\u1d78\u2de0-\u2dff\ua640-\ua69f\ufe2e\ufe2f])(?:и|или|не)(?![\w\u0400-\u0484\u0487-\u052f\u1d2b\u1d78\u2de0-\u2dff\ua640-\ua69f\ufe2e\ufe2f])/i,lookbehind:!0},{pattern:/\b(?:and|not|or)\b/i}],punctuation:/\(\.|\.\)|[()\[\]:;,.]/,directive:[{pattern:/^([ \t]*)&.*/m,lookbehind:!0,greedy:!0,alias:"important"},{pattern:/^([ \t]*)#.*/gm,lookbehind:!0,greedy:!0,alias:"important"}]},t.languages.oscript=t.languages.bsl}return Gp}var Vp,d2;function uQ(){if(d2)return Vp;d2=1,Vp=e,e.displayName="cfscript",e.aliases=[];function e(t){t.languages.cfscript=t.languages.extend("clike",{comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,inside:{annotation:{pattern:/(?:^|[^.])@[\w\.]+/,alias:"punctuation"}}},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],keyword:/\b(?:abstract|break|catch|component|continue|default|do|else|extends|final|finally|for|function|if|in|include|package|private|property|public|remote|required|rethrow|return|static|switch|throw|try|var|while|xml)\b(?!\s*=)/,operator:[/\+\+|--|&&|\|\||::|=>|[!=]==|<=?|>=?|[-+*/%&|^!=<>]=?|\?(?:\.|:)?|[?:]/,/\b(?:and|contains|eq|equal|eqv|gt|gte|imp|is|lt|lte|mod|not|or|xor)\b/],scope:{pattern:/\b(?:application|arguments|cgi|client|cookie|local|session|super|this|variables)\b/,alias:"global"},type:{pattern:/\b(?:any|array|binary|boolean|date|guid|numeric|query|string|struct|uuid|void|xml)\b/,alias:"builtin"}}),t.languages.insertBefore("cfscript","keyword",{"function-variable":{pattern:/[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"}}),delete t.languages.cfscript["class-name"],t.languages.cfc=t.languages.cfscript}return Vp}var Wp,p2;function dQ(){if(p2)return Wp;p2=1;var e=Cy();Wp=t,t.displayName="chaiscript",t.aliases=[];function t(n){n.register(e),n.languages.chaiscript=n.languages.extend("clike",{string:{pattern:/(^|[^\\])'(?:[^'\\]|\\[\s\S])*'/,lookbehind:!0,greedy:!0},"class-name":[{pattern:/(\bclass\s+)\w+/,lookbehind:!0},{pattern:/(\b(?:attr|def)\s+)\w+(?=\s*::)/,lookbehind:!0}],keyword:/\b(?:attr|auto|break|case|catch|class|continue|def|default|else|finally|for|fun|global|if|return|switch|this|try|var|while)\b/,number:[n.languages.cpp.number,/\b(?:Infinity|NaN)\b/],operator:/>>=?|<<=?|\|\||&&|:[:=]?|--|\+\+|[=!<>+\-*/%|&^]=?|[?~]|`[^`\r\n]{1,4}`/}),n.languages.insertBefore("chaiscript","operator",{"parameter-type":{pattern:/([,(]\s*)\w+(?=\s+\w)/,lookbehind:!0,alias:"class-name"}}),n.languages.insertBefore("chaiscript","string",{"string-interpolation":{pattern:/(^|[^\\])"(?:[^"$\\]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})*\})*"/,lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})*\}/,lookbehind:!0,inside:{"interpolation-expression":{pattern:/(^\$\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:n.languages.chaiscript},"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"}}},string:/[\s\S]+/}}})}return Wp}var Kp,m2;function pQ(){if(m2)return Kp;m2=1,Kp=e,e.displayName="cil",e.aliases=[];function e(t){t.languages.cil={comment:/\/\/.*/,string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},directive:{pattern:/(^|\W)\.[a-z]+(?=\s)/,lookbehind:!0,alias:"class-name"},variable:/\[[\w\.]+\]/,keyword:/\b(?:abstract|ansi|assembly|auto|autochar|beforefieldinit|bool|bstr|byvalstr|catch|char|cil|class|currency|date|decimal|default|enum|error|explicit|extends|extern|famandassem|family|famorassem|final(?:ly)?|float32|float64|hidebysig|u?int(?:8|16|32|64)?|iant|idispatch|implements|import|initonly|instance|interface|iunknown|literal|lpstr|lpstruct|lptstr|lpwstr|managed|method|native(?:Type)?|nested|newslot|object(?:ref)?|pinvokeimpl|private|privatescope|public|reqsecobj|rtspecialname|runtime|sealed|sequential|serializable|specialname|static|string|struct|syschar|tbstr|unicode|unmanagedexp|unsigned|value(?:type)?|variant|virtual|void)\b/,function:/\b(?:(?:constrained|no|readonly|tail|unaligned|volatile)\.)?(?:conv\.(?:[iu][1248]?|ovf\.[iu][1248]?(?:\.un)?|r\.un|r4|r8)|ldc\.(?:i4(?:\.\d+|\.[mM]1|\.s)?|i8|r4|r8)|ldelem(?:\.[iu][1248]?|\.r[48]|\.ref|a)?|ldind\.(?:[iu][1248]?|r[48]|ref)|stelem\.?(?:i[1248]?|r[48]|ref)?|stind\.(?:i[1248]?|r[48]|ref)?|end(?:fault|filter|finally)|ldarg(?:\.[0-3s]|a(?:\.s)?)?|ldloc(?:\.\d+|\.s)?|sub(?:\.ovf(?:\.un)?)?|mul(?:\.ovf(?:\.un)?)?|add(?:\.ovf(?:\.un)?)?|stloc(?:\.[0-3s])?|refany(?:type|val)|blt(?:\.un)?(?:\.s)?|ble(?:\.un)?(?:\.s)?|bgt(?:\.un)?(?:\.s)?|bge(?:\.un)?(?:\.s)?|unbox(?:\.any)?|init(?:blk|obj)|call(?:i|virt)?|brfalse(?:\.s)?|bne\.un(?:\.s)?|ldloca(?:\.s)?|brzero(?:\.s)?|brtrue(?:\.s)?|brnull(?:\.s)?|brinst(?:\.s)?|starg(?:\.s)?|leave(?:\.s)?|shr(?:\.un)?|rem(?:\.un)?|div(?:\.un)?|clt(?:\.un)?|alignment|castclass|ldvirtftn|beq(?:\.s)?|ckfinite|ldsflda|ldtoken|localloc|mkrefany|rethrow|cgt\.un|arglist|switch|stsfld|sizeof|newobj|newarr|ldsfld|ldnull|ldflda|isinst|throw|stobj|stfld|ldstr|ldobj|ldlen|ldftn|ldfld|cpobj|cpblk|break|br\.s|xor|shl|ret|pop|not|nop|neg|jmp|dup|cgt|ceq|box|and|or|br)\b/,boolean:/\b(?:false|true)\b/,number:/\b-?(?:0x[0-9a-f]+|\d+)(?:\.[0-9a-f]+)?\b/i,punctuation:/[{}[\];(),:=]|IL_[0-9A-Za-z]+/}}return Kp}var Yp,f2;function mQ(){if(f2)return Yp;f2=1,Yp=e,e.displayName="clojure",e.aliases=[];function e(t){t.languages.clojure={comment:{pattern:/;.*/,greedy:!0},string:{pattern:/"(?:[^"\\]|\\.)*"/,greedy:!0},char:/\\\w+/,symbol:{pattern:/(^|[\s()\[\]{},])::?[\w*+!?'<>=/.-]+/,lookbehind:!0},keyword:{pattern:/(\()(?:-|->|->>|\.|\.\.|\*|\/|\+|<|<=|=|==|>|>=|accessor|agent|agent-errors|aget|alength|all-ns|alter|and|append-child|apply|array-map|aset|aset-boolean|aset-byte|aset-char|aset-double|aset-float|aset-int|aset-long|aset-short|assert|assoc|await|await-for|bean|binding|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|boolean|branch\?|butlast|byte|cast|char|children|class|clear-agent-errors|comment|commute|comp|comparator|complement|concat|cond|conj|cons|constantly|construct-proxy|contains\?|count|create-ns|create-struct|cycle|dec|declare|def|def-|definline|definterface|defmacro|defmethod|defmulti|defn|defn-|defonce|defproject|defprotocol|defrecord|defstruct|deftype|deref|difference|disj|dissoc|distinct|do|doall|doc|dorun|doseq|dosync|dotimes|doto|double|down|drop|drop-while|edit|end\?|ensure|eval|every\?|false\?|ffirst|file-seq|filter|find|find-doc|find-ns|find-var|first|float|flush|fn|fnseq|for|frest|gensym|get|get-proxy-class|hash-map|hash-set|identical\?|identity|if|if-let|if-not|import|in-ns|inc|index|insert-child|insert-left|insert-right|inspect-table|inspect-tree|instance\?|int|interleave|intersection|into|into-array|iterate|join|key|keys|keyword|keyword\?|last|lazy-cat|lazy-cons|left|lefts|let|line-seq|list|list\*|load|load-file|locking|long|loop|macroexpand|macroexpand-1|make-array|make-node|map|map-invert|map\?|mapcat|max|max-key|memfn|merge|merge-with|meta|min|min-key|monitor-enter|name|namespace|neg\?|new|newline|next|nil\?|node|not|not-any\?|not-every\?|not=|ns|ns-imports|ns-interns|ns-map|ns-name|ns-publics|ns-refers|ns-resolve|ns-unmap|nth|nthrest|or|parse|partial|path|peek|pop|pos\?|pr|pr-str|print|print-str|println|println-str|prn|prn-str|project|proxy|proxy-mappings|quot|quote|rand|rand-int|range|re-find|re-groups|re-matcher|re-matches|re-pattern|re-seq|read|read-line|recur|reduce|ref|ref-set|refer|rem|remove|remove-method|remove-ns|rename|rename-keys|repeat|replace|replicate|resolve|rest|resultset-seq|reverse|rfirst|right|rights|root|rrest|rseq|second|select|select-keys|send|send-off|seq|seq-zip|seq\?|set|set!|short|slurp|some|sort|sort-by|sorted-map|sorted-map-by|sorted-set|special-symbol\?|split-at|split-with|str|string\?|struct|struct-map|subs|subvec|symbol|symbol\?|sync|take|take-nth|take-while|test|throw|time|to-array|to-array-2d|tree-seq|true\?|try|union|up|update-proxy|val|vals|var|var-get|var-set|var\?|vector|vector-zip|vector\?|when|when-first|when-let|when-not|with-local-vars|with-meta|with-open|with-out-str|xml-seq|xml-zip|zero\?|zipmap|zipper)(?=[\s)]|$)/,lookbehind:!0},boolean:/\b(?:false|nil|true)\b/,number:{pattern:/(^|[^\w$@])(?:\d+(?:[/.]\d+)?(?:e[+-]?\d+)?|0x[a-f0-9]+|[1-9]\d?r[a-z0-9]+)[lmn]?(?![\w$@])/i,lookbehind:!0},function:{pattern:/((?:^|[^'])\()[\w*+!?'<>=/.-]+(?=[\s)]|$)/,lookbehind:!0},operator:/[#@^`~]/,punctuation:/[{}\[\](),]/}}return Yp}var Xp,h2;function fQ(){if(h2)return Xp;h2=1,Xp=e,e.displayName="cmake",e.aliases=[];function e(t){t.languages.cmake={comment:/#.*/,string:{pattern:/"(?:[^\\"]|\\.)*"/,greedy:!0,inside:{interpolation:{pattern:/\$\{(?:[^{}$]|\$\{[^{}$]*\})*\}/,inside:{punctuation:/\$\{|\}/,variable:/\w+/}}}},variable:/\b(?:CMAKE_\w+|\w+_(?:(?:BINARY|SOURCE)_DIR|DESCRIPTION|HOMEPAGE_URL|ROOT|VERSION(?:_MAJOR|_MINOR|_PATCH|_TWEAK)?)|(?:ANDROID|APPLE|BORLAND|BUILD_SHARED_LIBS|CACHE|CPACK_(?:ABSOLUTE_DESTINATION_FILES|COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY|ERROR_ON_ABSOLUTE_INSTALL_DESTINATION|INCLUDE_TOPLEVEL_DIRECTORY|INSTALL_DEFAULT_DIRECTORY_PERMISSIONS|INSTALL_SCRIPT|PACKAGING_INSTALL_PREFIX|SET_DESTDIR|WARN_ON_ABSOLUTE_INSTALL_DESTINATION)|CTEST_(?:BINARY_DIRECTORY|BUILD_COMMAND|BUILD_NAME|BZR_COMMAND|BZR_UPDATE_OPTIONS|CHANGE_ID|CHECKOUT_COMMAND|CONFIGURATION_TYPE|CONFIGURE_COMMAND|COVERAGE_COMMAND|COVERAGE_EXTRA_FLAGS|CURL_OPTIONS|CUSTOM_(?:COVERAGE_EXCLUDE|ERROR_EXCEPTION|ERROR_MATCH|ERROR_POST_CONTEXT|ERROR_PRE_CONTEXT|MAXIMUM_FAILED_TEST_OUTPUT_SIZE|MAXIMUM_NUMBER_OF_(?:ERRORS|WARNINGS)|MAXIMUM_PASSED_TEST_OUTPUT_SIZE|MEMCHECK_IGNORE|POST_MEMCHECK|POST_TEST|PRE_MEMCHECK|PRE_TEST|TESTS_IGNORE|WARNING_EXCEPTION|WARNING_MATCH)|CVS_CHECKOUT|CVS_COMMAND|CVS_UPDATE_OPTIONS|DROP_LOCATION|DROP_METHOD|DROP_SITE|DROP_SITE_CDASH|DROP_SITE_PASSWORD|DROP_SITE_USER|EXTRA_COVERAGE_GLOB|GIT_COMMAND|GIT_INIT_SUBMODULES|GIT_UPDATE_CUSTOM|GIT_UPDATE_OPTIONS|HG_COMMAND|HG_UPDATE_OPTIONS|LABELS_FOR_SUBPROJECTS|MEMORYCHECK_(?:COMMAND|COMMAND_OPTIONS|SANITIZER_OPTIONS|SUPPRESSIONS_FILE|TYPE)|NIGHTLY_START_TIME|P4_CLIENT|P4_COMMAND|P4_OPTIONS|P4_UPDATE_OPTIONS|RUN_CURRENT_SCRIPT|SCP_COMMAND|SITE|SOURCE_DIRECTORY|SUBMIT_URL|SVN_COMMAND|SVN_OPTIONS|SVN_UPDATE_OPTIONS|TEST_LOAD|TEST_TIMEOUT|TRIGGER_SITE|UPDATE_COMMAND|UPDATE_OPTIONS|UPDATE_VERSION_ONLY|USE_LAUNCHERS)|CYGWIN|ENV|EXECUTABLE_OUTPUT_PATH|GHS-MULTI|IOS|LIBRARY_OUTPUT_PATH|MINGW|MSVC(?:10|11|12|14|60|70|71|80|90|_IDE|_TOOLSET_VERSION|_VERSION)?|MSYS|PROJECT_(?:BINARY_DIR|DESCRIPTION|HOMEPAGE_URL|NAME|SOURCE_DIR|VERSION|VERSION_(?:MAJOR|MINOR|PATCH|TWEAK))|UNIX|WIN32|WINCE|WINDOWS_PHONE|WINDOWS_STORE|XCODE|XCODE_VERSION))\b/,property:/\b(?:cxx_\w+|(?:ARCHIVE_OUTPUT_(?:DIRECTORY|NAME)|COMPILE_DEFINITIONS|COMPILE_PDB_NAME|COMPILE_PDB_OUTPUT_DIRECTORY|EXCLUDE_FROM_DEFAULT_BUILD|IMPORTED_(?:IMPLIB|LIBNAME|LINK_DEPENDENT_LIBRARIES|LINK_INTERFACE_LANGUAGES|LINK_INTERFACE_LIBRARIES|LINK_INTERFACE_MULTIPLICITY|LOCATION|NO_SONAME|OBJECTS|SONAME)|INTERPROCEDURAL_OPTIMIZATION|LIBRARY_OUTPUT_DIRECTORY|LIBRARY_OUTPUT_NAME|LINK_FLAGS|LINK_INTERFACE_LIBRARIES|LINK_INTERFACE_MULTIPLICITY|LOCATION|MAP_IMPORTED_CONFIG|OSX_ARCHITECTURES|OUTPUT_NAME|PDB_NAME|PDB_OUTPUT_DIRECTORY|RUNTIME_OUTPUT_DIRECTORY|RUNTIME_OUTPUT_NAME|STATIC_LIBRARY_FLAGS|VS_CSHARP|VS_DOTNET_REFERENCEPROP|VS_DOTNET_REFERENCE|VS_GLOBAL_SECTION_POST|VS_GLOBAL_SECTION_PRE|VS_GLOBAL|XCODE_ATTRIBUTE)_\w+|\w+_(?:CLANG_TIDY|COMPILER_LAUNCHER|CPPCHECK|CPPLINT|INCLUDE_WHAT_YOU_USE|OUTPUT_NAME|POSTFIX|VISIBILITY_PRESET)|ABSTRACT|ADDITIONAL_MAKE_CLEAN_FILES|ADVANCED|ALIASED_TARGET|ALLOW_DUPLICATE_CUSTOM_TARGETS|ANDROID_(?:ANT_ADDITIONAL_OPTIONS|API|API_MIN|ARCH|ASSETS_DIRECTORIES|GUI|JAR_DEPENDENCIES|NATIVE_LIB_DEPENDENCIES|NATIVE_LIB_DIRECTORIES|PROCESS_MAX|PROGUARD|PROGUARD_CONFIG_PATH|SECURE_PROPS_PATH|SKIP_ANT_STEP|STL_TYPE)|ARCHIVE_OUTPUT_DIRECTORY|ATTACHED_FILES|ATTACHED_FILES_ON_FAIL|AUTOGEN_(?:BUILD_DIR|ORIGIN_DEPENDS|PARALLEL|SOURCE_GROUP|TARGETS_FOLDER|TARGET_DEPENDS)|AUTOMOC|AUTOMOC_(?:COMPILER_PREDEFINES|DEPEND_FILTERS|EXECUTABLE|MACRO_NAMES|MOC_OPTIONS|SOURCE_GROUP|TARGETS_FOLDER)|AUTORCC|AUTORCC_EXECUTABLE|AUTORCC_OPTIONS|AUTORCC_SOURCE_GROUP|AUTOUIC|AUTOUIC_EXECUTABLE|AUTOUIC_OPTIONS|AUTOUIC_SEARCH_PATHS|BINARY_DIR|BUILDSYSTEM_TARGETS|BUILD_RPATH|BUILD_RPATH_USE_ORIGIN|BUILD_WITH_INSTALL_NAME_DIR|BUILD_WITH_INSTALL_RPATH|BUNDLE|BUNDLE_EXTENSION|CACHE_VARIABLES|CLEAN_NO_CUSTOM|COMMON_LANGUAGE_RUNTIME|COMPATIBLE_INTERFACE_(?:BOOL|NUMBER_MAX|NUMBER_MIN|STRING)|COMPILE_(?:DEFINITIONS|FEATURES|FLAGS|OPTIONS|PDB_NAME|PDB_OUTPUT_DIRECTORY)|COST|CPACK_DESKTOP_SHORTCUTS|CPACK_NEVER_OVERWRITE|CPACK_PERMANENT|CPACK_STARTUP_SHORTCUTS|CPACK_START_MENU_SHORTCUTS|CPACK_WIX_ACL|CROSSCOMPILING_EMULATOR|CUDA_EXTENSIONS|CUDA_PTX_COMPILATION|CUDA_RESOLVE_DEVICE_SYMBOLS|CUDA_SEPARABLE_COMPILATION|CUDA_STANDARD|CUDA_STANDARD_REQUIRED|CXX_EXTENSIONS|CXX_STANDARD|CXX_STANDARD_REQUIRED|C_EXTENSIONS|C_STANDARD|C_STANDARD_REQUIRED|DEBUG_CONFIGURATIONS|DEFINE_SYMBOL|DEFINITIONS|DEPENDS|DEPLOYMENT_ADDITIONAL_FILES|DEPLOYMENT_REMOTE_DIRECTORY|DISABLED|DISABLED_FEATURES|ECLIPSE_EXTRA_CPROJECT_CONTENTS|ECLIPSE_EXTRA_NATURES|ENABLED_FEATURES|ENABLED_LANGUAGES|ENABLE_EXPORTS|ENVIRONMENT|EXCLUDE_FROM_ALL|EXCLUDE_FROM_DEFAULT_BUILD|EXPORT_NAME|EXPORT_PROPERTIES|EXTERNAL_OBJECT|EchoString|FAIL_REGULAR_EXPRESSION|FIND_LIBRARY_USE_LIB32_PATHS|FIND_LIBRARY_USE_LIB64_PATHS|FIND_LIBRARY_USE_LIBX32_PATHS|FIND_LIBRARY_USE_OPENBSD_VERSIONING|FIXTURES_CLEANUP|FIXTURES_REQUIRED|FIXTURES_SETUP|FOLDER|FRAMEWORK|Fortran_FORMAT|Fortran_MODULE_DIRECTORY|GENERATED|GENERATOR_FILE_NAME|GENERATOR_IS_MULTI_CONFIG|GHS_INTEGRITY_APP|GHS_NO_SOURCE_GROUP_FILE|GLOBAL_DEPENDS_DEBUG_MODE|GLOBAL_DEPENDS_NO_CYCLES|GNUtoMS|HAS_CXX|HEADER_FILE_ONLY|HELPSTRING|IMPLICIT_DEPENDS_INCLUDE_TRANSFORM|IMPORTED|IMPORTED_(?:COMMON_LANGUAGE_RUNTIME|CONFIGURATIONS|GLOBAL|IMPLIB|LIBNAME|LINK_DEPENDENT_LIBRARIES|LINK_INTERFACE_(?:LANGUAGES|LIBRARIES|MULTIPLICITY)|LOCATION|NO_SONAME|OBJECTS|SONAME)|IMPORT_PREFIX|IMPORT_SUFFIX|INCLUDE_DIRECTORIES|INCLUDE_REGULAR_EXPRESSION|INSTALL_NAME_DIR|INSTALL_RPATH|INSTALL_RPATH_USE_LINK_PATH|INTERFACE_(?:AUTOUIC_OPTIONS|COMPILE_DEFINITIONS|COMPILE_FEATURES|COMPILE_OPTIONS|INCLUDE_DIRECTORIES|LINK_DEPENDS|LINK_DIRECTORIES|LINK_LIBRARIES|LINK_OPTIONS|POSITION_INDEPENDENT_CODE|SOURCES|SYSTEM_INCLUDE_DIRECTORIES)|INTERPROCEDURAL_OPTIMIZATION|IN_TRY_COMPILE|IOS_INSTALL_COMBINED|JOB_POOLS|JOB_POOL_COMPILE|JOB_POOL_LINK|KEEP_EXTENSION|LABELS|LANGUAGE|LIBRARY_OUTPUT_DIRECTORY|LINKER_LANGUAGE|LINK_(?:DEPENDS|DEPENDS_NO_SHARED|DIRECTORIES|FLAGS|INTERFACE_LIBRARIES|INTERFACE_MULTIPLICITY|LIBRARIES|OPTIONS|SEARCH_END_STATIC|SEARCH_START_STATIC|WHAT_YOU_USE)|LISTFILE_STACK|LOCATION|MACOSX_BUNDLE|MACOSX_BUNDLE_INFO_PLIST|MACOSX_FRAMEWORK_INFO_PLIST|MACOSX_PACKAGE_LOCATION|MACOSX_RPATH|MACROS|MANUALLY_ADDED_DEPENDENCIES|MEASUREMENT|MODIFIED|NAME|NO_SONAME|NO_SYSTEM_FROM_IMPORTED|OBJECT_DEPENDS|OBJECT_OUTPUTS|OSX_ARCHITECTURES|OUTPUT_NAME|PACKAGES_FOUND|PACKAGES_NOT_FOUND|PARENT_DIRECTORY|PASS_REGULAR_EXPRESSION|PDB_NAME|PDB_OUTPUT_DIRECTORY|POSITION_INDEPENDENT_CODE|POST_INSTALL_SCRIPT|PREDEFINED_TARGETS_FOLDER|PREFIX|PRE_INSTALL_SCRIPT|PRIVATE_HEADER|PROCESSORS|PROCESSOR_AFFINITY|PROJECT_LABEL|PUBLIC_HEADER|REPORT_UNDEFINED_PROPERTIES|REQUIRED_FILES|RESOURCE|RESOURCE_LOCK|RULE_LAUNCH_COMPILE|RULE_LAUNCH_CUSTOM|RULE_LAUNCH_LINK|RULE_MESSAGES|RUNTIME_OUTPUT_DIRECTORY|RUN_SERIAL|SKIP_AUTOGEN|SKIP_AUTOMOC|SKIP_AUTORCC|SKIP_AUTOUIC|SKIP_BUILD_RPATH|SKIP_RETURN_CODE|SOURCES|SOURCE_DIR|SOVERSION|STATIC_LIBRARY_FLAGS|STATIC_LIBRARY_OPTIONS|STRINGS|SUBDIRECTORIES|SUFFIX|SYMBOLIC|TARGET_ARCHIVES_MAY_BE_SHARED_LIBS|TARGET_MESSAGES|TARGET_SUPPORTS_SHARED_LIBS|TESTS|TEST_INCLUDE_FILE|TEST_INCLUDE_FILES|TIMEOUT|TIMEOUT_AFTER_MATCH|TYPE|USE_FOLDERS|VALUE|VARIABLES|VERSION|VISIBILITY_INLINES_HIDDEN|VS_(?:CONFIGURATION_TYPE|COPY_TO_OUT_DIR|DEBUGGER_(?:COMMAND|COMMAND_ARGUMENTS|ENVIRONMENT|WORKING_DIRECTORY)|DEPLOYMENT_CONTENT|DEPLOYMENT_LOCATION|DOTNET_REFERENCES|DOTNET_REFERENCES_COPY_LOCAL|GLOBAL_KEYWORD|GLOBAL_PROJECT_TYPES|GLOBAL_ROOTNAMESPACE|INCLUDE_IN_VSIX|IOT_STARTUP_TASK|KEYWORD|RESOURCE_GENERATOR|SCC_AUXPATH|SCC_LOCALPATH|SCC_PROJECTNAME|SCC_PROVIDER|SDK_REFERENCES|SHADER_(?:DISABLE_OPTIMIZATIONS|ENABLE_DEBUG|ENTRYPOINT|FLAGS|MODEL|OBJECT_FILE_NAME|OUTPUT_HEADER_FILE|TYPE|VARIABLE_NAME)|STARTUP_PROJECT|TOOL_OVERRIDE|USER_PROPS|WINRT_COMPONENT|WINRT_EXTENSIONS|WINRT_REFERENCES|XAML_TYPE)|WILL_FAIL|WIN32_EXECUTABLE|WINDOWS_EXPORT_ALL_SYMBOLS|WORKING_DIRECTORY|WRAP_EXCLUDE|XCODE_(?:EMIT_EFFECTIVE_PLATFORM_NAME|EXPLICIT_FILE_TYPE|FILE_ATTRIBUTES|LAST_KNOWN_FILE_TYPE|PRODUCT_TYPE|SCHEME_(?:ADDRESS_SANITIZER|ADDRESS_SANITIZER_USE_AFTER_RETURN|ARGUMENTS|DISABLE_MAIN_THREAD_CHECKER|DYNAMIC_LIBRARY_LOADS|DYNAMIC_LINKER_API_USAGE|ENVIRONMENT|EXECUTABLE|GUARD_MALLOC|MAIN_THREAD_CHECKER_STOP|MALLOC_GUARD_EDGES|MALLOC_SCRIBBLE|MALLOC_STACK|THREAD_SANITIZER(?:_STOP)?|UNDEFINED_BEHAVIOUR_SANITIZER(?:_STOP)?|ZOMBIE_OBJECTS))|XCTEST)\b/,keyword:/\b(?:add_compile_definitions|add_compile_options|add_custom_command|add_custom_target|add_definitions|add_dependencies|add_executable|add_library|add_link_options|add_subdirectory|add_test|aux_source_directory|break|build_command|build_name|cmake_host_system_information|cmake_minimum_required|cmake_parse_arguments|cmake_policy|configure_file|continue|create_test_sourcelist|ctest_build|ctest_configure|ctest_coverage|ctest_empty_binary_directory|ctest_memcheck|ctest_read_custom_files|ctest_run_script|ctest_sleep|ctest_start|ctest_submit|ctest_test|ctest_update|ctest_upload|define_property|else|elseif|enable_language|enable_testing|endforeach|endfunction|endif|endmacro|endwhile|exec_program|execute_process|export|export_library_dependencies|file|find_file|find_library|find_package|find_path|find_program|fltk_wrap_ui|foreach|function|get_cmake_property|get_directory_property|get_filename_component|get_property|get_source_file_property|get_target_property|get_test_property|if|include|include_directories|include_external_msproject|include_guard|include_regular_expression|install|install_files|install_programs|install_targets|link_directories|link_libraries|list|load_cache|load_command|macro|make_directory|mark_as_advanced|math|message|option|output_required_files|project|qt_wrap_cpp|qt_wrap_ui|remove|remove_definitions|return|separate_arguments|set|set_directory_properties|set_property|set_source_files_properties|set_target_properties|set_tests_properties|site_name|source_group|string|subdir_depends|subdirs|target_compile_definitions|target_compile_features|target_compile_options|target_include_directories|target_link_directories|target_link_libraries|target_link_options|target_sources|try_compile|try_run|unset|use_mangled_mesa|utility_source|variable_requires|variable_watch|while|write_file)(?=\s*\()\b/,boolean:/\b(?:FALSE|OFF|ON|TRUE)\b/,namespace:/\b(?:INTERFACE|PRIVATE|PROPERTIES|PUBLIC|SHARED|STATIC|TARGET_OBJECTS)\b/,operator:/\b(?:AND|DEFINED|EQUAL|GREATER|LESS|MATCHES|NOT|OR|STREQUAL|STRGREATER|STRLESS|VERSION_EQUAL|VERSION_GREATER|VERSION_LESS)\b/,inserted:{pattern:/\b\w+::\w+\b/,alias:"class-name"},number:/\b\d+(?:\.\d+)*\b/,function:/\b[a-z_]\w*(?=\s*\()\b/i,punctuation:/[()>}]|\$[<{]/}}return Xp}var Zp,g2;function hQ(){if(g2)return Zp;g2=1,Zp=e,e.displayName="cobol",e.aliases=[];function e(t){t.languages.cobol={comment:{pattern:/\*>.*|(^[ \t]*)\*.*/m,lookbehind:!0,greedy:!0},string:{pattern:/[xzgn]?(?:"(?:[^\r\n"]|"")*"(?!")|'(?:[^\r\n']|'')*'(?!'))/i,greedy:!0},level:{pattern:/(^[ \t]*)\d+\b/m,lookbehind:!0,greedy:!0,alias:"number"},"class-name":{pattern:/(\bpic(?:ture)?\s+)(?:(?:[-\w$/,:*+<>]|\.(?!\s|$))(?:\(\d+\))?)+/i,lookbehind:!0,inside:{number:{pattern:/(\()\d+/,lookbehind:!0},punctuation:/[()]/}},keyword:{pattern:/(^|[^\w-])(?:ABORT|ACCEPT|ACCESS|ADD|ADDRESS|ADVANCING|AFTER|ALIGNED|ALL|ALPHABET|ALPHABETIC|ALPHABETIC-LOWER|ALPHABETIC-UPPER|ALPHANUMERIC|ALPHANUMERIC-EDITED|ALSO|ALTER|ALTERNATE|ANY|ARE|AREA|AREAS|AS|ASCENDING|ASCII|ASSIGN|ASSOCIATED-DATA|ASSOCIATED-DATA-LENGTH|AT|ATTRIBUTE|AUTHOR|AUTO|AUTO-SKIP|BACKGROUND-COLOR|BACKGROUND-COLOUR|BASIS|BEEP|BEFORE|BEGINNING|BELL|BINARY|BIT|BLANK|BLINK|BLOCK|BOTTOM|BOUNDS|BY|BYFUNCTION|BYTITLE|CALL|CANCEL|CAPABLE|CCSVERSION|CD|CF|CH|CHAINING|CHANGED|CHANNEL|CHARACTER|CHARACTERS|CLASS|CLASS-ID|CLOCK-UNITS|CLOSE|CLOSE-DISPOSITION|COBOL|CODE|CODE-SET|COL|COLLATING|COLUMN|COM-REG|COMMA|COMMITMENT|COMMON|COMMUNICATION|COMP|COMP-1|COMP-2|COMP-3|COMP-4|COMP-5|COMPUTATIONAL|COMPUTATIONAL-1|COMPUTATIONAL-2|COMPUTATIONAL-3|COMPUTATIONAL-4|COMPUTATIONAL-5|COMPUTE|CONFIGURATION|CONTAINS|CONTENT|CONTINUE|CONTROL|CONTROL-POINT|CONTROLS|CONVENTION|CONVERTING|COPY|CORR|CORRESPONDING|COUNT|CRUNCH|CURRENCY|CURSOR|DATA|DATA-BASE|DATE|DATE-COMPILED|DATE-WRITTEN|DAY|DAY-OF-WEEK|DBCS|DE|DEBUG-CONTENTS|DEBUG-ITEM|DEBUG-LINE|DEBUG-NAME|DEBUG-SUB-1|DEBUG-SUB-2|DEBUG-SUB-3|DEBUGGING|DECIMAL-POINT|DECLARATIVES|DEFAULT|DEFAULT-DISPLAY|DEFINITION|DELETE|DELIMITED|DELIMITER|DEPENDING|DESCENDING|DESTINATION|DETAIL|DFHRESP|DFHVALUE|DISABLE|DISK|DISPLAY|DISPLAY-1|DIVIDE|DIVISION|DONTCARE|DOUBLE|DOWN|DUPLICATES|DYNAMIC|EBCDIC|EGCS|EGI|ELSE|EMI|EMPTY-CHECK|ENABLE|END|END-ACCEPT|END-ADD|END-CALL|END-COMPUTE|END-DELETE|END-DIVIDE|END-EVALUATE|END-IF|END-MULTIPLY|END-OF-PAGE|END-PERFORM|END-READ|END-RECEIVE|END-RETURN|END-REWRITE|END-SEARCH|END-START|END-STRING|END-SUBTRACT|END-UNSTRING|END-WRITE|ENDING|ENTER|ENTRY|ENTRY-PROCEDURE|ENVIRONMENT|EOL|EOP|EOS|ERASE|ERROR|ESCAPE|ESI|EVALUATE|EVENT|EVERY|EXCEPTION|EXCLUSIVE|EXHIBIT|EXIT|EXPORT|EXTEND|EXTENDED|EXTERNAL|FD|FILE|FILE-CONTROL|FILLER|FINAL|FIRST|FOOTING|FOR|FOREGROUND-COLOR|FOREGROUND-COLOUR|FROM|FULL|FUNCTION|FUNCTION-POINTER|FUNCTIONNAME|GENERATE|GIVING|GLOBAL|GO|GOBACK|GRID|GROUP|HEADING|HIGH-VALUE|HIGH-VALUES|HIGHLIGHT|I-O|I-O-CONTROL|ID|IDENTIFICATION|IF|IMPLICIT|IMPORT|IN|INDEX|INDEXED|INDICATE|INITIAL|INITIALIZE|INITIATE|INPUT|INPUT-OUTPUT|INSPECT|INSTALLATION|INTEGER|INTO|INVALID|INVOKE|IS|JUST|JUSTIFIED|KANJI|KEPT|KEY|KEYBOARD|LABEL|LANGUAGE|LAST|LB|LD|LEADING|LEFT|LEFTLINE|LENGTH|LENGTH-CHECK|LIBACCESS|LIBPARAMETER|LIBRARY|LIMIT|LIMITS|LINAGE|LINAGE-COUNTER|LINE|LINE-COUNTER|LINES|LINKAGE|LIST|LOCAL|LOCAL-STORAGE|LOCK|LONG-DATE|LONG-TIME|LOW-VALUE|LOW-VALUES|LOWER|LOWLIGHT|MEMORY|MERGE|MESSAGE|MMDDYYYY|MODE|MODULES|MORE-LABELS|MOVE|MULTIPLE|MULTIPLY|NAMED|NATIONAL|NATIONAL-EDITED|NATIVE|NEGATIVE|NETWORK|NEXT|NO|NO-ECHO|NULL|NULLS|NUMBER|NUMERIC|NUMERIC-DATE|NUMERIC-EDITED|NUMERIC-TIME|OBJECT-COMPUTER|OCCURS|ODT|OF|OFF|OMITTED|ON|OPEN|OPTIONAL|ORDER|ORDERLY|ORGANIZATION|OTHER|OUTPUT|OVERFLOW|OVERLINE|OWN|PACKED-DECIMAL|PADDING|PAGE|PAGE-COUNTER|PASSWORD|PERFORM|PF|PH|PIC|PICTURE|PLUS|POINTER|PORT|POSITION|POSITIVE|PRINTER|PRINTING|PRIVATE|PROCEDURE|PROCEDURE-POINTER|PROCEDURES|PROCEED|PROCESS|PROGRAM|PROGRAM-ID|PROGRAM-LIBRARY|PROMPT|PURGE|QUEUE|QUOTE|QUOTES|RANDOM|RD|READ|READER|REAL|RECEIVE|RECEIVED|RECORD|RECORDING|RECORDS|RECURSIVE|REDEFINES|REEL|REF|REFERENCE|REFERENCES|RELATIVE|RELEASE|REMAINDER|REMARKS|REMOTE|REMOVAL|REMOVE|RENAMES|REPLACE|REPLACING|REPORT|REPORTING|REPORTS|REQUIRED|RERUN|RESERVE|RESET|RETURN|RETURN-CODE|RETURNING|REVERSE-VIDEO|REVERSED|REWIND|REWRITE|RF|RH|RIGHT|ROUNDED|RUN|SAME|SAVE|SCREEN|SD|SEARCH|SECTION|SECURE|SECURITY|SEGMENT|SEGMENT-LIMIT|SELECT|SEND|SENTENCE|SEPARATE|SEQUENCE|SEQUENTIAL|SET|SHARED|SHAREDBYALL|SHAREDBYRUNUNIT|SHARING|SHIFT-IN|SHIFT-OUT|SHORT-DATE|SIGN|SIZE|SORT|SORT-CONTROL|SORT-CORE-SIZE|SORT-FILE-SIZE|SORT-MERGE|SORT-MESSAGE|SORT-MODE-SIZE|SORT-RETURN|SOURCE|SOURCE-COMPUTER|SPACE|SPACES|SPECIAL-NAMES|STANDARD|STANDARD-1|STANDARD-2|START|STATUS|STOP|STRING|SUB-QUEUE-1|SUB-QUEUE-2|SUB-QUEUE-3|SUBTRACT|SUM|SUPPRESS|SYMBOL|SYMBOLIC|SYNC|SYNCHRONIZED|TABLE|TALLY|TALLYING|TAPE|TASK|TERMINAL|TERMINATE|TEST|TEXT|THEN|THREAD|THREAD-LOCAL|THROUGH|THRU|TIME|TIMER|TIMES|TITLE|TO|TODAYS-DATE|TODAYS-NAME|TOP|TRAILING|TRUNCATED|TYPE|TYPEDEF|UNDERLINE|UNIT|UNSTRING|UNTIL|UP|UPON|USAGE|USE|USING|VALUE|VALUES|VARYING|VIRTUAL|WAIT|WHEN|WHEN-COMPILED|WITH|WORDS|WORKING-STORAGE|WRITE|YEAR|YYYYDDD|YYYYMMDD|ZERO-FILL|ZEROES|ZEROS)(?![\w-])/i,lookbehind:!0},boolean:{pattern:/(^|[^\w-])(?:false|true)(?![\w-])/i,lookbehind:!0},number:{pattern:/(^|[^\w-])(?:[+-]?(?:(?:\d+(?:[.,]\d+)?|[.,]\d+)(?:e[+-]?\d+)?|zero))(?![\w-])/i,lookbehind:!0},operator:[/<>|[<>]=?|[=+*/&]/,{pattern:/(^|[^\w-])(?:-|and|equal|greater|less|not|or|than)(?![\w-])/i,lookbehind:!0}],punctuation:/[.:,()]/}}return Zp}var Jp,b2;function gQ(){if(b2)return Jp;b2=1,Jp=e,e.displayName="coffeescript",e.aliases=["coffee"];function e(t){(function(n){var r=/#(?!\{).+/,a={pattern:/#\{[^}]+\}/,alias:"variable"};n.languages.coffeescript=n.languages.extend("javascript",{comment:r,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:a}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),n.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:r,interpolation:a}}}),n.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:n.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:a}}]}),n.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete n.languages.coffeescript["template-string"],n.languages.coffee=n.languages.coffeescript})(t)}return Jp}var Qp,x2;function bQ(){if(x2)return Qp;x2=1,Qp=e,e.displayName="concurnas",e.aliases=["conc"];function e(t){t.languages.concurnas={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?(?:\*\/|$)|\/\/.*)/,lookbehind:!0,greedy:!0},langext:{pattern:/\b\w+\s*\|\|[\s\S]+?\|\|/,greedy:!0,inside:{"class-name":/^\w+/,string:{pattern:/(^\s*\|\|)[\s\S]+(?=\|\|$)/,lookbehind:!0},punctuation:/\|\|/}},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/,lookbehind:!0},keyword:/\b(?:abstract|actor|also|annotation|assert|async|await|bool|boolean|break|byte|case|catch|changed|char|class|closed|constant|continue|def|default|del|double|elif|else|enum|every|extends|false|finally|float|for|from|global|gpudef|gpukernel|if|import|in|init|inject|int|lambda|local|long|loop|match|new|nodefault|null|of|onchange|open|out|override|package|parfor|parforsync|post|pre|private|protected|provide|provider|public|return|shared|short|single|size_t|sizeof|super|sync|this|throw|trait|trans|transient|true|try|typedef|unchecked|using|val|var|void|while|with)\b/,boolean:/\b(?:false|true)\b/,number:/\b0b[01][01_]*L?\b|\b0x(?:[\da-f_]*\.)?[\da-f_p+-]+\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfls]?/i,punctuation:/[{}[\];(),.:]/,operator:/<==|>==|=>|->|<-|<>|&==|&<>|\?:?|\.\?|\+\+|--|[-+*/=<>]=?|[!^~]|\b(?:and|as|band|bor|bxor|comp|is|isnot|mod|or)\b=?/,annotation:{pattern:/@(?:\w+:)?(?:\w+|\[[^\]]+\])?/,alias:"builtin"}},t.languages.insertBefore("concurnas","langext",{"regex-literal":{pattern:/\br("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:t.languages.concurnas},regex:/[\s\S]+/}},"string-literal":{pattern:/(?:\B|\bs)("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:t.languages.concurnas},string:/[\s\S]+/}}}),t.languages.conc=t.languages.concurnas}return Qp}var em,y2;function xQ(){if(y2)return em;y2=1,em=e,e.displayName="coq",e.aliases=[];function e(t){(function(n){for(var r=/\(\*(?:[^(*]|\((?!\*)|\*(?!\))|)*\*\)/.source,a=0;a<2;a++)r=r.replace(//g,function(){return r});r=r.replace(//g,"[]"),n.languages.coq={comment:RegExp(r),string:{pattern:/"(?:[^"]|"")*"(?!")/,greedy:!0},attribute:[{pattern:RegExp(/#\[(?:[^\[\]("]|"(?:[^"]|"")*"(?!")|\((?!\*)|)*\]/.source.replace(//g,function(){return r})),greedy:!0,alias:"attr-name",inside:{comment:RegExp(r),string:{pattern:/"(?:[^"]|"")*"(?!")/,greedy:!0},operator:/=/,punctuation:/^#\[|\]$|[,()]/}},{pattern:/\b(?:Cumulative|Global|Local|Monomorphic|NonCumulative|Polymorphic|Private|Program)\b/,alias:"attr-name"}],keyword:/\b(?:Abort|About|Add|Admit|Admitted|All|Arguments|As|Assumptions|Axiom|Axioms|Back|BackTo|Backtrace|BinOp|BinOpSpec|BinRel|Bind|Blacklist|Canonical|Case|Cd|Check|Class|Classes|Close|CoFixpoint|CoInductive|Coercion|Coercions|Collection|Combined|Compute|Conjecture|Conjectures|Constant|Constants|Constraint|Constructors|Context|Corollary|Create|CstOp|Custom|Cut|Debug|Declare|Defined|Definition|Delimit|Dependencies|Dependent|Derive|Diffs|Drop|Elimination|End|Entry|Equality|Eval|Example|Existential|Existentials|Existing|Export|Extern|Extraction|Fact|Fail|Field|File|Firstorder|Fixpoint|Flags|Focus|From|Funclass|Function|Functional|GC|Generalizable|Goal|Grab|Grammar|Graph|Guarded|Haskell|Heap|Hide|Hint|HintDb|Hints|Hypotheses|Hypothesis|IF|Identity|Immediate|Implicit|Implicits|Import|Include|Induction|Inductive|Infix|Info|Initial|InjTyp|Inline|Inspect|Instance|Instances|Intro|Intros|Inversion|Inversion_clear|JSON|Language|Left|Lemma|Let|Lia|Libraries|Library|Load|LoadPath|Locate|Ltac|Ltac2|ML|Match|Method|Minimality|Module|Modules|Morphism|Next|NoInline|Notation|Number|OCaml|Obligation|Obligations|Opaque|Open|Optimize|Parameter|Parameters|Parametric|Path|Paths|Prenex|Preterm|Primitive|Print|Profile|Projections|Proof|Prop|PropBinOp|PropOp|PropUOp|Property|Proposition|Pwd|Qed|Quit|Rec|Record|Recursive|Redirect|Reduction|Register|Relation|Remark|Remove|Require|Reserved|Reset|Resolve|Restart|Rewrite|Right|Ring|Rings|SProp|Saturate|Save|Scheme|Scope|Scopes|Search|SearchHead|SearchPattern|SearchRewrite|Section|Separate|Set|Setoid|Show|Signatures|Solve|Solver|Sort|Sortclass|Sorted|Spec|Step|Strategies|Strategy|String|Structure|SubClass|Subgraph|SuchThat|Tactic|Term|TestCompile|Theorem|Time|Timeout|To|Transparent|Type|Typeclasses|Types|Typing|UnOp|UnOpSpec|Undelimit|Undo|Unfocus|Unfocused|Unfold|Universe|Universes|Unshelve|Variable|Variables|Variant|Verbose|View|Visibility|Zify|_|apply|as|at|by|cofix|else|end|exists|exists2|fix|for|forall|fun|if|in|let|match|measure|move|removed|return|struct|then|using|wf|where|with)\b/,number:/\b(?:0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]+)?(?:p[+-]?\d[\d_]*)?|\d[\d_]*(?:\.[\d_]+)?(?:e[+-]?\d[\d_]*)?)\b/i,punct:{pattern:/@\{|\{\||\[=|:>/,alias:"punctuation"},operator:/\/\\|\\\/|\.{2,3}|:{1,2}=|\*\*|[-=]>|<(?:->?|[+:=>]|<:)|>(?:=|->)|\|[-|]?|[-!%&*+/<=>?@^~']/,punctuation:/\.\(|`\(|@\{|`\{|\{\||\[=|:>|[:.,;(){}\[\]]/}})(t)}return em}var tm,v2;function cu(){if(v2)return tm;v2=1,tm=e,e.displayName="ruby",e.aliases=["rb"];function e(t){(function(n){n.languages.ruby=n.languages.extend("clike",{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===||[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),n.languages.insertBefore("ruby","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}});var r={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:n.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"}}};delete n.languages.ruby.function;var a="(?:"+[/([^a-zA-Z0-9\s{(\[<=])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/\((?:[^()\\]|\\[\s\S]|\((?:[^()\\]|\\[\s\S])*\))*\)/.source,/\{(?:[^{}\\]|\\[\s\S]|\{(?:[^{}\\]|\\[\s\S])*\})*\}/.source,/\[(?:[^\[\]\\]|\\[\s\S]|\[(?:[^\[\]\\]|\\[\s\S])*\])*\]/.source,/<(?:[^<>\\]|\\[\s\S]|<(?:[^<>\\]|\\[\s\S])*>)*>/.source].join("|")+")",i=/(?:"(?:\\.|[^"\\\r\n])*"|(?:\b[a-zA-Z_]\w*|[^\s\0-\x7F]+)[?!]?|\$.)/.source;n.languages.insertBefore("ruby","keyword",{"regex-literal":[{pattern:RegExp(/%r/.source+a+/[egimnosux]{0,6}/.source),greedy:!0,inside:{interpolation:r,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:r,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp(/(^|[^:]):/.source+i),lookbehind:!0,greedy:!0},{pattern:RegExp(/([\r\n{(,][ \t]*)/.source+i+/(?=:(?!:))/.source),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),n.languages.insertBefore("ruby","string",{"string-literal":[{pattern:RegExp(/%[qQiIwWs]?/.source+a),greedy:!0,inside:{interpolation:r,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:r,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?/}},interpolation:r,string:/[\s\S]+/}},{pattern:/<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?'|'$/}},string:/[\s\S]+/}}],"command-literal":[{pattern:RegExp(/%x/.source+a),greedy:!0,inside:{interpolation:r,command:{pattern:/[\s\S]+/,alias:"string"}}},{pattern:/`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,greedy:!0,inside:{interpolation:r,command:{pattern:/[\s\S]+/,alias:"string"}}}]}),delete n.languages.ruby.string,n.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,constant:/\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/}),n.languages.rb=n.languages.ruby})(t)}return tm}var nm,k2;function yQ(){if(k2)return nm;k2=1;var e=cu();nm=t,t.displayName="crystal",t.aliases=[];function t(n){n.register(e),(function(r){r.languages.crystal=r.languages.extend("ruby",{keyword:[/\b(?:__DIR__|__END_LINE__|__FILE__|__LINE__|abstract|alias|annotation|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|ifdef|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|ptr|require|rescue|return|select|self|sizeof|struct|super|then|type|typeof|undef|uninitialized|union|unless|until|when|while|with|yield)\b/,{pattern:/(\.\s*)(?:is_a|responds_to)\?/,lookbehind:!0}],number:/\b(?:0b[01_]*[01]|0o[0-7_]*[0-7]|0x[\da-fA-F_]*[\da-fA-F]|(?:\d(?:[\d_]*\d)?)(?:\.[\d_]*\d)?(?:[eE][+-]?[\d_]*\d)?)(?:_(?:[uif](?:8|16|32|64))?)?\b/,operator:[/->/,r.languages.ruby.operator],punctuation:/[(){}[\].,;\\]/}),r.languages.insertBefore("crystal","string-literal",{attribute:{pattern:/@\[.*?\]/,inside:{delimiter:{pattern:/^@\[|\]$/,alias:"punctuation"},attribute:{pattern:/^(\s*)\w+/,lookbehind:!0,alias:"class-name"},args:{pattern:/\S(?:[\s\S]*\S)?/,inside:r.languages.crystal}}},expansion:{pattern:/\{(?:\{.*?\}|%.*?%)\}/,inside:{content:{pattern:/^(\{.)[\s\S]+(?=.\}$)/,lookbehind:!0,inside:r.languages.crystal},delimiter:{pattern:/^\{[\{%]|[\}%]\}$/,alias:"operator"}}},char:{pattern:/'(?:[^\\\r\n]{1,2}|\\(?:.|u(?:[A-Fa-f0-9]{1,4}|\{[A-Fa-f0-9]{1,6}\})))'/,greedy:!0}})})(n)}return nm}var rm,w2;function vQ(){if(w2)return rm;w2=1;var e=lu();rm=t,t.displayName="cshtml",t.aliases=["razor"];function t(n){n.register(e),(function(r){var a=/\/(?![/*])|\/\/.*[\r\n]|\/\*[^*]*(?:\*(?!\/)[^*]*)*\*\//.source,i=/@(?!")|"(?:[^\r\n\\"]|\\.)*"|@"(?:[^\\"]|""|\\[\s\S])*"(?!")/.source+"|"+/'(?:(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'|(?=[^\\](?!')))/.source;function s(x,k){for(var y=0;y/g,function(){return"(?:"+x+")"});return x.replace(//g,"[^\\s\\S]").replace(//g,"(?:"+i+")").replace(//g,"(?:"+a+")")}var l=s(/\((?:[^()'"@/]|||)*\)/.source,2),c=s(/\[(?:[^\[\]'"@/]|||)*\]/.source,2),u=s(/\{(?:[^{}'"@/]|||)*\}/.source,2),d=s(/<(?:[^<>'"@/]|||)*>/.source,2),p=/(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?/.source,m=/(?!\d)[^\s>\/=$<%]+/.source+p+/\s*\/?>/.source,f=/\B@?/.source+"(?:"+/<([a-zA-Z][\w:]*)/.source+p+/\s*>/.source+"(?:"+(/[^<]/.source+"|"+/<\/?(?!\1\b)/.source+m+"|"+s(/<\1/.source+p+/\s*>/.source+"(?:"+(/[^<]/.source+"|"+/<\/?(?!\1\b)/.source+m+"|")+")*"+/<\/\1\s*>/.source,2))+")*"+/<\/\1\s*>/.source+"|"+/|\+|~|\|\|/,punctuation:/[(),]/}},n.languages.css.atrule.inside["selector-function-argument"].inside=a,n.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}});var i={pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0},s={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0};n.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:i,number:s,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:i,number:s})})(t)}return im}var sm,C2;function SQ(){if(C2)return sm;C2=1,sm=e,e.displayName="csv",e.aliases=[];function e(t){t.languages.csv={value:/[^\r\n,"]+|"(?:[^"]|"")*"(?!")/,punctuation:/,/}}return sm}var om,N2;function EQ(){if(N2)return om;N2=1,om=e,e.displayName="cypher",e.aliases=[];function e(t){t.languages.cypher={comment:/\/\/.*/,string:{pattern:/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/,greedy:!0},"class-name":{pattern:/(:\s*)(?:\w+|`(?:[^`\\\r\n])*`)(?=\s*[{):])/,lookbehind:!0,greedy:!0},relationship:{pattern:/(-\[\s*(?:\w+\s*|`(?:[^`\\\r\n])*`\s*)?:\s*|\|\s*:\s*)(?:\w+|`(?:[^`\\\r\n])*`)/,lookbehind:!0,greedy:!0,alias:"property"},identifier:{pattern:/`(?:[^`\\\r\n])*`/,greedy:!0},variable:/\$\w+/,keyword:/\b(?:ADD|ALL|AND|AS|ASC|ASCENDING|ASSERT|BY|CALL|CASE|COMMIT|CONSTRAINT|CONTAINS|CREATE|CSV|DELETE|DESC|DESCENDING|DETACH|DISTINCT|DO|DROP|ELSE|END|ENDS|EXISTS|FOR|FOREACH|IN|INDEX|IS|JOIN|KEY|LIMIT|LOAD|MANDATORY|MATCH|MERGE|NODE|NOT|OF|ON|OPTIONAL|OR|ORDER(?=\s+BY)|PERIODIC|REMOVE|REQUIRE|RETURN|SCALAR|SCAN|SET|SKIP|START|STARTS|THEN|UNION|UNIQUE|UNWIND|USING|WHEN|WHERE|WITH|XOR|YIELD)\b/i,function:/\b\w+\b(?=\s*\()/,boolean:/\b(?:false|null|true)\b/i,number:/\b(?:0x[\da-fA-F]+|\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)\b/,operator:/:|<--?|--?>?|<>|=~?|[<>]=?|[+*/%^|]|\.\.\.?/,punctuation:/[()[\]{},;.]/}}return om}var lm,T2;function CQ(){if(T2)return lm;T2=1,lm=e,e.displayName="d",e.aliases=[];function e(t){t.languages.d=t.languages.extend("clike",{comment:[{pattern:/^\s*#!.+/,greedy:!0},{pattern:RegExp(/(^|[^\\])/.source+"(?:"+[/\/\+(?:\/\+(?:[^+]|\+(?!\/))*\+\/|(?!\/\+)[\s\S])*?\+\//.source,/\/\/.*/.source,/\/\*[\s\S]*?\*\//.source].join("|")+")"),lookbehind:!0,greedy:!0}],string:[{pattern:RegExp([/\b[rx]"(?:\\[\s\S]|[^\\"])*"[cwd]?/.source,/\bq"(?:\[[\s\S]*?\]|\([\s\S]*?\)|<[\s\S]*?>|\{[\s\S]*?\})"/.source,/\bq"((?!\d)\w+)$[\s\S]*?^\1"/.source,/\bq"(.)[\s\S]*?\2"/.source,/(["`])(?:\\[\s\S]|(?!\3)[^\\])*\3[cwd]?/.source].join("|"),"m"),greedy:!0},{pattern:/\bq\{(?:\{[^{}]*\}|[^{}])*\}/,greedy:!0,alias:"token-string"}],keyword:/\$|\b(?:__(?:(?:DATE|EOF|FILE|FUNCTION|LINE|MODULE|PRETTY_FUNCTION|TIMESTAMP|TIME|VENDOR|VERSION)__|gshared|parameters|traits|vector)|abstract|alias|align|asm|assert|auto|body|bool|break|byte|case|cast|catch|cdouble|cent|cfloat|char|class|const|continue|creal|dchar|debug|default|delegate|delete|deprecated|do|double|dstring|else|enum|export|extern|false|final|finally|float|for|foreach|foreach_reverse|function|goto|idouble|if|ifloat|immutable|import|inout|int|interface|invariant|ireal|lazy|long|macro|mixin|module|new|nothrow|null|out|override|package|pragma|private|protected|ptrdiff_t|public|pure|real|ref|return|scope|shared|short|size_t|static|string|struct|super|switch|synchronized|template|this|throw|true|try|typedef|typeid|typeof|ubyte|ucent|uint|ulong|union|unittest|ushort|version|void|volatile|wchar|while|with|wstring)\b/,number:[/\b0x\.?[a-f\d_]+(?:(?!\.\.)\.[a-f\d_]*)?(?:p[+-]?[a-f\d_]+)?[ulfi]{0,4}/i,{pattern:/((?:\.\.)?)(?:\b0b\.?|\b|\.)\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:e[+-]?\d[\d_]*)?[ulfi]{0,4}/i,lookbehind:!0}],operator:/\|[|=]?|&[&=]?|\+[+=]?|-[-=]?|\.?\.\.|=[>=]?|!(?:i[ns]\b|<>?=?|>=?|=)?|\bi[ns]\b|(?:<[<>]?|>>?>?|\^\^|[*\/%^~])=?/}),t.languages.insertBefore("d","string",{char:/'(?:\\(?:\W|\w+)|[^\\])'/}),t.languages.insertBefore("d","keyword",{property:/\B@\w*/}),t.languages.insertBefore("d","function",{register:{pattern:/\b(?:[ABCD][LHX]|E?(?:BP|DI|SI|SP)|[BS]PL|[ECSDGF]S|CR[0234]|[DS]IL|DR[012367]|E[ABCD]X|X?MM[0-7]|R(?:1[0-5]|[89])[BWD]?|R[ABCD]X|R[BS]P|R[DS]I|TR[3-7]|XMM(?:1[0-5]|[89])|YMM(?:1[0-5]|\d))\b|\bST(?:\([0-7]\)|\b)/,alias:"variable"}})}return lm}var cm,A2;function NQ(){if(A2)return cm;A2=1,cm=e,e.displayName="dart",e.aliases=[];function e(t){(function(n){var r=[/\b(?:async|sync|yield)\*/,/\b(?:abstract|assert|async|await|break|case|catch|class|const|continue|covariant|default|deferred|do|dynamic|else|enum|export|extends|extension|external|factory|final|finally|for|get|hide|if|implements|import|in|interface|library|mixin|new|null|on|operator|part|rethrow|return|set|show|static|super|switch|sync|this|throw|try|typedef|var|void|while|with|yield)\b/],a=/(^|[^\w.])(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source,i={pattern:RegExp(a+/[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}}}};n.languages.dart=n.languages.extend("clike",{"class-name":[i,{pattern:RegExp(a+/[A-Z]\w*(?=\s+\w+\s*[;,=()])/.source),lookbehind:!0,inside:i.inside}],keyword:r,operator:/\bis!|\b(?:as|is)\b|\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?/}),n.languages.insertBefore("dart","string",{"string-literal":{pattern:/r?(?:("""|''')[\s\S]*?\1|(["'])(?:\\.|(?!\2)[^\\\r\n])*\2(?!\2))/,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:\w+|\{(?:[^{}]|\{[^{}]*\})*\})/,lookbehind:!0,inside:{punctuation:/^\$\{?|\}$/,expression:{pattern:/[\s\S]+/,inside:n.languages.dart}}},string:/[\s\S]+/}},string:void 0}),n.languages.insertBefore("dart","class-name",{metadata:{pattern:/@\w+/,alias:"function"}}),n.languages.insertBefore("dart","class-name",{generics:{pattern:/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,inside:{"class-name":i,keyword:r,punctuation:/[<>(),.:]/,operator:/[?&|]/}}})})(t)}return cm}var um,I2;function TQ(){if(I2)return um;I2=1,um=e,e.displayName="dataweave",e.aliases=[];function e(t){(function(n){n.languages.dataweave={url:/\b[A-Za-z]+:\/\/[\w/:.?=&-]+|\burn:[\w:.?=&-]+/,property:{pattern:/(?:\b\w+#)?(?:"(?:\\.|[^\\"\r\n])*"|\b\w+)(?=\s*[:@])/,greedy:!0},string:{pattern:/(["'`])(?:\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},"mime-type":/\b(?:application|audio|image|multipart|text|video)\/[\w+-]+/,date:{pattern:/\|[\w:+-]+\|/,greedy:!0},comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],regex:{pattern:/\/(?:[^\\\/\r\n]|\\[^\r\n])+\//,greedy:!0},keyword:/\b(?:and|as|at|case|do|else|fun|if|input|is|match|not|ns|null|or|output|type|unless|update|using|var)\b/,function:/\b[A-Z_]\w*(?=\s*\()/i,number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\];(),.:@]/,operator:/<<|>>|->|[<>~=]=?|!=|--?-?|\+\+?|!|\?/,boolean:/\b(?:false|true)\b/}})(t)}return um}var dm,R2;function AQ(){if(R2)return dm;R2=1,dm=e,e.displayName="dax",e.aliases=[];function e(t){t.languages.dax={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/).*)/,lookbehind:!0},"data-field":{pattern:/'(?:[^']|'')*'(?!')(?:\[[ \w\xA0-\uFFFF]+\])?|\w+\[[ \w\xA0-\uFFFF]+\]/,alias:"symbol"},measure:{pattern:/\[[ \w\xA0-\uFFFF]+\]/,alias:"constant"},string:{pattern:/"(?:[^"]|"")*"(?!")/,greedy:!0},function:/\b(?:ABS|ACOS|ACOSH|ACOT|ACOTH|ADDCOLUMNS|ADDMISSINGITEMS|ALL|ALLCROSSFILTERED|ALLEXCEPT|ALLNOBLANKROW|ALLSELECTED|AND|APPROXIMATEDISTINCTCOUNT|ASIN|ASINH|ATAN|ATANH|AVERAGE|AVERAGEA|AVERAGEX|BETA\.DIST|BETA\.INV|BLANK|CALCULATE|CALCULATETABLE|CALENDAR|CALENDARAUTO|CEILING|CHISQ\.DIST|CHISQ\.DIST\.RT|CHISQ\.INV|CHISQ\.INV\.RT|CLOSINGBALANCEMONTH|CLOSINGBALANCEQUARTER|CLOSINGBALANCEYEAR|COALESCE|COMBIN|COMBINA|COMBINEVALUES|CONCATENATE|CONCATENATEX|CONFIDENCE\.NORM|CONFIDENCE\.T|CONTAINS|CONTAINSROW|CONTAINSSTRING|CONTAINSSTRINGEXACT|CONVERT|COS|COSH|COT|COTH|COUNT|COUNTA|COUNTAX|COUNTBLANK|COUNTROWS|COUNTX|CROSSFILTER|CROSSJOIN|CURRENCY|CURRENTGROUP|CUSTOMDATA|DATATABLE|DATE|DATEADD|DATEDIFF|DATESBETWEEN|DATESINPERIOD|DATESMTD|DATESQTD|DATESYTD|DATEVALUE|DAY|DEGREES|DETAILROWS|DISTINCT|DISTINCTCOUNT|DISTINCTCOUNTNOBLANK|DIVIDE|EARLIER|EARLIEST|EDATE|ENDOFMONTH|ENDOFQUARTER|ENDOFYEAR|EOMONTH|ERROR|EVEN|EXACT|EXCEPT|EXP|EXPON\.DIST|FACT|FALSE|FILTER|FILTERS|FIND|FIRSTDATE|FIRSTNONBLANK|FIRSTNONBLANKVALUE|FIXED|FLOOR|FORMAT|GCD|GENERATE|GENERATEALL|GENERATESERIES|GEOMEAN|GEOMEANX|GROUPBY|HASONEFILTER|HASONEVALUE|HOUR|IF|IF\.EAGER|IFERROR|IGNORE|INT|INTERSECT|ISBLANK|ISCROSSFILTERED|ISEMPTY|ISERROR|ISEVEN|ISFILTERED|ISINSCOPE|ISLOGICAL|ISNONTEXT|ISNUMBER|ISO\.CEILING|ISODD|ISONORAFTER|ISSELECTEDMEASURE|ISSUBTOTAL|ISTEXT|KEEPFILTERS|KEYWORDMATCH|LASTDATE|LASTNONBLANK|LASTNONBLANKVALUE|LCM|LEFT|LEN|LN|LOG|LOG10|LOOKUPVALUE|LOWER|MAX|MAXA|MAXX|MEDIAN|MEDIANX|MID|MIN|MINA|MINUTE|MINX|MOD|MONTH|MROUND|NATURALINNERJOIN|NATURALLEFTOUTERJOIN|NEXTDAY|NEXTMONTH|NEXTQUARTER|NEXTYEAR|NONVISUAL|NORM\.DIST|NORM\.INV|NORM\.S\.DIST|NORM\.S\.INV|NOT|NOW|ODD|OPENINGBALANCEMONTH|OPENINGBALANCEQUARTER|OPENINGBALANCEYEAR|OR|PARALLELPERIOD|PATH|PATHCONTAINS|PATHITEM|PATHITEMREVERSE|PATHLENGTH|PERCENTILE\.EXC|PERCENTILE\.INC|PERCENTILEX\.EXC|PERCENTILEX\.INC|PERMUT|PI|POISSON\.DIST|POWER|PREVIOUSDAY|PREVIOUSMONTH|PREVIOUSQUARTER|PREVIOUSYEAR|PRODUCT|PRODUCTX|QUARTER|QUOTIENT|RADIANS|RAND|RANDBETWEEN|RANK\.EQ|RANKX|RELATED|RELATEDTABLE|REMOVEFILTERS|REPLACE|REPT|RIGHT|ROLLUP|ROLLUPADDISSUBTOTAL|ROLLUPGROUP|ROLLUPISSUBTOTAL|ROUND|ROUNDDOWN|ROUNDUP|ROW|SAMEPERIODLASTYEAR|SAMPLE|SEARCH|SECOND|SELECTCOLUMNS|SELECTEDMEASURE|SELECTEDMEASUREFORMATSTRING|SELECTEDMEASURENAME|SELECTEDVALUE|SIGN|SIN|SINH|SQRT|SQRTPI|STARTOFMONTH|STARTOFQUARTER|STARTOFYEAR|STDEV\.P|STDEV\.S|STDEVX\.P|STDEVX\.S|SUBSTITUTE|SUBSTITUTEWITHINDEX|SUM|SUMMARIZE|SUMMARIZECOLUMNS|SUMX|SWITCH|T\.DIST|T\.DIST\.2T|T\.DIST\.RT|T\.INV|T\.INV\.2T|TAN|TANH|TIME|TIMEVALUE|TODAY|TOPN|TOPNPERLEVEL|TOPNSKIP|TOTALMTD|TOTALQTD|TOTALYTD|TREATAS|TRIM|TRUE|TRUNC|UNICHAR|UNICODE|UNION|UPPER|USERELATIONSHIP|USERNAME|USEROBJECTID|USERPRINCIPALNAME|UTCNOW|UTCTODAY|VALUE|VALUES|VAR\.P|VAR\.S|VARX\.P|VARX\.S|WEEKDAY|WEEKNUM|XIRR|XNPV|YEAR|YEARFRAC)(?=\s*\()/i,keyword:/\b(?:DEFINE|EVALUATE|MEASURE|ORDER\s+BY|RETURN|VAR|START\s+AT|ASC|DESC)\b/i,boolean:{pattern:/\b(?:FALSE|NULL|TRUE)\b/i,alias:"constant"},number:/\b\d+(?:\.\d*)?|\B\.\d+\b/,operator:/:=|[-+*\/=^]|&&?|\|\||<(?:=>?|<|>)?|>[>=]?|\b(?:IN|NOT)\b/i,punctuation:/[;\[\](){}`,.]/}}return dm}var pm,_2;function IQ(){if(_2)return pm;_2=1,pm=e,e.displayName="dhall",e.aliases=[];function e(t){t.languages.dhall={comment:/--.*|\{-(?:[^-{]|-(?!\})|\{(?!-)|\{-(?:[^-{]|-(?!\})|\{(?!-))*-\})*-\}/,string:{pattern:/"(?:[^"\\]|\\.)*"|''(?:[^']|'(?!')|'''|''\$\{)*''(?!'|\$)/,greedy:!0,inside:{interpolation:{pattern:/\$\{[^{}]*\}/,inside:{expression:{pattern:/(^\$\{)[\s\S]+(?=\}$)/,lookbehind:!0,alias:"language-dhall",inside:null},punctuation:/\$\{|\}/}}}},label:{pattern:/`[^`]*`/,greedy:!0},url:{pattern:/\bhttps?:\/\/[\w.:%!$&'*+;=@~-]+(?:\/[\w.:%!$&'*+;=@~-]*)*(?:\?[/?\w.:%!$&'*+;=@~-]*)?/,greedy:!0},env:{pattern:/\benv:(?:(?!\d)\w+|"(?:[^"\\=]|\\.)*")/,greedy:!0,inside:{function:/^env/,operator:/^:/,variable:/[\s\S]+/}},hash:{pattern:/\bsha256:[\da-fA-F]{64}\b/,inside:{function:/sha256/,operator:/:/,number:/[\da-fA-F]{64}/}},keyword:/\b(?:as|assert|else|forall|if|in|let|merge|missing|then|toMap|using|with)\b|\u2200/,builtin:/\b(?:None|Some)\b/,boolean:/\b(?:False|True)\b/,number:/\bNaN\b|-?\bInfinity\b|[+-]?\b(?:0x[\da-fA-F]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b/,operator:/\/\\|\/\/\\\\|&&|\|\||===|[!=]=|\/\/|->|\+\+|::|[+*#@=:?<>|\\\u2227\u2a53\u2261\u2afd\u03bb\u2192]/,punctuation:/\.\.|[{}\[\](),./]/,"class-name":/\b[A-Z]\w*\b/},t.languages.dhall.string.inside.interpolation.inside.expression.inside=t.languages.dhall}return pm}var mm,j2;function RQ(){if(j2)return mm;j2=1,mm=e,e.displayName="diff",e.aliases=[];function e(t){(function(n){n.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d.*$/m]};var r={"deleted-sign":"-","deleted-arrow":"<","inserted-sign":"+","inserted-arrow":">",unchanged:" ",diff:"!"};Object.keys(r).forEach(function(a){var i=r[a],s=[];/^\w+$/.test(a)||s.push(/\w+/.exec(a)[0]),a==="diff"&&s.push("bold"),n.languages.diff[a]={pattern:RegExp("^(?:["+i+`].*(?:\r +?| +|(?![\\s\\S])))+`,"m"),alias:s,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(a)[0]}}}}),Object.defineProperty(n.languages.diff,"PREFIXES",{value:r})})(t)}return mm}var fm,O2;function Gn(){if(O2)return fm;O2=1,fm=e,e.displayName="markupTemplating",e.aliases=[];function e(t){(function(n){function r(a,i){return"___"+a.toUpperCase()+i+"___"}Object.defineProperties(n.languages["markup-templating"]={},{buildPlaceholders:{value:function(a,i,s,l){if(a.language===i){var c=a.tokenStack=[];a.code=a.code.replace(s,function(u){if(typeof l=="function"&&!l(u))return u;for(var d=c.length,p;a.code.indexOf(p=r(i,d))!==-1;)++d;return c[d]=u,p}),a.grammar=n.languages.markup}}},tokenizePlaceholders:{value:function(a,i){if(a.language!==i||!a.tokenStack)return;a.grammar=n.languages[i];var s=0,l=Object.keys(a.tokenStack);function c(u){for(var d=0;d=l.length);d++){var p=u[d];if(typeof p=="string"||p.content&&typeof p.content=="string"){var m=l[s],f=a.tokenStack[m],g=typeof p=="string"?p:p.content,b=r(i,m),x=g.indexOf(b);if(x>-1){++s;var k=g.substring(0,x),y=new n.Token(i,n.tokenize(f,a.grammar),"language-"+i,f),v=g.substring(x+b.length),E=[];k&&E.push.apply(E,c([k])),E.push(y),v&&E.push.apply(E,c([v])),typeof p=="string"?u.splice.apply(u,[d,1].concat(E)):p.content=E}}else p.content&&c(p.content)}return u}c(a.tokens)}}})})(t)}return fm}var hm,D2;function _Q(){if(D2)return hm;D2=1;var e=Gn();hm=t,t.displayName="django",t.aliases=["jinja2"];function t(n){n.register(e),(function(r){r.languages.django={comment:/^\{#[\s\S]*?#\}$/,tag:{pattern:/(^\{%[+-]?\s*)\w+/,lookbehind:!0,alias:"keyword"},delimiter:{pattern:/^\{[{%][+-]?|[+-]?[}%]\}$/,alias:"punctuation"},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},filter:{pattern:/(\|)\w+/,lookbehind:!0,alias:"function"},test:{pattern:/(\bis\s+(?:not\s+)?)(?!not\b)\w+/,lookbehind:!0,alias:"function"},function:/\b[a-z_]\w+(?=\s*\()/i,keyword:/\b(?:and|as|by|else|for|if|import|in|is|loop|not|or|recursive|with|without)\b/,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,number:/\b\d+(?:\.\d+)?\b/,boolean:/[Ff]alse|[Nn]one|[Tt]rue/,variable:/\b\w+\b/,punctuation:/[{}[\](),.:;]/};var a=/\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}|\{#[\s\S]*?#\}/g,i=r.languages["markup-templating"];r.hooks.add("before-tokenize",function(s){i.buildPlaceholders(s,"django",a)}),r.hooks.add("after-tokenize",function(s){i.tokenizePlaceholders(s,"django")}),r.languages.jinja2=r.languages.django,r.hooks.add("before-tokenize",function(s){i.buildPlaceholders(s,"jinja2",a)}),r.hooks.add("after-tokenize",function(s){i.tokenizePlaceholders(s,"jinja2")})})(n)}return hm}var gm,M2;function jQ(){if(M2)return gm;M2=1,gm=e,e.displayName="dnsZoneFile",e.aliases=[];function e(t){t.languages["dns-zone-file"]={comment:/;.*/,string:{pattern:/"(?:\\.|[^"\\\r\n])*"/,greedy:!0},variable:[{pattern:/(^\$ORIGIN[ \t]+)\S+/m,lookbehind:!0},{pattern:/(^|\s)@(?=\s|$)/,lookbehind:!0}],keyword:/^\$(?:INCLUDE|ORIGIN|TTL)(?=\s|$)/m,class:{pattern:/(^|\s)(?:CH|CS|HS|IN)(?=\s|$)/,lookbehind:!0,alias:"keyword"},type:{pattern:/(^|\s)(?:A|A6|AAAA|AFSDB|APL|ATMA|CAA|CDNSKEY|CDS|CERT|CNAME|DHCID|DLV|DNAME|DNSKEY|DS|EID|GID|GPOS|HINFO|HIP|IPSECKEY|ISDN|KEY|KX|LOC|MAILA|MAILB|MB|MD|MF|MG|MINFO|MR|MX|NAPTR|NB|NBSTAT|NIMLOC|NINFO|NS|NSAP|NSAP-PTR|NSEC|NSEC3|NSEC3PARAM|NULL|NXT|OPENPGPKEY|PTR|PX|RKEY|RP|RRSIG|RT|SIG|SINK|SMIMEA|SOA|SPF|SRV|SSHFP|TA|TKEY|TLSA|TSIG|TXT|UID|UINFO|UNSPEC|URI|WKS|X25)(?=\s|$)/,lookbehind:!0,alias:"keyword"},punctuation:/[()]/},t.languages["dns-zone"]=t.languages["dns-zone-file"]}return gm}var bm,L2;function OQ(){if(L2)return bm;L2=1,bm=e,e.displayName="docker",e.aliases=["dockerfile"];function e(t){(function(n){var r=/\\[\r\n](?:\s|\\[\r\n]|#.*(?!.))*(?![\s#]|\\[\r\n])/.source,a=/(?:[ \t]+(?![ \t])(?:)?|)/.source.replace(//g,function(){return r}),i=/"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"|'(?:[^'\\\r\n]|\\(?:\r\n|[\s\S]))*'/.source,s=/--[\w-]+=(?:|(?!["'])(?:[^\s\\]|\\.)+)/.source.replace(//g,function(){return i}),l={pattern:RegExp(i),greedy:!0},c={pattern:/(^[ \t]*)#.*/m,lookbehind:!0,greedy:!0};function u(d,p){return d=d.replace(//g,function(){return s}).replace(//g,function(){return a}),RegExp(d,p)}n.languages.docker={instruction:{pattern:/(^[ \t]*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)(?:\\.|[^\r\n\\])*(?:\\$(?:\s|#.*$)*(?![\s#])(?:\\.|[^\r\n\\])*)*/im,lookbehind:!0,greedy:!0,inside:{options:{pattern:u(/(^(?:ONBUILD)?\w+)(?:)*/.source,"i"),lookbehind:!0,greedy:!0,inside:{property:{pattern:/(^|\s)--[\w-]+/,lookbehind:!0},string:[l,{pattern:/(=)(?!["'])(?:[^\s\\]|\\.)+/,lookbehind:!0}],operator:/\\$/m,punctuation:/=/}},keyword:[{pattern:u(/(^(?:ONBUILD)?HEALTHCHECK(?:)*)(?:CMD|NONE)\b/.source,"i"),lookbehind:!0,greedy:!0},{pattern:u(/(^(?:ONBUILD)?FROM(?:)*(?!--)[^ \t\\]+)AS/.source,"i"),lookbehind:!0,greedy:!0},{pattern:u(/(^ONBUILD)\w+/.source,"i"),lookbehind:!0,greedy:!0},{pattern:/^\w+/,greedy:!0}],comment:c,string:l,variable:/\$(?:\w+|\{[^{}"'\\]*\})/,operator:/\\$/m}},comment:c},n.languages.dockerfile=n.languages.docker})(t)}return bm}var xm,P2;function DQ(){if(P2)return xm;P2=1,xm=e,e.displayName="dot",e.aliases=["gv"];function e(t){(function(n){var r="(?:"+[/[a-zA-Z_\x80-\uFFFF][\w\x80-\uFFFF]*/.source,/-?(?:\.\d+|\d+(?:\.\d*)?)/.source,/"[^"\\]*(?:\\[\s\S][^"\\]*)*"/.source,/<(?:[^<>]|(?!)*>/.source].join("|")+")",a={markup:{pattern:/(^<)[\s\S]+(?=>$)/,lookbehind:!0,alias:["language-markup","language-html","language-xml"],inside:n.languages.markup}};function i(s,l){return RegExp(s.replace(//g,function(){return r}),l)}n.languages.dot={comment:{pattern:/\/\/.*|\/\*[\s\S]*?\*\/|^#.*/m,greedy:!0},"graph-name":{pattern:i(/(\b(?:digraph|graph|subgraph)[ \t\r\n]+)/.source,"i"),lookbehind:!0,greedy:!0,alias:"class-name",inside:a},"attr-value":{pattern:i(/(=[ \t\r\n]*)/.source),lookbehind:!0,greedy:!0,inside:a},"attr-name":{pattern:i(/([\[;, \t\r\n])(?=[ \t\r\n]*=)/.source),lookbehind:!0,greedy:!0,inside:a},keyword:/\b(?:digraph|edge|graph|node|strict|subgraph)\b/i,"compass-point":{pattern:/(:[ \t\r\n]*)(?:[ewc_]|[ns][ew]?)(?![\w\x80-\uFFFF])/,lookbehind:!0,alias:"builtin"},node:{pattern:i(/(^|[^-.\w\x80-\uFFFF\\])/.source),lookbehind:!0,greedy:!0,inside:a},operator:/[=:]|-[->]/,punctuation:/[\[\]{};,]/},n.languages.gv=n.languages.dot})(t)}return xm}var ym,F2;function MQ(){if(F2)return ym;F2=1,ym=e,e.displayName="ebnf",e.aliases=[];function e(t){t.languages.ebnf={comment:/\(\*[\s\S]*?\*\)/,string:{pattern:/"[^"\r\n]*"|'[^'\r\n]*'/,greedy:!0},special:{pattern:/\?[^?\r\n]*\?/,greedy:!0,alias:"class-name"},definition:{pattern:/^([\t ]*)[a-z]\w*(?:[ \t]+[a-z]\w*)*(?=\s*=)/im,lookbehind:!0,alias:["rule","keyword"]},rule:/\b[a-z]\w*(?:[ \t]+[a-z]\w*)*\b/i,punctuation:/\([:/]|[:/]\)|[.,;()[\]{}]/,operator:/[-=|*/!]/}}return ym}var vm,B2;function LQ(){if(B2)return vm;B2=1,vm=e,e.displayName="editorconfig",e.aliases=[];function e(t){t.languages.editorconfig={comment:/[;#].*/,section:{pattern:/(^[ \t]*)\[.+\]/m,lookbehind:!0,alias:"selector",inside:{regex:/\\\\[\[\]{},!?.*]/,operator:/[!?]|\.\.|\*{1,2}/,punctuation:/[\[\]{},]/}},key:{pattern:/(^[ \t]*)[^\s=]+(?=[ \t]*=)/m,lookbehind:!0,alias:"attr-name"},value:{pattern:/=.*/,alias:"attr-value",inside:{punctuation:/^=/}}}}return vm}var km,$2;function PQ(){if($2)return km;$2=1,km=e,e.displayName="eiffel",e.aliases=[];function e(t){t.languages.eiffel={comment:/--.*/,string:[{pattern:/"([^[]*)\[[\s\S]*?\]\1"/,greedy:!0},{pattern:/"([^{]*)\{[\s\S]*?\}\1"/,greedy:!0},{pattern:/"(?:%(?:(?!\n)\s)*\n\s*%|%\S|[^%"\r\n])*"/,greedy:!0}],char:/'(?:%.|[^%'\r\n])+'/,keyword:/\b(?:across|agent|alias|all|and|as|assign|attached|attribute|check|class|convert|create|Current|debug|deferred|detachable|do|else|elseif|end|ensure|expanded|export|external|feature|from|frozen|if|implies|inherit|inspect|invariant|like|local|loop|not|note|obsolete|old|once|or|Precursor|redefine|rename|require|rescue|Result|retry|select|separate|some|then|undefine|until|variant|Void|when|xor)\b/i,boolean:/\b(?:False|True)\b/i,"class-name":/\b[A-Z][\dA-Z_]*\b/,number:[/\b0[xcb][\da-f](?:_*[\da-f])*\b/i,/(?:\b\d(?:_*\d)*)?\.(?:(?:\d(?:_*\d)*)?e[+-]?)?\d(?:_*\d)*\b|\b\d(?:_*\d)*\b\.?/i],punctuation:/:=|<<|>>|\(\||\|\)|->|\.(?=\w)|[{}[\];(),:?]/,operator:/\\\\|\|\.\.\||\.\.|\/[~\/=]?|[><]=?|[-+*^=~]/}}return km}var wm,U2;function FQ(){if(U2)return wm;U2=1;var e=Gn();wm=t,t.displayName="ejs",t.aliases=["eta"];function t(n){n.register(e),(function(r){r.languages.ejs={delimiter:{pattern:/^<%[-_=]?|[-_]?%>$/,alias:"punctuation"},comment:/^#[\s\S]*/,"language-javascript":{pattern:/[\s\S]+/,inside:r.languages.javascript}},r.hooks.add("before-tokenize",function(a){var i=/<%(?!%)[\s\S]+?%>/g;r.languages["markup-templating"].buildPlaceholders(a,"ejs",i)}),r.hooks.add("after-tokenize",function(a){r.languages["markup-templating"].tokenizePlaceholders(a,"ejs")}),r.languages.eta=r.languages.ejs})(n)}return wm}var Sm,z2;function BQ(){if(z2)return Sm;z2=1,Sm=e,e.displayName="elixir",e.aliases=[];function e(t){t.languages.elixir={doc:{pattern:/@(?:doc|moduledoc)\s+(?:("""|''')[\s\S]*?\1|("|')(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2)/,inside:{attribute:/^@\w+/,string:/['"][\s\S]+/}},comment:{pattern:/#.*/,greedy:!0},regex:{pattern:/~[rR](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|[^\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[uismxfr]*/,greedy:!0},string:[{pattern:/~[cCsSwW](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|#\{[^}]+\}|#(?!\{)|[^#\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[csa]?/,greedy:!0,inside:{}},{pattern:/("""|''')[\s\S]*?\1/,greedy:!0,inside:{}},{pattern:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{}}],atom:{pattern:/(^|[^:]):\w+/,lookbehind:!0,alias:"symbol"},module:{pattern:/\b[A-Z]\w*\b/,alias:"class-name"},"attr-name":/\b\w+\??:(?!:)/,argument:{pattern:/(^|[^&])&\d+/,lookbehind:!0,alias:"variable"},attribute:{pattern:/@\w+/,alias:"variable"},function:/\b[_a-zA-Z]\w*[?!]?(?:(?=\s*(?:\.\s*)?\()|(?=\/\d))/,number:/\b(?:0[box][a-f\d_]+|\d[\d_]*)(?:\.[\d_]+)?(?:e[+-]?[\d_]+)?\b/i,keyword:/\b(?:after|alias|and|case|catch|cond|def(?:callback|delegate|exception|impl|macro|module|n|np|p|protocol|struct)?|do|else|end|fn|for|if|import|not|or|quote|raise|require|rescue|try|unless|unquote|use|when)\b/,boolean:/\b(?:false|nil|true)\b/,operator:[/\bin\b|&&?|\|[|>]?|\\\\|::|\.\.\.?|\+\+?|-[->]?|<[-=>]|>=|!==?|\B!|=(?:==?|[>~])?|[*\/^]/,{pattern:/([^<])<(?!<)/,lookbehind:!0},{pattern:/([^>])>(?!>)/,lookbehind:!0}],punctuation:/<<|>>|[.,%\[\]{}()]/},t.languages.elixir.string.forEach(function(n){n.inside={interpolation:{pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"},rest:t.languages.elixir}}}})}return Sm}var Em,q2;function $Q(){if(q2)return Em;q2=1,Em=e,e.displayName="elm",e.aliases=[];function e(t){t.languages.elm={comment:/--.*|\{-[\s\S]*?-\}/,char:{pattern:/'(?:[^\\'\r\n]|\\(?:[abfnrtv\\']|\d+|x[0-9a-fA-F]+|u\{[0-9a-fA-F]+\}))'/,greedy:!0},string:[{pattern:/"""[\s\S]*?"""/,greedy:!0},{pattern:/"(?:[^\\"\r\n]|\\.)*"/,greedy:!0}],"import-statement":{pattern:/(^[\t ]*)import\s+[A-Z]\w*(?:\.[A-Z]\w*)*(?:\s+as\s+(?:[A-Z]\w*)(?:\.[A-Z]\w*)*)?(?:\s+exposing\s+)?/m,lookbehind:!0,inside:{keyword:/\b(?:as|exposing|import)\b/}},keyword:/\b(?:alias|as|case|else|exposing|if|in|infixl|infixr|let|module|of|then|type)\b/,builtin:/\b(?:abs|acos|always|asin|atan|atan2|ceiling|clamp|compare|cos|curry|degrees|e|flip|floor|fromPolar|identity|isInfinite|isNaN|logBase|max|min|negate|never|not|pi|radians|rem|round|sin|sqrt|tan|toFloat|toPolar|toString|truncate|turns|uncurry|xor)\b/,number:/\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0x[0-9a-f]+)\b/i,operator:/\s\.\s|[+\-/*=.$<>:&|^?%#@~!]{2,}|[+\-/*=$<>:&|^?%#@~!]/,hvariable:/\b(?:[A-Z]\w*\.)*[a-z]\w*\b/,constant:/\b(?:[A-Z]\w*\.)*[A-Z]\w*\b/,punctuation:/[{}[\]|(),.:]/}}return Em}var Cm,H2;function UQ(){if(H2)return Cm;H2=1;var e=cu(),t=Gn();Cm=n,n.displayName="erb",n.aliases=[];function n(r){r.register(e),r.register(t),(function(a){a.languages.erb={delimiter:{pattern:/^(\s*)<%=?|%>(?=\s*$)/,lookbehind:!0,alias:"punctuation"},ruby:{pattern:/\s*\S[\s\S]*/,alias:"language-ruby",inside:a.languages.ruby}},a.hooks.add("before-tokenize",function(i){var s=/<%=?(?:[^\r\n]|[\r\n](?!=begin)|[\r\n]=begin\s(?:[^\r\n]|[\r\n](?!=end))*[\r\n]=end)+?%>/g;a.languages["markup-templating"].buildPlaceholders(i,"erb",s)}),a.hooks.add("after-tokenize",function(i){a.languages["markup-templating"].tokenizePlaceholders(i,"erb")})})(r)}return Cm}var Nm,G2;function zQ(){if(G2)return Nm;G2=1,Nm=e,e.displayName="erlang",e.aliases=[];function e(t){t.languages.erlang={comment:/%.+/,string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},"quoted-function":{pattern:/'(?:\\.|[^\\'\r\n])+'(?=\()/,alias:"function"},"quoted-atom":{pattern:/'(?:\\.|[^\\'\r\n])+'/,alias:"atom"},boolean:/\b(?:false|true)\b/,keyword:/\b(?:after|case|catch|end|fun|if|of|receive|try|when)\b/,number:[/\$\\?./,/\b\d+#[a-z0-9]+/i,/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i],function:/\b[a-z][\w@]*(?=\()/,variable:{pattern:/(^|[^@])(?:\b|\?)[A-Z_][\w@]*/,lookbehind:!0},operator:[/[=\/<>:]=|=[:\/]=|\+\+?|--?|[=*\/!]|\b(?:and|andalso|band|bnot|bor|bsl|bsr|bxor|div|not|or|orelse|rem|xor)\b/,{pattern:/(^|[^<])<(?!<)/,lookbehind:!0},{pattern:/(^|[^>])>(?!>)/,lookbehind:!0}],atom:/\b[a-z][\w@]*/,punctuation:/[()[\]{}:;,.#|]|<<|>>/}}return Nm}var Tm,V2;function c6(){if(V2)return Tm;V2=1,Tm=e,e.displayName="lua",e.aliases=[];function e(t){t.languages.lua={comment:/^#!.+|--(?:\[(=*)\[[\s\S]*?\]\1\]|.*)/m,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n]|\\z(?:\r\n|\s)|\\(?:\r\n|[^z]))*\1|\[(=*)\[[\s\S]*?\]\2\]/,greedy:!0},number:/\b0x[a-f\d]+(?:\.[a-f\d]*)?(?:p[+-]?\d+)?\b|\b\d+(?:\.\B|(?:\.\d*)?(?:e[+-]?\d+)?\b)|\B\.\d+(?:e[+-]?\d+)?\b/i,keyword:/\b(?:and|break|do|else|elseif|end|false|for|function|goto|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,function:/(?!\d)\w+(?=\s*(?:[({]))/,operator:[/[-+*%^&|#]|\/\/?|<[<=]?|>[>=]?|[=~]=?/,{pattern:/(^|[^.])\.\.(?!\.)/,lookbehind:!0}],punctuation:/[\[\](){},;]|\.+|:+/}}return Tm}var Am,W2;function qQ(){if(W2)return Am;W2=1;var e=c6(),t=Gn();Am=n,n.displayName="etlua",n.aliases=[];function n(r){r.register(e),r.register(t),(function(a){a.languages.etlua={delimiter:{pattern:/^<%[-=]?|-?%>$/,alias:"punctuation"},"language-lua":{pattern:/[\s\S]+/,inside:a.languages.lua}},a.hooks.add("before-tokenize",function(i){var s=/<%[\s\S]+?%>/g;a.languages["markup-templating"].buildPlaceholders(i,"etlua",s)}),a.hooks.add("after-tokenize",function(i){a.languages["markup-templating"].tokenizePlaceholders(i,"etlua")})})(r)}return Am}var Im,K2;function HQ(){if(K2)return Im;K2=1,Im=e,e.displayName="excelFormula",e.aliases=[];function e(t){t.languages["excel-formula"]={comment:{pattern:/(\bN\(\s*)"(?:[^"]|"")*"(?=\s*\))/i,lookbehind:!0,greedy:!0},string:{pattern:/"(?:[^"]|"")*"(?!")/,greedy:!0},reference:{pattern:/(?:'[^']*'|(?:[^\s()[\]{}<>*?"';,$&]*\[[^^\s()[\]{}<>*?"']+\])?\w+)!/,greedy:!0,alias:"string",inside:{operator:/!$/,punctuation:/'/,sheet:{pattern:/[^[\]]+$/,alias:"function"},file:{pattern:/\[[^[\]]+\]$/,inside:{punctuation:/[[\]]/}},path:/[\s\S]+/}},"function-name":{pattern:/\b[A-Z]\w*(?=\()/i,alias:"keyword"},range:{pattern:/\$?\b(?:[A-Z]+\$?\d+:\$?[A-Z]+\$?\d+|[A-Z]+:\$?[A-Z]+|\d+:\$?\d+)\b/i,alias:"property",inside:{operator:/:/,cell:/\$?[A-Z]+\$?\d+/i,column:/\$?[A-Z]+/i,row:/\$?\d+/}},cell:{pattern:/\b[A-Z]+\d+\b|\$[A-Za-z]+\$?\d+\b|\b[A-Za-z]+\$\d+\b/,alias:"property"},number:/(?:\b\d+(?:\.\d+)?|\B\.\d+)(?:e[+-]?\d+)?\b/i,boolean:/\b(?:FALSE|TRUE)\b/i,operator:/[-+*/^%=&,]|<[=>]?|>=?/,punctuation:/[[\]();{}|]/},t.languages.xlsx=t.languages.xls=t.languages["excel-formula"]}return Im}var Rm,Y2;function GQ(){if(Y2)return Rm;Y2=1,Rm=e,e.displayName="factor",e.aliases=[];function e(t){(function(n){var r={function:/\b(?:BUGS?|FIX(?:MES?)?|NOTES?|TODOS?|XX+|HACKS?|WARN(?:ING)?|\?{2,}|!{2,})\b/},a={number:/\\[^\s']|%\w/},i={comment:[{pattern:/(^|\s)(?:! .*|!$)/,lookbehind:!0,inside:r},{pattern:/(^|\s)\/\*\s[\s\S]*?\*\/(?=\s|$)/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|\s)!\[(={0,6})\[\s[\s\S]*?\]\2\](?=\s|$)/,lookbehind:!0,greedy:!0,inside:r}],number:[{pattern:/(^|\s)[+-]?\d+(?=\s|$)/,lookbehind:!0},{pattern:/(^|\s)[+-]?0(?:b[01]+|o[0-7]+|d\d+|x[\dA-F]+)(?=\s|$)/i,lookbehind:!0},{pattern:/(^|\s)[+-]?\d+\/\d+\.?(?=\s|$)/,lookbehind:!0},{pattern:/(^|\s)\+?\d+\+\d+\/\d+(?=\s|$)/,lookbehind:!0},{pattern:/(^|\s)-\d+-\d+\/\d+(?=\s|$)/,lookbehind:!0},{pattern:/(^|\s)[+-]?(?:\d*\.\d+|\d+\.\d*|\d+)(?:e[+-]?\d+)?(?=\s|$)/i,lookbehind:!0},{pattern:/(^|\s)NAN:\s+[\da-fA-F]+(?=\s|$)/,lookbehind:!0},{pattern:/(^|\s)[+-]?0(?:b1\.[01]*|o1\.[0-7]*|d1\.\d*|x1\.[\dA-F]*)p\d+(?=\s|$)/i,lookbehind:!0}],regexp:{pattern:/(^|\s)R\/\s(?:\\\S|[^\\/])*\/(?:[idmsr]*|[idmsr]+-[idmsr]+)(?=\s|$)/,lookbehind:!0,alias:"number",inside:{variable:/\\\S/,keyword:/[+?*\[\]^$(){}.|]/,operator:{pattern:/(\/)[idmsr]+(?:-[idmsr]+)?/,lookbehind:!0}}},boolean:{pattern:/(^|\s)[tf](?=\s|$)/,lookbehind:!0},"custom-string":{pattern:/(^|\s)[A-Z0-9\-]+"\s(?:\\\S|[^"\\])*"/,lookbehind:!0,greedy:!0,alias:"string",inside:{number:/\\\S|%\w|\//}},"multiline-string":[{pattern:/(^|\s)STRING:\s+\S+(?:\n|\r\n).*(?:\n|\r\n)\s*;(?=\s|$)/,lookbehind:!0,greedy:!0,alias:"string",inside:{number:a.number,"semicolon-or-setlocal":{pattern:/([\r\n][ \t]*);(?=\s|$)/,lookbehind:!0,alias:"function"}}},{pattern:/(^|\s)HEREDOC:\s+\S+(?:\n|\r\n).*(?:\n|\r\n)\s*\S+(?=\s|$)/,lookbehind:!0,greedy:!0,alias:"string",inside:a},{pattern:/(^|\s)\[(={0,6})\[\s[\s\S]*?\]\2\](?=\s|$)/,lookbehind:!0,greedy:!0,alias:"string",inside:a}],"special-using":{pattern:/(^|\s)USING:(?:\s\S+)*(?=\s+;(?:\s|$))/,lookbehind:!0,alias:"function",inside:{string:{pattern:/(\s)[^:\s]+/,lookbehind:!0}}},"stack-effect-delimiter":[{pattern:/(^|\s)(?:call|eval|execute)?\((?=\s)/,lookbehind:!0,alias:"operator"},{pattern:/(\s)--(?=\s)/,lookbehind:!0,alias:"operator"},{pattern:/(\s)\)(?=\s|$)/,lookbehind:!0,alias:"operator"}],combinators:{pattern:null,lookbehind:!0,alias:"keyword"},"kernel-builtin":{pattern:null,lookbehind:!0,alias:"variable"},"sequences-builtin":{pattern:null,lookbehind:!0,alias:"variable"},"math-builtin":{pattern:null,lookbehind:!0,alias:"variable"},"constructor-word":{pattern:/(^|\s)<(?!=+>|-+>)\S+>(?=\s|$)/,lookbehind:!0,alias:"keyword"},"other-builtin-syntax":{pattern:null,lookbehind:!0,alias:"operator"},"conventionally-named-word":{pattern:/(^|\s)(?!")(?:(?:change|new|set|with)-\S+|\$\S+|>[^>\s]+|[^:>\s]+>|[^>\s]+>[^>\s]+|\+[^+\s]+\+|[^?\s]+\?|\?[^?\s]+|[^>\s]+>>|>>[^>\s]+|[^<\s]+<<|\([^()\s]+\)|[^!\s]+!|[^*\s]\S*\*|[^.\s]\S*\.)(?=\s|$)/,lookbehind:!0,alias:"keyword"},"colon-syntax":{pattern:/(^|\s)(?:[A-Z0-9\-]+#?)?:{1,2}\s+(?:;\S+|(?!;)\S+)(?=\s|$)/,lookbehind:!0,greedy:!0,alias:"function"},"semicolon-or-setlocal":{pattern:/(\s)(?:;|:>)(?=\s|$)/,lookbehind:!0,alias:"function"},"curly-brace-literal-delimiter":[{pattern:/(^|\s)[a-z]*\{(?=\s)/i,lookbehind:!0,alias:"operator"},{pattern:/(\s)\}(?=\s|$)/,lookbehind:!0,alias:"operator"}],"quotation-delimiter":[{pattern:/(^|\s)\[(?=\s)/,lookbehind:!0,alias:"operator"},{pattern:/(\s)\](?=\s|$)/,lookbehind:!0,alias:"operator"}],"normal-word":{pattern:/(^|\s)[^"\s]\S*(?=\s|$)/,lookbehind:!0},string:{pattern:/"(?:\\\S|[^"\\])*"/,greedy:!0,inside:a}},s=function(d){return(d+"").replace(/([.?*+\^$\[\]\\(){}|\-])/g,"\\$1")},l=function(d){return new RegExp("(^|\\s)(?:"+d.map(s).join("|")+")(?=\\s|$)")},c={"kernel-builtin":["or","2nipd","4drop","tuck","wrapper","nip","wrapper?","callstack>array","die","dupd","callstack","callstack?","3dup","hashcode","pick","4nip","build",">boolean","nipd","clone","5nip","eq?","?","=","swapd","2over","clear","2dup","get-retainstack","not","tuple?","dup","3nipd","call","-rotd","object","drop","assert=","assert?","-rot","execute","boa","get-callstack","curried?","3drop","pickd","overd","over","roll","3nip","swap","and","2nip","rotd","throw","(clone)","hashcode*","spin","reach","4dup","equal?","get-datastack","assert","2drop","","boolean?","identity-hashcode","identity-tuple?","null","composed?","new","5drop","rot","-roll","xor","identity-tuple","boolean"],"other-builtin-syntax":["=======","recursive","flushable",">>","<<<<<<","M\\","B","PRIVATE>","\\","======","final","inline","delimiter","deprecated",">>>>>","<<<<<<<","parse-complex","malformed-complex","read-only",">>>>>>>","call-next-method","<<","foldable","$","$[","${"],"sequences-builtin":["member-eq?","mismatch","append","assert-sequence=","longer","repetition","clone-like","3sequence","assert-sequence?","last-index-from","reversed","index-from","cut*","pad-tail","join-as","remove-eq!","concat-as","but-last","snip","nths","nth","sequence","longest","slice?","","remove-nth","tail-slice","empty?","tail*","member?","virtual-sequence?","set-length","drop-prefix","iota","unclip","bounds-error?","unclip-last-slice","non-negative-integer-expected","non-negative-integer-expected?","midpoint@","longer?","?set-nth","?first","rest-slice","prepend-as","prepend","fourth","sift","subseq-start","new-sequence","?last","like","first4","1sequence","reverse","slice","virtual@","repetition?","set-last","index","4sequence","max-length","set-second","immutable-sequence","first2","first3","supremum","unclip-slice","suffix!","insert-nth","tail","3append","short","suffix","concat","flip","immutable?","reverse!","2sequence","sum","delete-all","indices","snip-slice","","check-slice","sequence?","head","append-as","halves","sequence=","collapse-slice","?second","slice-error?","product","bounds-check?","bounds-check","immutable","virtual-exemplar","harvest","remove","pad-head","last","set-fourth","cartesian-product","remove-eq","shorten","shorter","reversed?","shorter?","shortest","head-slice","pop*","tail-slice*","but-last-slice","iota?","append!","cut-slice","new-resizable","head-slice*","sequence-hashcode","pop","set-nth","?nth","second","join","immutable-sequence?","","3append-as","virtual-sequence","subseq?","remove-nth!","length","last-index","lengthen","assert-sequence","copy","move","third","first","tail?","set-first","prefix","bounds-error","","exchange","surround","cut","min-length","set-third","push-all","head?","subseq-start-from","delete-slice","rest","sum-lengths","head*","infimum","remove!","glue","slice-error","subseq","push","replace-slice","subseq-as","unclip-last"],"math-builtin":["number=","next-power-of-2","?1+","fp-special?","imaginary-part","float>bits","number?","fp-infinity?","bignum?","fp-snan?","denominator","gcd","*","+","fp-bitwise=","-","u>=","/",">=","bitand","power-of-2?","log2-expects-positive","neg?","<","log2",">","integer?","number","bits>double","2/","zero?","bits>float","float?","shift","ratio?","rect>","even?","ratio","fp-sign","bitnot",">fixnum","complex?","/i","integer>fixnum","/f","sgn",">bignum","next-float","u<","u>","mod","recip","rational",">float","2^","integer","fixnum?","neg","fixnum","sq","bignum",">rect","bit?","fp-qnan?","simple-gcd","complex","","real",">fraction","double>bits","bitor","rem","fp-nan-payload","real-part","log2-expects-positive?","prev-float","align","unordered?","float","fp-nan?","abs","bitxor","integer>fixnum-strict","u<=","odd?","<=","/mod",">integer","real?","rational?","numerator"]};Object.keys(c).forEach(function(d){i[d].pattern=l(c[d])});var u=["2bi","while","2tri","bi*","4dip","both?","same?","tri@","curry","prepose","3bi","?if","tri*","2keep","3keep","curried","2keepd","when","2bi*","2tri*","4keep","bi@","keepdd","do","unless*","tri-curry","if*","loop","bi-curry*","when*","2bi@","2tri@","with","2with","either?","bi","until","3dip","3curry","tri-curry*","tri-curry@","bi-curry","keepd","compose","2dip","if","3tri","unless","tuple","keep","2curry","tri","most","while*","dip","composed","bi-curry@","find-last-from","trim-head-slice","map-as","each-from","none?","trim-tail","partition","if-empty","accumulate*","reject!","find-from","accumulate-as","collector-for-as","reject","map","map-sum","accumulate!","2each-from","follow","supremum-by","map!","unless-empty","collector","padding","reduce-index","replicate-as","infimum-by","trim-tail-slice","count","find-index","filter","accumulate*!","reject-as","map-integers","map-find","reduce","selector","interleave","2map","filter-as","binary-reduce","map-index-as","find","produce","filter!","replicate","cartesian-map","cartesian-each","find-index-from","map-find-last","3map-as","3map","find-last","selector-as","2map-as","2map-reduce","accumulate","each","each-index","accumulate*-as","when-empty","all?","collector-as","push-either","new-like","collector-for","2selector","push-if","2all?","map-reduce","3each","any?","trim-slice","2reduce","change-nth","produce-as","2each","trim","trim-head","cartesian-find","map-index","if-zero","each-integer","unless-zero","(find-integer)","when-zero","find-last-integer","(all-integers?)","times","(each-integer)","find-integer","all-integers?","unless-negative","if-positive","when-positive","when-negative","unless-positive","if-negative","case","2cleave","cond>quot","case>quot","3cleave","wrong-values","to-fixed-point","alist>quot","cond","cleave","call-effect","recursive-hashcode","spread","deep-spread>quot","2||","0||","n||","0&&","2&&","3||","1||","1&&","n&&","3&&","smart-unless*","keep-inputs","reduce-outputs","smart-when*","cleave>array","smart-with","smart-apply","smart-if","inputs/outputs","output>sequence-n","map-outputs","map-reduce-outputs","dropping","output>array","smart-map-reduce","smart-2map-reduce","output>array-n","nullary","inputsequence"];i.combinators.pattern=l(u),n.languages.factor=i})(t)}return Rm}var _m,X2;function VQ(){if(X2)return _m;X2=1,_m=e,e.displayName="$false",e.aliases=[];function e(t){(function(n){n.languages.false={comment:{pattern:/\{[^}]*\}/},string:{pattern:/"[^"]*"/,greedy:!0},"character-code":{pattern:/'(?:[^\r]|\r\n?)/,alias:"number"},"assembler-code":{pattern:/\d+`/,alias:"important"},number:/\d+/,operator:/[-!#$%&'*+,./:;=>?@\\^_`|~ßø]/,punctuation:/\[|\]/,variable:/[a-z]/,"non-standard":{pattern:/[()!=]=?|[-+*/%]|\b(?:in|is)\b/}),delete t.languages["firestore-security-rules"]["class-name"],t.languages.insertBefore("firestore-security-rules","keyword",{path:{pattern:/(^|[\s(),])(?:\/(?:[\w\xA0-\uFFFF]+|\{[\w\xA0-\uFFFF]+(?:=\*\*)?\}|\$\([\w\xA0-\uFFFF.]+\)))+/,lookbehind:!0,greedy:!0,inside:{variable:{pattern:/\{[\w\xA0-\uFFFF]+(?:=\*\*)?\}|\$\([\w\xA0-\uFFFF.]+\)/,inside:{operator:/=/,keyword:/\*\*/,punctuation:/[.$(){}]/}},punctuation:/\//}},method:{pattern:/(\ballow\s+)[a-z]+(?:\s*,\s*[a-z]+)*(?=\s*[:;])/,lookbehind:!0,alias:"builtin",inside:{punctuation:/,/}}})}return jm}var Om,J2;function KQ(){if(J2)return Om;J2=1,Om=e,e.displayName="flow",e.aliases=[];function e(t){(function(n){n.languages.flow=n.languages.extend("javascript",{}),n.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|any|mixed|null|void)\b/,alias:"tag"}]}),n.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/i,delete n.languages.flow.parameter,n.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(n.languages.flow.keyword)||(n.languages.flow.keyword=[n.languages.flow.keyword]),n.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})})(t)}return Om}var Dm,Q2;function YQ(){if(Q2)return Dm;Q2=1,Dm=e,e.displayName="fortran",e.aliases=[];function e(t){t.languages.fortran={"quoted-number":{pattern:/[BOZ](['"])[A-F0-9]+\1/i,alias:"number"},string:{pattern:/(?:\b\w+_)?(['"])(?:\1\1|&(?:\r\n?|\n)(?:[ \t]*!.*(?:\r\n?|\n)|(?![ \t]*!))|(?!\1).)*(?:\1|&)/,inside:{comment:{pattern:/(&(?:\r\n?|\n)\s*)!.*/,lookbehind:!0}}},comment:{pattern:/!.*/,greedy:!0},boolean:/\.(?:FALSE|TRUE)\.(?:_\w+)?/i,number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[ED][+-]?\d+)?(?:_\w+)?/i,keyword:[/\b(?:CHARACTER|COMPLEX|DOUBLE ?PRECISION|INTEGER|LOGICAL|REAL)\b/i,/\b(?:END ?)?(?:BLOCK ?DATA|DO|FILE|FORALL|FUNCTION|IF|INTERFACE|MODULE(?! PROCEDURE)|PROGRAM|SELECT|SUBROUTINE|TYPE|WHERE)\b/i,/\b(?:ALLOCATABLE|ALLOCATE|BACKSPACE|CALL|CASE|CLOSE|COMMON|CONTAINS|CONTINUE|CYCLE|DATA|DEALLOCATE|DIMENSION|DO|END|EQUIVALENCE|EXIT|EXTERNAL|FORMAT|GO ?TO|IMPLICIT(?: NONE)?|INQUIRE|INTENT|INTRINSIC|MODULE PROCEDURE|NAMELIST|NULLIFY|OPEN|OPTIONAL|PARAMETER|POINTER|PRINT|PRIVATE|PUBLIC|READ|RETURN|REWIND|SAVE|SELECT|STOP|TARGET|WHILE|WRITE)\b/i,/\b(?:ASSIGNMENT|DEFAULT|ELEMENTAL|ELSE|ELSEIF|ELSEWHERE|ENTRY|IN|INCLUDE|INOUT|KIND|NULL|ONLY|OPERATOR|OUT|PURE|RECURSIVE|RESULT|SEQUENCE|STAT|THEN|USE)\b/i],operator:[/\*\*|\/\/|=>|[=\/]=|[<>]=?|::|[+\-*=%]|\.[A-Z]+\./i,{pattern:/(^|(?!\().)\/(?!\))/,lookbehind:!0}],punctuation:/\(\/|\/\)|[(),;:&]/}}return Dm}var Mm,eE;function XQ(){if(eE)return Mm;eE=1,Mm=e,e.displayName="fsharp",e.aliases=[];function e(t){t.languages.fsharp=t.languages.extend("clike",{comment:[{pattern:/(^|[^\\])\(\*(?!\))[\s\S]*?\*\)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(?:"""[\s\S]*?"""|@"(?:""|[^"])*"|"(?:\\[\s\S]|[^\\"])*")B?/,greedy:!0},"class-name":{pattern:/(\b(?:exception|inherit|interface|new|of|type)\s+|\w\s*:\s*|\s:\??>\s*)[.\w]+\b(?:\s*(?:->|\*)\s*[.\w]+\b)*(?!\s*[:.])/,lookbehind:!0,inside:{operator:/->|\*/,punctuation:/\./}},keyword:/\b(?:let|return|use|yield)(?:!\B|\b)|\b(?:abstract|and|as|asr|assert|atomic|base|begin|break|checked|class|component|const|constraint|constructor|continue|default|delegate|do|done|downcast|downto|eager|elif|else|end|event|exception|extern|external|false|finally|fixed|for|fun|function|functor|global|if|in|include|inherit|inline|interface|internal|land|lazy|lor|lsl|lsr|lxor|match|member|method|mixin|mod|module|mutable|namespace|new|not|null|object|of|open|or|override|parallel|private|process|protected|public|pure|rec|sealed|select|sig|static|struct|tailcall|then|to|trait|true|try|type|upcast|val|virtual|void|volatile|when|while|with)\b/,number:[/\b0x[\da-fA-F]+(?:LF|lf|un)?\b/,/\b0b[01]+(?:uy|y)?\b/,/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[fm]|e[+-]?\d+)?\b/i,/\b\d+(?:[IlLsy]|UL|u[lsy]?)?\b/],operator:/([<>~&^])\1\1|([*.:<>&])\2|<-|->|[!=:]=|?|\??(?:<=|>=|<>|[-+*/%=<>])\??|[!?^&]|~[+~-]|:>|:\?>?/}),t.languages.insertBefore("fsharp","keyword",{preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(^#)\b(?:else|endif|if|light|line|nowarn)\b/,lookbehind:!0,alias:"keyword"}}}}),t.languages.insertBefore("fsharp","punctuation",{"computation-expression":{pattern:/\b[_a-z]\w*(?=\s*\{)/i,alias:"keyword"}}),t.languages.insertBefore("fsharp","string",{annotation:{pattern:/\[<.+?>\]/,greedy:!0,inside:{punctuation:/^\[<|>\]$/,"class-name":{pattern:/^\w+$|(^|;\s*)[A-Z]\w*(?=\()/,lookbehind:!0},"annotation-content":{pattern:/[\s\S]+/,inside:t.languages.fsharp}}},char:{pattern:/'(?:[^\\']|\\(?:.|\d{3}|x[a-fA-F\d]{2}|u[a-fA-F\d]{4}|U[a-fA-F\d]{8}))'B?/,greedy:!0}})}return Mm}var Lm,tE;function ZQ(){if(tE)return Lm;tE=1;var e=Gn();Lm=t,t.displayName="ftl",t.aliases=[];function t(n){n.register(e),(function(r){for(var a=/[^<()"']|\((?:)*\)|<(?!#--)|<#--(?:[^-]|-(?!->))*-->|"(?:[^\\"]|\\.)*"|'(?:[^\\']|\\.)*'/.source,i=0;i<2;i++)a=a.replace(//g,function(){return a});a=a.replace(//g,/[^\s\S]/.source);var s={comment:/<#--[\s\S]*?-->/,string:[{pattern:/\br("|')(?:(?!\1)[^\\]|\\.)*\1/,greedy:!0},{pattern:RegExp(/("|')(?:(?!\1|\$\{)[^\\]|\\.|\$\{(?:(?!\})(?:))*\})*\1/.source.replace(//g,function(){return a})),greedy:!0,inside:{interpolation:{pattern:RegExp(/((?:^|[^\\])(?:\\\\)*)\$\{(?:(?!\})(?:))*\}/.source.replace(//g,function(){return a})),lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:null}}}}],keyword:/\b(?:as)\b/,boolean:/\b(?:false|true)\b/,"builtin-function":{pattern:/((?:^|[^?])\?\s*)\w+/,lookbehind:!0,alias:"function"},function:/\b\w+(?=\s*\()/,number:/\b\d+(?:\.\d+)?\b/,operator:/\.\.[<*!]?|->|--|\+\+|&&|\|\||\?{1,2}|[-+*/%!=<>]=?|\b(?:gt|gte|lt|lte)\b/,punctuation:/[,;.:()[\]{}]/};s.string[1].inside.interpolation.inside.rest=s,r.languages.ftl={"ftl-comment":{pattern:/^<#--[\s\S]*/,alias:"comment"},"ftl-directive":{pattern:/^<[\s\S]+>$/,inside:{directive:{pattern:/(^<\/?)[#@][a-z]\w*/i,lookbehind:!0,alias:"keyword"},punctuation:/^<\/?|\/?>$/,content:{pattern:/\s*\S[\s\S]*/,alias:"ftl",inside:s}}},"ftl-interpolation":{pattern:/^\$\{[\s\S]*\}$/,inside:{punctuation:/^\$\{|\}$/,content:{pattern:/\s*\S[\s\S]*/,alias:"ftl",inside:s}}}},r.hooks.add("before-tokenize",function(l){var c=RegExp(/<#--[\s\S]*?-->|<\/?[#@][a-zA-Z](?:)*?>|\$\{(?:)*?\}/.source.replace(//g,function(){return a}),"gi");r.languages["markup-templating"].buildPlaceholders(l,"ftl",c)}),r.hooks.add("after-tokenize",function(l){r.languages["markup-templating"].tokenizePlaceholders(l,"ftl")})})(n)}return Lm}var Pm,nE;function JQ(){if(nE)return Pm;nE=1,Pm=e,e.displayName="gap",e.aliases=[];function e(t){t.languages.gap={shell:{pattern:/^gap>[\s\S]*?(?=^gap>|$(?![\s\S]))/m,greedy:!0,inside:{gap:{pattern:/^(gap>).+(?:(?:\r(?:\n|(?!\n))|\n)>.*)*/,lookbehind:!0,inside:null},punctuation:/^gap>/}},comment:{pattern:/#.*/,greedy:!0},string:{pattern:/(^|[^\\'"])(?:'(?:[^\r\n\\']|\\.){1,10}'|"(?:[^\r\n\\"]|\\.)*"(?!")|"""[\s\S]*?""")/,lookbehind:!0,greedy:!0,inside:{continuation:{pattern:/([\r\n])>/,lookbehind:!0,alias:"punctuation"}}},keyword:/\b(?:Assert|Info|IsBound|QUIT|TryNextMethod|Unbind|and|atomic|break|continue|do|elif|else|end|fi|for|function|if|in|local|mod|not|od|or|quit|readonly|readwrite|rec|repeat|return|then|until|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:{pattern:/(^|[^\w.]|\.\.)(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?(?:_[a-z]?)?(?=$|[^\w.]|\.\.)/,lookbehind:!0},continuation:{pattern:/([\r\n])>/,lookbehind:!0,alias:"punctuation"},operator:/->|[-+*/^~=!]|<>|[<>]=?|:=|\.\./,punctuation:/[()[\]{},;.:]/},t.languages.gap.shell.inside.gap.inside=t.languages.gap}return Pm}var Fm,rE;function QQ(){if(rE)return Fm;rE=1,Fm=e,e.displayName="gcode",e.aliases=[];function e(t){t.languages.gcode={comment:/;.*|\B\(.*?\)\B/,string:{pattern:/"(?:""|[^"])*"/,greedy:!0},keyword:/\b[GM]\d+(?:\.\d+)?\b/,property:/\b[A-Z]/,checksum:{pattern:/(\*)\d+/,lookbehind:!0,alias:"number"},punctuation:/[:*]/}}return Fm}var Bm,aE;function eee(){if(aE)return Bm;aE=1,Bm=e,e.displayName="gdscript",e.aliases=[];function e(t){t.languages.gdscript={comment:/#.*/,string:{pattern:/@?(?:("|')(?:(?!\1)[^\n\\]|\\[\s\S])*\1(?!"|')|"""(?:[^\\]|\\[\s\S])*?""")/,greedy:!0},"class-name":{pattern:/(^(?:class|class_name|extends)[ \t]+|^export\([ \t]*|\bas[ \t]+|(?:\b(?:const|var)[ \t]|[,(])[ \t]*\w+[ \t]*:[ \t]*|->[ \t]*)[a-zA-Z_]\w*/m,lookbehind:!0},keyword:/\b(?:and|as|assert|break|breakpoint|class|class_name|const|continue|elif|else|enum|export|extends|for|func|if|in|is|master|mastersync|match|not|null|onready|or|pass|preload|puppet|puppetsync|remote|remotesync|return|self|setget|signal|static|tool|var|while|yield)\b/,function:/\b[a-z_]\w*(?=[ \t]*\()/i,variable:/\$\w+/,number:[/\b0b[01_]+\b|\b0x[\da-fA-F_]+\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.[\d_]+)(?:e[+-]?[\d_]+)?\b/,/\b(?:INF|NAN|PI|TAU)\b/],constant:/\b[A-Z][A-Z_\d]*\b/,boolean:/\b(?:false|true)\b/,operator:/->|:=|&&|\|\||<<|>>|[-+*/%&|!<>=]=?|[~^]/,punctuation:/[.:,;()[\]{}]/}}return Bm}var $m,iE;function tee(){if(iE)return $m;iE=1,$m=e,e.displayName="gedcom",e.aliases=[];function e(t){t.languages.gedcom={"line-value":{pattern:/(^[\t ]*\d+ +(?:@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?\w+ ).+/m,lookbehind:!0,inside:{pointer:{pattern:/^@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@$/,alias:"variable"}}},tag:{pattern:/(^[\t ]*\d+ +(?:@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?)\w+/m,lookbehind:!0,alias:"string"},level:{pattern:/(^[\t ]*)\d+/m,lookbehind:!0,alias:"number"},pointer:{pattern:/@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@/,alias:"variable"}}}return $m}var Um,sE;function nee(){if(sE)return Um;sE=1,Um=e,e.displayName="gherkin",e.aliases=[];function e(t){(function(n){var r=/(?:\r?\n|\r)[ \t]*\|.+\|(?:(?!\|).)*/.source;n.languages.gherkin={pystring:{pattern:/("""|''')[\s\S]+?\1/,alias:"string"},comment:{pattern:/(^[ \t]*)#.*/m,lookbehind:!0},tag:{pattern:/(^[ \t]*)@\S*/m,lookbehind:!0},feature:{pattern:/((?:^|\r?\n|\r)[ \t]*)(?:Ability|Ahoy matey!|Arwedd|Aspekt|Besigheid Behoefte|Business Need|Caracteristica|Característica|Egenskab|Egenskap|Eiginleiki|Feature|Fīča|Fitur|Fonctionnalité|Fonksyonalite|Funcionalidade|Funcionalitat|Functionalitate|Funcţionalitate|Funcționalitate|Functionaliteit|Fungsi|Funkcia|Funkcija|Funkcionalitāte|Funkcionalnost|Funkcja|Funksie|Funktionalität|Funktionalitéit|Funzionalità|Hwaet|Hwæt|Jellemző|Karakteristik|Lastnost|Mak|Mogucnost|laH|Mogućnost|Moznosti|Možnosti|OH HAI|Omadus|Ominaisuus|Osobina|Özellik|Potrzeba biznesowa|perbogh|poQbogh malja'|Požadavek|Požiadavka|Pretty much|Qap|Qu'meH 'ut|Savybė|Tính năng|Trajto|Vermoë|Vlastnosť|Właściwość|Značilnost|Δυνατότητα|Λειτουργία|Могућност|Мөмкинлек|Особина|Свойство|Үзенчәлеклелек|Функционал|Функционалност|Функция|Функціонал|תכונה|خاصية|خصوصیت|صلاحیت|کاروبار کی ضرورت|وِیژگی|रूप लेख|ਖਾਸੀਅਤ|ਨਕਸ਼ ਨੁਹਾਰ|ਮੁਹਾਂਦਰਾ|గుణము|ಹೆಚ್ಚಳ|ความต้องการทางธุรกิจ|ความสามารถ|โครงหลัก|기능|フィーチャ|功能|機能):(?:[^:\r\n]+(?:\r?\n|\r|$))*/,lookbehind:!0,inside:{important:{pattern:/(:)[^\r\n]+/,lookbehind:!0},keyword:/[^:\r\n]+:/}},scenario:{pattern:/(^[ \t]*)(?:Abstract Scenario|Abstrakt Scenario|Achtergrond|Aer|Ær|Agtergrond|All y'all|Antecedentes|Antecedents|Atburðarás|Atburðarásir|Awww, look mate|B4|Background|Baggrund|Bakgrund|Bakgrunn|Bakgrunnur|Beispiele|Beispiller|Bối cảnh|Cefndir|Cenario|Cenário|Cenario de Fundo|Cenário de Fundo|Cenarios|Cenários|Contesto|Context|Contexte|Contexto|Conto|Contoh|Contone|Dæmi|Dasar|Dead men tell no tales|Delineacao do Cenario|Delineação do Cenário|Dis is what went down|Dữ liệu|Dyagram Senaryo|Dyagram senaryo|Egzanp|Ejemplos|Eksempler|Ekzemploj|Enghreifftiau|Esbozo do escenario|Escenari|Escenario|Esempi|Esquema de l'escenari|Esquema del escenario|Esquema do Cenario|Esquema do Cenário|EXAMPLZ|Examples|Exempel|Exemple|Exemples|Exemplos|First off|Fono|Forgatókönyv|Forgatókönyv vázlat|Fundo|Geçmiş|Grundlage|Hannergrond|ghantoH|Háttér|Heave to|Istorik|Juhtumid|Keadaan|Khung kịch bản|Khung tình huống|Kịch bản|Koncept|Konsep skenario|Kontèks|Kontekst|Kontekstas|Konteksts|Kontext|Konturo de la scenaro|Latar Belakang|lut chovnatlh|lut|lutmey|Lýsing Atburðarásar|Lýsing Dæma|MISHUN SRSLY|MISHUN|Menggariskan Senario|mo'|Náčrt Scenára|Náčrt Scénáře|Náčrt Scenáru|Oris scenarija|Örnekler|Osnova|Osnova Scenára|Osnova scénáře|Osnutek|Ozadje|Paraugs|Pavyzdžiai|Példák|Piemēri|Plan du scénario|Plan du Scénario|Plan Senaryo|Plan senaryo|Plang vum Szenario|Pozadí|Pozadie|Pozadina|Príklady|Příklady|Primer|Primeri|Primjeri|Przykłady|Raamstsenaarium|Reckon it's like|Rerefons|Scenár|Scénář|Scenarie|Scenarij|Scenarijai|Scenarijaus šablonas|Scenariji|Scenārijs|Scenārijs pēc parauga|Scenarijus|Scenario|Scénario|Scenario Amlinellol|Scenario Outline|Scenario Template|Scenariomal|Scenariomall|Scenarios|Scenariu|Scenariusz|Scenaro|Schema dello scenario|Se ðe|Se the|Se þe|Senario|Senaryo Deskripsyon|Senaryo deskripsyon|Senaryo|Senaryo taslağı|Shiver me timbers|Situācija|Situai|Situasie Uiteensetting|Situasie|Skenario konsep|Skenario|Skica|Structura scenariu|Structură scenariu|Struktura scenarija|Stsenaarium|Swa hwaer swa|Swa|Swa hwær swa|Szablon scenariusza|Szenario|Szenariogrundriss|Tapaukset|Tapaus|Tapausaihio|Taust|Tausta|Template Keadaan|Template Senario|Template Situai|The thing of it is|Tình huống|Variantai|Voorbeelde|Voorbeelden|Wharrimean is|Yo-ho-ho|You'll wanna|Założenia|Παραδείγματα|Περιγραφή Σεναρίου|Σενάρια|Σενάριο|Υπόβαθρο|Кереш|Контекст|Концепт|Мисаллар|Мисоллар|Основа|Передумова|Позадина|Предистория|Предыстория|Приклади|Пример|Примери|Примеры|Рамка на сценарий|Скица|Структура сценарија|Структура сценария|Структура сценарію|Сценарий|Сценарий структураси|Сценарийның төзелеше|Сценарији|Сценарио|Сценарій|Тарих|Үрнәкләр|דוגמאות|רקע|תבנית תרחיש|תרחיש|الخلفية|الگوی سناریو|امثلة|پس منظر|زمینه|سناریو|سيناريو|سيناريو مخطط|مثالیں|منظر نامے کا خاکہ|منظرنامہ|نمونه ها|उदाहरण|परिदृश्य|परिदृश्य रूपरेखा|पृष्ठभूमि|ਉਦਾਹਰਨਾਂ|ਪਟਕਥਾ|ਪਟਕਥਾ ਢਾਂਚਾ|ਪਟਕਥਾ ਰੂਪ ਰੇਖਾ|ਪਿਛੋਕੜ|ఉదాహరణలు|కథనం|నేపథ్యం|సన్నివేశం|ಉದಾಹರಣೆಗಳು|ಕಥಾಸಾರಾಂಶ|ವಿವರಣೆ|ಹಿನ್ನೆಲೆ|โครงสร้างของเหตุการณ์|ชุดของตัวอย่าง|ชุดของเหตุการณ์|แนวคิด|สรุปเหตุการณ์|เหตุการณ์|배경|시나리오|시나리오 개요|예|サンプル|シナリオ|シナリオアウトライン|シナリオテンプレ|シナリオテンプレート|テンプレ|例|例子|剧本|剧本大纲|劇本|劇本大綱|场景|场景大纲|場景|場景大綱|背景):[^:\r\n]*/m,lookbehind:!0,inside:{important:{pattern:/(:)[^\r\n]*/,lookbehind:!0},keyword:/[^:\r\n]+:/}},"table-body":{pattern:RegExp("("+r+")(?:"+r+")+"),lookbehind:!0,inside:{outline:{pattern:/<[^>]+>/,alias:"variable"},td:{pattern:/\s*[^\s|][^|]*/,alias:"string"},punctuation:/\|/}},"table-head":{pattern:RegExp(r),inside:{th:{pattern:/\s*[^\s|][^|]*/,alias:"variable"},punctuation:/\|/}},atrule:{pattern:/(^[ \t]+)(?:'a|'ach|'ej|7|a|A také|A taktiež|A tiež|A zároveň|Aber|Ac|Adott|Akkor|Ak|Aleshores|Ale|Ali|Allora|Alors|Als|Ama|Amennyiben|Amikor|Ampak|an|AN|Ananging|And y'all|And|Angenommen|Anrhegedig a|An|Apabila|Atès|Atesa|Atunci|Avast!|Aye|A|awer|Bagi|Banjur|Bet|Biết|Blimey!|Buh|But at the end of the day I reckon|But y'all|But|BUT|Cal|Când|Cand|Cando|Ce|Cuando|Če|Ða ðe|Ða|Dadas|Dada|Dados|Dado|DaH ghu' bejlu'|dann|Dann|Dano|Dan|Dar|Dat fiind|Data|Date fiind|Date|Dati fiind|Dati|Daţi fiind|Dați fiind|DEN|Dato|De|Den youse gotta|Dengan|Diberi|Diyelim ki|Donada|Donat|Donitaĵo|Do|Dun|Duota|Ðurh|Eeldades|Ef|Eğer ki|Entao|Então|Entón|E|En|Entonces|Epi|És|Etant donnée|Etant donné|Et|Étant données|Étant donnée|Étant donné|Etant données|Etant donnés|Étant donnés|Fakat|Gangway!|Gdy|Gegeben seien|Gegeben sei|Gegeven|Gegewe|ghu' noblu'|Gitt|Given y'all|Given|Givet|Givun|Ha|Cho|I CAN HAZ|In|Ir|It's just unbelievable|I|Ja|Jeśli|Jeżeli|Kad|Kada|Kadar|Kai|Kaj|Když|Keď|Kemudian|Ketika|Khi|Kiedy|Ko|Kuid|Kui|Kun|Lan|latlh|Le sa a|Let go and haul|Le|Lè sa a|Lè|Logo|Lorsqu'<|Lorsque|mä|Maar|Mais|Mając|Ma|Majd|Maka|Manawa|Mas|Men|Menawa|Mutta|Nalika|Nalikaning|Nanging|Når|När|Nato|Nhưng|Niin|Njuk|O zaman|Och|Og|Oletetaan|Ond|Onda|Oraz|Pak|Pero|Però|Podano|Pokiaľ|Pokud|Potem|Potom|Privzeto|Pryd|Quan|Quand|Quando|qaSDI'|Så|Sed|Se|Siis|Sipoze ke|Sipoze Ke|Sipoze|Si|Şi|Și|Soit|Stel|Tada|Tad|Takrat|Tak|Tapi|Ter|Tetapi|Tha the|Tha|Then y'all|Then|Thì|Thurh|Toda|Too right|Un|Und|ugeholl|Và|vaj|Vendar|Ve|wann|Wanneer|WEN|Wenn|When y'all|When|Wtedy|Wun|Y'know|Yeah nah|Yna|Youse know like when|Youse know when youse got|Y|Za predpokladu|Za předpokladu|Zadan|Zadani|Zadano|Zadate|Zadato|Zakładając|Zaradi|Zatati|Þa þe|Þa|Þá|Þegar|Þurh|Αλλά|Δεδομένου|Και|Όταν|Τότε|А також|Агар|Але|Али|Аммо|А|Әгәр|Әйтик|Әмма|Бирок|Ва|Вә|Дадено|Дано|Допустим|Если|Задате|Задати|Задато|И|І|К тому же|Када|Кад|Когато|Когда|Коли|Ләкин|Лекин|Нәтиҗәдә|Нехай|Но|Онда|Припустимо, що|Припустимо|Пусть|Также|Та|Тогда|Тоді|То|Унда|Һәм|Якщо|אבל|אזי|אז|בהינתן|וגם|כאשר|آنگاه|اذاً|اگر|اما|اور|با فرض|بالفرض|بفرض|پھر|تب|ثم|جب|عندما|فرض کیا|لكن|لیکن|متى|هنگامی|و|अगर|और|कदा|किन्तु|चूंकि|जब|तथा|तदा|तब|परन्तु|पर|यदि|ਅਤੇ|ਜਦੋਂ|ਜਿਵੇਂ ਕਿ|ਜੇਕਰ|ਤਦ|ਪਰ|అప్పుడు|ఈ పరిస్థితిలో|కాని|చెప్పబడినది|మరియు|ಆದರೆ|ನಂತರ|ನೀಡಿದ|ಮತ್ತು|ಸ್ಥಿತಿಯನ್ನು|กำหนดให้|ดังนั้น|แต่|เมื่อ|และ|그러면<|그리고<|단<|만약<|만일<|먼저<|조건<|하지만<|かつ<|しかし<|ただし<|ならば<|もし<|並且<|但し<|但是<|假如<|假定<|假設<|假设<|前提<|同时<|同時<|并且<|当<|當<|而且<|那么<|那麼<)(?=[ \t])/m,lookbehind:!0},string:{pattern:/"(?:\\.|[^"\\\r\n])*"|'(?:\\.|[^'\\\r\n])*'/,inside:{outline:{pattern:/<[^>]+>/,alias:"variable"}}},outline:{pattern:/<[^>]+>/,alias:"variable"}}})(t)}return Um}var zm,oE;function ree(){if(oE)return zm;oE=1,zm=e,e.displayName="git",e.aliases=[];function e(t){t.languages.git={comment:/^#.*/m,deleted:/^[-–].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/}},coord:/^@@.*@@$/m,"commit-sha1":/^commit \w{40}$/m}}return zm}var qm,lE;function aee(){if(lE)return qm;lE=1;var e=fi();qm=t,t.displayName="glsl",t.aliases=[];function t(n){n.register(e),n.languages.glsl=n.languages.extend("c",{keyword:/\b(?:active|asm|atomic_uint|attribute|[ibdu]?vec[234]|bool|break|buffer|case|cast|centroid|class|coherent|common|const|continue|d?mat[234](?:x[234])?|default|discard|do|double|else|enum|extern|external|false|filter|fixed|flat|float|for|fvec[234]|goto|half|highp|hvec[234]|[iu]?sampler2DMS(?:Array)?|[iu]?sampler2DRect|[iu]?samplerBuffer|[iu]?samplerCube|[iu]?samplerCubeArray|[iu]?sampler[123]D|[iu]?sampler[12]DArray|[iu]?image2DMS(?:Array)?|[iu]?image2DRect|[iu]?imageBuffer|[iu]?imageCube|[iu]?imageCubeArray|[iu]?image[123]D|[iu]?image[12]DArray|if|in|inline|inout|input|int|interface|invariant|layout|long|lowp|mediump|namespace|noinline|noperspective|out|output|partition|patch|precise|precision|public|readonly|resource|restrict|return|sample|sampler[12]DArrayShadow|sampler[12]DShadow|sampler2DRectShadow|sampler3DRect|samplerCubeArrayShadow|samplerCubeShadow|shared|short|sizeof|smooth|static|struct|subroutine|superp|switch|template|this|true|typedef|uint|uniform|union|unsigned|using|varying|void|volatile|while|writeonly)\b/})}return qm}var Hm,cE;function iee(){if(cE)return Hm;cE=1,Hm=e,e.displayName="gml",e.aliases=[];function e(t){t.languages.gamemakerlanguage=t.languages.gml=t.languages.extend("clike",{keyword:/\b(?:break|case|continue|default|do|else|enum|exit|for|globalvar|if|repeat|return|switch|until|var|while)\b/,number:/(?:\b0x[\da-f]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ulf]{0,4}/i,operator:/--|\+\+|[-+%/=]=?|!=|\*\*?=?|<[<=>]?|>[=>]?|&&?|\^\^?|\|\|?|~|\b(?:and|at|not|or|with|xor)\b/,constant:/\b(?:GM_build_date|GM_version|action_(?:continue|restart|reverse|stop)|all|gamespeed_(?:fps|microseconds)|global|local|noone|other|pi|pointer_(?:invalid|null)|self|timezone_(?:local|utc)|undefined|ev_(?:create|destroy|step|alarm|keyboard|mouse|collision|other|draw|draw_(?:begin|end|post|pre)|keypress|keyrelease|trigger|(?:left|middle|no|right)_button|(?:left|middle|right)_press|(?:left|middle|right)_release|mouse_(?:enter|leave|wheel_down|wheel_up)|global_(?:left|middle|right)_button|global_(?:left|middle|right)_press|global_(?:left|middle|right)_release|joystick(?:1|2)_(?:button1|button2|button3|button4|button5|button6|button7|button8|down|left|right|up)|outside|boundary|game_start|game_end|room_start|room_end|no_more_lives|animation_end|end_of_path|no_more_health|user\d|gui|gui_begin|gui_end|step_(?:begin|end|normal))|vk_(?:alt|anykey|backspace|control|delete|down|end|enter|escape|home|insert|left|nokey|pagedown|pageup|pause|printscreen|return|right|shift|space|tab|up|f\d|numpad\d|add|decimal|divide|lalt|lcontrol|lshift|multiply|ralt|rcontrol|rshift|subtract)|achievement_(?:filter_(?:all_players|favorites_only|friends_only)|friends_info|info|leaderboard_info|our_info|pic_loaded|show_(?:achievement|bank|friend_picker|leaderboard|profile|purchase_prompt|ui)|type_challenge|type_score_challenge)|asset_(?:font|object|path|room|script|shader|sound|sprite|tiles|timeline|unknown)|audio_(?:3d|falloff_(?:exponent_distance|exponent_distance_clamped|inverse_distance|inverse_distance_clamped|linear_distance|linear_distance_clamped|none)|mono|new_system|old_system|stereo)|bm_(?:add|complex|dest_alpha|dest_color|dest_colour|inv_dest_alpha|inv_dest_color|inv_dest_colour|inv_src_alpha|inv_src_color|inv_src_colour|max|normal|one|src_alpha|src_alpha_sat|src_color|src_colour|subtract|zero)|browser_(?:chrome|firefox|ie|ie_mobile|not_a_browser|opera|safari|safari_mobile|tizen|unknown|windows_store)|buffer_(?:bool|f16|f32|f64|fast|fixed|generalerror|grow|invalidtype|network|outofbounds|outofspace|s16|s32|s8|seek_end|seek_relative|seek_start|string|text|u16|u32|u64|u8|vbuffer|wrap)|c_(?:aqua|black|blue|dkgray|fuchsia|gray|green|lime|ltgray|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)|cmpfunc_(?:always|equal|greater|greaterequal|less|lessequal|never|notequal)|cr_(?:appstart|arrow|beam|cross|default|drag|handpoint|hourglass|none|size_all|size_nesw|size_ns|size_nwse|size_we|uparrow)|cull_(?:clockwise|counterclockwise|noculling)|device_(?:emulator|tablet)|device_ios_(?:ipad|ipad_retina|iphone|iphone5|iphone6|iphone6plus|iphone_retina|unknown)|display_(?:landscape|landscape_flipped|portrait|portrait_flipped)|dll_(?:cdecl|cdel|stdcall)|ds_type_(?:grid|list|map|priority|queue|stack)|ef_(?:cloud|ellipse|explosion|firework|flare|rain|ring|smoke|smokeup|snow|spark|star)|fa_(?:archive|bottom|center|directory|hidden|left|middle|readonly|right|sysfile|top|volumeid)|fb_login_(?:default|fallback_to_webview|forcing_safari|forcing_webview|no_fallback_to_webview|use_system_account)|iap_(?:available|canceled|ev_consume|ev_product|ev_purchase|ev_restore|ev_storeload|failed|purchased|refunded|status_available|status_loading|status_processing|status_restoring|status_unavailable|status_uninitialised|storeload_failed|storeload_ok|unavailable)|leaderboard_type_(?:number|time_mins_secs)|lighttype_(?:dir|point)|matrix_(?:projection|view|world)|mb_(?:any|left|middle|none|right)|network_(?:config_(?:connect_timeout|disable_reliable_udp|enable_reliable_udp|use_non_blocking_socket)|socket_(?:bluetooth|tcp|udp)|type_(?:connect|data|disconnect|non_blocking_connect))|of_challenge_(?:lose|tie|win)|os_(?:android|ios|linux|macosx|ps3|ps4|psvita|unknown|uwp|win32|win8native|windows|winphone|xboxone)|phy_debug_render_(?:aabb|collision_pairs|coms|core_shapes|joints|obb|shapes)|phy_joint_(?:anchor_1_x|anchor_1_y|anchor_2_x|anchor_2_y|angle|angle_limits|damping_ratio|frequency|length_1|length_2|lower_angle_limit|max_force|max_length|max_motor_force|max_motor_torque|max_torque|motor_force|motor_speed|motor_torque|reaction_force_x|reaction_force_y|reaction_torque|speed|translation|upper_angle_limit)|phy_particle_data_flag_(?:category|color|colour|position|typeflags|velocity)|phy_particle_flag_(?:colormixing|colourmixing|elastic|powder|spring|tensile|viscous|wall|water|zombie)|phy_particle_group_flag_(?:rigid|solid)|pr_(?:linelist|linestrip|pointlist|trianglefan|trianglelist|trianglestrip)|ps_(?:distr|shape)_(?:diamond|ellipse|gaussian|invgaussian|line|linear|rectangle)|pt_shape_(?:circle|cloud|disk|explosion|flare|line|pixel|ring|smoke|snow|spark|sphere|square|star)|ty_(?:real|string)|gp_(?:face\d|axislh|axislv|axisrh|axisrv|padd|padl|padr|padu|select|shoulderl|shoulderlb|shoulderr|shoulderrb|start|stickl|stickr)|lb_disp_(?:none|numeric|time_ms|time_sec)|lb_sort_(?:ascending|descending|none)|ov_(?:achievements|community|friends|gamegroup|players|settings)|ugc_(?:filetype_(?:community|microtrans)|list_(?:Favorited|Followed|Published|Subscribed|UsedOrPlayed|VotedDown|VotedOn|VotedUp|WillVoteLater)|match_(?:AllGuides|Artwork|Collections|ControllerBindings|IntegratedGuides|Items|Items_Mtx|Items_ReadyToUse|Screenshots|UsableInGame|Videos|WebGuides)|query_(?:AcceptedForGameRankedByAcceptanceDate|CreatedByFriendsRankedByPublicationDate|FavoritedByFriendsRankedByPublicationDate|NotYetRated)|query_RankedBy(?:NumTimesReported|PublicationDate|TextSearch|TotalVotesAsc|Trend|Vote|VotesUp)|result_success|sortorder_CreationOrder(?:Asc|Desc)|sortorder_(?:ForModeration|LastUpdatedDesc|SubscriptionDateDesc|TitleAsc|VoteScoreDesc)|visibility_(?:friends_only|private|public))|vertex_usage_(?:binormal|blendindices|blendweight|color|colour|depth|fog|normal|position|psize|sample|tangent|texcoord|textcoord)|vertex_type_(?:float\d|color|colour|ubyte4)|input_type|layerelementtype_(?:background|instance|oldtilemap|particlesystem|sprite|tile|tilemap|undefined)|se_(?:chorus|compressor|echo|equalizer|flanger|gargle|none|reverb)|text_type|tile_(?:flip|index_mask|mirror|rotate)|(?:obj|rm|scr|spr)\w+)\b/,variable:/\b(?:alarm|application_surface|async_load|background_(?:alpha|blend|color|colour|foreground|height|hspeed|htiled|index|showcolor|showcolour|visible|vspeed|vtiled|width|x|xscale|y|yscale)|bbox_(?:bottom|left|right|top)|browser_(?:height|width)|caption_(?:health|lives|score)|current_(?:day|hour|minute|month|second|time|weekday|year)|cursor_sprite|debug_mode|delta_time|direction|display_aa|error_(?:last|occurred)|event_(?:action|number|object|type)|fps|fps_real|friction|game_(?:display|project|save)_(?:id|name)|gamemaker_(?:pro|registered|version)|gravity|gravity_direction|(?:h|v)speed|health|iap_data|id|image_(?:alpha|angle|blend|depth|index|number|speed|xscale|yscale)|instance_(?:count|id)|keyboard_(?:key|lastchar|lastkey|string)|layer|lives|mask_index|mouse_(?:button|lastbutton|x|y)|object_index|os_(?:browser|device|type|version)|path_(?:endaction|index|orientation|position|positionprevious|scale|speed)|persistent|phy_(?:rotation|(?:col_normal|collision|com|linear_velocity|position|speed)_(?:x|y)|angular_(?:damping|velocity)|position_(?:x|y)previous|speed|linear_damping|bullet|fixed_rotation|active|mass|inertia|dynamic|kinematic|sleeping|collision_points)|pointer_(?:invalid|null)|room|room_(?:caption|first|height|last|persistent|speed|width)|score|secure_mode|show_(?:health|lives|score)|solid|speed|sprite_(?:height|index|width|xoffset|yoffset)|temp_directory|timeline_(?:index|loop|position|running|speed)|transition_(?:color|kind|steps)|undefined|view_(?:angle|current|enabled|(?:h|v)(?:border|speed)|(?:h|w|x|y)port|(?:h|w|x|y)view|object|surface_id|visible)|visible|webgl_enabled|working_directory|(?:x|y)(?:previous|start)|x|y|argument(?:_relitive|_count|\d)|argument|global|local|other|self)\b/})}return Hm}var Gm,uE;function see(){if(uE)return Gm;uE=1,Gm=e,e.displayName="gn",e.aliases=["gni"];function e(t){t.languages.gn={comment:{pattern:/#.*/,greedy:!0},"string-literal":{pattern:/(^|[^\\"])"(?:[^\r\n"\\]|\\.)*"/,lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:\{[\s\S]*?\}|[a-zA-Z_]\w*|0x[a-fA-F0-9]{2})/,lookbehind:!0,inside:{number:/^\$0x[\s\S]{2}$/,variable:/^\$\w+$/,"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:null}}},string:/[\s\S]+/}},keyword:/\b(?:else|if)\b/,boolean:/\b(?:false|true)\b/,"builtin-function":{pattern:/\b(?:assert|defined|foreach|import|pool|print|template|tool|toolchain)(?=\s*\()/i,alias:"keyword"},function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:current_cpu|current_os|current_toolchain|default_toolchain|host_cpu|host_os|root_build_dir|root_gen_dir|root_out_dir|target_cpu|target_gen_dir|target_os|target_out_dir)\b/,number:/-?\b\d+\b/,operator:/[-+!=<>]=?|&&|\|\|/,punctuation:/[(){}[\],.]/},t.languages.gn["string-literal"].inside.interpolation.inside.expression.inside=t.languages.gn,t.languages.gni=t.languages.gn}return Gm}var Vm,dE;function oee(){if(dE)return Vm;dE=1,Vm=e,e.displayName="goModule",e.aliases=[];function e(t){t.languages["go-mod"]=t.languages["go-module"]={comment:{pattern:/\/\/.*/,greedy:!0},version:{pattern:/(^|[\s()[\],])v\d+\.\d+\.\d+(?:[+-][-+.\w]*)?(?![^\s()[\],])/,lookbehind:!0,alias:"number"},"go-version":{pattern:/((?:^|\s)go\s+)\d+(?:\.\d+){1,2}/,lookbehind:!0,alias:"number"},keyword:{pattern:/^([ \t]*)(?:exclude|go|module|replace|require|retract)\b/m,lookbehind:!0},operator:/=>/,punctuation:/[()[\],]/}}return Vm}var Wm,pE;function lee(){if(pE)return Wm;pE=1,Wm=e,e.displayName="go",e.aliases=[];function e(t){t.languages.go=t.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),t.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete t.languages.go["class-name"]}return Wm}var Km,mE;function cee(){if(mE)return Km;mE=1,Km=e,e.displayName="graphql",e.aliases=[];function e(t){t.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:t.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},t.hooks.add("after-tokenize",function(r){if(r.language!=="graphql")return;var a=r.tokens.filter(function(k){return typeof k!="string"&&k.type!=="comment"&&k.type!=="scalar"}),i=0;function s(k){return a[i+k]}function l(k,y){y=y||0;for(var v=0;v0)){var g=c(/^\{$/,/^\}$/);if(g===-1)continue;for(var b=i;b=0&&u(x,"variable-input")}}}}})}return Km}var Ym,fE;function uee(){if(fE)return Ym;fE=1,Ym=e,e.displayName="groovy",e.aliases=[];function e(t){t.languages.groovy=t.languages.extend("clike",{string:[{pattern:/("""|''')(?:[^\\]|\\[\s\S])*?\1|\$\/(?:[^/$]|\$(?:[/$]|(?![/$]))|\/(?!\$))*\/\$/,greedy:!0},{pattern:/(["'/])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0}],keyword:/\b(?:abstract|as|assert|boolean|break|byte|case|catch|char|class|const|continue|def|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|in|instanceof|int|interface|long|native|new|package|private|protected|public|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|trait|transient|try|void|volatile|while)\b/,number:/\b(?:0b[01_]+|0x[\da-f_]+(?:\.[\da-f_p\-]+)?|[\d_]+(?:\.[\d_]+)?(?:e[+-]?\d+)?)[glidf]?\b/i,operator:{pattern:/(^|[^.])(?:~|==?~?|\?[.:]?|\*(?:[.=]|\*=?)?|\.[@&]|\.\.<|\.\.(?!\.)|-[-=>]?|\+[+=]?|!=?|<(?:<=?|=>?)?|>(?:>>?=?|=)?|&[&=]?|\|[|=]?|\/=?|\^=?|%=?)/,lookbehind:!0},punctuation:/\.+|[{}[\];(),:$]/}),t.languages.insertBefore("groovy","string",{shebang:{pattern:/#!.+/,alias:"comment"}}),t.languages.insertBefore("groovy","punctuation",{"spock-block":/\b(?:and|cleanup|expect|given|setup|then|when|where):/}),t.languages.insertBefore("groovy","function",{annotation:{pattern:/(^|[^.])@\w+/,lookbehind:!0,alias:"punctuation"}}),t.hooks.add("wrap",function(n){if(n.language==="groovy"&&n.type==="string"){var r=n.content.value[0];if(r!="'"){var a=/([^\\])(?:\$(?:\{.*?\}|[\w.]+))/;r==="$"&&(a=/([^\$])(?:\$(?:\{.*?\}|[\w.]+))/),n.content.value=n.content.value.replace(/</g,"<").replace(/&/g,"&"),n.content=t.highlight(n.content.value,{expression:{pattern:a,lookbehind:!0,inside:t.languages.groovy}}),n.classes.push(r==="/"?"regex":"gstring")}}})}return Ym}var Xm,hE;function dee(){if(hE)return Xm;hE=1;var e=cu();Xm=t,t.displayName="haml",t.aliases=[];function t(n){n.register(e),(function(r){r.languages.haml={"multiline-comment":{pattern:/((?:^|\r?\n|\r)([\t ]*))(?:\/|-#).*(?:(?:\r?\n|\r)\2[\t ].+)*/,lookbehind:!0,alias:"comment"},"multiline-code":[{pattern:/((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*,[\t ]*(?:(?:\r?\n|\r)\2[\t ].*,[\t ]*)*(?:(?:\r?\n|\r)\2[\t ].+)/,lookbehind:!0,inside:r.languages.ruby},{pattern:/((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*\|[\t ]*(?:(?:\r?\n|\r)\2[\t ].*\|[\t ]*)*/,lookbehind:!0,inside:r.languages.ruby}],filter:{pattern:/((?:^|\r?\n|\r)([\t ]*)):[\w-]+(?:(?:\r?\n|\r)(?:\2[\t ].+|\s*?(?=\r?\n|\r)))+/,lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"symbol"}}},markup:{pattern:/((?:^|\r?\n|\r)[\t ]*)<.+/,lookbehind:!0,inside:r.languages.markup},doctype:{pattern:/((?:^|\r?\n|\r)[\t ]*)!!!(?: .+)?/,lookbehind:!0},tag:{pattern:/((?:^|\r?\n|\r)[\t ]*)[%.#][\w\-#.]*[\w\-](?:\([^)]+\)|\{(?:\{[^}]+\}|[^{}])+\}|\[[^\]]+\])*[\/<>]*/,lookbehind:!0,inside:{attributes:[{pattern:/(^|[^#])\{(?:\{[^}]+\}|[^{}])+\}/,lookbehind:!0,inside:r.languages.ruby},{pattern:/\([^)]+\)/,inside:{"attr-value":{pattern:/(=\s*)(?:"(?:\\.|[^\\"\r\n])*"|[^)\s]+)/,lookbehind:!0},"attr-name":/[\w:-]+(?=\s*!?=|\s*[,)])/,punctuation:/[=(),]/}},{pattern:/\[[^\]]+\]/,inside:r.languages.ruby}],punctuation:/[<>]/}},code:{pattern:/((?:^|\r?\n|\r)[\t ]*(?:[~-]|[&!]?=)).+/,lookbehind:!0,inside:r.languages.ruby},interpolation:{pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"},ruby:{pattern:/[\s\S]+/,inside:r.languages.ruby}}},punctuation:{pattern:/((?:^|\r?\n|\r)[\t ]*)[~=\-&!]+/,lookbehind:!0}};for(var a="((?:^|\\r?\\n|\\r)([\\t ]*)):{{filter_name}}(?:(?:\\r?\\n|\\r)(?:\\2[\\t ].+|\\s*?(?=\\r?\\n|\\r)))+",i=["css",{filter:"coffee",language:"coffeescript"},"erb","javascript","less","markdown","ruby","scss","textile"],s={},l=0,c=i.length;l@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,\/;<=>@\[\\\]^`{|}~\s]+/},r.hooks.add("before-tokenize",function(a){var i=/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g;r.languages["markup-templating"].buildPlaceholders(a,"handlebars",i)}),r.hooks.add("after-tokenize",function(a){r.languages["markup-templating"].tokenizePlaceholders(a,"handlebars")}),r.languages.hbs=r.languages.handlebars})(n)}return Zm}var Jm,bE;function Ny(){if(bE)return Jm;bE=1,Jm=e,e.displayName="haskell",e.aliases=["hs"];function e(t){t.languages.haskell={comment:{pattern:/(^|[^-!#$%*+=?&@|~.:<>^\\\/])(?:--(?:(?=.)[^-!#$%*+=?&@|~.:<>^\\\/].*|$)|\{-[\s\S]*?-\})/m,lookbehind:!0},char:{pattern:/'(?:[^\\']|\\(?:[abfnrtv\\"'&]|\^[A-Z@[\]^_]|ACK|BEL|BS|CAN|CR|DC1|DC2|DC3|DC4|DEL|DLE|EM|ENQ|EOT|ESC|ETB|ETX|FF|FS|GS|HT|LF|NAK|NUL|RS|SI|SO|SOH|SP|STX|SUB|SYN|US|VT|\d+|o[0-7]+|x[0-9a-fA-F]+))'/,alias:"string"},string:{pattern:/"(?:[^\\"]|\\(?:\S|\s+\\))*"/,greedy:!0},keyword:/\b(?:case|class|data|deriving|do|else|if|in|infixl|infixr|instance|let|module|newtype|of|primitive|then|type|where)\b/,"import-statement":{pattern:/(^[\t ]*)import\s+(?:qualified\s+)?(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*(?:\s+as\s+(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*)?(?:\s+hiding\b)?/m,lookbehind:!0,inside:{keyword:/\b(?:as|hiding|import|qualified)\b/,punctuation:/\./}},builtin:/\b(?:abs|acos|acosh|all|and|any|appendFile|approxRational|asTypeOf|asin|asinh|atan|atan2|atanh|basicIORun|break|catch|ceiling|chr|compare|concat|concatMap|const|cos|cosh|curry|cycle|decodeFloat|denominator|digitToInt|div|divMod|drop|dropWhile|either|elem|encodeFloat|enumFrom|enumFromThen|enumFromThenTo|enumFromTo|error|even|exp|exponent|fail|filter|flip|floatDigits|floatRadix|floatRange|floor|fmap|foldl|foldl1|foldr|foldr1|fromDouble|fromEnum|fromInt|fromInteger|fromIntegral|fromRational|fst|gcd|getChar|getContents|getLine|group|head|id|inRange|index|init|intToDigit|interact|ioError|isAlpha|isAlphaNum|isAscii|isControl|isDenormalized|isDigit|isHexDigit|isIEEE|isInfinite|isLower|isNaN|isNegativeZero|isOctDigit|isPrint|isSpace|isUpper|iterate|last|lcm|length|lex|lexDigits|lexLitChar|lines|log|logBase|lookup|map|mapM|mapM_|max|maxBound|maximum|maybe|min|minBound|minimum|mod|negate|not|notElem|null|numerator|odd|or|ord|otherwise|pack|pi|pred|primExitWith|print|product|properFraction|putChar|putStr|putStrLn|quot|quotRem|range|rangeSize|read|readDec|readFile|readFloat|readHex|readIO|readInt|readList|readLitChar|readLn|readOct|readParen|readSigned|reads|readsPrec|realToFrac|recip|rem|repeat|replicate|return|reverse|round|scaleFloat|scanl|scanl1|scanr|scanr1|seq|sequence|sequence_|show|showChar|showInt|showList|showLitChar|showParen|showSigned|showString|shows|showsPrec|significand|signum|sin|sinh|snd|sort|span|splitAt|sqrt|subtract|succ|sum|tail|take|takeWhile|tan|tanh|threadToIOResult|toEnum|toInt|toInteger|toLower|toRational|toUpper|truncate|uncurry|undefined|unlines|until|unwords|unzip|unzip3|userError|words|writeFile|zip|zip3|zipWith|zipWith3)\b/,number:/\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0o[0-7]+|0x[0-9a-f]+)\b/i,operator:[{pattern:/`(?:[A-Z][\w']*\.)*[_a-z][\w']*`/,greedy:!0},{pattern:/(\s)\.(?=\s)/,lookbehind:!0},/[-!#$%*+=?&@|~:<>^\\\/][-!#$%*+=?&@|~.:<>^\\\/]*|\.[-!#$%*+=?&@|~.:<>^\\\/]+/],hvariable:{pattern:/\b(?:[A-Z][\w']*\.)*[_a-z][\w']*/,inside:{punctuation:/\./}},constant:{pattern:/\b(?:[A-Z][\w']*\.)*[A-Z][\w']*/,inside:{punctuation:/\./}},punctuation:/[{}[\];(),.:]/},t.languages.hs=t.languages.haskell}return Jm}var Qm,xE;function mee(){if(xE)return Qm;xE=1,Qm=e,e.displayName="haxe",e.aliases=[];function e(t){t.languages.haxe=t.languages.extend("clike",{string:{pattern:/"(?:[^"\\]|\\[\s\S])*"/,greedy:!0},"class-name":[{pattern:/(\b(?:abstract|class|enum|extends|implements|interface|new|typedef)\s+)[A-Z_]\w*/,lookbehind:!0},/\b[A-Z]\w*/],keyword:/\bthis\b|\b(?:abstract|as|break|case|cast|catch|class|continue|default|do|dynamic|else|enum|extends|extern|final|for|from|function|if|implements|import|in|inline|interface|macro|new|null|operator|overload|override|package|private|public|return|static|super|switch|throw|to|try|typedef|untyped|using|var|while)(?!\.)\b/,function:{pattern:/\b[a-z_]\w*(?=\s*(?:<[^<>]*>\s*)?\()/i,greedy:!0},operator:/\.{3}|\+\+|--|&&|\|\||->|=>|(?:<{1,3}|[-+*/%!=&|^])=?|[?:~]/}),t.languages.insertBefore("haxe","string",{"string-interpolation":{pattern:/'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{interpolation:{pattern:/(^|[^\\])\$(?:\w+|\{[^{}]+\})/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:t.languages.haxe}}},string:/[\s\S]+/}}}),t.languages.insertBefore("haxe","class-name",{regex:{pattern:/~\/(?:[^\/\\\r\n]|\\.)+\/[a-z]*/,greedy:!0,inside:{"regex-flags":/\b[a-z]+$/,"regex-source":{pattern:/^(~\/)[\s\S]+(?=\/$)/,lookbehind:!0,alias:"language-regex",inside:t.languages.regex},"regex-delimiter":/^~\/|\/$/}}}),t.languages.insertBefore("haxe","keyword",{preprocessor:{pattern:/#(?:else|elseif|end|if)\b.*/,alias:"property"},metadata:{pattern:/@:?[\w.]+/,alias:"symbol"},reification:{pattern:/\$(?:\w+|(?=\{))/,alias:"important"}})}return Qm}var ef,yE;function fee(){if(yE)return ef;yE=1,ef=e,e.displayName="hcl",e.aliases=[];function e(t){t.languages.hcl={comment:/(?:\/\/|#).*|\/\*[\s\S]*?(?:\*\/|$)/,heredoc:{pattern:/<<-?(\w+\b)[\s\S]*?^[ \t]*\1/m,greedy:!0,alias:"string"},keyword:[{pattern:/(?:data|resource)\s+(?:"(?:\\[\s\S]|[^\\"])*")(?=\s+"[\w-]+"\s+\{)/i,inside:{type:{pattern:/(resource|data|\s+)(?:"(?:\\[\s\S]|[^\\"])*")/i,lookbehind:!0,alias:"variable"}}},{pattern:/(?:backend|module|output|provider|provisioner|variable)\s+(?:[\w-]+|"(?:\\[\s\S]|[^\\"])*")\s+(?=\{)/i,inside:{type:{pattern:/(backend|module|output|provider|provisioner|variable)\s+(?:[\w-]+|"(?:\\[\s\S]|[^\\"])*")\s+/i,lookbehind:!0,alias:"variable"}}},/[\w-]+(?=\s+\{)/],property:[/[-\w\.]+(?=\s*=(?!=))/,/"(?:\\[\s\S]|[^\\"])+"(?=\s*[:=])/],string:{pattern:/"(?:[^\\$"]|\\[\s\S]|\$(?:(?=")|\$+(?!\$)|[^"${])|\$\{(?:[^{}"]|"(?:[^\\"]|\\[\s\S])*")*\})*"/,greedy:!0,inside:{interpolation:{pattern:/(^|[^$])\$\{(?:[^{}"]|"(?:[^\\"]|\\[\s\S])*")*\}/,lookbehind:!0,inside:{type:{pattern:/(\b(?:count|data|local|module|path|self|terraform|var)\b\.)[\w\*]+/i,lookbehind:!0,alias:"variable"},keyword:/\b(?:count|data|local|module|path|self|terraform|var)\b/i,function:/\w+(?=\()/,string:{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0},number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?(?:e[+-]?\d+)?/i,punctuation:/[!\$#%&'()*+,.\/;<=>@\[\\\]^`{|}~?:]/}}}},number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?(?:e[+-]?\d+)?/i,boolean:/\b(?:false|true)\b/i,punctuation:/[=\[\]{}]/}}return ef}var tf,vE;function hee(){if(vE)return tf;vE=1;var e=fi();tf=t,t.displayName="hlsl",t.aliases=[];function t(n){n.register(e),n.languages.hlsl=n.languages.extend("c",{"class-name":[n.languages.c["class-name"],/\b(?:AppendStructuredBuffer|BlendState|Buffer|ByteAddressBuffer|CompileShader|ComputeShader|ConsumeStructuredBuffer|DepthStencilState|DepthStencilView|DomainShader|GeometryShader|Hullshader|InputPatch|LineStream|OutputPatch|PixelShader|PointStream|RWBuffer|RWByteAddressBuffer|RWStructuredBuffer|RWTexture(?:1D|1DArray|2D|2DArray|3D)|RasterizerState|RenderTargetView|SamplerComparisonState|SamplerState|StructuredBuffer|Texture(?:1D|1DArray|2D|2DArray|2DMS|2DMSArray|3D|Cube|CubeArray)|TriangleStream|VertexShader)\b/],keyword:[/\b(?:asm|asm_fragment|auto|break|case|catch|cbuffer|centroid|char|class|column_major|compile|compile_fragment|const|const_cast|continue|default|delete|discard|do|dynamic_cast|else|enum|explicit|export|extern|for|friend|fxgroup|goto|groupshared|if|in|inline|inout|interface|line|lineadj|linear|long|matrix|mutable|namespace|new|nointerpolation|noperspective|operator|out|packoffset|pass|pixelfragment|point|precise|private|protected|public|register|reinterpret_cast|return|row_major|sample|sampler|shared|short|signed|sizeof|snorm|stateblock|stateblock_state|static|static_cast|string|struct|switch|tbuffer|technique|technique10|technique11|template|texture|this|throw|triangle|triangleadj|try|typedef|typename|uniform|union|unorm|unsigned|using|vector|vertexfragment|virtual|void|volatile|while)\b/,/\b(?:bool|double|dword|float|half|int|min(?:10float|12int|16(?:float|int|uint))|uint)(?:[1-4](?:x[1-4])?)?\b/],number:/(?:(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[eE][+-]?\d+)?|\b0x[\da-fA-F]+)[fFhHlLuU]?\b/,boolean:/\b(?:false|true)\b/})}return tf}var nf,kE;function gee(){if(kE)return nf;kE=1,nf=e,e.displayName="hoon",e.aliases=[];function e(t){t.languages.hoon={comment:{pattern:/::.*/,greedy:!0},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},constant:/%(?:\.[ny]|[\w-]+)/,"class-name":/@(?:[a-z0-9-]*[a-z0-9])?|\*/i,function:/(?:\+[-+] {2})?(?:[a-z](?:[a-z0-9-]*[a-z0-9])?)/,keyword:/\.[\^\+\*=\?]|![><:\.=\?!]|=[>|:,\.\-\^<+;/~\*\?]|\?[>|:\.\-\^<\+&~=@!]|\|[\$_%:\.\-\^~\*=@\?]|\+[|\$\+\*]|:[_\-\^\+~\*]|%[_:\.\-\^\+~\*=]|\^[|:\.\-\+&~\*=\?]|\$[|_%:<>\-\^&~@=\?]|;[:<\+;\/~\*=]|~[>|\$_%<\+\/&=\?!]|--|==/}}return nf}var rf,wE;function bee(){if(wE)return rf;wE=1,rf=e,e.displayName="hpkp",e.aliases=[];function e(t){t.languages.hpkp={directive:{pattern:/\b(?:includeSubDomains|max-age|pin-sha256|preload|report-to|report-uri|strict)(?=[\s;=]|$)/i,alias:"property"},operator:/=/,punctuation:/;/}}return rf}var af,SE;function xee(){if(SE)return af;SE=1,af=e,e.displayName="hsts",e.aliases=[];function e(t){t.languages.hsts={directive:{pattern:/\b(?:includeSubDomains|max-age|preload)(?=[\s;=]|$)/i,alias:"property"},operator:/=/,punctuation:/;/}}return af}var sf,EE;function yee(){if(EE)return sf;EE=1,sf=e,e.displayName="http",e.aliases=[];function e(t){(function(n){function r(p){return RegExp("(^(?:"+p+"):[ ]*(?![ ]))[^]+","i")}n.languages.http={"request-line":{pattern:/^(?:CONNECT|DELETE|GET|HEAD|OPTIONS|PATCH|POST|PRI|PUT|SEARCH|TRACE)\s(?:https?:\/\/|\/)\S*\sHTTP\/[\d.]+/m,inside:{method:{pattern:/^[A-Z]+\b/,alias:"property"},"request-target":{pattern:/^(\s)(?:https?:\/\/|\/)\S*(?=\s)/,lookbehind:!0,alias:"url",inside:n.languages.uri},"http-version":{pattern:/^(\s)HTTP\/[\d.]+/,lookbehind:!0,alias:"property"}}},"response-status":{pattern:/^HTTP\/[\d.]+ \d+ .+/m,inside:{"http-version":{pattern:/^HTTP\/[\d.]+/,alias:"property"},"status-code":{pattern:/^(\s)\d+(?=\s)/,lookbehind:!0,alias:"number"},"reason-phrase":{pattern:/^(\s).+/,lookbehind:!0,alias:"string"}}},header:{pattern:/^[\w-]+:.+(?:(?:\r\n?|\n)[ \t].+)*/m,inside:{"header-value":[{pattern:r(/Content-Security-Policy/.source),lookbehind:!0,alias:["csp","languages-csp"],inside:n.languages.csp},{pattern:r(/Public-Key-Pins(?:-Report-Only)?/.source),lookbehind:!0,alias:["hpkp","languages-hpkp"],inside:n.languages.hpkp},{pattern:r(/Strict-Transport-Security/.source),lookbehind:!0,alias:["hsts","languages-hsts"],inside:n.languages.hsts},{pattern:r(/[^:]+/.source),lookbehind:!0}],"header-name":{pattern:/^[^:]+/,alias:"keyword"},punctuation:/^:/}}};var a=n.languages,i={"application/javascript":a.javascript,"application/json":a.json||a.javascript,"application/xml":a.xml,"text/xml":a.xml,"text/html":a.html,"text/css":a.css,"text/plain":a.plain},s={"application/json":!0,"application/xml":!0};function l(p){var m=p.replace(/^[a-z]+\//,""),f="\\w+/(?:[\\w.-]+\\+)+"+m+"(?![+\\w.-])";return"(?:"+p+"|"+f+")"}var c;for(var u in i)if(i[u]){c=c||{};var d=s[u]?l(u):u;c[u.replace(/\//g,"-")]={pattern:RegExp("("+/content-type:\s*/.source+d+/(?:(?:\r\n?|\n)[\w-].*)*(?:\r(?:\n|(?!\n))|\n)/.source+")"+/[^ \t\w-][\s\S]*/.source,"i"),lookbehind:!0,inside:i[u]}}c&&n.languages.insertBefore("http","header",c)})(t)}return sf}var of,CE;function vee(){if(CE)return of;CE=1,of=e,e.displayName="ichigojam",e.aliases=[];function e(t){t.languages.ichigojam={comment:/(?:\B'|REM)(?:[^\n\r]*)/i,string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^\w +\-.])*"/,greedy:!0},number:/\B#[0-9A-F]+|\B`[01]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:BEEP|BPS|CASE|CLEAR|CLK|CLO|CLP|CLS|CLT|CLV|CONT|COPY|ELSE|END|FILE|FILES|FOR|GOSUB|GOTO|GSB|IF|INPUT|KBD|LED|LET|LIST|LOAD|LOCATE|LRUN|NEW|NEXT|OUT|PLAY|POKE|PRINT|PWM|REM|RENUM|RESET|RETURN|RIGHT|RTN|RUN|SAVE|SCROLL|SLEEP|SRND|STEP|STOP|SUB|TEMPO|THEN|TO|UART|VIDEO|WAIT)(?:\$|\b)/i,function:/\b(?:ABS|ANA|ASC|BIN|BTN|DEC|END|FREE|HELP|HEX|I2CR|I2CW|IN|INKEY|LEN|LINE|PEEK|RND|SCR|SOUND|STR|TICK|USR|VER|VPEEK|ZER)(?:\$|\b)/i,label:/(?:\B@\S+)/,operator:/<[=>]?|>=?|\|\||&&|[+\-*\/=|&^~!]|\b(?:AND|NOT|OR)\b/i,punctuation:/[\[,;:()\]]/}}return of}var lf,NE;function kee(){if(NE)return lf;NE=1,lf=e,e.displayName="icon",e.aliases=[];function e(t){t.languages.icon={comment:/#.*/,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n_]|\\.|_(?!\1)(?:\r\n|[\s\S]))*\1/,greedy:!0},number:/\b(?:\d+r[a-z\d]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b|\.\d+\b/i,"builtin-keyword":{pattern:/&(?:allocated|ascii|clock|collections|cset|current|date|dateline|digits|dump|e|error(?:number|text|value)?|errout|fail|features|file|host|input|lcase|letters|level|line|main|null|output|phi|pi|pos|progname|random|regions|source|storage|subject|time|trace|ucase|version)\b/,alias:"variable"},directive:{pattern:/\$\w+/,alias:"builtin"},keyword:/\b(?:break|by|case|create|default|do|else|end|every|fail|global|if|initial|invocable|link|local|next|not|of|procedure|record|repeat|return|static|suspend|then|to|until|while)\b/,function:/\b(?!\d)\w+(?=\s*[({]|\s*!\s*\[)/,operator:/[+-]:(?!=)|(?:[\/?@^%&]|\+\+?|--?|==?=?|~==?=?|\*\*?|\|\|\|?|<(?:->?|>?=?)(?::=)?|:(?:=:?)?|[!.\\|~]/,punctuation:/[\[\](){},;]/}}return lf}var cf,TE;function wee(){if(TE)return cf;TE=1,cf=e,e.displayName="icuMessageFormat",e.aliases=[];function e(t){(function(n){function r(u,d){return d<=0?/[]/.source:u.replace(//g,function(){return r(u,d-1)})}var a=/'[{}:=,](?:[^']|'')*'(?!')/,i={pattern:/''/,greedy:!0,alias:"operator"},s={pattern:a,greedy:!0,inside:{escape:i}},l=r(/\{(?:[^{}']|'(?![{},'])|''||)*\}/.source.replace(//g,function(){return a.source}),8),c={pattern:RegExp(l),inside:{message:{pattern:/^(\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:null},"message-delimiter":{pattern:/./,alias:"punctuation"}}};n.languages["icu-message-format"]={argument:{pattern:RegExp(l),greedy:!0,inside:{content:{pattern:/^(\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:{"argument-name":{pattern:/^(\s*)[^{}:=,\s]+/,lookbehind:!0},"choice-style":{pattern:/^(\s*,\s*choice\s*,\s*)\S(?:[\s\S]*\S)?/,lookbehind:!0,inside:{punctuation:/\|/,range:{pattern:/^(\s*)[+-]?(?:\d+(?:\.\d*)?|\u221e)\s*[<#\u2264]/,lookbehind:!0,inside:{operator:/[<#\u2264]/,number:/\S+/}},rest:null}},"plural-style":{pattern:/^(\s*,\s*(?:plural|selectordinal)\s*,\s*)\S(?:[\s\S]*\S)?/,lookbehind:!0,inside:{offset:/^offset:\s*\d+/,"nested-message":c,selector:{pattern:/=\d+|[^{}:=,\s]+/,inside:{keyword:/^(?:few|many|one|other|two|zero)$/}}}},"select-style":{pattern:/^(\s*,\s*select\s*,\s*)\S(?:[\s\S]*\S)?/,lookbehind:!0,inside:{"nested-message":c,selector:{pattern:/[^{}:=,\s]+/,inside:{keyword:/^other$/}}}},keyword:/\b(?:choice|plural|select|selectordinal)\b/,"arg-type":{pattern:/\b(?:date|duration|number|ordinal|spellout|time)\b/,alias:"keyword"},"arg-skeleton":{pattern:/(,\s*)::[^{}:=,\s]+/,lookbehind:!0},"arg-style":{pattern:/(,\s*)(?:currency|full|integer|long|medium|percent|short)(?=\s*$)/,lookbehind:!0},"arg-style-text":{pattern:RegExp(/(^\s*,\s*(?=\S))/.source+r(/(?:[^{}']|'[^']*'|\{(?:)?\})+/.source,8)+"$"),lookbehind:!0,alias:"string"},punctuation:/,/}},"argument-delimiter":{pattern:/./,alias:"operator"}}},escape:i,string:s},c.inside.message.inside=n.languages["icu-message-format"],n.languages["icu-message-format"].argument.inside.content.inside["choice-style"].inside.rest=n.languages["icu-message-format"]})(t)}return cf}var uf,AE;function See(){if(AE)return uf;AE=1;var e=Ny();uf=t,t.displayName="idris",t.aliases=["idr"];function t(n){n.register(e),n.languages.idris=n.languages.extend("haskell",{comment:{pattern:/(?:(?:--|\|\|\|).*$|\{-[\s\S]*?-\})/m},keyword:/\b(?:Type|case|class|codata|constructor|corecord|data|do|dsl|else|export|if|implementation|implicit|import|impossible|in|infix|infixl|infixr|instance|interface|let|module|mutual|namespace|of|parameters|partial|postulate|private|proof|public|quoteGoal|record|rewrite|syntax|then|total|using|where|with)\b/,builtin:void 0}),n.languages.insertBefore("idris","keyword",{"import-statement":{pattern:/(^\s*import\s+)(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*/m,lookbehind:!0,inside:{punctuation:/\./}}}),n.languages.idr=n.languages.idris}return uf}var df,IE;function Eee(){if(IE)return df;IE=1,df=e,e.displayName="iecst",e.aliases=[];function e(t){t.languages.iecst={comment:[{pattern:/(^|[^\\])(?:\/\*[\s\S]*?(?:\*\/|$)|\(\*[\s\S]*?(?:\*\)|$)|\{[\s\S]*?(?:\}|$))/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:[/\b(?:END_)?(?:PROGRAM|CONFIGURATION|INTERFACE|FUNCTION_BLOCK|FUNCTION|ACTION|TRANSITION|TYPE|STRUCT|(?:INITIAL_)?STEP|NAMESPACE|LIBRARY|CHANNEL|FOLDER|RESOURCE|VAR_(?:ACCESS|CONFIG|EXTERNAL|GLOBAL|INPUT|IN_OUT|OUTPUT|TEMP)|VAR|METHOD|PROPERTY)\b/i,/\b(?:AT|BY|(?:END_)?(?:CASE|FOR|IF|REPEAT|WHILE)|CONSTANT|CONTINUE|DO|ELSE|ELSIF|EXIT|EXTENDS|FROM|GET|GOTO|IMPLEMENTS|JMP|NON_RETAIN|OF|PRIVATE|PROTECTED|PUBLIC|RETAIN|RETURN|SET|TASK|THEN|TO|UNTIL|USING|WITH|__CATCH|__ENDTRY|__FINALLY|__TRY)\b/],"class-name":/\b(?:ANY|ARRAY|BOOL|BYTE|U?(?:D|L|S)?INT|(?:D|L)?WORD|DATE(?:_AND_TIME)?|DT|L?REAL|POINTER|STRING|TIME(?:_OF_DAY)?|TOD)\b/,address:{pattern:/%[IQM][XBWDL][\d.]*|%[IQ][\d.]*/,alias:"symbol"},number:/\b(?:16#[\da-f]+|2#[01_]+|0x[\da-f]+)\b|\b(?:D|DT|T|TOD)#[\d_shmd:]*|\b[A-Z]*#[\d.,_]*|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/,operator:/S?R?:?=>?|&&?|\*\*?|<[=>]?|>=?|[-:^/+#]|\b(?:AND|EQ|EXPT|GE|GT|LE|LT|MOD|NE|NOT|OR|XOR)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,punctuation:/[()[\].,;]/}}return df}var pf,RE;function Cee(){if(RE)return pf;RE=1,pf=e,e.displayName="ignore",e.aliases=["gitignore","hgignore","npmignore"];function e(t){(function(n){n.languages.ignore={comment:/^#.*/m,entry:{pattern:/\S(?:.*(?:(?:\\ )|\S))?/,alias:"string",inside:{operator:/^!|\*\*?|\?/,regex:{pattern:/(^|[^\\])\[[^\[\]]*\]/,lookbehind:!0},punctuation:/\//}}},n.languages.gitignore=n.languages.ignore,n.languages.hgignore=n.languages.ignore,n.languages.npmignore=n.languages.ignore})(t)}return pf}var mf,_E;function Nee(){if(_E)return mf;_E=1,mf=e,e.displayName="inform7",e.aliases=[];function e(t){t.languages.inform7={string:{pattern:/"[^"]*"/,inside:{substitution:{pattern:/\[[^\[\]]+\]/,inside:{delimiter:{pattern:/\[|\]/,alias:"punctuation"}}}}},comment:{pattern:/\[[^\[\]]+\]/,greedy:!0},title:{pattern:/^[ \t]*(?:book|chapter|part(?! of)|section|table|volume)\b.+/im,alias:"important"},number:{pattern:/(^|[^-])(?:\b\d+(?:\.\d+)?(?:\^\d+)?(?:(?!\d)\w+)?|\b(?:eight|eleven|five|four|nine|one|seven|six|ten|three|twelve|two))\b(?!-)/i,lookbehind:!0},verb:{pattern:/(^|[^-])\b(?:answering|applying to|are|asking|attacking|be(?:ing)?|burning|buying|called|carries|carry(?! out)|carrying|climbing|closing|conceal(?:ing|s)?|consulting|contain(?:ing|s)?|cutting|drinking|dropping|eating|enclos(?:es?|ing)|entering|examining|exiting|getting|giving|going|ha(?:s|ve|ving)|hold(?:ing|s)?|impl(?:ies|y)|incorporat(?:es?|ing)|inserting|is|jumping|kissing|listening|locking|looking|mean(?:ing|s)?|opening|provid(?:es?|ing)|pulling|pushing|putting|relat(?:es?|ing)|removing|searching|see(?:ing|s)?|setting|showing|singing|sleeping|smelling|squeezing|support(?:ing|s)?|swearing|switching|taking|tasting|telling|thinking|throwing|touching|turning|tying|unlock(?:ing|s)?|var(?:ies|y|ying)|waiting|waking|waving|wear(?:ing|s)?)\b(?!-)/i,lookbehind:!0,alias:"operator"},keyword:{pattern:/(^|[^-])\b(?:after|before|carry out|check|continue the action|definition(?= *:)|do nothing|else|end (?:if|the story|unless)|every turn|if|include|instead(?: of)?|let|move|no|now|otherwise|repeat|report|resume the story|rule for|running through|say(?:ing)?|stop the action|test|try(?:ing)?|understand|unless|use|when|while|yes)\b(?!-)/i,lookbehind:!0},property:{pattern:/(^|[^-])\b(?:adjacent(?! to)|carried|closed|concealed|contained|dark|described|edible|empty|enclosed|enterable|even|female|fixed in place|full|handled|held|improper-named|incorporated|inedible|invisible|lighted|lit|lock(?:able|ed)|male|marked for listing|mentioned|negative|neuter|non-(?:empty|full|recurring)|odd|opaque|open(?:able)?|plural-named|portable|positive|privately-named|proper-named|provided|publically-named|pushable between rooms|recurring|related|rubbing|scenery|seen|singular-named|supported|swinging|switch(?:able|ed(?: off| on)?)|touch(?:able|ed)|transparent|unconcealed|undescribed|unlit|unlocked|unmarked for listing|unmentioned|unopenable|untouchable|unvisited|variable|visible|visited|wearable|worn)\b(?!-)/i,lookbehind:!0,alias:"symbol"},position:{pattern:/(^|[^-])\b(?:above|adjacent to|back side of|below|between|down|east|everywhere|front side|here|in|inside(?: from)?|north(?:east|west)?|nowhere|on(?: top of)?|other side|outside(?: from)?|parts? of|regionally in|south(?:east|west)?|through|up|west|within)\b(?!-)/i,lookbehind:!0,alias:"keyword"},type:{pattern:/(^|[^-])\b(?:actions?|activit(?:ies|y)|actors?|animals?|backdrops?|containers?|devices?|directions?|doors?|holders?|kinds?|lists?|m[ae]n|nobody|nothing|nouns?|numbers?|objects?|people|persons?|player(?:'s holdall)?|regions?|relations?|rooms?|rule(?:book)?s?|scenes?|someone|something|supporters?|tables?|texts?|things?|time|vehicles?|wom[ae]n)\b(?!-)/i,lookbehind:!0,alias:"variable"},punctuation:/[.,:;(){}]/},t.languages.inform7.string.inside.substitution.inside.rest=t.languages.inform7,t.languages.inform7.string.inside.substitution.inside.rest.text={pattern:/\S(?:\s*\S)*/,alias:"comment"}}return mf}var ff,jE;function Tee(){if(jE)return ff;jE=1,ff=e,e.displayName="ini",e.aliases=[];function e(t){t.languages.ini={comment:{pattern:/(^[ \f\t\v]*)[#;][^\n\r]*/m,lookbehind:!0},section:{pattern:/(^[ \f\t\v]*)\[[^\n\r\]]*\]?/m,lookbehind:!0,inside:{"section-name":{pattern:/(^\[[ \f\t\v]*)[^ \f\t\v\]]+(?:[ \f\t\v]+[^ \f\t\v\]]+)*/,lookbehind:!0,alias:"selector"},punctuation:/\[|\]/}},key:{pattern:/(^[ \f\t\v]*)[^ \f\n\r\t\v=]+(?:[ \f\t\v]+[^ \f\n\r\t\v=]+)*(?=[ \f\t\v]*=)/m,lookbehind:!0,alias:"attr-name"},value:{pattern:/(=[ \f\t\v]*)[^ \f\n\r\t\v]+(?:[ \f\t\v]+[^ \f\n\r\t\v]+)*/,lookbehind:!0,alias:"attr-value",inside:{"inner-value":{pattern:/^("|').+(?=\1$)/,lookbehind:!0}}},punctuation:/=/}}return ff}var hf,OE;function Aee(){if(OE)return hf;OE=1,hf=e,e.displayName="io",e.aliases=[];function e(t){t.languages.io={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?(?:\*\/|$)|\/\/.*|#.*)/,lookbehind:!0,greedy:!0},"triple-quoted-string":{pattern:/"""(?:\\[\s\S]|(?!""")[^\\])*"""/,greedy:!0,alias:"string"},string:{pattern:/"(?:\\.|[^\\\r\n"])*"/,greedy:!0},keyword:/\b(?:activate|activeCoroCount|asString|block|break|call|catch|clone|collectGarbage|compileString|continue|do|doFile|doMessage|doString|else|elseif|exit|for|foreach|forward|getEnvironmentVariable|getSlot|hasSlot|if|ifFalse|ifNil|ifNilEval|ifTrue|isActive|isNil|isResumable|list|message|method|parent|pass|pause|perform|performWithArgList|print|println|proto|raise|raiseResumable|removeSlot|resend|resume|schedulerSleepSeconds|self|sender|setSchedulerSleepSeconds|setSlot|shallowCopy|slotNames|super|system|then|thisBlock|thisContext|try|type|uniqueId|updateSlot|wait|while|write|yield)\b/,builtin:/\b(?:Array|AudioDevice|AudioMixer|BigNum|Block|Box|Buffer|CFunction|CGI|Color|Curses|DBM|DNSResolver|DOConnection|DOProxy|DOServer|Date|Directory|Duration|DynLib|Error|Exception|FFT|File|Fnmatch|Font|Future|GL|GLE|GLScissor|GLU|GLUCylinder|GLUQuadric|GLUSphere|GLUT|Host|Image|Importer|LinkList|List|Lobby|Locals|MD5|MP3Decoder|MP3Encoder|Map|Message|Movie|Notification|Number|Object|OpenGL|Point|Protos|Random|Regex|SGML|SGMLElement|SGMLParser|SQLite|Sequence|Server|ShowMessage|SleepyCat|SleepyCatCursor|Socket|SocketManager|Sound|Soup|Store|String|Tree|UDPSender|UPDReceiver|URL|User|Warning|WeakLink)\b/,boolean:/\b(?:false|nil|true)\b/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e-?\d+)?/i,operator:/[=!*/%+\-^&|]=|>>?=?|<+*\-%$|,#][.:]?|[?^]\.?|[;\[]:?|[~}"i][.:]|[ACeEIjLor]\.|(?:[_\/\\qsux]|_?\d):)/,alias:"keyword"},number:/\b_?(?:(?!\d:)\d+(?:\.\d+)?(?:(?:ad|ar|[ejpx])_?\d+(?:\.\d+)?)*(?:b_?[\da-z]+(?:\.[\da-z]+)?)?|_\b(?!\.))/,adverb:{pattern:/[~}]|[\/\\]\.?|[bfM]\.|t[.:]/,alias:"builtin"},operator:/[=a][.:]|_\./,conjunction:{pattern:/&(?:\.:?|:)?|[.:@][.:]?|[!D][.:]|[;dHT]\.|`:?|[\^LS]:|"/,alias:"variable"},punctuation:/[()]/}}return gf}var bf,ME;function Ty(){if(ME)return bf;ME=1,bf=e,e.displayName="java",e.aliases=[];function e(t){(function(n){var r=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,a=/(^|[^\w.])(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source,i={pattern:RegExp(a+/[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};n.languages.java=n.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[i,{pattern:RegExp(a+/[A-Z]\w*(?=\s+\w+\s*[;,=()])/.source),lookbehind:!0,inside:i.inside}],keyword:r,function:[n.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0}}),n.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),n.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":i,keyword:r,punctuation:/[<>(),.:]/,operator:/[?&|]/}},namespace:{pattern:RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(//g,function(){return r.source})),lookbehind:!0,inside:{punctuation:/\./}}})})(t)}return bf}var xf,LE;function uu(){if(LE)return xf;LE=1,xf=e,e.displayName="javadoclike",e.aliases=[];function e(t){(function(n){var r=n.languages.javadoclike={parameter:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*@(?:arg|arguments|param)\s+)\w+/m,lookbehind:!0},keyword:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,lookbehind:!0},punctuation:/[{}]/};function a(s,l){var c="doc-comment",u=n.languages[s];if(u){var d=u[c];if(!d){var p={};p[c]={pattern:/(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,lookbehind:!0,alias:"comment"},u=n.languages.insertBefore(s,"comment",p),d=u[c]}if(d instanceof RegExp&&(d=u[c]={pattern:d}),Array.isArray(d))for(var m=0,f=d.length;m)?|/.source.replace(//g,function(){return s});a.languages.javadoc=a.languages.extend("javadoclike",{}),a.languages.insertBefore("javadoc","keyword",{reference:{pattern:RegExp(/(@(?:exception|link|linkplain|see|throws|value)\s+(?:\*\s*)?)/.source+"(?:"+l+")"),lookbehind:!0,inside:{function:{pattern:/(#\s*)\w+(?=\s*\()/,lookbehind:!0},field:{pattern:/(#\s*)\w+/,lookbehind:!0},namespace:{pattern:/\b(?:[a-z]\w*\s*\.\s*)+/,inside:{punctuation:/\./}},"class-name":/\b[A-Z]\w*/,keyword:a.languages.java.keyword,punctuation:/[#()[\],.]/}},"class-name":{pattern:/(@param\s+)<[A-Z]\w*>/,lookbehind:!0,inside:{punctuation:/[.<>]/}},"code-section":[{pattern:/(\{@code\s+(?!\s))(?:[^\s{}]|\s+(?![\s}])|\{(?:[^{}]|\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})*\})*\})+(?=\s*\})/,lookbehind:!0,inside:{code:{pattern:i,lookbehind:!0,inside:a.languages.java,alias:"language-java"}}},{pattern:/(<(code|pre|tt)>(?!)\s*)\S(?:\S|\s+\S)*?(?=\s*<\/\2>)/,lookbehind:!0,inside:{line:{pattern:i,lookbehind:!0,inside:{tag:a.languages.markup.tag,entity:a.languages.markup.entity,code:{pattern:/.+/,inside:a.languages.java,alias:"language-java"}}}}}],tag:a.languages.markup.tag,entity:a.languages.markup.entity}),a.languages.javadoclike.addSupport("java",a.languages.javadoc)})(r)}return yf}var vf,FE;function _ee(){if(FE)return vf;FE=1,vf=e,e.displayName="javastacktrace",e.aliases=[];function e(t){t.languages.javastacktrace={summary:{pattern:/^([\t ]*)(?:(?:Caused by:|Suppressed:|Exception in thread "[^"]*")[\t ]+)?[\w$.]+(?::.*)?$/m,lookbehind:!0,inside:{keyword:{pattern:/^([\t ]*)(?:(?:Caused by|Suppressed)(?=:)|Exception in thread)/m,lookbehind:!0},string:{pattern:/^(\s*)"[^"]*"/,lookbehind:!0},exceptions:{pattern:/^(:?\s*)[\w$.]+(?=:|$)/,lookbehind:!0,inside:{"class-name":/[\w$]+$/,namespace:/\b[a-z]\w*\b/,punctuation:/\./}},message:{pattern:/(:\s*)\S.*/,lookbehind:!0,alias:"string"},punctuation:/:/}},"stack-frame":{pattern:/^([\t ]*)at (?:[\w$./]|@[\w$.+-]*\/)+(?:)?\([^()]*\)/m,lookbehind:!0,inside:{keyword:{pattern:/^(\s*)at(?= )/,lookbehind:!0},source:[{pattern:/(\()\w+\.\w+:\d+(?=\))/,lookbehind:!0,inside:{file:/^\w+\.\w+/,punctuation:/:/,"line-number":{pattern:/\b\d+\b/,alias:"number"}}},{pattern:/(\()[^()]*(?=\))/,lookbehind:!0,inside:{keyword:/^(?:Native Method|Unknown Source)$/}}],"class-name":/[\w$]+(?=\.(?:|[\w$]+)\()/,function:/(?:|[\w$]+)(?=\()/,"class-loader":{pattern:/(\s)[a-z]\w*(?:\.[a-z]\w*)*(?=\/[\w@$.]*\/)/,lookbehind:!0,alias:"namespace",inside:{punctuation:/\./}},module:{pattern:/([\s/])[a-z]\w*(?:\.[a-z]\w*)*(?:@[\w$.+-]*)?(?=\/)/,lookbehind:!0,inside:{version:{pattern:/(@)[\s\S]+/,lookbehind:!0,alias:"number"},punctuation:/[@.]/}},namespace:{pattern:/(?:\b[a-z]\w*\.)+/,inside:{punctuation:/\./}},punctuation:/[()/.]/}},more:{pattern:/^([\t ]*)\.{3} \d+ [a-z]+(?: [a-z]+)*/m,lookbehind:!0,inside:{punctuation:/\.{3}/,number:/\d+/,keyword:/\b[a-z]+(?: [a-z]+)*\b/}}}}return vf}var kf,BE;function jee(){if(BE)return kf;BE=1,kf=e,e.displayName="jexl",e.aliases=[];function e(t){t.languages.jexl={string:/(["'])(?:\\[\s\S]|(?!\1)[^\\])*\1/,transform:{pattern:/(\|\s*)[a-zA-Zа-яА-Я_\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF$][\wа-яА-Я\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF$]*/,alias:"function",lookbehind:!0},function:/[a-zA-Zа-яА-Я_\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF$][\wа-яА-Я\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF$]*\s*(?=\()/,number:/\b\d+(?:\.\d+)?\b|\B\.\d+\b/,operator:/[<>!]=?|-|\+|&&|==|\|\|?|\/\/?|[?:*^%]/,boolean:/\b(?:false|true)\b/,keyword:/\bin\b/,punctuation:/[{}[\](),.]/}}return kf}var wf,$E;function Oee(){if($E)return wf;$E=1,wf=e,e.displayName="jolie",e.aliases=[];function e(t){t.languages.jolie=t.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\[\s\S]|[^"\\])*"/,lookbehind:!0,greedy:!0},"class-name":{pattern:/((?:\b(?:as|courier|embed|in|inputPort|outputPort|service)\b|@)[ \t]*)\w+/,lookbehind:!0},keyword:/\b(?:as|cH|comp|concurrent|constants|courier|cset|csets|default|define|else|embed|embedded|execution|exit|extender|for|foreach|forward|from|global|if|import|in|include|init|inputPort|install|instanceof|interface|is_defined|linkIn|linkOut|main|new|nullProcess|outputPort|over|private|provide|public|scope|sequential|service|single|spawn|synchronized|this|throw|throws|type|undef|until|while|with)\b/,function:/\b[a-z_]\w*(?=[ \t]*[@(])/i,number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?l?/i,operator:/-[-=>]?|\+[+=]?|<[<=]?|[>=*!]=?|&&|\|\||[?\/%^@|]/,punctuation:/[()[\]{},;.:]/,builtin:/\b(?:Byte|any|bool|char|double|enum|float|int|length|long|ranges|regex|string|undefined|void)\b/}),t.languages.insertBefore("jolie","keyword",{aggregates:{pattern:/(\bAggregates\s*:\s*)(?:\w+(?:\s+with\s+\w+)?\s*,\s*)*\w+(?:\s+with\s+\w+)?/,lookbehind:!0,inside:{keyword:/\bwith\b/,"class-name":/\w+/,punctuation:/,/}},redirects:{pattern:/(\bRedirects\s*:\s*)(?:\w+\s*=>\s*\w+\s*,\s*)*(?:\w+\s*=>\s*\w+)/,lookbehind:!0,inside:{punctuation:/,/,"class-name":/\w+/,operator:/=>/}},property:{pattern:/\b(?:Aggregates|[Ii]nterfaces|Java|Javascript|Jolie|[Ll]ocation|OneWay|[Pp]rotocol|Redirects|RequestResponse)\b(?=[ \t]*:)/}})}return wf}var Sf,UE;function Dee(){if(UE)return Sf;UE=1,Sf=e,e.displayName="jq",e.aliases=[];function e(t){(function(n){var r=/\\\((?:[^()]|\([^()]*\))*\)/.source,a=RegExp(/(^|[^\\])"(?:[^"\r\n\\]|\\[^\r\n(]|__)*"/.source.replace(/__/g,function(){return r})),i={interpolation:{pattern:RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+r),lookbehind:!0,inside:{content:{pattern:/^(\\\()[\s\S]+(?=\)$)/,lookbehind:!0,inside:null},punctuation:/^\\\(|\)$/}}},s=n.languages.jq={comment:/#.*/,property:{pattern:RegExp(a.source+/(?=\s*:(?!:))/.source),lookbehind:!0,greedy:!0,inside:i},string:{pattern:a,lookbehind:!0,greedy:!0,inside:i},function:{pattern:/(\bdef\s+)[a-z_]\w+/i,lookbehind:!0},variable:/\B\$\w+/,"property-literal":{pattern:/\b[a-z_]\w*(?=\s*:(?!:))/i,alias:"property"},keyword:/\b(?:as|break|catch|def|elif|else|end|foreach|if|import|include|label|module|modulemeta|null|reduce|then|try|while)\b/,boolean:/\b(?:false|true)\b/,number:/(?:\b\d+\.|\B\.)?\b\d+(?:[eE][+-]?\d+)?\b/,operator:[{pattern:/\|=?/,alias:"pipe"},/\.\.|[!=<>]?=|\?\/\/|\/\/=?|[-+*/%]=?|[<>?]|\b(?:and|not|or)\b/],"c-style-function":{pattern:/\b[a-z_]\w*(?=\s*\()/i,alias:"function"},punctuation:/::|[()\[\]{},:;]|\.(?=\s*[\[\w$])/,dot:{pattern:/\./,alias:"important"}};i.interpolation.inside.content.inside=s})(t)}return Sf}var Ef,zE;function Mee(){if(zE)return Ef;zE=1,Ef=e,e.displayName="jsExtras",e.aliases=[];function e(t){(function(n){n.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+n.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),n.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+n.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),n.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]});function r(u,d){return RegExp(u.replace(//g,function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source}),d)}n.languages.insertBefore("javascript","keyword",{imports:{pattern:r(/(\bimport\b\s*)(?:(?:\s*,\s*(?:\*\s*as\s+|\{[^{}]*\}))?|\*\s*as\s+|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:n.languages.javascript},exports:{pattern:r(/(\bexport\b\s*)(?:\*(?:\s*as\s+)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:n.languages.javascript}}),n.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),n.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),n.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:r(/(\.\s*)#?/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var a=["function","function-variable","method","method-variable","property-access"],i=0;i=T.length)return;var O=_[C];if(typeof O=="string"||typeof O.content=="string"){var I=T[v],z=typeof O=="string"?O:O.content,M=z.indexOf(I);if(M!==-1){++v;var P=z.substring(0,M),B=p(E[I]),$=z.substring(M+I.length),U=[];if(P&&U.push(P),U.push(B),$){var q=[$];j(q),U.push.apply(U,q)}typeof O=="string"?(_.splice.apply(_,[C,1].concat(U)),C+=U.length-1):O.content=U}}else{var A=O.content;Array.isArray(A)?j(A):j([A])}}}return j(w),new n.Token(k,w,"language-"+k,b)}var f={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};n.hooks.add("after-tokenize",function(b){if(!(b.language in f))return;function x(k){for(var y=0,v=k.length;y]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),n.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete n.languages.typescript.parameter,delete n.languages.typescript["literal-property"];var r=n.languages.extend("typescript",{});delete r["class-name"],n.languages.typescript["class-name"].inside=r,n.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:r}}}}),n.languages.ts=n.languages.typescript})(t)}return Nf}var Tf,GE;function Pee(){if(GE)return Tf;GE=1;var e=uu(),t=Ay();Tf=n,n.displayName="jsdoc",n.aliases=[];function n(r){r.register(e),r.register(t),(function(a){var i=a.languages.javascript,s=/\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})+\}/.source,l="(@(?:arg|argument|param|property)\\s+(?:"+s+"\\s+)?)";a.languages.jsdoc=a.languages.extend("javadoclike",{parameter:{pattern:RegExp(l+/(?:(?!\s)[$\w\xA0-\uFFFF.])+(?=\s|$)/.source),lookbehind:!0,inside:{punctuation:/\./}}}),a.languages.insertBefore("jsdoc","keyword",{"optional-parameter":{pattern:RegExp(l+/\[(?:(?!\s)[$\w\xA0-\uFFFF.])+(?:=[^[\]]+)?\](?=\s|$)/.source),lookbehind:!0,inside:{parameter:{pattern:/(^\[)[$\w\xA0-\uFFFF\.]+/,lookbehind:!0,inside:{punctuation:/\./}},code:{pattern:/(=)[\s\S]*(?=\]$)/,lookbehind:!0,inside:i,alias:"language-javascript"},punctuation:/[=[\]]/}},"class-name":[{pattern:RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\s+(?:\s+)?)[A-Z]\w*(?:\.[A-Z]\w*)*/.source.replace(//g,function(){return s})),lookbehind:!0,inside:{punctuation:/\./}},{pattern:RegExp("(@[a-z]+\\s+)"+s),lookbehind:!0,inside:{string:i.string,number:i.number,boolean:i.boolean,keyword:a.languages.typescript.keyword,operator:/=>|\.\.\.|[&|?:*]/,punctuation:/[.,;=<>{}()[\]]/}}],example:{pattern:/(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,lookbehind:!0,inside:{code:{pattern:/^([\t ]*(?:\*\s*)?)\S.*$/m,lookbehind:!0,inside:i,alias:"language-javascript"}}}}),a.languages.javadoclike.addSupport("javascript",a.languages.jsdoc)})(r)}return Tf}var Af,VE;function Iy(){if(VE)return Af;VE=1,Af=e,e.displayName="json",e.aliases=["webmanifest"];function e(t){t.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},t.languages.webmanifest=t.languages.json}return Af}var If,WE;function Fee(){if(WE)return If;WE=1;var e=Iy();If=t,t.displayName="json5",t.aliases=[];function t(n){n.register(e),(function(r){var a=/("|')(?:\\(?:\r\n?|\n|.)|(?!\1)[^\\\r\n])*\1/;r.languages.json5=r.languages.extend("json",{property:[{pattern:RegExp(a.source+"(?=\\s*:)"),greedy:!0},{pattern:/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/,alias:"unquoted"}],string:{pattern:a,greedy:!0},number:/[+-]?\b(?:NaN|Infinity|0x[a-fA-F\d]+)\b|[+-]?(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[eE][+-]?\d+\b)?/})})(n)}return If}var Rf,KE;function Bee(){if(KE)return Rf;KE=1;var e=Iy();Rf=t,t.displayName="jsonp",t.aliases=[];function t(n){n.register(e),n.languages.jsonp=n.languages.extend("json",{punctuation:/[{}[\]();,.]/}),n.languages.insertBefore("jsonp","punctuation",{function:/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*\()/})}return Rf}var _f,YE;function $ee(){if(YE)return _f;YE=1,_f=e,e.displayName="jsstacktrace",e.aliases=[];function e(t){t.languages.jsstacktrace={"error-message":{pattern:/^\S.*/m,alias:"string"},"stack-frame":{pattern:/(^[ \t]+)at[ \t].*/m,lookbehind:!0,inside:{"not-my-code":{pattern:/^at[ \t]+(?!\s)(?:node\.js||.*(?:node_modules|\(\)|\(|$|\(internal\/|\(node\.js)).*/m,alias:"comment"},filename:{pattern:/(\bat\s+(?!\s)|\()(?:[a-zA-Z]:)?[^():]+(?=:)/,lookbehind:!0,alias:"url"},function:{pattern:/(\bat\s+(?:new\s+)?)(?!\s)[_$a-zA-Z\xA0-\uFFFF<][.$\w\xA0-\uFFFF<>]*/,lookbehind:!0,inside:{punctuation:/\./}},punctuation:/[()]/,keyword:/\b(?:at|new)\b/,alias:{pattern:/\[(?:as\s+)?(?!\s)[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\]/,alias:"variable"},"line-number":{pattern:/:\d+(?::\d+)?\b/,alias:"number",inside:{punctuation:/:/}}}}}}return _f}var jf,XE;function u6(){if(XE)return jf;XE=1,jf=e,e.displayName="jsx",e.aliases=[];function e(t){(function(n){var r=n.util.clone(n.languages.javascript),a=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,i=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,s=/(?:\{*\.{3}(?:[^{}]|)*\})/.source;function l(d,p){return d=d.replace(//g,function(){return a}).replace(//g,function(){return i}).replace(//g,function(){return s}),RegExp(d,p)}s=l(s).source,n.languages.jsx=n.languages.extend("markup",r),n.languages.jsx.tag.pattern=l(/<\/?(?:[\w.:-]+(?:+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|))?|))**\/?)?>/.source),n.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,n.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,n.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,n.languages.jsx.tag.inside.comment=r.comment,n.languages.insertBefore("inside","attr-name",{spread:{pattern:l(//.source),inside:n.languages.jsx}},n.languages.jsx.tag),n.languages.insertBefore("inside","special-attr",{script:{pattern:l(/=/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:n.languages.jsx}}},n.languages.jsx.tag);var c=function(d){return d?typeof d=="string"?d:typeof d.content=="string"?d.content:d.content.map(c).join(""):""},u=function(d){for(var p=[],m=0;m0&&p[p.length-1].tagName===c(f.content[0].content[1])&&p.pop():f.content[f.content.length-1].content==="/>"||p.push({tagName:c(f.content[0].content[1]),openedBraces:0}):p.length>0&&f.type==="punctuation"&&f.content==="{"?p[p.length-1].openedBraces++:p.length>0&&p[p.length-1].openedBraces>0&&f.type==="punctuation"&&f.content==="}"?p[p.length-1].openedBraces--:g=!0),(g||typeof f=="string")&&p.length>0&&p[p.length-1].openedBraces===0){var b=c(f);m0&&(typeof d[m-1]=="string"||d[m-1].type==="plain-text")&&(b=c(d[m-1])+b,d.splice(m-1,1),m--),d[m]=new n.Token("plain-text",b,null,b)}f.content&&typeof f.content!="string"&&u(f.content)}};n.hooks.add("after-tokenize",function(d){d.language!=="jsx"&&d.language!=="tsx"||u(d.tokens)})})(t)}return jf}var Of,ZE;function Uee(){if(ZE)return Of;ZE=1,Of=e,e.displayName="julia",e.aliases=[];function e(t){t.languages.julia={comment:{pattern:/(^|[^\\])(?:#=(?:[^#=]|=(?!#)|#(?!=)|#=(?:[^#=]|=(?!#)|#(?!=))*=#)*=#|#.*)/,lookbehind:!0},regex:{pattern:/r"(?:\\.|[^"\\\r\n])*"[imsx]{0,4}/,greedy:!0},string:{pattern:/"""[\s\S]+?"""|(?:\b\w+)?"(?:\\.|[^"\\\r\n])*"|`(?:[^\\`\r\n]|\\.)*`/,greedy:!0},char:{pattern:/(^|[^\w'])'(?:\\[^\r\n][^'\r\n]*|[^\\\r\n])'/,lookbehind:!0,greedy:!0},keyword:/\b(?:abstract|baremodule|begin|bitstype|break|catch|ccall|const|continue|do|else|elseif|end|export|finally|for|function|global|if|immutable|import|importall|in|let|local|macro|module|print|println|quote|return|struct|try|type|typealias|using|while)\b/,boolean:/\b(?:false|true)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[box])?(?:[\da-f]+(?:_[\da-f]+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[efp][+-]?\d+(?:_\d+)*)?j?/i,operator:/&&|\|\||[-+*^%÷⊻&$\\]=?|\/[\/=]?|!=?=?|\|[=>]?|<(?:<=?|[=:|])?|>(?:=|>>?=?)?|==?=?|[~≠≤≥'√∛]/,punctuation:/::?|[{}[\]();,.?]/,constant:/\b(?:(?:Inf|NaN)(?:16|32|64)?|im|pi)\b|[πℯ]/}}return Of}var Df,JE;function zee(){if(JE)return Df;JE=1,Df=e,e.displayName="keepalived",e.aliases=[];function e(t){t.languages.keepalived={comment:{pattern:/[#!].*/,greedy:!0},string:{pattern:/(^|[^\\])(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/,lookbehind:!0,greedy:!0},ip:{pattern:RegExp(/\b(?:(?:(?:[\da-f]{1,4}:){7}[\da-f]{1,4}|(?:[\da-f]{1,4}:){6}:[\da-f]{1,4}|(?:[\da-f]{1,4}:){5}:(?:[\da-f]{1,4}:)?[\da-f]{1,4}|(?:[\da-f]{1,4}:){4}:(?:[\da-f]{1,4}:){0,2}[\da-f]{1,4}|(?:[\da-f]{1,4}:){3}:(?:[\da-f]{1,4}:){0,3}[\da-f]{1,4}|(?:[\da-f]{1,4}:){2}:(?:[\da-f]{1,4}:){0,4}[\da-f]{1,4}|(?:[\da-f]{1,4}:){6}|(?:[\da-f]{1,4}:){0,5}:|::(?:[\da-f]{1,4}:){0,5}|[\da-f]{1,4}::(?:[\da-f]{1,4}:){0,5}[\da-f]{1,4}|::(?:[\da-f]{1,4}:){0,6}[\da-f]{1,4}|(?:[\da-f]{1,4}:){1,7}:)(?:\/\d{1,3})?|(?:\/\d{1,2})?)\b/.source.replace(//g,function(){return/(?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d))/.source}),"i"),alias:"number"},path:{pattern:/(\s)\/(?:[^\/\s]+\/)*[^\/\s]*|\b[a-zA-Z]:\\(?:[^\\\s]+\\)*[^\\\s]*/,lookbehind:!0,alias:"string"},variable:/\$\{?\w+\}?/,email:{pattern:/[\w-]+@[\w-]+(?:\.[\w-]{2,3}){1,2}/,alias:"string"},"conditional-configuration":{pattern:/@\^?[\w-]+/,alias:"variable"},operator:/=/,property:/\b(?:BFD_CHECK|DNS_CHECK|FILE_CHECK|HTTP_GET|MISC_CHECK|NAME|PING_CHECK|SCRIPTS|SMTP_CHECK|SSL|SSL_GET|TCP_CHECK|UDP_CHECK|accept|advert_int|alpha|auth_pass|auth_type|authentication|bfd_cpu_affinity|bfd_instance|bfd_no_swap|bfd_priority|bfd_process_name|bfd_rlimit_rttime|bfd_rt_priority|bind_if|bind_port|bindto|ca|certificate|check_unicast_src|checker|checker_cpu_affinity|checker_log_all_failures|checker_no_swap|checker_priority|checker_rlimit_rttime|checker_rt_priority|child_wait_time|connect_ip|connect_port|connect_timeout|dbus_service_name|debug|default_interface|delay|delay_before_retry|delay_loop|digest|dont_track_primary|dynamic|dynamic_interfaces|enable_(?:dbus|script_security|sni|snmp_checker|snmp_rfc|snmp_rfcv2|snmp_rfcv3|snmp_vrrp|traps)|end|fall|fast_recovery|file|flag-[123]|fork_delay|full_command|fwmark|garp_group|garp_interval|garp_lower_prio_delay|garp_lower_prio_repeat|garp_master_delay|garp_master_refresh|garp_master_refresh_repeat|garp_master_repeat|global_defs|global_tracking|gna_interval|group|ha_suspend|hashed|helo_name|higher_prio_send_advert|hoplimit|http_protocol|hysteresis|idle_tx|include|inhibit_on_failure|init_fail|init_file|instance|interface|interfaces|interval|ip_family|ipvs_process_name|keepalived.conf|kernel_rx_buf_size|key|linkbeat_interfaces|linkbeat_use_polling|log_all_failures|log_unknown_vrids|lower_prio_no_advert|lthreshold|lvs_flush|lvs_flush_onstop|lvs_method|lvs_netlink_cmd_rcv_bufs|lvs_netlink_cmd_rcv_bufs_force|lvs_netlink_monitor_rcv_bufs|lvs_netlink_monitor_rcv_bufs_force|lvs_notify_fifo|lvs_notify_fifo_script|lvs_sched|lvs_sync_daemon|max_auto_priority|max_hops|mcast_src_ip|mh-fallback|mh-port|min_auto_priority_delay|min_rx|min_tx|misc_dynamic|misc_path|misc_timeout|multiplier|name|namespace_with_ipsets|native_ipv6|neighbor_ip|net_namespace|net_namespace_ipvs|nftables|nftables_counters|nftables_ifindex|nftables_priority|no_accept|no_checker_emails|no_email_faults|nopreempt|notification_email|notification_email_from|notify|notify_backup|notify_deleted|notify_down|notify_fault|notify_fifo|notify_fifo_script|notify_master|notify_master_rx_lower_pri|notify_priority_changes|notify_stop|notify_up|old_unicast_checksum|omega|ops|param_match|passive|password|path|persistence_engine|persistence_granularity|persistence_timeout|preempt|preempt_delay|priority|process|process_monitor_rcv_bufs|process_monitor_rcv_bufs_force|process_name|process_names|promote_secondaries|protocol|proxy_arp|proxy_arp_pvlan|quorum|quorum_down|quorum_max|quorum_up|random_seed|real_server|regex|regex_max_offset|regex_min_offset|regex_no_match|regex_options|regex_stack|reload_repeat|reload_time_file|require_reply|retry|rise|router_id|rs_init_notifies|script|script_user|sh-fallback|sh-port|shutdown_script|shutdown_script_timeout|skip_check_adv_addr|smtp_alert|smtp_alert_checker|smtp_alert_vrrp|smtp_connect_timeout|smtp_helo_name|smtp_server|snmp_socket|sorry_server|sorry_server_inhibit|sorry_server_lvs_method|source_ip|start|startup_script|startup_script_timeout|state|static_ipaddress|static_routes|static_rules|status_code|step|strict_mode|sync_group_tracking_weight|terminate_delay|timeout|track_bfd|track_file|track_group|track_interface|track_process|track_script|track_src_ip|ttl|type|umask|unicast_peer|unicast_src_ip|unicast_ttl|url|use_ipvlan|use_pid_dir|use_vmac|user|uthreshold|val[123]|version|virtual_ipaddress|virtual_ipaddress_excluded|virtual_router_id|virtual_routes|virtual_rules|virtual_server|virtual_server_group|virtualhost|vmac_xmit_base|vrrp|vrrp_(?:check_unicast_src|cpu_affinity|garp_interval|garp_lower_prio_delay|garp_lower_prio_repeat|garp_master_delay|garp_master_refresh|garp_master_refresh_repeat|garp_master_repeat|gna_interval|higher_prio_send_advert|instance|ipsets|iptables|lower_prio_no_advert|mcast_group4|mcast_group6|min_garp|netlink_cmd_rcv_bufs|netlink_cmd_rcv_bufs_force|netlink_monitor_rcv_bufs|netlink_monitor_rcv_bufs_force|no_swap|notify_fifo|notify_fifo_script|notify_priority_changes|priority|process_name|rlimit_rttime|rt_priority|rx_bufs_multiplier|rx_bufs_policy|script|skip_check_adv_addr|startup_delay|strict|sync_group|track_process|version)|warmup|weight)\b/,constant:/\b(?:A|AAAA|AH|BACKUP|CNAME|DR|MASTER|MX|NAT|NS|PASS|SCTP|SOA|TCP|TUN|TXT|UDP|dh|fo|lblc|lblcr|lc|mh|nq|ovf|rr|sed|sh|wlc|wrr)\b/,number:{pattern:/(^|[^\w.-])-?\d+(?:\.\d+)?/,lookbehind:!0},boolean:/\b(?:false|no|off|on|true|yes)\b/,punctuation:/[\{\}]/}}return Df}var Mf,QE;function qee(){if(QE)return Mf;QE=1,Mf=e,e.displayName="keyman",e.aliases=[];function e(t){t.languages.keyman={comment:{pattern:/\bc .*/i,greedy:!0},string:{pattern:/"[^"\r\n]*"|'[^'\r\n]*'/,greedy:!0},"virtual-key":{pattern:/\[\s*(?:(?:ALT|CAPS|CTRL|LALT|LCTRL|NCAPS|RALT|RCTRL|SHIFT)\s+)*(?:[TKU]_[\w?]+|[A-E]\d\d?|"[^"\r\n]*"|'[^'\r\n]*')\s*\]/i,greedy:!0,alias:"function"},"header-keyword":{pattern:/&\w+/,alias:"bold"},"header-statement":{pattern:/\b(?:bitmap|bitmaps|caps always off|caps on only|copyright|hotkey|language|layout|message|name|shift frees caps|version)\b/i,alias:"bold"},"rule-keyword":{pattern:/\b(?:any|baselayout|beep|call|context|deadkey|dk|if|index|layer|notany|nul|outs|platform|reset|return|save|set|store|use)\b/i,alias:"keyword"},"structural-keyword":{pattern:/\b(?:ansi|begin|group|match|nomatch|unicode|using keys)\b/i,alias:"keyword"},"compile-target":{pattern:/\$(?:keyman|keymanonly|keymanweb|kmfl|weaver):/i,alias:"property"},number:/\b(?:U\+[\dA-F]+|d\d+|x[\da-f]+|\d+)\b/i,operator:/[+>\\$]|\.\./,punctuation:/[()=,]/}}return Mf}var Lf,e4;function Hee(){if(e4)return Lf;e4=1,Lf=e,e.displayName="kotlin",e.aliases=["kt","kts"];function e(t){(function(n){n.languages.kotlin=n.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete n.languages.kotlin["class-name"];var r={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:n.languages.kotlin}};n.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:r},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:r},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete n.languages.kotlin.string,n.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),n.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),n.languages.kt=n.languages.kotlin,n.languages.kts=n.languages.kotlin})(t)}return Lf}var Pf,t4;function Gee(){if(t4)return Pf;t4=1,Pf=e,e.displayName="kumir",e.aliases=["kum"];function e(t){(function(n){var r=/\s\x00-\x1f\x22-\x2f\x3a-\x3f\x5b-\x5e\x60\x7b-\x7e/.source;function a(i,s){return RegExp(i.replace(//g,r),s)}n.languages.kumir={comment:{pattern:/\|.*/},prolog:{pattern:/#.*/,greedy:!0},string:{pattern:/"[^\n\r"]*"|'[^\n\r']*'/,greedy:!0},boolean:{pattern:a(/(^|[])(?:да|нет)(?=[]|$)/.source),lookbehind:!0},"operator-word":{pattern:a(/(^|[])(?:и|или|не)(?=[]|$)/.source),lookbehind:!0,alias:"keyword"},"system-variable":{pattern:a(/(^|[])знач(?=[]|$)/.source),lookbehind:!0,alias:"keyword"},type:[{pattern:a(/(^|[])(?:вещ|лит|лог|сим|цел)(?:\x20*таб)?(?=[]|$)/.source),lookbehind:!0,alias:"builtin"},{pattern:a(/(^|[])(?:компл|сканкод|файл|цвет)(?=[]|$)/.source),lookbehind:!0,alias:"important"}],keyword:{pattern:a(/(^|[])(?:алг|арг(?:\x20*рез)?|ввод|ВКЛЮЧИТЬ|вс[её]|выбор|вывод|выход|дано|для|до|дс|если|иначе|исп|использовать|кон(?:(?:\x20+|_)исп)?|кц(?:(?:\x20+|_)при)?|надо|нач|нс|нц|от|пауза|пока|при|раза?|рез|стоп|таб|то|утв|шаг)(?=[]|$)/.source),lookbehind:!0},name:{pattern:a(/(^|[])[^\d][^]*(?:\x20+[^]+)*(?=[]|$)/.source),lookbehind:!0},number:{pattern:a(/(^|[])(?:\B\$[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)(?=[]|$)/.source,"i"),lookbehind:!0},punctuation:/:=|[(),:;\[\]]/,"operator-char":{pattern:/\*\*?|<[=>]?|>=?|[-+/=]/,alias:"operator"}},n.languages.kum=n.languages.kumir})(t)}return Pf}var Ff,n4;function Vee(){if(n4)return Ff;n4=1,Ff=e,e.displayName="kusto",e.aliases=[];function e(t){t.languages.kusto={comment:{pattern:/\/\/.*/,greedy:!0},string:{pattern:/```[\s\S]*?```|[hH]?(?:"(?:[^\r\n\\"]|\\.)*"|'(?:[^\r\n\\']|\\.)*'|@(?:"[^\r\n"]*"|'[^\r\n']*'))/,greedy:!0},verb:{pattern:/(\|\s*)[a-z][\w-]*/i,lookbehind:!0,alias:"keyword"},command:{pattern:/\.[a-z][a-z\d-]*\b/,alias:"keyword"},"class-name":/\b(?:bool|datetime|decimal|dynamic|guid|int|long|real|string|timespan)\b/,keyword:/\b(?:access|alias|and|anti|as|asc|auto|between|by|(?:contains|(?:ends|starts)with|has(?:perfix|suffix)?)(?:_cs)?|database|declare|desc|external|from|fullouter|has_all|in|ingestion|inline|inner|innerunique|into|(?:left|right)(?:anti(?:semi)?|inner|outer|semi)?|let|like|local|not|of|on|or|pattern|print|query_parameters|range|restrict|schema|set|step|table|tables|to|view|where|with|matches\s+regex|nulls\s+(?:first|last))(?![\w-])/,boolean:/\b(?:false|null|true)\b/,function:/\b[a-z_]\w*(?=\s*\()/,datetime:[{pattern:/\b(?:(?:Fri|Friday|Mon|Monday|Sat|Saturday|Sun|Sunday|Thu|Thursday|Tue|Tuesday|Wed|Wednesday)\s*,\s*)?\d{1,2}(?:\s+|-)(?:Apr|Aug|Dec|Feb|Jan|Jul|Jun|Mar|May|Nov|Oct|Sep)(?:\s+|-)\d{2}\s+\d{2}:\d{2}(?::\d{2})?(?:\s*(?:\b(?:[A-Z]|(?:[ECMT][DS]|GM|U)T)|[+-]\d{4}))?\b/,alias:"number"},{pattern:/[+-]?\b(?:\d{4}-\d{2}-\d{2}(?:[ T]\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?)?|\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?)Z?/,alias:"number"}],number:/\b(?:0x[0-9A-Fa-f]+|\d+(?:\.\d+)?(?:[Ee][+-]?\d+)?)(?:(?:min|sec|[mnµ]s|[dhms]|microsecond|tick)\b)?|[+-]?\binf\b/,operator:/=>|[!=]~|[!=<>]=?|[-+*/%|]|\.\./,punctuation:/[()\[\]{},;.:]/}}return Ff}var Bf,r4;function Wee(){if(r4)return Bf;r4=1,Bf=e,e.displayName="latex",e.aliases=["tex","context"];function e(t){(function(n){var r=/\\(?:[^a-z()[\]]|[a-z*]+)/i,a={"equation-command":{pattern:r,alias:"regex"}};n.languages.latex={comment:/%.*/,cdata:{pattern:/(\\begin\{((?:lstlisting|verbatim)\*?)\})[\s\S]*?(?=\\end\{\2\})/,lookbehind:!0},equation:[{pattern:/\$\$(?:\\[\s\S]|[^\\$])+\$\$|\$(?:\\[\s\S]|[^\\$])+\$|\\\([\s\S]*?\\\)|\\\[[\s\S]*?\\\]/,inside:a,alias:"string"},{pattern:/(\\begin\{((?:align|eqnarray|equation|gather|math|multline)\*?)\})[\s\S]*?(?=\\end\{\2\})/,lookbehind:!0,inside:a,alias:"string"}],keyword:{pattern:/(\\(?:begin|cite|documentclass|end|label|ref|usepackage)(?:\[[^\]]+\])?\{)[^}]+(?=\})/,lookbehind:!0},url:{pattern:/(\\url\{)[^}]+(?=\})/,lookbehind:!0},headline:{pattern:/(\\(?:chapter|frametitle|paragraph|part|section|subparagraph|subsection|subsubparagraph|subsubsection|subsubsubparagraph)\*?(?:\[[^\]]+\])?\{)[^}]+(?=\})/,lookbehind:!0,alias:"class-name"},function:{pattern:r,alias:"selector"},punctuation:/[[\]{}&]/},n.languages.tex=n.languages.latex,n.languages.context=n.languages.latex})(t)}return Bf}var $f,a4;function du(){if(a4)return $f;a4=1;var e=Gn();$f=t,t.displayName="php",t.aliases=[];function t(n){n.register(e),(function(r){var a=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,i=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],s=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,l=/|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,c=/[{}\[\](),:;]/;r.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:a,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|new|or|parent|print|private|protected|public|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s+)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:i,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:s,operator:l,punctuation:c};var u={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:r.languages.php},d=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:u}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:u}}];r.languages.insertBefore("php","variable",{string:d,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:a,string:d,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:i,number:s,operator:l,punctuation:c}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),r.hooks.add("before-tokenize",function(p){if(/<\?/.test(p.code)){var m=/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g;r.languages["markup-templating"].buildPlaceholders(p,"php",m)}}),r.hooks.add("after-tokenize",function(p){r.languages["markup-templating"].tokenizePlaceholders(p,"php")})})(n)}return $f}var Uf,i4;function Kee(){if(i4)return Uf;i4=1;var e=Gn(),t=du();Uf=n,n.displayName="latte",n.aliases=[];function n(r){r.register(e),r.register(t),(function(a){a.languages.latte={comment:/^\{\*[\s\S]*/,"latte-tag":{pattern:/(^\{(?:\/(?=[a-z]))?)(?:[=_]|[a-z]\w*\b(?!\())/i,lookbehind:!0,alias:"important"},delimiter:{pattern:/^\{\/?|\}$/,alias:"punctuation"},php:{pattern:/\S(?:[\s\S]*\S)?/,alias:"language-php",inside:a.languages.php}};var i=a.languages.extend("markup",{});a.languages.insertBefore("inside","attr-value",{"n-attr":{pattern:/n:[\w-]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+))?/,inside:{"attr-name":{pattern:/^[^\s=]+/,alias:"important"},"attr-value":{pattern:/=[\s\S]+/,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}],php:{pattern:/\S(?:[\s\S]*\S)?/,inside:a.languages.php}}}}}},i.tag),a.hooks.add("before-tokenize",function(s){if(s.language==="latte"){var l=/\{\*[\s\S]*?\*\}|\{[^'"\s{}*](?:[^"'/{}]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|\/\*(?:[^*]|\*(?!\/))*\*\/)*\}/g;a.languages["markup-templating"].buildPlaceholders(s,"latte",l),s.grammar=i}}),a.hooks.add("after-tokenize",function(s){a.languages["markup-templating"].tokenizePlaceholders(s,"latte")})})(r)}return Uf}var zf,s4;function Yee(){if(s4)return zf;s4=1,zf=e,e.displayName="less",e.aliases=[];function e(t){t.languages.less=t.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),t.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:"function"}})}return zf}var qf,o4;function Ry(){if(o4)return qf;o4=1,qf=e,e.displayName="scheme",e.aliases=[];function e(t){(function(n){n.languages.scheme={comment:/;.*|#;\s*(?:\((?:[^()]|\([^()]*\))*\)|\[(?:[^\[\]]|\[[^\[\]]*\])*\])|#\|(?:[^#|]|#(?!\|)|\|(?!#)|#\|(?:[^#|]|#(?!\|)|\|(?!#))*\|#)*\|#/,string:{pattern:/"(?:[^"\\]|\\.)*"/,greedy:!0},symbol:{pattern:/'[^()\[\]#'\s]+/,greedy:!0},char:{pattern:/#\\(?:[ux][a-fA-F\d]+\b|[-a-zA-Z]+\b|[\uD800-\uDBFF][\uDC00-\uDFFF]|\S)/,greedy:!0},"lambda-parameter":[{pattern:/((?:^|[^'`#])[(\[]lambda\s+)(?:[^|()\[\]'\s]+|\|(?:[^\\|]|\\.)*\|)/,lookbehind:!0},{pattern:/((?:^|[^'`#])[(\[]lambda\s+[(\[])[^()\[\]']+/,lookbehind:!0}],keyword:{pattern:/((?:^|[^'`#])[(\[])(?:begin|case(?:-lambda)?|cond(?:-expand)?|define(?:-library|-macro|-record-type|-syntax|-values)?|defmacro|delay(?:-force)?|do|else|except|export|guard|if|import|include(?:-ci|-library-declarations)?|lambda|let(?:rec)?(?:-syntax|-values|\*)?|let\*-values|only|parameterize|prefix|(?:quasi-?)?quote|rename|set!|syntax-(?:case|rules)|unless|unquote(?:-splicing)?|when)(?=[()\[\]\s]|$)/,lookbehind:!0},builtin:{pattern:/((?:^|[^'`#])[(\[])(?:abs|and|append|apply|assoc|ass[qv]|binary-port\?|boolean=?\?|bytevector(?:-append|-copy|-copy!|-length|-u8-ref|-u8-set!|\?)?|caar|cadr|call-with-(?:current-continuation|port|values)|call\/cc|car|cdar|cddr|cdr|ceiling|char(?:->integer|-ready\?|\?|<\?|<=\?|=\?|>\?|>=\?)|close-(?:input-port|output-port|port)|complex\?|cons|current-(?:error|input|output)-port|denominator|dynamic-wind|eof-object\??|eq\?|equal\?|eqv\?|error|error-object(?:-irritants|-message|\?)|eval|even\?|exact(?:-integer-sqrt|-integer\?|\?)?|expt|features|file-error\?|floor(?:-quotient|-remainder|\/)?|flush-output-port|for-each|gcd|get-output-(?:bytevector|string)|inexact\??|input-port(?:-open\?|\?)|integer(?:->char|\?)|lcm|length|list(?:->string|->vector|-copy|-ref|-set!|-tail|\?)?|make-(?:bytevector|list|parameter|string|vector)|map|max|member|memq|memv|min|modulo|negative\?|newline|not|null\?|number(?:->string|\?)|numerator|odd\?|open-(?:input|output)-(?:bytevector|string)|or|output-port(?:-open\?|\?)|pair\?|peek-char|peek-u8|port\?|positive\?|procedure\?|quotient|raise|raise-continuable|rational\?|rationalize|read-(?:bytevector|bytevector!|char|error\?|line|string|u8)|real\?|remainder|reverse|round|set-c[ad]r!|square|string(?:->list|->number|->symbol|->utf8|->vector|-append|-copy|-copy!|-fill!|-for-each|-length|-map|-ref|-set!|\?|<\?|<=\?|=\?|>\?|>=\?)?|substring|symbol(?:->string|\?|=\?)|syntax-error|textual-port\?|truncate(?:-quotient|-remainder|\/)?|u8-ready\?|utf8->string|values|vector(?:->list|->string|-append|-copy|-copy!|-fill!|-for-each|-length|-map|-ref|-set!|\?)?|with-exception-handler|write-(?:bytevector|char|string|u8)|zero\?)(?=[()\[\]\s]|$)/,lookbehind:!0},operator:{pattern:/((?:^|[^'`#])[(\[])(?:[-+*%/]|[<>]=?|=>?)(?=[()\[\]\s]|$)/,lookbehind:!0},number:{pattern:RegExp(r({"":/\d+(?:\/\d+)|(?:\d+(?:\.\d*)?|\.\d+)(?:[esfdl][+-]?\d+)?/.source,"":/[+-]?|[+-](?:inf|nan)\.0/.source,"":/[+-](?:|(?:inf|nan)\.0)?i/.source,"":/(?:@|)?|/.source,"":/(?:#d(?:#[ei])?|#[ei](?:#d)?)?/.source,"":/[0-9a-f]+(?:\/[0-9a-f]+)?/.source,"":/[+-]?|[+-](?:inf|nan)\.0/.source,"":/[+-](?:|(?:inf|nan)\.0)?i/.source,"":/(?:@|)?|/.source,"":/#[box](?:#[ei])?|(?:#[ei])?#[box]/.source,"":/(^|[()\[\]\s])(?:|)(?=[()\[\]\s]|$)/.source}),"i"),lookbehind:!0},boolean:{pattern:/(^|[()\[\]\s])#(?:[ft]|false|true)(?=[()\[\]\s]|$)/,lookbehind:!0},function:{pattern:/((?:^|[^'`#])[(\[])(?:[^|()\[\]'\s]+|\|(?:[^\\|]|\\.)*\|)(?=[()\[\]\s]|$)/,lookbehind:!0},identifier:{pattern:/(^|[()\[\]\s])\|(?:[^\\|]|\\.)*\|(?=[()\[\]\s]|$)/,lookbehind:!0,greedy:!0},punctuation:/[()\[\]']/};function r(a){for(var i in a)a[i]=a[i].replace(/<[\w\s]+>/g,function(s){return"(?:"+a[s].trim()+")"});return a[i]}})(t)}return qf}var Hf,l4;function Xee(){if(l4)return Hf;l4=1;var e=Ry();Hf=t,t.displayName="lilypond",t.aliases=[];function t(n){n.register(e),(function(r){for(var a=/\((?:[^();"#\\]|\\[\s\S]|;.*(?!.)|"(?:[^"\\]|\\.)*"|#(?:\{(?:(?!#\})[\s\S])*#\}|[^{])|)*\)/.source,i=5,s=0;s/g,function(){return a});a=a.replace(//g,/[^\s\S]/.source);var l=r.languages.lilypond={comment:/%(?:(?!\{).*|\{[\s\S]*?%\})/,"embedded-scheme":{pattern:RegExp(/(^|[=\s])#(?:"(?:[^"\\]|\\.)*"|[^\s()"]*(?:[^\s()]|))/.source.replace(//g,function(){return a}),"m"),lookbehind:!0,greedy:!0,inside:{scheme:{pattern:/^(#)[\s\S]+$/,lookbehind:!0,alias:"language-scheme",inside:{"embedded-lilypond":{pattern:/#\{[\s\S]*?#\}/,greedy:!0,inside:{punctuation:/^#\{|#\}$/,lilypond:{pattern:/[\s\S]+/,alias:"language-lilypond",inside:null}}},rest:r.languages.scheme}},punctuation:/#/}},string:{pattern:/"(?:[^"\\]|\\.)*"/,greedy:!0},"class-name":{pattern:/(\\new\s+)[\w-]+/,lookbehind:!0},keyword:{pattern:/\\[a-z][-\w]*/i,inside:{punctuation:/^\\/}},operator:/[=|]|<<|>>/,punctuation:{pattern:/(^|[a-z\d])(?:'+|,+|[_^]?-[_^]?(?:[-+^!>._]|(?=\d))|[_^]\.?|[.!])|[{}()[\]<>^~]|\\[()[\]<>\\!]|--|__/,lookbehind:!0},number:/\b\d+(?:\/\d+)?\b/};l["embedded-scheme"].inside.scheme.inside["embedded-lilypond"].inside.lilypond.inside=l,r.languages.ly=l})(n)}return Hf}var Gf,c4;function Zee(){if(c4)return Gf;c4=1;var e=Gn();Gf=t,t.displayName="liquid",t.aliases=[];function t(n){n.register(e),n.languages.liquid={comment:{pattern:/(^\{%\s*comment\s*%\})[\s\S]+(?=\{%\s*endcomment\s*%\}$)/,lookbehind:!0},delimiter:{pattern:/^\{(?:\{\{|[%\{])-?|-?(?:\}\}|[%\}])\}$/,alias:"punctuation"},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},keyword:/\b(?:as|assign|break|(?:end)?(?:capture|case|comment|for|form|if|paginate|raw|style|tablerow|unless)|continue|cycle|decrement|echo|else|elsif|in|include|increment|limit|liquid|offset|range|render|reversed|section|when|with)\b/,object:/\b(?:address|all_country_option_tags|article|block|blog|cart|checkout|collection|color|country|country_option_tags|currency|current_page|current_tags|customer|customer_address|date|discount_allocation|discount_application|external_video|filter|filter_value|font|forloop|fulfillment|generic_file|gift_card|group|handle|image|line_item|link|linklist|localization|location|measurement|media|metafield|model|model_source|order|page|page_description|page_image|page_title|part|policy|product|product_option|recommendations|request|robots|routes|rule|script|search|selling_plan|selling_plan_allocation|selling_plan_group|shipping_method|shop|shop_locale|sitemap|store_availability|tax_line|template|theme|transaction|unit_price_measurement|user_agent|variant|video|video_source)\b/,function:[{pattern:/(\|\s*)\w+/,lookbehind:!0,alias:"filter"},{pattern:/(\.\s*)(?:first|last|size)/,lookbehind:!0}],boolean:/\b(?:false|nil|true)\b/,range:{pattern:/\.\./,alias:"operator"},number:/\b\d+(?:\.\d+)?\b/,operator:/[!=]=|<>|[<>]=?|[|?:=-]|\b(?:and|contains(?=\s)|or)\b/,punctuation:/[.,\[\]()]/,empty:{pattern:/\bempty\b/,alias:"keyword"}},n.hooks.add("before-tokenize",function(r){var a=/\{%\s*comment\s*%\}[\s\S]*?\{%\s*endcomment\s*%\}|\{(?:%[\s\S]*?%|\{\{[\s\S]*?\}\}|\{[\s\S]*?\})\}/g,i=!1;n.languages["markup-templating"].buildPlaceholders(r,"liquid",a,function(s){var l=/^\{%-?\s*(\w+)/.exec(s);if(l){var c=l[1];if(c==="raw"&&!i)return i=!0,!0;if(c==="endraw")return i=!1,!0}return!i})}),n.hooks.add("after-tokenize",function(r){n.languages["markup-templating"].tokenizePlaceholders(r,"liquid")})}return Gf}var Vf,u4;function Jee(){if(u4)return Vf;u4=1,Vf=e,e.displayName="lisp",e.aliases=[];function e(t){(function(n){function r(b){return RegExp(/(\()/.source+"(?:"+b+")"+/(?=[\s\)])/.source)}function a(b){return RegExp(/([\s([])/.source+"(?:"+b+")"+/(?=[\s)])/.source)}var i=/(?!\d)[-+*/~!@$%^=<>{}\w]+/.source,s="&"+i,l="(\\()",c="(?=\\))",u="(?=\\s)",d=/(?:[^()]|\((?:[^()]|\((?:[^()]|\((?:[^()]|\((?:[^()]|\([^()]*\))*\))*\))*\))*\))*/.source,p={heading:{pattern:/;;;.*/,alias:["comment","title"]},comment:/;.*/,string:{pattern:/"(?:[^"\\]|\\.)*"/,greedy:!0,inside:{argument:/[-A-Z]+(?=[.,\s])/,symbol:RegExp("`"+i+"'")}},"quoted-symbol":{pattern:RegExp("#?'"+i),alias:["variable","symbol"]},"lisp-property":{pattern:RegExp(":"+i),alias:"property"},splice:{pattern:RegExp(",@?"+i),alias:["symbol","variable"]},keyword:[{pattern:RegExp(l+"(?:and|(?:cl-)?letf|cl-loop|cond|cons|error|if|(?:lexical-)?let\\*?|message|not|null|or|provide|require|setq|unless|use-package|when|while)"+u),lookbehind:!0},{pattern:RegExp(l+"(?:append|by|collect|concat|do|finally|for|in|return)"+u),lookbehind:!0}],declare:{pattern:r(/declare/.source),lookbehind:!0,alias:"keyword"},interactive:{pattern:r(/interactive/.source),lookbehind:!0,alias:"keyword"},boolean:{pattern:a(/nil|t/.source),lookbehind:!0},number:{pattern:a(/[-+]?\d+(?:\.\d*)?/.source),lookbehind:!0},defvar:{pattern:RegExp(l+"def(?:const|custom|group|var)\\s+"+i),lookbehind:!0,inside:{keyword:/^def[a-z]+/,variable:RegExp(i)}},defun:{pattern:RegExp(l+/(?:cl-)?(?:defmacro|defun\*?)\s+/.source+i+/\s+\(/.source+d+/\)/.source),lookbehind:!0,greedy:!0,inside:{keyword:/^(?:cl-)?def\S+/,arguments:null,function:{pattern:RegExp("(^\\s)"+i),lookbehind:!0},punctuation:/[()]/}},lambda:{pattern:RegExp(l+"lambda\\s+\\(\\s*(?:&?"+i+"(?:\\s+&?"+i+")*\\s*)?\\)"),lookbehind:!0,greedy:!0,inside:{keyword:/^lambda/,arguments:null,punctuation:/[()]/}},car:{pattern:RegExp(l+i),lookbehind:!0},punctuation:[/(?:['`,]?\(|[)\[\]])/,{pattern:/(\s)\.(?=\s)/,lookbehind:!0}]},m={"lisp-marker":RegExp(s),varform:{pattern:RegExp(/\(/.source+i+/\s+(?=\S)/.source+d+/\)/.source),inside:p},argument:{pattern:RegExp(/(^|[\s(])/.source+i),lookbehind:!0,alias:"variable"},rest:p},f="\\S+(?:\\s+\\S+)*",g={pattern:RegExp(l+d+c),lookbehind:!0,inside:{"rest-vars":{pattern:RegExp("&(?:body|rest)\\s+"+f),inside:m},"other-marker-vars":{pattern:RegExp("&(?:aux|optional)\\s+"+f),inside:m},keys:{pattern:RegExp("&key\\s+"+f+"(?:\\s+&allow-other-keys)?"),inside:m},argument:{pattern:RegExp(i),alias:"variable"},punctuation:/[()]/}};p.lambda.inside.arguments=g,p.defun.inside.arguments=n.util.clone(g),p.defun.inside.arguments.inside.sublist=g,n.languages.lisp=p,n.languages.elisp=p,n.languages.emacs=p,n.languages["emacs-lisp"]=p})(t)}return Vf}var Wf,d4;function Qee(){if(d4)return Wf;d4=1,Wf=e,e.displayName="livescript",e.aliases=[];function e(t){t.languages.livescript={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\])#.*/,lookbehind:!0}],"interpolated-string":{pattern:/(^|[^"])("""|")(?:\\[\s\S]|(?!\2)[^\\])*\2(?!")/,lookbehind:!0,greedy:!0,inside:{variable:{pattern:/(^|[^\\])#[a-z_](?:-?[a-z]|[\d_])*/m,lookbehind:!0},interpolation:{pattern:/(^|[^\\])#\{[^}]+\}/m,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^#\{|\}$/,alias:"variable"}}},string:/[\s\S]+/}},string:[{pattern:/('''|')(?:\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},{pattern:/<\[[\s\S]*?\]>/,greedy:!0},/\\[^\s,;\])}]+/],regex:[{pattern:/\/\/(?:\[[^\r\n\]]*\]|\\.|(?!\/\/)[^\\\[])+\/\/[gimyu]{0,5}/,greedy:!0,inside:{comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0}}},{pattern:/\/(?:\[[^\r\n\]]*\]|\\.|[^/\\\r\n\[])+\/[gimyu]{0,5}/,greedy:!0}],keyword:{pattern:/(^|(?!-).)\b(?:break|case|catch|class|const|continue|default|do|else|extends|fallthrough|finally|for(?: ever)?|function|if|implements|it|let|loop|new|null|otherwise|own|return|super|switch|that|then|this|throw|try|unless|until|var|void|when|while|yield)(?!-)\b/m,lookbehind:!0},"keyword-operator":{pattern:/(^|[^-])\b(?:(?:delete|require|typeof)!|(?:and|by|delete|export|from|import(?: all)?|in|instanceof|is(?: not|nt)?|not|of|or|til|to|typeof|with|xor)(?!-)\b)/m,lookbehind:!0,alias:"operator"},boolean:{pattern:/(^|[^-])\b(?:false|no|off|on|true|yes)(?!-)\b/m,lookbehind:!0},argument:{pattern:/(^|(?!\.&\.)[^&])&(?!&)\d*/m,lookbehind:!0,alias:"variable"},number:/\b(?:\d+~[\da-z]+|\d[\d_]*(?:\.\d[\d_]*)?(?:[a-z]\w*)?)/i,identifier:/[a-z_](?:-?[a-z]|[\d_])*/i,operator:[{pattern:/( )\.(?= )/,lookbehind:!0},/\.(?:[=~]|\.\.?)|\.(?:[&|^]|<<|>>>?)\.|:(?:=|:=?)|&&|\|[|>]|<(?:<[>=?]?|-(?:->?|>)?|\+\+?|@@?|%%?|\*\*?|!(?:~?=|--?>|~?~>)?|~(?:~?>|=)?|==?|\^\^?|[\/?]/],punctuation:/[(){}\[\]|.,:;`]/},t.languages.livescript["interpolated-string"].inside.interpolation.inside.rest=t.languages.livescript}return Wf}var Kf,p4;function ete(){if(p4)return Kf;p4=1,Kf=e,e.displayName="llvm",e.aliases=[];function e(t){(function(n){n.languages.llvm={comment:/;.*/,string:{pattern:/"[^"]*"/,greedy:!0},boolean:/\b(?:false|true)\b/,variable:/[%@!#](?:(?!\d)(?:[-$.\w]|\\[a-f\d]{2})+|\d+)/i,label:/(?!\d)(?:[-$.\w]|\\[a-f\d]{2})+:/i,type:{pattern:/\b(?:double|float|fp128|half|i[1-9]\d*|label|metadata|ppc_fp128|token|void|x86_fp80|x86_mmx)\b/,alias:"class-name"},keyword:/\b[a-z_][a-z_0-9]*\b/,number:/[+-]?\b\d+(?:\.\d+)?(?:[eE][+-]?\d+)?\b|\b0x[\dA-Fa-f]+\b|\b0xK[\dA-Fa-f]{20}\b|\b0x[ML][\dA-Fa-f]{32}\b|\b0xH[\dA-Fa-f]{4}\b/,punctuation:/[{}[\];(),.!*=<>]/}})(t)}return Kf}var Yf,m4;function tte(){if(m4)return Yf;m4=1,Yf=e,e.displayName="log",e.aliases=[];function e(t){t.languages.log={string:{pattern:/"(?:[^"\\\r\n]|\\.)*"|'(?![st] | \w)(?:[^'\\\r\n]|\\.)*'/,greedy:!0},exception:{pattern:/(^|[^\w.])[a-z][\w.]*(?:Error|Exception):.*(?:(?:\r\n?|\n)[ \t]*(?:at[ \t].+|\.{3}.*|Caused by:.*))+(?:(?:\r\n?|\n)[ \t]*\.\.\. .*)?/,lookbehind:!0,greedy:!0,alias:["javastacktrace","language-javastacktrace"],inside:t.languages.javastacktrace||{keyword:/\bat\b/,function:/[a-z_][\w$]*(?=\()/,punctuation:/[.:()]/}},level:[{pattern:/\b(?:ALERT|CRIT|CRITICAL|EMERG|EMERGENCY|ERR|ERROR|FAILURE|FATAL|SEVERE)\b/,alias:["error","important"]},{pattern:/\b(?:WARN|WARNING|WRN)\b/,alias:["warning","important"]},{pattern:/\b(?:DISPLAY|INF|INFO|NOTICE|STATUS)\b/,alias:["info","keyword"]},{pattern:/\b(?:DBG|DEBUG|FINE)\b/,alias:["debug","keyword"]},{pattern:/\b(?:FINER|FINEST|TRACE|TRC|VERBOSE|VRB)\b/,alias:["trace","comment"]}],property:{pattern:/((?:^|[\]|])[ \t]*)[a-z_](?:[\w-]|\b\/\b)*(?:[. ]\(?\w(?:[\w-]|\b\/\b)*\)?)*:(?=\s)/im,lookbehind:!0},separator:{pattern:/(^|[^-+])-{3,}|={3,}|\*{3,}|- - /m,lookbehind:!0,alias:"comment"},url:/\b(?:file|ftp|https?):\/\/[^\s|,;'"]*[^\s|,;'">.]/,email:{pattern:/(^|\s)[-\w+.]+@[a-z][a-z0-9-]*(?:\.[a-z][a-z0-9-]*)+(?=\s)/,lookbehind:!0,alias:"url"},"ip-address":{pattern:/\b(?:\d{1,3}(?:\.\d{1,3}){3})\b/,alias:"constant"},"mac-address":{pattern:/\b[a-f0-9]{2}(?::[a-f0-9]{2}){5}\b/i,alias:"constant"},domain:{pattern:/(^|\s)[a-z][a-z0-9-]*(?:\.[a-z][a-z0-9-]*)*\.[a-z][a-z0-9-]+(?=\s)/,lookbehind:!0,alias:"constant"},uuid:{pattern:/\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/i,alias:"constant"},hash:{pattern:/\b(?:[a-f0-9]{32}){1,2}\b/i,alias:"constant"},"file-path":{pattern:/\b[a-z]:[\\/][^\s|,;:(){}\[\]"']+|(^|[\s:\[\](>|])\.{0,2}\/\w[^\s|,;:(){}\[\]"']*/i,lookbehind:!0,greedy:!0,alias:"string"},date:{pattern:RegExp(/\b\d{4}[-/]\d{2}[-/]\d{2}(?:T(?=\d{1,2}:)|(?=\s\d{1,2}:))/.source+"|"+/\b\d{1,4}[-/ ](?:\d{1,2}|Apr|Aug|Dec|Feb|Jan|Jul|Jun|Mar|May|Nov|Oct|Sep)[-/ ]\d{2,4}T?\b/.source+"|"+/\b(?:(?:Fri|Mon|Sat|Sun|Thu|Tue|Wed)(?:\s{1,2}(?:Apr|Aug|Dec|Feb|Jan|Jul|Jun|Mar|May|Nov|Oct|Sep))?|Apr|Aug|Dec|Feb|Jan|Jul|Jun|Mar|May|Nov|Oct|Sep)\s{1,2}\d{1,2}\b/.source,"i"),alias:"number"},time:{pattern:/\b\d{1,2}:\d{1,2}:\d{1,2}(?:[.,:]\d+)?(?:\s?[+-]\d{2}:?\d{2}|Z)?\b/,alias:"number"},boolean:/\b(?:false|null|true)\b/i,number:{pattern:/(^|[^.\w])(?:0x[a-f0-9]+|0o[0-7]+|0b[01]+|v?\d[\da-f]*(?:\.\d+)*(?:e[+-]?\d+)?[a-z]{0,3}\b)\b(?!\.\w)/i,lookbehind:!0},operator:/[;:?<=>~/@!$%&+\-|^(){}*#]/,punctuation:/[\[\].,]/}}return Yf}var Xf,f4;function nte(){if(f4)return Xf;f4=1,Xf=e,e.displayName="lolcode",e.aliases=[];function e(t){t.languages.lolcode={comment:[/\bOBTW\s[\s\S]*?\sTLDR\b/,/\bBTW.+/],string:{pattern:/"(?::.|[^":])*"/,inside:{variable:/:\{[^}]+\}/,symbol:[/:\([a-f\d]+\)/i,/:\[[^\]]+\]/,/:[)>o":]/]},greedy:!0},number:/(?:\B-)?(?:\b\d+(?:\.\d*)?|\B\.\d+)/,symbol:{pattern:/(^|\s)(?:A )?(?:BUKKIT|NOOB|NUMBAR|NUMBR|TROOF|YARN)(?=\s|,|$)/,lookbehind:!0,inside:{keyword:/A(?=\s)/}},label:{pattern:/((?:^|\s)(?:IM IN YR|IM OUTTA YR) )[a-zA-Z]\w*/,lookbehind:!0,alias:"string"},function:{pattern:/((?:^|\s)(?:HOW IZ I|I IZ|IZ) )[a-zA-Z]\w*/,lookbehind:!0},keyword:[{pattern:/(^|\s)(?:AN|FOUND YR|GIMMEH|GTFO|HAI|HAS A|HOW IZ I|I HAS A|I IZ|IF U SAY SO|IM IN YR|IM OUTTA YR|IS NOW(?: A)?|ITZ(?: A)?|IZ|KTHX|KTHXBYE|LIEK(?: A)?|MAEK|MEBBE|MKAY|NERFIN|NO WAI|O HAI IM|O RLY\?|OIC|OMG|OMGWTF|R|SMOOSH|SRS|TIL|UPPIN|VISIBLE|WILE|WTF\?|YA RLY|YR)(?=\s|,|$)/,lookbehind:!0},/'Z(?=\s|,|$)/],boolean:{pattern:/(^|\s)(?:FAIL|WIN)(?=\s|,|$)/,lookbehind:!0},variable:{pattern:/(^|\s)IT(?=\s|,|$)/,lookbehind:!0},operator:{pattern:/(^|\s)(?:NOT|BOTH SAEM|DIFFRINT|(?:ALL|ANY|BIGGR|BOTH|DIFF|EITHER|MOD|PRODUKT|QUOSHUNT|SMALLR|SUM|WON) OF)(?=\s|,|$)/,lookbehind:!0},punctuation:/\.{3}|…|,|!/}}return Xf}var Zf,h4;function rte(){if(h4)return Zf;h4=1,Zf=e,e.displayName="magma",e.aliases=[];function e(t){t.languages.magma={output:{pattern:/^(>.*(?:\r(?:\n|(?!\n))|\n))(?!>)(?:.+|(?:\r(?:\n|(?!\n))|\n)(?!>).*)(?:(?:\r(?:\n|(?!\n))|\n)(?!>).*)*/m,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?\*\//,greedy:!0},string:{pattern:/(^|[^\\"])"(?:[^\r\n\\"]|\\.)*"/,lookbehind:!0,greedy:!0},keyword:/\b(?:_|adj|and|assert|assert2|assert3|assigned|break|by|case|cat|catch|clear|cmpeq|cmpne|continue|declare|default|delete|diff|div|do|elif|else|end|eq|error|eval|exists|exit|for|forall|forward|fprintf|freeze|function|ge|gt|if|iload|import|in|intrinsic|is|join|le|load|local|lt|meet|mod|ne|not|notadj|notin|notsubset|or|print|printf|procedure|quit|random|read|readi|repeat|require|requirege|requirerange|restore|return|save|sdiff|select|subset|then|time|to|try|until|vprint|vprintf|vtime|when|where|while|xor)\b/,boolean:/\b(?:false|true)\b/,generator:{pattern:/\b[a-z_]\w*(?=\s*<)/i,alias:"class-name"},function:/\b[a-z_]\w*(?=\s*\()/i,number:{pattern:/(^|[^\w.]|\.\.)(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?(?:_[a-z]?)?(?=$|[^\w.]|\.\.)/,lookbehind:!0},operator:/->|[-+*/^~!|#=]|:=|\.\./,punctuation:/[()[\]{}<>,;.:]/}}return Zf}var Jf,g4;function ate(){if(g4)return Jf;g4=1,Jf=e,e.displayName="makefile",e.aliases=[];function e(t){t.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:"builtin"},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:"symbol",inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/}}return Jf}var Qf,b4;function ite(){if(b4)return Qf;b4=1,Qf=e,e.displayName="markdown",e.aliases=["md"];function e(t){(function(n){var r=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function a(m){return m=m.replace(//g,function(){return r}),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+m+")")}var i=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,s=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,function(){return i}),l=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;n.languages.markdown=n.languages.extend("markup",{}),n.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:n.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+s+l+"(?:"+s+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+s+l+")(?:"+s+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(i),inside:n.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+s+")"+l+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+s+"$"),inside:{"table-header":{pattern:RegExp(i),alias:"important",inside:n.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:a(/\b__(?:(?!_)|_(?:(?!_))+_)+__\b|\*\*(?:(?!\*)|\*(?:(?!\*))+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:a(/\b_(?:(?!_)|__(?:(?!_))+__)+_\b|\*(?:(?!\*)|\*\*(?:(?!\*))+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:a(/(~~?)(?:(?!~))+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:a(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\]))+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach(function(m){["url","bold","italic","strike","code-snippet"].forEach(function(f){m!==f&&(n.languages.markdown[m].inside.content.inside[f]=n.languages.markdown[f])})}),n.hooks.add("after-tokenize",function(m){if(m.language!=="markdown"&&m.language!=="md")return;function f(g){if(!(!g||typeof g=="string"))for(var b=0,x=g.length;b",quot:'"'},d=String.fromCodePoint||String.fromCharCode;function p(m){var f=m.replace(c,"");return f=f.replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,function(g,b){if(b=b.toLowerCase(),b[0]==="#"){var x;return b[1]==="x"?x=parseInt(b.slice(2),16):x=Number(b.slice(1)),d(x)}else{var k=u[b];return k||g}}),f}n.languages.md=n.languages.markdown})(t)}return Qf}var eh,x4;function ste(){if(x4)return eh;x4=1,eh=e,e.displayName="matlab",e.aliases=[];function e(t){t.languages.matlab={comment:[/%\{[\s\S]*?\}%/,/%.+/],string:{pattern:/\B'(?:''|[^'\r\n])*'/,greedy:!0},number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[eE][+-]?\d+)?(?:[ij])?|\b[ij]\b/,keyword:/\b(?:NaN|break|case|catch|continue|else|elseif|end|for|function|if|inf|otherwise|parfor|pause|pi|return|switch|try|while)\b/,function:/\b(?!\d)\w+(?=\s*\()/,operator:/\.?[*^\/\\']|[+\-:@]|[<>=~]=?|&&?|\|\|?/,punctuation:/\.{3}|[.,;\[\](){}!]/}}return eh}var th,y4;function ote(){if(y4)return th;y4=1,th=e,e.displayName="maxscript",e.aliases=[];function e(t){(function(n){var r=/\b(?:about|and|animate|as|at|attributes|by|case|catch|collect|continue|coordsys|do|else|exit|fn|for|from|function|global|if|in|local|macroscript|mapped|max|not|of|off|on|or|parameters|persistent|plugin|rcmenu|return|rollout|set|struct|then|throw|to|tool|try|undo|utility|when|where|while|with)\b/i;n.languages.maxscript={comment:{pattern:/\/\*[\s\S]*?(?:\*\/|$)|--.*/,greedy:!0},string:{pattern:/(^|[^"\\@])(?:"(?:[^"\\]|\\[\s\S])*"|@"[^"]*")/,lookbehind:!0,greedy:!0},path:{pattern:/\$(?:[\w/\\.*?]|'[^']*')*/,greedy:!0,alias:"string"},"function-call":{pattern:RegExp("((?:"+(/^/.source+"|"+/[;=<>+\-*/^({\[]/.source+"|"+/\b(?:and|by|case|catch|collect|do|else|if|in|not|or|return|then|to|try|where|while|with)\b/.source)+")[ ]*)(?!"+r.source+")"+/[a-z_]\w*\b/.source+"(?=[ ]*(?:"+("(?!"+r.source+")"+/[a-z_]/.source+"|"+/\d|-\.?\d/.source+"|"+/[({'"$@#?]/.source)+"))","im"),lookbehind:!0,greedy:!0,alias:"function"},"function-definition":{pattern:/(\b(?:fn|function)\s+)\w+\b/i,lookbehind:!0,alias:"function"},argument:{pattern:/\b[a-z_]\w*(?=:)/i,alias:"attr-name"},keyword:r,boolean:/\b(?:false|true)\b/,time:{pattern:/(^|[^\w.])(?:(?:(?:\d+(?:\.\d*)?|\.\d+)(?:[eEdD][+-]\d+|[LP])?[msft])+|\d+:\d+(?:\.\d*)?)(?![\w.:])/,lookbehind:!0,alias:"number"},number:[{pattern:/(^|[^\w.])(?:(?:\d+(?:\.\d*)?|\.\d+)(?:[eEdD][+-]\d+|[LP])?|0x[a-fA-F0-9]+)(?![\w.:])/,lookbehind:!0},/\b(?:e|pi)\b/],constant:/\b(?:dontcollect|ok|silentValue|undefined|unsupplied)\b/,color:{pattern:/\b(?:black|blue|brown|gray|green|orange|red|white|yellow)\b/i,alias:"constant"},operator:/[-+*/<>=!]=?|[&^?]|#(?!\()/,punctuation:/[()\[\]{}.:,;]|#(?=\()|\\$/m}})(t)}return th}var nh,v4;function lte(){if(v4)return nh;v4=1,nh=e,e.displayName="mel",e.aliases=[];function e(t){t.languages.mel={comment:/\/\/.*/,code:{pattern:/`(?:\\.|[^\\`\r\n])*`/,greedy:!0,alias:"italic",inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"}}},string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},variable:/\$\w+/,number:/\b0x[\da-fA-F]+\b|\b\d+(?:\.\d*)?|\B\.\d+/,flag:{pattern:/-[^\d\W]\w*/,alias:"operator"},keyword:/\b(?:break|case|continue|default|do|else|float|for|global|if|in|int|matrix|proc|return|string|switch|vector|while)\b/,function:/\b\w+(?=\()|\b(?:CBG|HfAddAttractorToAS|HfAssignAS|HfBuildEqualMap|HfBuildFurFiles|HfBuildFurImages|HfCancelAFR|HfConnectASToHF|HfCreateAttractor|HfDeleteAS|HfEditAS|HfPerformCreateAS|HfRemoveAttractorFromAS|HfSelectAttached|HfSelectAttractors|HfUnAssignAS|Mayatomr|about|abs|addAttr|addAttributeEditorNodeHelp|addDynamic|addNewShelfTab|addPP|addPanelCategory|addPrefixToName|advanceToNextDrivenKey|affectedNet|affects|aimConstraint|air|alias|aliasAttr|align|alignCtx|alignCurve|alignSurface|allViewFit|ambientLight|angle|angleBetween|animCone|animCurveEditor|animDisplay|animView|annotate|appendStringArray|applicationName|applyAttrPreset|applyTake|arcLenDimContext|arcLengthDimension|arclen|arrayMapper|art3dPaintCtx|artAttrCtx|artAttrPaintVertexCtx|artAttrSkinPaintCtx|artAttrTool|artBuildPaintMenu|artFluidAttrCtx|artPuttyCtx|artSelectCtx|artSetPaintCtx|artUserPaintCtx|assignCommand|assignInputDevice|assignViewportFactories|attachCurve|attachDeviceAttr|attachSurface|attrColorSliderGrp|attrCompatibility|attrControlGrp|attrEnumOptionMenu|attrEnumOptionMenuGrp|attrFieldGrp|attrFieldSliderGrp|attrNavigationControlGrp|attrPresetEditWin|attributeExists|attributeInfo|attributeMenu|attributeQuery|autoKeyframe|autoPlace|bakeClip|bakeFluidShading|bakePartialHistory|bakeResults|bakeSimulation|basename|basenameEx|batchRender|bessel|bevel|bevelPlus|binMembership|bindSkin|blend2|blendShape|blendShapeEditor|blendShapePanel|blendTwoAttr|blindDataType|boneLattice|boundary|boxDollyCtx|boxZoomCtx|bufferCurve|buildBookmarkMenu|buildKeyframeMenu|button|buttonManip|cacheFile|cacheFileCombine|cacheFileMerge|cacheFileTrack|camera|cameraView|canCreateManip|canvas|capitalizeString|catch|catchQuiet|ceil|changeSubdivComponentDisplayLevel|changeSubdivRegion|channelBox|character|characterMap|characterOutlineEditor|characterize|chdir|checkBox|checkBoxGrp|checkDefaultRenderGlobals|choice|circle|circularFillet|clamp|clear|clearCache|clip|clipEditor|clipEditorCurrentTimeCtx|clipSchedule|clipSchedulerOutliner|clipTrimBefore|closeCurve|closeSurface|cluster|cmdFileOutput|cmdScrollFieldExecuter|cmdScrollFieldReporter|cmdShell|coarsenSubdivSelectionList|collision|color|colorAtPoint|colorEditor|colorIndex|colorIndexSliderGrp|colorSliderButtonGrp|colorSliderGrp|columnLayout|commandEcho|commandLine|commandPort|compactHairSystem|componentEditor|compositingInterop|computePolysetVolume|condition|cone|confirmDialog|connectAttr|connectControl|connectDynamic|connectJoint|connectionInfo|constrain|constrainValue|constructionHistory|container|containsMultibyte|contextInfo|control|convertFromOldLayers|convertIffToPsd|convertLightmap|convertSolidTx|convertTessellation|convertUnit|copyArray|copyFlexor|copyKey|copySkinWeights|cos|cpButton|cpCache|cpClothSet|cpCollision|cpConstraint|cpConvClothToMesh|cpForces|cpGetSolverAttr|cpPanel|cpProperty|cpRigidCollisionFilter|cpSeam|cpSetEdit|cpSetSolverAttr|cpSolver|cpSolverTypes|cpTool|cpUpdateClothUVs|createDisplayLayer|createDrawCtx|createEditor|createLayeredPsdFile|createMotionField|createNewShelf|createNode|createRenderLayer|createSubdivRegion|cross|crossProduct|ctxAbort|ctxCompletion|ctxEditMode|ctxTraverse|currentCtx|currentTime|currentTimeCtx|currentUnit|curve|curveAddPtCtx|curveCVCtx|curveEPCtx|curveEditorCtx|curveIntersect|curveMoveEPCtx|curveOnSurface|curveSketchCtx|cutKey|cycleCheck|cylinder|dagPose|date|defaultLightListCheckBox|defaultNavigation|defineDataServer|defineVirtualDevice|deformer|deg_to_rad|delete|deleteAttr|deleteShadingGroupsAndMaterials|deleteShelfTab|deleteUI|deleteUnusedBrushes|delrandstr|detachCurve|detachDeviceAttr|detachSurface|deviceEditor|devicePanel|dgInfo|dgdirty|dgeval|dgtimer|dimWhen|directKeyCtx|directionalLight|dirmap|dirname|disable|disconnectAttr|disconnectJoint|diskCache|displacementToPoly|displayAffected|displayColor|displayCull|displayLevelOfDetail|displayPref|displayRGBColor|displaySmoothness|displayStats|displayString|displaySurface|distanceDimContext|distanceDimension|doBlur|dolly|dollyCtx|dopeSheetEditor|dot|dotProduct|doubleProfileBirailSurface|drag|dragAttrContext|draggerContext|dropoffLocator|duplicate|duplicateCurve|duplicateSurface|dynCache|dynControl|dynExport|dynExpression|dynGlobals|dynPaintEditor|dynParticleCtx|dynPref|dynRelEdPanel|dynRelEditor|dynamicLoad|editAttrLimits|editDisplayLayerGlobals|editDisplayLayerMembers|editRenderLayerAdjustment|editRenderLayerGlobals|editRenderLayerMembers|editor|editorTemplate|effector|emit|emitter|enableDevice|encodeString|endString|endsWith|env|equivalent|equivalentTol|erf|error|eval|evalDeferred|evalEcho|event|exactWorldBoundingBox|exclusiveLightCheckBox|exec|executeForEachObject|exists|exp|expression|expressionEditorListen|extendCurve|extendSurface|extrude|fcheck|fclose|feof|fflush|fgetline|fgetword|file|fileBrowserDialog|fileDialog|fileExtension|fileInfo|filetest|filletCurve|filter|filterCurve|filterExpand|filterStudioImport|findAllIntersections|findAnimCurves|findKeyframe|findMenuItem|findRelatedSkinCluster|finder|firstParentOf|fitBspline|flexor|floatEq|floatField|floatFieldGrp|floatScrollBar|floatSlider|floatSlider2|floatSliderButtonGrp|floatSliderGrp|floor|flow|fluidCacheInfo|fluidEmitter|fluidVoxelInfo|flushUndo|fmod|fontDialog|fopen|formLayout|format|fprint|frameLayout|fread|freeFormFillet|frewind|fromNativePath|fwrite|gamma|gauss|geometryConstraint|getApplicationVersionAsFloat|getAttr|getClassification|getDefaultBrush|getFileList|getFluidAttr|getInputDeviceRange|getMayaPanelTypes|getModifiers|getPanel|getParticleAttr|getPluginResource|getenv|getpid|glRender|glRenderEditor|globalStitch|gmatch|goal|gotoBindPose|grabColor|gradientControl|gradientControlNoAttr|graphDollyCtx|graphSelectContext|graphTrackCtx|gravity|grid|gridLayout|group|groupObjectsByName|hardenPointCurve|hardware|hardwareRenderPanel|headsUpDisplay|headsUpMessage|help|helpLine|hermite|hide|hilite|hitTest|hotBox|hotkey|hotkeyCheck|hsv_to_rgb|hudButton|hudSlider|hudSliderButton|hwReflectionMap|hwRender|hwRenderLoad|hyperGraph|hyperPanel|hyperShade|hypot|iconTextButton|iconTextCheckBox|iconTextRadioButton|iconTextRadioCollection|iconTextScrollList|iconTextStaticLabel|ikHandle|ikHandleCtx|ikHandleDisplayScale|ikSolver|ikSplineHandleCtx|ikSystem|ikSystemInfo|ikfkDisplayMethod|illustratorCurves|image|imfPlugins|inheritTransform|insertJoint|insertJointCtx|insertKeyCtx|insertKnotCurve|insertKnotSurface|instance|instanceable|instancer|intField|intFieldGrp|intScrollBar|intSlider|intSliderGrp|interToUI|internalVar|intersect|iprEngine|isAnimCurve|isConnected|isDirty|isParentOf|isSameObject|isTrue|isValidObjectName|isValidString|isValidUiName|isolateSelect|itemFilter|itemFilterAttr|itemFilterRender|itemFilterType|joint|jointCluster|jointCtx|jointDisplayScale|jointLattice|keyTangent|keyframe|keyframeOutliner|keyframeRegionCurrentTimeCtx|keyframeRegionDirectKeyCtx|keyframeRegionDollyCtx|keyframeRegionInsertKeyCtx|keyframeRegionMoveKeyCtx|keyframeRegionScaleKeyCtx|keyframeRegionSelectKeyCtx|keyframeRegionSetKeyCtx|keyframeRegionTrackCtx|keyframeStats|lassoContext|lattice|latticeDeformKeyCtx|launch|launchImageEditor|layerButton|layeredShaderPort|layeredTexturePort|layout|layoutDialog|lightList|lightListEditor|lightListPanel|lightlink|lineIntersection|linearPrecision|linstep|listAnimatable|listAttr|listCameras|listConnections|listDeviceAttachments|listHistory|listInputDeviceAxes|listInputDeviceButtons|listInputDevices|listMenuAnnotation|listNodeTypes|listPanelCategories|listRelatives|listSets|listTransforms|listUnselected|listerEditor|loadFluid|loadNewShelf|loadPlugin|loadPluginLanguageResources|loadPrefObjects|localizedPanelLabel|lockNode|loft|log|longNameOf|lookThru|ls|lsThroughFilter|lsType|lsUI|mag|makeIdentity|makeLive|makePaintable|makeRoll|makeSingleSurface|makeTubeOn|makebot|manipMoveContext|manipMoveLimitsCtx|manipOptions|manipRotateContext|manipRotateLimitsCtx|manipScaleContext|manipScaleLimitsCtx|marker|match|max|memory|menu|menuBarLayout|menuEditor|menuItem|menuItemToShelf|menuSet|menuSetPref|messageLine|min|minimizeApp|mirrorJoint|modelCurrentTimeCtx|modelEditor|modelPanel|mouse|movIn|movOut|move|moveIKtoFK|moveKeyCtx|moveVertexAlongDirection|multiProfileBirailSurface|mute|nParticle|nameCommand|nameField|namespace|namespaceInfo|newPanelItems|newton|nodeCast|nodeIconButton|nodeOutliner|nodePreset|nodeType|noise|nonLinear|normalConstraint|normalize|nurbsBoolean|nurbsCopyUVSet|nurbsCube|nurbsEditUV|nurbsPlane|nurbsSelect|nurbsSquare|nurbsToPoly|nurbsToPolygonsPref|nurbsToSubdiv|nurbsToSubdivPref|nurbsUVSet|nurbsViewDirectionVector|objExists|objectCenter|objectLayer|objectType|objectTypeUI|obsoleteProc|oceanNurbsPreviewPlane|offsetCurve|offsetCurveOnSurface|offsetSurface|openGLExtension|openMayaPref|optionMenu|optionMenuGrp|optionVar|orbit|orbitCtx|orientConstraint|outlinerEditor|outlinerPanel|overrideModifier|paintEffectsDisplay|pairBlend|palettePort|paneLayout|panel|panelConfiguration|panelHistory|paramDimContext|paramDimension|paramLocator|parent|parentConstraint|particle|particleExists|particleInstancer|particleRenderInfo|partition|pasteKey|pathAnimation|pause|pclose|percent|performanceOptions|pfxstrokes|pickWalk|picture|pixelMove|planarSrf|plane|play|playbackOptions|playblast|plugAttr|plugNode|pluginInfo|pluginResourceUtil|pointConstraint|pointCurveConstraint|pointLight|pointMatrixMult|pointOnCurve|pointOnSurface|pointPosition|poleVectorConstraint|polyAppend|polyAppendFacetCtx|polyAppendVertex|polyAutoProjection|polyAverageNormal|polyAverageVertex|polyBevel|polyBlendColor|polyBlindData|polyBoolOp|polyBridgeEdge|polyCacheMonitor|polyCheck|polyChipOff|polyClipboard|polyCloseBorder|polyCollapseEdge|polyCollapseFacet|polyColorBlindData|polyColorDel|polyColorPerVertex|polyColorSet|polyCompare|polyCone|polyCopyUV|polyCrease|polyCreaseCtx|polyCreateFacet|polyCreateFacetCtx|polyCube|polyCut|polyCutCtx|polyCylinder|polyCylindricalProjection|polyDelEdge|polyDelFacet|polyDelVertex|polyDuplicateAndConnect|polyDuplicateEdge|polyEditUV|polyEditUVShell|polyEvaluate|polyExtrudeEdge|polyExtrudeFacet|polyExtrudeVertex|polyFlipEdge|polyFlipUV|polyForceUV|polyGeoSampler|polyHelix|polyInfo|polyInstallAction|polyLayoutUV|polyListComponentConversion|polyMapCut|polyMapDel|polyMapSew|polyMapSewMove|polyMergeEdge|polyMergeEdgeCtx|polyMergeFacet|polyMergeFacetCtx|polyMergeUV|polyMergeVertex|polyMirrorFace|polyMoveEdge|polyMoveFacet|polyMoveFacetUV|polyMoveUV|polyMoveVertex|polyNormal|polyNormalPerVertex|polyNormalizeUV|polyOptUvs|polyOptions|polyOutput|polyPipe|polyPlanarProjection|polyPlane|polyPlatonicSolid|polyPoke|polyPrimitive|polyPrism|polyProjection|polyPyramid|polyQuad|polyQueryBlindData|polyReduce|polySelect|polySelectConstraint|polySelectConstraintMonitor|polySelectCtx|polySelectEditCtx|polySeparate|polySetToFaceNormal|polySewEdge|polyShortestPathCtx|polySmooth|polySoftEdge|polySphere|polySphericalProjection|polySplit|polySplitCtx|polySplitEdge|polySplitRing|polySplitVertex|polyStraightenUVBorder|polySubdivideEdge|polySubdivideFacet|polyToSubdiv|polyTorus|polyTransfer|polyTriangulate|polyUVSet|polyUnite|polyWedgeFace|popen|popupMenu|pose|pow|preloadRefEd|print|progressBar|progressWindow|projFileViewer|projectCurve|projectTangent|projectionContext|projectionManip|promptDialog|propModCtx|propMove|psdChannelOutliner|psdEditTextureFile|psdExport|psdTextureFile|putenv|pwd|python|querySubdiv|quit|rad_to_deg|radial|radioButton|radioButtonGrp|radioCollection|radioMenuItemCollection|rampColorPort|rand|randomizeFollicles|randstate|rangeControl|readTake|rebuildCurve|rebuildSurface|recordAttr|recordDevice|redo|reference|referenceEdit|referenceQuery|refineSubdivSelectionList|refresh|refreshAE|registerPluginResource|rehash|reloadImage|removeJoint|removeMultiInstance|removePanelCategory|rename|renameAttr|renameSelectionList|renameUI|render|renderGlobalsNode|renderInfo|renderLayerButton|renderLayerParent|renderLayerPostProcess|renderLayerUnparent|renderManip|renderPartition|renderQualityNode|renderSettings|renderThumbnailUpdate|renderWindowEditor|renderWindowSelectContext|renderer|reorder|reorderDeformers|requires|reroot|resampleFluid|resetAE|resetPfxToPolyCamera|resetTool|resolutionNode|retarget|reverseCurve|reverseSurface|revolve|rgb_to_hsv|rigidBody|rigidSolver|roll|rollCtx|rootOf|rot|rotate|rotationInterpolation|roundConstantRadius|rowColumnLayout|rowLayout|runTimeCommand|runup|sampleImage|saveAllShelves|saveAttrPreset|saveFluid|saveImage|saveInitialState|saveMenu|savePrefObjects|savePrefs|saveShelf|saveToolSettings|scale|scaleBrushBrightness|scaleComponents|scaleConstraint|scaleKey|scaleKeyCtx|sceneEditor|sceneUIReplacement|scmh|scriptCtx|scriptEditorInfo|scriptJob|scriptNode|scriptTable|scriptToShelf|scriptedPanel|scriptedPanelType|scrollField|scrollLayout|sculpt|searchPathArray|seed|selLoadSettings|select|selectContext|selectCurveCV|selectKey|selectKeyCtx|selectKeyframeRegionCtx|selectMode|selectPref|selectPriority|selectType|selectedNodes|selectionConnection|separator|setAttr|setAttrEnumResource|setAttrMapping|setAttrNiceNameResource|setConstraintRestPosition|setDefaultShadingGroup|setDrivenKeyframe|setDynamic|setEditCtx|setEditor|setFluidAttr|setFocus|setInfinity|setInputDeviceMapping|setKeyCtx|setKeyPath|setKeyframe|setKeyframeBlendshapeTargetWts|setMenuMode|setNodeNiceNameResource|setNodeTypeFlag|setParent|setParticleAttr|setPfxToPolyCamera|setPluginResource|setProject|setStampDensity|setStartupMessage|setState|setToolTo|setUITemplate|setXformManip|sets|shadingConnection|shadingGeometryRelCtx|shadingLightRelCtx|shadingNetworkCompare|shadingNode|shapeCompare|shelfButton|shelfLayout|shelfTabLayout|shellField|shortNameOf|showHelp|showHidden|showManipCtx|showSelectionInTitle|showShadingGroupAttrEditor|showWindow|sign|simplify|sin|singleProfileBirailSurface|size|sizeBytes|skinCluster|skinPercent|smoothCurve|smoothTangentSurface|smoothstep|snap2to2|snapKey|snapMode|snapTogetherCtx|snapshot|soft|softMod|softModCtx|sort|sound|soundControl|source|spaceLocator|sphere|sphrand|spotLight|spotLightPreviewPort|spreadSheetEditor|spring|sqrt|squareSurface|srtContext|stackTrace|startString|startsWith|stitchAndExplodeShell|stitchSurface|stitchSurfacePoints|strcmp|stringArrayCatenate|stringArrayContains|stringArrayCount|stringArrayInsertAtIndex|stringArrayIntersector|stringArrayRemove|stringArrayRemoveAtIndex|stringArrayRemoveDuplicates|stringArrayRemoveExact|stringArrayToString|stringToStringArray|strip|stripPrefixFromName|stroke|subdAutoProjection|subdCleanTopology|subdCollapse|subdDuplicateAndConnect|subdEditUV|subdListComponentConversion|subdMapCut|subdMapSewMove|subdMatchTopology|subdMirror|subdToBlind|subdToPoly|subdTransferUVsToCache|subdiv|subdivCrease|subdivDisplaySmoothness|substitute|substituteAllString|substituteGeometry|substring|surface|surfaceSampler|surfaceShaderList|swatchDisplayPort|switchTable|symbolButton|symbolCheckBox|sysFile|system|tabLayout|tan|tangentConstraint|texLatticeDeformContext|texManipContext|texMoveContext|texMoveUVShellContext|texRotateContext|texScaleContext|texSelectContext|texSelectShortestPathCtx|texSmudgeUVContext|texWinToolCtx|text|textCurves|textField|textFieldButtonGrp|textFieldGrp|textManip|textScrollList|textToShelf|textureDisplacePlane|textureHairColor|texturePlacementContext|textureWindow|threadCount|threePointArcCtx|timeControl|timePort|timerX|toNativePath|toggle|toggleAxis|toggleWindowVisibility|tokenize|tokenizeList|tolerance|tolower|toolButton|toolCollection|toolDropped|toolHasOptions|toolPropertyWindow|torus|toupper|trace|track|trackCtx|transferAttributes|transformCompare|transformLimits|translator|trim|trunc|truncateFluidCache|truncateHairCache|tumble|tumbleCtx|turbulence|twoPointArcCtx|uiRes|uiTemplate|unassignInputDevice|undo|undoInfo|ungroup|uniform|unit|unloadPlugin|untangleUV|untitledFileName|untrim|upAxis|updateAE|userCtx|uvLink|uvSnapshot|validateShelfName|vectorize|view2dToolCtx|viewCamera|viewClipPlane|viewFit|viewHeadOn|viewLookAt|viewManip|viewPlace|viewSet|visor|volumeAxis|vortex|waitCursor|warning|webBrowser|webBrowserPrefs|whatIs|window|windowPref|wire|wireContext|workspace|wrinkle|wrinkleContext|writeTake|xbmLangPathList|xform)\b/,operator:[/\+[+=]?|-[-=]?|&&|\|\||[<>]=|[*\/!=]=?|[%^]/,{pattern:/(^|[^<])<(?!<)/,lookbehind:!0},{pattern:/(^|[^>])>(?!>)/,lookbehind:!0}],punctuation:/<<|>>|[.,:;?\[\](){}]/},t.languages.mel.code.inside.rest=t.languages.mel}return nh}var rh,k4;function cte(){if(k4)return rh;k4=1,rh=e,e.displayName="mermaid",e.aliases=[];function e(t){t.languages.mermaid={comment:{pattern:/%%.*/,greedy:!0},style:{pattern:/^([ \t]*(?:classDef|linkStyle|style)[ \t]+[\w$-]+[ \t]+)\w.*[^\s;]/m,lookbehind:!0,inside:{property:/\b\w[\w-]*(?=[ \t]*:)/,operator:/:/,punctuation:/,/}},"inter-arrow-label":{pattern:/([^<>ox.=-])(?:-[-.]|==)(?![<>ox.=-])[ \t]*(?:"[^"\r\n]*"|[^\s".=-](?:[^\r\n.=-]*[^\s.=-])?)[ \t]*(?:\.+->?|--+[->]|==+[=>])(?![<>ox.=-])/,lookbehind:!0,greedy:!0,inside:{arrow:{pattern:/(?:\.+->?|--+[->]|==+[=>])$/,alias:"operator"},label:{pattern:/^([\s\S]{2}[ \t]*)\S(?:[\s\S]*\S)?/,lookbehind:!0,alias:"property"},"arrow-head":{pattern:/^\S+/,alias:["arrow","operator"]}}},arrow:[{pattern:/(^|[^{}|o.-])[|}][|o](?:--|\.\.)[|o][|{](?![{}|o.-])/,lookbehind:!0,alias:"operator"},{pattern:/(^|[^<>ox.=-])(?:[ox]?|(?:==+|--+|-\.*-)[>ox]|===+|---+|-\.+-)(?![<>ox.=-])/,lookbehind:!0,alias:"operator"},{pattern:/(^|[^<>()x-])(?:--?(?:>>|[x>)])(?![<>()x])|(?:<<|[x<(])--?(?!-))/,lookbehind:!0,alias:"operator"},{pattern:/(^|[^<>|*o.-])(?:[*o]--|--[*o]|<\|?(?:--|\.\.)|(?:--|\.\.)\|?>|--|\.\.)(?![<>|*o.-])/,lookbehind:!0,alias:"operator"}],label:{pattern:/(^|[^|<])\|(?:[^\r\n"|]|"[^"\r\n]*")+\|/,lookbehind:!0,greedy:!0,alias:"property"},text:{pattern:/(?:[(\[{]+|\b>)(?:[^\r\n"()\[\]{}]|"[^"\r\n]*")+(?:[)\]}]+|>)/,alias:"string"},string:{pattern:/"[^"\r\n]*"/,greedy:!0},annotation:{pattern:/<<(?:abstract|choice|enumeration|fork|interface|join|service)>>|\[\[(?:choice|fork|join)\]\]/i,alias:"important"},keyword:[{pattern:/(^[ \t]*)(?:action|callback|class|classDef|classDiagram|click|direction|erDiagram|flowchart|gantt|gitGraph|graph|journey|link|linkStyle|pie|requirementDiagram|sequenceDiagram|stateDiagram|stateDiagram-v2|style|subgraph)(?![\w$-])/m,lookbehind:!0,greedy:!0},{pattern:/(^[ \t]*)(?:activate|alt|and|as|autonumber|deactivate|else|end(?:[ \t]+note)?|loop|opt|par|participant|rect|state|note[ \t]+(?:over|(?:left|right)[ \t]+of))(?![\w$-])/im,lookbehind:!0,greedy:!0}],entity:/#[a-z0-9]+;/,operator:{pattern:/(\w[ \t]*)&(?=[ \t]*\w)|:::|:/,lookbehind:!0},punctuation:/[(){};]/}}return rh}var ah,w4;function ute(){if(w4)return ah;w4=1,ah=e,e.displayName="mizar",e.aliases=[];function e(t){t.languages.mizar={comment:/::.+/,keyword:/@proof\b|\b(?:according|aggregate|all|and|antonym|are|as|associativity|assume|asymmetry|attr|be|begin|being|by|canceled|case|cases|clusters?|coherence|commutativity|compatibility|connectedness|consider|consistency|constructors|contradiction|correctness|def|deffunc|define|definitions?|defpred|do|does|end|environ|equals|ex|exactly|existence|for|from|func|given|hence|hereby|holds|idempotence|identity|iff?|implies|involutiveness|irreflexivity|is|it|let|means|mode|non|not|notations?|now|of|or|otherwise|over|per|pred|prefix|projectivity|proof|provided|qua|reconsider|redefine|reduce|reducibility|reflexivity|registrations?|requirements|reserve|sch|schemes?|section|selector|set|sethood|st|struct|such|suppose|symmetry|synonym|take|that|the|then|theorems?|thesis|thus|to|transitivity|uniqueness|vocabular(?:ies|y)|when|where|with|wrt)\b/,parameter:{pattern:/\$(?:10|\d)/,alias:"variable"},variable:/\b\w+(?=:)/,number:/(?:\b|-)\d+\b/,operator:/\.\.\.|->|&|\.?=/,punctuation:/\(#|#\)|[,:;\[\](){}]/}}return ah}var ih,S4;function dte(){if(S4)return ih;S4=1,ih=e,e.displayName="mongodb",e.aliases=[];function e(t){(function(n){var r=["$eq","$gt","$gte","$in","$lt","$lte","$ne","$nin","$and","$not","$nor","$or","$exists","$type","$expr","$jsonSchema","$mod","$regex","$text","$where","$geoIntersects","$geoWithin","$near","$nearSphere","$all","$elemMatch","$size","$bitsAllClear","$bitsAllSet","$bitsAnyClear","$bitsAnySet","$comment","$elemMatch","$meta","$slice","$currentDate","$inc","$min","$max","$mul","$rename","$set","$setOnInsert","$unset","$addToSet","$pop","$pull","$push","$pullAll","$each","$position","$slice","$sort","$bit","$addFields","$bucket","$bucketAuto","$collStats","$count","$currentOp","$facet","$geoNear","$graphLookup","$group","$indexStats","$limit","$listLocalSessions","$listSessions","$lookup","$match","$merge","$out","$planCacheStats","$project","$redact","$replaceRoot","$replaceWith","$sample","$set","$skip","$sort","$sortByCount","$unionWith","$unset","$unwind","$setWindowFields","$abs","$accumulator","$acos","$acosh","$add","$addToSet","$allElementsTrue","$and","$anyElementTrue","$arrayElemAt","$arrayToObject","$asin","$asinh","$atan","$atan2","$atanh","$avg","$binarySize","$bsonSize","$ceil","$cmp","$concat","$concatArrays","$cond","$convert","$cos","$dateFromParts","$dateToParts","$dateFromString","$dateToString","$dayOfMonth","$dayOfWeek","$dayOfYear","$degreesToRadians","$divide","$eq","$exp","$filter","$first","$floor","$function","$gt","$gte","$hour","$ifNull","$in","$indexOfArray","$indexOfBytes","$indexOfCP","$isArray","$isNumber","$isoDayOfWeek","$isoWeek","$isoWeekYear","$last","$last","$let","$literal","$ln","$log","$log10","$lt","$lte","$ltrim","$map","$max","$mergeObjects","$meta","$min","$millisecond","$minute","$mod","$month","$multiply","$ne","$not","$objectToArray","$or","$pow","$push","$radiansToDegrees","$range","$reduce","$regexFind","$regexFindAll","$regexMatch","$replaceOne","$replaceAll","$reverseArray","$round","$rtrim","$second","$setDifference","$setEquals","$setIntersection","$setIsSubset","$setUnion","$size","$sin","$slice","$split","$sqrt","$stdDevPop","$stdDevSamp","$strcasecmp","$strLenBytes","$strLenCP","$substr","$substrBytes","$substrCP","$subtract","$sum","$switch","$tan","$toBool","$toDate","$toDecimal","$toDouble","$toInt","$toLong","$toObjectId","$toString","$toLower","$toUpper","$trim","$trunc","$type","$week","$year","$zip","$count","$dateAdd","$dateDiff","$dateSubtract","$dateTrunc","$getField","$rand","$sampleRate","$setField","$unsetField","$comment","$explain","$hint","$max","$maxTimeMS","$min","$orderby","$query","$returnKey","$showDiskLoc","$natural"],a=["ObjectId","Code","BinData","DBRef","Timestamp","NumberLong","NumberDecimal","MaxKey","MinKey","RegExp","ISODate","UUID"];r=r.map(function(s){return s.replace("$","\\$")});var i="(?:"+r.join("|")+")\\b";n.languages.mongodb=n.languages.extend("javascript",{}),n.languages.insertBefore("mongodb","string",{property:{pattern:/(?:(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)(?=\s*:)/,greedy:!0,inside:{keyword:RegExp(`^(['"])?`+i+"(?:\\1)?$")}}}),n.languages.mongodb.string.inside={url:{pattern:/https?:\/\/[-\w@:%.+~#=]{1,256}\.[a-z0-9()]{1,6}\b[-\w()@:%+.~#?&/=]*/i,greedy:!0},entity:{pattern:/\b(?:(?:[01]?\d\d?|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d\d?|2[0-4]\d|25[0-5])\b/,greedy:!0}},n.languages.insertBefore("mongodb","constant",{builtin:{pattern:RegExp("\\b(?:"+a.join("|")+")\\b"),alias:"keyword"}})})(t)}return ih}var sh,E4;function pte(){if(E4)return sh;E4=1,sh=e,e.displayName="monkey",e.aliases=[];function e(t){t.languages.monkey={comment:{pattern:/^#Rem\s[\s\S]*?^#End|'.+/im,greedy:!0},string:{pattern:/"[^"\r\n]*"/,greedy:!0},preprocessor:{pattern:/(^[ \t]*)#.+/m,lookbehind:!0,greedy:!0,alias:"property"},function:/\b\w+(?=\()/,"type-char":{pattern:/\b[?%#$]/,alias:"class-name"},number:{pattern:/((?:\.\.)?)(?:(?:\b|\B-\.?|\B\.)\d+(?:(?!\.\.)\.\d*)?|\$[\da-f]+)/i,lookbehind:!0},keyword:/\b(?:Abstract|Array|Bool|Case|Catch|Class|Const|Continue|Default|Eachin|Else|ElseIf|End|EndIf|Exit|Extends|Extern|False|Field|Final|Float|For|Forever|Function|Global|If|Implements|Import|Inline|Int|Interface|Local|Method|Module|New|Next|Null|Object|Private|Property|Public|Repeat|Return|Select|Self|Step|Strict|String|Super|Then|Throw|To|True|Try|Until|Void|Wend|While)\b/i,operator:/\.\.|<[=>]?|>=?|:?=|(?:[+\-*\/&~|]|\b(?:Mod|Shl|Shr)\b)=?|\b(?:And|Not|Or)\b/i,punctuation:/[.,:;()\[\]]/}}return sh}var oh,C4;function mte(){if(C4)return oh;C4=1,oh=e,e.displayName="moonscript",e.aliases=["moon"];function e(t){t.languages.moonscript={comment:/--.*/,string:[{pattern:/'[^']*'|\[(=*)\[[\s\S]*?\]\1\]/,greedy:!0},{pattern:/"[^"]*"/,greedy:!0,inside:{interpolation:{pattern:/#\{[^{}]*\}/,inside:{moonscript:{pattern:/(^#\{)[\s\S]+(?=\})/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/#\{|\}/,alias:"punctuation"}}}}}],"class-name":[{pattern:/(\b(?:class|extends)[ \t]+)\w+/,lookbehind:!0},/\b[A-Z]\w*/],keyword:/\b(?:class|continue|do|else|elseif|export|extends|for|from|if|import|in|local|nil|return|self|super|switch|then|unless|using|when|while|with)\b/,variable:/@@?\w*/,property:{pattern:/\b(?!\d)\w+(?=:)|(:)(?!\d)\w+/,lookbehind:!0},function:{pattern:/\b(?:_G|_VERSION|assert|collectgarbage|coroutine\.(?:create|resume|running|status|wrap|yield)|debug\.(?:debug|getfenv|gethook|getinfo|getlocal|getmetatable|getregistry|getupvalue|setfenv|sethook|setlocal|setmetatable|setupvalue|traceback)|dofile|error|getfenv|getmetatable|io\.(?:close|flush|input|lines|open|output|popen|read|stderr|stdin|stdout|tmpfile|type|write)|ipairs|load|loadfile|loadstring|math\.(?:abs|acos|asin|atan|atan2|ceil|cos|cosh|deg|exp|floor|fmod|frexp|ldexp|log|log10|max|min|modf|pi|pow|rad|random|randomseed|sin|sinh|sqrt|tan|tanh)|module|next|os\.(?:clock|date|difftime|execute|exit|getenv|remove|rename|setlocale|time|tmpname)|package\.(?:cpath|loaded|loadlib|path|preload|seeall)|pairs|pcall|print|rawequal|rawget|rawset|require|select|setfenv|setmetatable|string\.(?:byte|char|dump|find|format|gmatch|gsub|len|lower|match|rep|reverse|sub|upper)|table\.(?:concat|insert|maxn|remove|sort)|tonumber|tostring|type|unpack|xpcall)\b/,inside:{punctuation:/\./}},boolean:/\b(?:false|true)\b/,number:/(?:\B\.\d+|\b\d+\.\d+|\b\d+(?=[eE]))(?:[eE][-+]?\d+)?\b|\b(?:0x[a-fA-F\d]+|\d+)(?:U?LL)?\b/,operator:/\.{3}|[-=]>|~=|(?:[-+*/%<>!=]|\.\.)=?|[:#^]|\b(?:and|or)\b=?|\b(?:not)\b/,punctuation:/[.,()[\]{}\\]/},t.languages.moonscript.string[1].inside.interpolation.inside.moonscript.inside=t.languages.moonscript,t.languages.moon=t.languages.moonscript}return oh}var lh,N4;function fte(){if(N4)return lh;N4=1,lh=e,e.displayName="n1ql",e.aliases=[];function e(t){t.languages.n1ql={comment:{pattern:/\/\*[\s\S]*?(?:$|\*\/)|--.*/,greedy:!0},string:{pattern:/(["'])(?:\\[\s\S]|(?!\1)[^\\]|\1\1)*\1/,greedy:!0},identifier:{pattern:/`(?:\\[\s\S]|[^\\`]|``)*`/,greedy:!0},parameter:/\$[\w.]+/,keyword:/\b(?:ADVISE|ALL|ALTER|ANALYZE|AS|ASC|AT|BEGIN|BINARY|BOOLEAN|BREAK|BUCKET|BUILD|BY|CALL|CAST|CLUSTER|COLLATE|COLLECTION|COMMIT|COMMITTED|CONNECT|CONTINUE|CORRELATE|CORRELATED|COVER|CREATE|CURRENT|DATABASE|DATASET|DATASTORE|DECLARE|DECREMENT|DELETE|DERIVED|DESC|DESCRIBE|DISTINCT|DO|DROP|EACH|ELEMENT|EXCEPT|EXCLUDE|EXECUTE|EXPLAIN|FETCH|FILTER|FLATTEN|FLUSH|FOLLOWING|FOR|FORCE|FROM|FTS|FUNCTION|GOLANG|GRANT|GROUP|GROUPS|GSI|HASH|HAVING|IF|IGNORE|ILIKE|INCLUDE|INCREMENT|INDEX|INFER|INLINE|INNER|INSERT|INTERSECT|INTO|IS|ISOLATION|JAVASCRIPT|JOIN|KEY|KEYS|KEYSPACE|KNOWN|LANGUAGE|LAST|LEFT|LET|LETTING|LEVEL|LIMIT|LSM|MAP|MAPPING|MATCHED|MATERIALIZED|MERGE|MINUS|MISSING|NAMESPACE|NEST|NL|NO|NTH_VALUE|NULL|NULLS|NUMBER|OBJECT|OFFSET|ON|OPTION|OPTIONS|ORDER|OTHERS|OUTER|OVER|PARSE|PARTITION|PASSWORD|PATH|POOL|PRECEDING|PREPARE|PRIMARY|PRIVATE|PRIVILEGE|PROBE|PROCEDURE|PUBLIC|RANGE|RAW|REALM|REDUCE|RENAME|RESPECT|RETURN|RETURNING|REVOKE|RIGHT|ROLE|ROLLBACK|ROW|ROWS|SATISFIES|SAVEPOINT|SCHEMA|SCOPE|SELECT|SELF|SEMI|SET|SHOW|SOME|START|STATISTICS|STRING|SYSTEM|TIES|TO|TRAN|TRANSACTION|TRIGGER|TRUNCATE|UNBOUNDED|UNDER|UNION|UNIQUE|UNKNOWN|UNNEST|UNSET|UPDATE|UPSERT|USE|USER|USING|VALIDATE|VALUE|VALUES|VIA|VIEW|WHERE|WHILE|WINDOW|WITH|WORK|XOR)\b/i,function:/\b[a-z_]\w*(?=\s*\()/i,boolean:/\b(?:FALSE|TRUE)\b/i,number:/(?:\b\d+\.|\B\.)\d+e[+\-]?\d+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/%]|!=|==?|\|\||<[>=]?|>=?|\b(?:AND|ANY|ARRAY|BETWEEN|CASE|ELSE|END|EVERY|EXISTS|FIRST|IN|LIKE|NOT|OR|THEN|VALUED|WHEN|WITHIN)\b/i,punctuation:/[;[\](),.{}:]/}}return lh}var ch,T4;function hte(){if(T4)return ch;T4=1,ch=e,e.displayName="n4js",e.aliases=["n4jsd"];function e(t){t.languages.n4js=t.languages.extend("javascript",{keyword:/\b(?:Array|any|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),t.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),t.languages.n4jsd=t.languages.n4js}return ch}var uh,A4;function gte(){if(A4)return uh;A4=1,uh=e,e.displayName="nand2tetrisHdl",e.aliases=[];function e(t){t.languages["nand2tetris-hdl"]={comment:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,keyword:/\b(?:BUILTIN|CHIP|CLOCKED|IN|OUT|PARTS)\b/,boolean:/\b(?:false|true)\b/,function:/\b[A-Za-z][A-Za-z0-9]*(?=\()/,number:/\b\d+\b/,operator:/=|\.\./,punctuation:/[{}[\];(),:]/}}return uh}var dh,I4;function bte(){if(I4)return dh;I4=1,dh=e,e.displayName="naniscript",e.aliases=[];function e(t){(function(n){var r=/\{[^\r\n\[\]{}]*\}/,a={"quoted-string":{pattern:/"(?:[^"\\]|\\.)*"/,alias:"operator"},"command-param-id":{pattern:/(\s)\w+:/,lookbehind:!0,alias:"property"},"command-param-value":[{pattern:r,alias:"selector"},{pattern:/([\t ])\S+/,lookbehind:!0,greedy:!0,alias:"operator"},{pattern:/\S(?:.*\S)?/,alias:"operator"}]};n.languages.naniscript={comment:{pattern:/^([\t ]*);.*/m,lookbehind:!0},define:{pattern:/^>.+/m,alias:"tag",inside:{value:{pattern:/(^>\w+[\t ]+)(?!\s)[^{}\r\n]+/,lookbehind:!0,alias:"operator"},key:{pattern:/(^>)\w+/,lookbehind:!0}}},label:{pattern:/^([\t ]*)#[\t ]*\w+[\t ]*$/m,lookbehind:!0,alias:"regex"},command:{pattern:/^([\t ]*)@\w+(?=[\t ]|$).*/m,lookbehind:!0,alias:"function",inside:{"command-name":/^@\w+/,expression:{pattern:r,greedy:!0,alias:"selector"},"command-params":{pattern:/\s*\S[\s\S]*/,inside:a}}},"generic-text":{pattern:/(^[ \t]*)[^#@>;\s].*/m,lookbehind:!0,alias:"punctuation",inside:{"escaped-char":/\\[{}\[\]"]/,expression:{pattern:r,greedy:!0,alias:"selector"},"inline-command":{pattern:/\[[\t ]*\w[^\r\n\[\]]*\]/,greedy:!0,alias:"function",inside:{"command-params":{pattern:/(^\[[\t ]*\w+\b)[\s\S]+(?=\]$)/,lookbehind:!0,inside:a},"command-param-name":{pattern:/^(\[[\t ]*)\w+/,lookbehind:!0,alias:"name"},"start-stop-char":/[\[\]]/}}}}},n.languages.nani=n.languages.naniscript,n.hooks.add("after-tokenize",function(l){var c=l.tokens;c.forEach(function(u){if(typeof u!="string"&&u.type==="generic-text"){var d=s(u);i(d)||(u.type="bad-line",u.content=d)}})});function i(l){for(var c="[]{}",u=[],d=0;d=&|$!]/}}return ph}var mh,_4;function yte(){if(_4)return mh;_4=1,mh=e,e.displayName="neon",e.aliases=[];function e(t){t.languages.neon={comment:{pattern:/#.*/,greedy:!0},datetime:{pattern:/(^|[[{(=:,\s])\d\d\d\d-\d\d?-\d\d?(?:(?:[Tt]| +)\d\d?:\d\d:\d\d(?:\.\d*)? *(?:Z|[-+]\d\d?(?::?\d\d)?)?)?(?=$|[\]}),\s])/,lookbehind:!0,alias:"number"},key:{pattern:/(^|[[{(,\s])[^,:=[\]{}()'"\s]+(?=\s*:(?:$|[\]}),\s])|\s*=)/,lookbehind:!0,alias:"atrule"},number:{pattern:/(^|[[{(=:,\s])[+-]?(?:0x[\da-fA-F]+|0o[0-7]+|0b[01]+|(?:\d+(?:\.\d*)?|\.?\d+)(?:[eE][+-]?\d+)?)(?=$|[\]}),:=\s])/,lookbehind:!0},boolean:{pattern:/(^|[[{(=:,\s])(?:false|no|true|yes)(?=$|[\]}),:=\s])/i,lookbehind:!0},null:{pattern:/(^|[[{(=:,\s])(?:null)(?=$|[\]}),:=\s])/i,lookbehind:!0,alias:"keyword"},string:{pattern:/(^|[[{(=:,\s])(?:('''|""")\r?\n(?:(?:[^\r\n]|\r?\n(?![\t ]*\2))*\r?\n)?[\t ]*\2|'[^'\r\n]*'|"(?:\\.|[^\\"\r\n])*")/,lookbehind:!0,greedy:!0},literal:{pattern:/(^|[[{(=:,\s])(?:[^#"',:=[\]{}()\s`-]|[:-][^"',=[\]{}()\s])(?:[^,:=\]})(\s]|:(?![\s,\]})]|$)|[ \t]+[^#,:=\]})(\s])*/,lookbehind:!0,alias:"string"},punctuation:/[,:=[\]{}()-]/}}return mh}var fh,j4;function vte(){if(j4)return fh;j4=1,fh=e,e.displayName="nevod",e.aliases=[];function e(t){t.languages.nevod={comment:/\/\/.*|(?:\/\*[\s\S]*?(?:\*\/|$))/,string:{pattern:/(?:"(?:""|[^"])*"(?!")|'(?:''|[^'])*'(?!'))!?\*?/,greedy:!0,inside:{"string-attrs":/!$|!\*$|\*$/}},namespace:{pattern:/(@namespace\s+)[a-zA-Z0-9\-.]+(?=\s*\{)/,lookbehind:!0},pattern:{pattern:/(@pattern\s+)?#?[a-zA-Z0-9\-.]+(?:\s*\(\s*(?:~\s*)?[a-zA-Z0-9\-.]+\s*(?:,\s*(?:~\s*)?[a-zA-Z0-9\-.]*)*\))?(?=\s*=)/,lookbehind:!0,inside:{"pattern-name":{pattern:/^#?[a-zA-Z0-9\-.]+/,alias:"class-name"},fields:{pattern:/\(.*\)/,inside:{"field-name":{pattern:/[a-zA-Z0-9\-.]+/,alias:"variable"},punctuation:/[,()]/,operator:{pattern:/~/,alias:"field-hidden-mark"}}}}},search:{pattern:/(@search\s+|#)[a-zA-Z0-9\-.]+(?:\.\*)?(?=\s*;)/,alias:"function",lookbehind:!0},keyword:/@(?:having|inside|namespace|outside|pattern|require|search|where)\b/,"standard-pattern":{pattern:/\b(?:Alpha|AlphaNum|Any|Blank|End|LineBreak|Num|NumAlpha|Punct|Space|Start|Symbol|Word|WordBreak)\b(?:\([a-zA-Z0-9\-.,\s+]*\))?/,inside:{"standard-pattern-name":{pattern:/^[a-zA-Z0-9\-.]+/,alias:"builtin"},quantifier:{pattern:/\b\d+(?:\s*\+|\s*-\s*\d+)?(?!\w)/,alias:"number"},"standard-pattern-attr":{pattern:/[a-zA-Z0-9\-.]+/,alias:"builtin"},punctuation:/[,()]/}},quantifier:{pattern:/\b\d+(?:\s*\+|\s*-\s*\d+)?(?!\w)/,alias:"number"},operator:[{pattern:/=/,alias:"pattern-def"},{pattern:/&/,alias:"conjunction"},{pattern:/~/,alias:"exception"},{pattern:/\?/,alias:"optionality"},{pattern:/[[\]]/,alias:"repetition"},{pattern:/[{}]/,alias:"variation"},{pattern:/[+_]/,alias:"sequence"},{pattern:/\.{2,3}/,alias:"span"}],"field-capture":[{pattern:/([a-zA-Z0-9\-.]+\s*\()\s*[a-zA-Z0-9\-.]+\s*:\s*[a-zA-Z0-9\-.]+(?:\s*,\s*[a-zA-Z0-9\-.]+\s*:\s*[a-zA-Z0-9\-.]+)*(?=\s*\))/,lookbehind:!0,inside:{"field-name":{pattern:/[a-zA-Z0-9\-.]+/,alias:"variable"},colon:/:/}},{pattern:/[a-zA-Z0-9\-.]+\s*:/,inside:{"field-name":{pattern:/[a-zA-Z0-9\-.]+/,alias:"variable"},colon:/:/}}],punctuation:/[:;,()]/,name:/[a-zA-Z0-9\-.]+/}}return fh}var hh,O4;function kte(){if(O4)return hh;O4=1,hh=e,e.displayName="nginx",e.aliases=[];function e(t){(function(n){var r=/\$(?:\w[a-z\d]*(?:_[^\x00-\x1F\s"'\\()$]*)?|\{[^}\s"'\\]+\})/i;n.languages.nginx={comment:{pattern:/(^|[\s{};])#.*/,lookbehind:!0,greedy:!0},directive:{pattern:/(^|\s)\w(?:[^;{}"'\\\s]|\\.|"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'|\s+(?:#.*(?!.)|(?![#\s])))*?(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:{string:{pattern:/((?:^|[^\\])(?:\\\\)*)(?:"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*')/,lookbehind:!0,greedy:!0,inside:{escape:{pattern:/\\["'\\nrt]/,alias:"entity"},variable:r}},comment:{pattern:/(\s)#.*/,lookbehind:!0,greedy:!0},keyword:{pattern:/^\S+/,greedy:!0},boolean:{pattern:/(\s)(?:off|on)(?!\S)/,lookbehind:!0},number:{pattern:/(\s)\d+[a-z]*(?!\S)/i,lookbehind:!0},variable:r}},punctuation:/[{};]/}})(t)}return hh}var gh,D4;function wte(){if(D4)return gh;D4=1,gh=e,e.displayName="nim",e.aliases=[];function e(t){t.languages.nim={comment:{pattern:/#.*/,greedy:!0},string:{pattern:/(?:\b(?!\d)(?:\w|\\x[89a-fA-F][0-9a-fA-F])+)?(?:"""[\s\S]*?"""(?!")|"(?:\\[\s\S]|""|[^"\\])*")/,greedy:!0},char:{pattern:/'(?:\\(?:\d+|x[\da-fA-F]{0,2}|.)|[^'])'/,greedy:!0},function:{pattern:/(?:(?!\d)(?:\w|\\x[89a-fA-F][0-9a-fA-F])+|`[^`\r\n]+`)\*?(?:\[[^\]]+\])?(?=\s*\()/,greedy:!0,inside:{operator:/\*$/}},identifier:{pattern:/`[^`\r\n]+`/,greedy:!0,inside:{punctuation:/`/}},number:/\b(?:0[xXoObB][\da-fA-F_]+|\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:[eE][+-]?\d[\d_]*)?)(?:'?[iuf]\d*)?/,keyword:/\b(?:addr|as|asm|atomic|bind|block|break|case|cast|concept|const|continue|converter|defer|discard|distinct|do|elif|else|end|enum|except|export|finally|for|from|func|generic|if|import|include|interface|iterator|let|macro|method|mixin|nil|object|out|proc|ptr|raise|ref|return|static|template|try|tuple|type|using|var|when|while|with|without|yield)\b/,operator:{pattern:/(^|[({\[](?=\.\.)|(?![({\[]\.).)(?:(?:[=+\-*\/<>@$~&%|!?^:\\]|\.\.|\.(?![)}\]]))+|\b(?:and|div|in|is|isnot|mod|not|notin|of|or|shl|shr|xor)\b)/m,lookbehind:!0},punctuation:/[({\[]\.|\.[)}\]]|[`(){}\[\],:]/}}return gh}var bh,M4;function Ste(){if(M4)return bh;M4=1,bh=e,e.displayName="nix",e.aliases=[];function e(t){t.languages.nix={comment:{pattern:/\/\*[\s\S]*?\*\/|#.*/,greedy:!0},string:{pattern:/"(?:[^"\\]|\\[\s\S])*"|''(?:(?!'')[\s\S]|''(?:'|\\|\$\{))*''/,greedy:!0,inside:{interpolation:{pattern:/(^|(?:^|(?!'').)[^\\])\$\{(?:[^{}]|\{[^}]*\})*\}/,lookbehind:!0,inside:null}}},url:[/\b(?:[a-z]{3,7}:\/\/)[\w\-+%~\/.:#=?&]+/,{pattern:/([^\/])(?:[\w\-+%~.:#=?&]*(?!\/\/)[\w\-+%~\/.:#=?&])?(?!\/\/)\/[\w\-+%~\/.:#=?&]*/,lookbehind:!0}],antiquotation:{pattern:/\$(?=\{)/,alias:"important"},number:/\b\d+\b/,keyword:/\b(?:assert|builtins|else|if|in|inherit|let|null|or|then|with)\b/,function:/\b(?:abort|add|all|any|attrNames|attrValues|baseNameOf|compareVersions|concatLists|currentSystem|deepSeq|derivation|dirOf|div|elem(?:At)?|fetch(?:Tarball|url)|filter(?:Source)?|fromJSON|genList|getAttr|getEnv|hasAttr|hashString|head|import|intersectAttrs|is(?:Attrs|Bool|Function|Int|List|Null|String)|length|lessThan|listToAttrs|map|mul|parseDrvName|pathExists|read(?:Dir|File)|removeAttrs|replaceStrings|seq|sort|stringLength|sub(?:string)?|tail|throw|to(?:File|JSON|Path|String|XML)|trace|typeOf)\b|\bfoldl'\B/,boolean:/\b(?:false|true)\b/,operator:/[=!<>]=?|\+\+?|\|\||&&|\/\/|->?|[?@]/,punctuation:/[{}()[\].,:;]/},t.languages.nix.string.inside.interpolation.inside=t.languages.nix}return bh}var xh,L4;function Ete(){if(L4)return xh;L4=1,xh=e,e.displayName="nsis",e.aliases=[];function e(t){t.languages.nsis={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|[#;].*)/,lookbehind:!0,greedy:!0},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:{pattern:/(^[\t ]*)(?:Abort|Add(?:BrandingImage|Size)|AdvSplash|Allow(?:RootDirInstall|SkipFiles)|AutoCloseWindow|BG(?:Font|Gradient|Image)|Banner|BrandingText|BringToFront|CRCCheck|Call(?:InstDLL)?|Caption|ChangeUI|CheckBitmap|ClearErrors|CompletedText|ComponentText|CopyFiles|Create(?:Directory|Font|ShortCut)|Delete(?:INISec|INIStr|RegKey|RegValue)?|Detail(?:Print|sButtonText)|Dialer|Dir(?:Text|Var|Verify)|EnableWindow|Enum(?:RegKey|RegValue)|Exch|Exec(?:Shell(?:Wait)?|Wait)?|ExpandEnvStrings|File(?:BufSize|Close|ErrorText|Open|Read|ReadByte|ReadUTF16LE|ReadWord|Seek|Write|WriteByte|WriteUTF16LE|WriteWord)?|Find(?:Close|First|Next|Window)|FlushINI|Get(?:CurInstType|CurrentAddress|DLLVersion(?:Local)?|DlgItem|ErrorLevel|FileTime(?:Local)?|FullPathName|Function(?:Address|End)?|InstDirError|LabelAddress|TempFileName)|Goto|HideWindow|Icon|If(?:Abort|Errors|FileExists|RebootFlag|Silent)|InitPluginsDir|InstProgressFlags|Inst(?:Type(?:GetText|SetText)?)|Install(?:ButtonText|Colors|Dir(?:RegKey)?)|Int(?:64|Ptr)?CmpU?|Int(?:64)?Fmt|Int(?:Ptr)?Op|IsWindow|Lang(?:DLL|String)|License(?:BkColor|Data|ForceSelection|LangString|Text)|LoadLanguageFile|LockWindow|Log(?:Set|Text)|Manifest(?:DPIAware|SupportedOS)|Math|MessageBox|MiscButtonText|NSISdl|Name|Nop|OutFile|PE(?:DllCharacteristics|SubsysVer)|Page(?:Callbacks)?|Pop|Push|Quit|RMDir|Read(?:EnvStr|INIStr|RegDWORD|RegStr)|Reboot|RegDLL|Rename|RequestExecutionLevel|ReserveFile|Return|SearchPath|Section(?:End|GetFlags|GetInstTypes|GetSize|GetText|Group|In|SetFlags|SetInstTypes|SetSize|SetText)?|SendMessage|Set(?:AutoClose|BrandingImage|Compress|Compressor(?:DictSize)?|CtlColors|CurInstType|DatablockOptimize|DateSave|Details(?:Print|View)|ErrorLevel|Errors|FileAttributes|Font|OutPath|Overwrite|PluginUnload|RebootFlag|RegView|ShellVarContext|Silent)|Show(?:InstDetails|UninstDetails|Window)|Silent(?:Install|UnInstall)|Sleep|SpaceTexts|Splash|StartMenu|Str(?:CmpS?|Cpy|Len)|SubCaption|System|UnRegDLL|Unicode|UninstPage|Uninstall(?:ButtonText|Caption|Icon|SubCaption|Text)|UserInfo|VI(?:AddVersionKey|FileVersion|ProductVersion)|VPatch|Var|WindowIcon|Write(?:INIStr|Reg(?:Bin|DWORD|ExpandStr|MultiStr|None|Str)|Uninstaller)|XPStyle|ns(?:Dialogs|Exec))\b/m,lookbehind:!0},property:/\b(?:ARCHIVE|FILE_(?:ATTRIBUTE_ARCHIVE|ATTRIBUTE_NORMAL|ATTRIBUTE_OFFLINE|ATTRIBUTE_READONLY|ATTRIBUTE_SYSTEM|ATTRIBUTE_TEMPORARY)|HK(?:(?:CR|CU|LM)(?:32|64)?|DD|PD|U)|HKEY_(?:CLASSES_ROOT|CURRENT_CONFIG|CURRENT_USER|DYN_DATA|LOCAL_MACHINE|PERFORMANCE_DATA|USERS)|ID(?:ABORT|CANCEL|IGNORE|NO|OK|RETRY|YES)|MB_(?:ABORTRETRYIGNORE|DEFBUTTON1|DEFBUTTON2|DEFBUTTON3|DEFBUTTON4|ICONEXCLAMATION|ICONINFORMATION|ICONQUESTION|ICONSTOP|OK|OKCANCEL|RETRYCANCEL|RIGHT|RTLREADING|SETFOREGROUND|TOPMOST|USERICON|YESNO)|NORMAL|OFFLINE|READONLY|SHCTX|SHELL_CONTEXT|SYSTEM|TEMPORARY|admin|all|auto|both|colored|false|force|hide|highest|lastused|leave|listonly|none|normal|notset|off|on|open|print|show|silent|silentlog|smooth|textonly|true|user)\b/,constant:/\$\{[!\w\.:\^-]+\}|\$\([!\w\.:\^-]+\)/,variable:/\$\w[\w\.]*/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--?|\+\+?|<=?|>=?|==?=?|&&?|\|\|?|[?*\/~^%]/,punctuation:/[{}[\];(),.:]/,important:{pattern:/(^[\t ]*)!(?:addincludedir|addplugindir|appendfile|cd|define|delfile|echo|else|endif|error|execute|finalize|getdllversion|gettlbversion|if|ifdef|ifmacrodef|ifmacrondef|ifndef|include|insertmacro|macro|macroend|makensis|packhdr|pragma|searchparse|searchreplace|system|tempfile|undef|verbose|warning)\b/im,lookbehind:!0}}}return xh}var yh,P4;function Cte(){if(P4)return yh;P4=1;var e=fi();yh=t,t.displayName="objectivec",t.aliases=["objc"];function t(n){n.register(e),n.languages.objectivec=n.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete n.languages.objectivec["class-name"],n.languages.objc=n.languages.objectivec}return yh}var vh,F4;function Nte(){if(F4)return vh;F4=1,vh=e,e.displayName="ocaml",e.aliases=[];function e(t){t.languages.ocaml={comment:{pattern:/\(\*[\s\S]*?\*\)/,greedy:!0},char:{pattern:/'(?:[^\\\r\n']|\\(?:.|[ox]?[0-9a-f]{1,3}))'/i,greedy:!0},string:[{pattern:/"(?:\\(?:[\s\S]|\r\n)|[^\\\r\n"])*"/,greedy:!0},{pattern:/\{([a-z_]*)\|[\s\S]*?\|\1\}/,greedy:!0}],number:[/\b(?:0b[01][01_]*|0o[0-7][0-7_]*)\b/i,/\b0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]*)?(?:p[+-]?\d[\d_]*)?(?!\w)/i,/\b\d[\d_]*(?:\.[\d_]*)?(?:e[+-]?\d[\d_]*)?(?!\w)/i],directive:{pattern:/\B#\w+/,alias:"property"},label:{pattern:/\B~\w+/,alias:"property"},"type-variable":{pattern:/\B'\w+/,alias:"function"},variant:{pattern:/`\w+/,alias:"symbol"},keyword:/\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|nonrec|object|of|open|private|rec|sig|struct|then|to|try|type|val|value|virtual|when|where|while|with)\b/,boolean:/\b(?:false|true)\b/,"operator-like-punctuation":{pattern:/\[[<>|]|[>|]\]|\{<|>\}/,alias:"punctuation"},operator:/\.[.~]|:[=>]|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lsl|lsr|lxor|mod|or)\b/,punctuation:/;;|::|[(){}\[\].,:;#]|\b_\b/}}return vh}var kh,B4;function Tte(){if(B4)return kh;B4=1;var e=fi();kh=t,t.displayName="opencl",t.aliases=[];function t(n){n.register(e),(function(r){r.languages.opencl=r.languages.extend("c",{keyword:/\b(?:(?:__)?(?:constant|global|kernel|local|private|read_only|read_write|write_only)|__attribute__|auto|(?:bool|u?(?:char|int|long|short)|half|quad)(?:2|3|4|8|16)?|break|case|complex|const|continue|(?:double|float)(?:16(?:x(?:1|2|4|8|16))?|1x(?:1|2|4|8|16)|2(?:x(?:1|2|4|8|16))?|3|4(?:x(?:1|2|4|8|16))?|8(?:x(?:1|2|4|8|16))?)?|default|do|else|enum|extern|for|goto|if|imaginary|inline|packed|pipe|register|restrict|return|signed|sizeof|static|struct|switch|typedef|uniform|union|unsigned|void|volatile|while)\b/,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[fuhl]{0,4}/i,boolean:/\b(?:false|true)\b/,"constant-opencl-kernel":{pattern:/\b(?:CHAR_(?:BIT|MAX|MIN)|CLK_(?:ADDRESS_(?:CLAMP(?:_TO_EDGE)?|NONE|REPEAT)|FILTER_(?:LINEAR|NEAREST)|(?:GLOBAL|LOCAL)_MEM_FENCE|NORMALIZED_COORDS_(?:FALSE|TRUE))|CL_(?:BGRA|(?:HALF_)?FLOAT|INTENSITY|LUMINANCE|A?R?G?B?[Ax]?|(?:(?:UN)?SIGNED|[US]NORM)_(?:INT(?:8|16|32))|UNORM_(?:INT_101010|SHORT_(?:555|565)))|(?:DBL|FLT|HALF)_(?:DIG|EPSILON|(?:MAX|MIN)(?:(?:_10)?_EXP)?|MANT_DIG)|FLT_RADIX|HUGE_VALF?|(?:INT|LONG|SCHAR|SHRT)_(?:MAX|MIN)|INFINITY|MAXFLOAT|M_(?:[12]_PI|2_SQRTPI|E|LN(?:2|10)|LOG(?:2|10)E?|PI(?:_[24])?|SQRT(?:1_2|2))(?:_F|_H)?|NAN|(?:UCHAR|UINT|ULONG|USHRT)_MAX)\b/,alias:"constant"}}),r.languages.insertBefore("opencl","class-name",{"builtin-type":{pattern:/\b(?:_cl_(?:command_queue|context|device_id|event|kernel|mem|platform_id|program|sampler)|cl_(?:image_format|mem_fence_flags)|clk_event_t|event_t|image(?:1d_(?:array_|buffer_)?t|2d_(?:array_(?:depth_|msaa_depth_|msaa_)?|depth_|msaa_depth_|msaa_)?t|3d_t)|intptr_t|ndrange_t|ptrdiff_t|queue_t|reserve_id_t|sampler_t|size_t|uintptr_t)\b/,alias:"keyword"}});var a={"type-opencl-host":{pattern:/\b(?:cl_(?:GLenum|GLint|GLuin|addressing_mode|bitfield|bool|buffer_create_type|build_status|channel_(?:order|type)|(?:u?(?:char|int|long|short)|double|float)(?:2|3|4|8|16)?|command_(?:queue(?:_info|_properties)?|type)|context(?:_info|_properties)?|device_(?:exec_capabilities|fp_config|id|info|local_mem_type|mem_cache_type|type)|(?:event|sampler)(?:_info)?|filter_mode|half|image_info|kernel(?:_info|_work_group_info)?|map_flags|mem(?:_flags|_info|_object_type)?|platform_(?:id|info)|profiling_info|program(?:_build_info|_info)?))\b/,alias:"keyword"},"boolean-opencl-host":{pattern:/\bCL_(?:FALSE|TRUE)\b/,alias:"boolean"},"constant-opencl-host":{pattern:/\bCL_(?:A|ABGR|ADDRESS_(?:CLAMP(?:_TO_EDGE)?|MIRRORED_REPEAT|NONE|REPEAT)|ARGB|BGRA|BLOCKING|BUFFER_CREATE_TYPE_REGION|BUILD_(?:ERROR|IN_PROGRESS|NONE|PROGRAM_FAILURE|SUCCESS)|COMMAND_(?:ACQUIRE_GL_OBJECTS|BARRIER|COPY_(?:BUFFER(?:_RECT|_TO_IMAGE)?|IMAGE(?:_TO_BUFFER)?)|FILL_(?:BUFFER|IMAGE)|MAP(?:_BUFFER|_IMAGE)|MARKER|MIGRATE(?:_SVM)?_MEM_OBJECTS|NATIVE_KERNEL|NDRANGE_KERNEL|READ_(?:BUFFER(?:_RECT)?|IMAGE)|RELEASE_GL_OBJECTS|SVM_(?:FREE|MAP|MEMCPY|MEMFILL|UNMAP)|TASK|UNMAP_MEM_OBJECT|USER|WRITE_(?:BUFFER(?:_RECT)?|IMAGE))|COMPILER_NOT_AVAILABLE|COMPILE_PROGRAM_FAILURE|COMPLETE|CONTEXT_(?:DEVICES|INTEROP_USER_SYNC|NUM_DEVICES|PLATFORM|PROPERTIES|REFERENCE_COUNT)|DEPTH(?:_STENCIL)?|DEVICE_(?:ADDRESS_BITS|AFFINITY_DOMAIN_(?:L[1-4]_CACHE|NEXT_PARTITIONABLE|NUMA)|AVAILABLE|BUILT_IN_KERNELS|COMPILER_AVAILABLE|DOUBLE_FP_CONFIG|ENDIAN_LITTLE|ERROR_CORRECTION_SUPPORT|EXECUTION_CAPABILITIES|EXTENSIONS|GLOBAL_(?:MEM_(?:CACHELINE_SIZE|CACHE_SIZE|CACHE_TYPE|SIZE)|VARIABLE_PREFERRED_TOTAL_SIZE)|HOST_UNIFIED_MEMORY|IL_VERSION|IMAGE(?:2D_MAX_(?:HEIGHT|WIDTH)|3D_MAX_(?:DEPTH|HEIGHT|WIDTH)|_BASE_ADDRESS_ALIGNMENT|_MAX_ARRAY_SIZE|_MAX_BUFFER_SIZE|_PITCH_ALIGNMENT|_SUPPORT)|LINKER_AVAILABLE|LOCAL_MEM_SIZE|LOCAL_MEM_TYPE|MAX_(?:CLOCK_FREQUENCY|COMPUTE_UNITS|CONSTANT_ARGS|CONSTANT_BUFFER_SIZE|GLOBAL_VARIABLE_SIZE|MEM_ALLOC_SIZE|NUM_SUB_GROUPS|ON_DEVICE_(?:EVENTS|QUEUES)|PARAMETER_SIZE|PIPE_ARGS|READ_IMAGE_ARGS|READ_WRITE_IMAGE_ARGS|SAMPLERS|WORK_GROUP_SIZE|WORK_ITEM_DIMENSIONS|WORK_ITEM_SIZES|WRITE_IMAGE_ARGS)|MEM_BASE_ADDR_ALIGN|MIN_DATA_TYPE_ALIGN_SIZE|NAME|NATIVE_VECTOR_WIDTH_(?:CHAR|DOUBLE|FLOAT|HALF|INT|LONG|SHORT)|NOT_(?:AVAILABLE|FOUND)|OPENCL_C_VERSION|PARENT_DEVICE|PARTITION_(?:AFFINITY_DOMAIN|BY_AFFINITY_DOMAIN|BY_COUNTS|BY_COUNTS_LIST_END|EQUALLY|FAILED|MAX_SUB_DEVICES|PROPERTIES|TYPE)|PIPE_MAX_(?:ACTIVE_RESERVATIONS|PACKET_SIZE)|PLATFORM|PREFERRED_(?:GLOBAL_ATOMIC_ALIGNMENT|INTEROP_USER_SYNC|LOCAL_ATOMIC_ALIGNMENT|PLATFORM_ATOMIC_ALIGNMENT|VECTOR_WIDTH_(?:CHAR|DOUBLE|FLOAT|HALF|INT|LONG|SHORT))|PRINTF_BUFFER_SIZE|PROFILE|PROFILING_TIMER_RESOLUTION|QUEUE_(?:ON_(?:DEVICE_(?:MAX_SIZE|PREFERRED_SIZE|PROPERTIES)|HOST_PROPERTIES)|PROPERTIES)|REFERENCE_COUNT|SINGLE_FP_CONFIG|SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS|SVM_(?:ATOMICS|CAPABILITIES|COARSE_GRAIN_BUFFER|FINE_GRAIN_BUFFER|FINE_GRAIN_SYSTEM)|TYPE(?:_ACCELERATOR|_ALL|_CPU|_CUSTOM|_DEFAULT|_GPU)?|VENDOR(?:_ID)?|VERSION)|DRIVER_VERSION|EVENT_(?:COMMAND_(?:EXECUTION_STATUS|QUEUE|TYPE)|CONTEXT|REFERENCE_COUNT)|EXEC_(?:KERNEL|NATIVE_KERNEL|STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST)|FILTER_(?:LINEAR|NEAREST)|FLOAT|FP_(?:CORRECTLY_ROUNDED_DIVIDE_SQRT|DENORM|FMA|INF_NAN|ROUND_TO_INF|ROUND_TO_NEAREST|ROUND_TO_ZERO|SOFT_FLOAT)|GLOBAL|HALF_FLOAT|IMAGE_(?:ARRAY_SIZE|BUFFER|DEPTH|ELEMENT_SIZE|FORMAT|FORMAT_MISMATCH|FORMAT_NOT_SUPPORTED|HEIGHT|NUM_MIP_LEVELS|NUM_SAMPLES|ROW_PITCH|SLICE_PITCH|WIDTH)|INTENSITY|INVALID_(?:ARG_INDEX|ARG_SIZE|ARG_VALUE|BINARY|BUFFER_SIZE|BUILD_OPTIONS|COMMAND_QUEUE|COMPILER_OPTIONS|CONTEXT|DEVICE|DEVICE_PARTITION_COUNT|DEVICE_QUEUE|DEVICE_TYPE|EVENT|EVENT_WAIT_LIST|GLOBAL_OFFSET|GLOBAL_WORK_SIZE|GL_OBJECT|HOST_PTR|IMAGE_DESCRIPTOR|IMAGE_FORMAT_DESCRIPTOR|IMAGE_SIZE|KERNEL|KERNEL_ARGS|KERNEL_DEFINITION|KERNEL_NAME|LINKER_OPTIONS|MEM_OBJECT|MIP_LEVEL|OPERATION|PIPE_SIZE|PLATFORM|PROGRAM|PROGRAM_EXECUTABLE|PROPERTY|QUEUE_PROPERTIES|SAMPLER|VALUE|WORK_DIMENSION|WORK_GROUP_SIZE|WORK_ITEM_SIZE)|KERNEL_(?:ARG_(?:ACCESS_(?:NONE|QUALIFIER|READ_ONLY|READ_WRITE|WRITE_ONLY)|ADDRESS_(?:CONSTANT|GLOBAL|LOCAL|PRIVATE|QUALIFIER)|INFO_NOT_AVAILABLE|NAME|TYPE_(?:CONST|NAME|NONE|PIPE|QUALIFIER|RESTRICT|VOLATILE))|ATTRIBUTES|COMPILE_NUM_SUB_GROUPS|COMPILE_WORK_GROUP_SIZE|CONTEXT|EXEC_INFO_SVM_FINE_GRAIN_SYSTEM|EXEC_INFO_SVM_PTRS|FUNCTION_NAME|GLOBAL_WORK_SIZE|LOCAL_MEM_SIZE|LOCAL_SIZE_FOR_SUB_GROUP_COUNT|MAX_NUM_SUB_GROUPS|MAX_SUB_GROUP_SIZE_FOR_NDRANGE|NUM_ARGS|PREFERRED_WORK_GROUP_SIZE_MULTIPLE|PRIVATE_MEM_SIZE|PROGRAM|REFERENCE_COUNT|SUB_GROUP_COUNT_FOR_NDRANGE|WORK_GROUP_SIZE)|LINKER_NOT_AVAILABLE|LINK_PROGRAM_FAILURE|LOCAL|LUMINANCE|MAP_(?:FAILURE|READ|WRITE|WRITE_INVALIDATE_REGION)|MEM_(?:ALLOC_HOST_PTR|ASSOCIATED_MEMOBJECT|CONTEXT|COPY_HOST_PTR|COPY_OVERLAP|FLAGS|HOST_NO_ACCESS|HOST_PTR|HOST_READ_ONLY|HOST_WRITE_ONLY|KERNEL_READ_AND_WRITE|MAP_COUNT|OBJECT_(?:ALLOCATION_FAILURE|BUFFER|IMAGE1D|IMAGE1D_ARRAY|IMAGE1D_BUFFER|IMAGE2D|IMAGE2D_ARRAY|IMAGE3D|PIPE)|OFFSET|READ_ONLY|READ_WRITE|REFERENCE_COUNT|SIZE|SVM_ATOMICS|SVM_FINE_GRAIN_BUFFER|TYPE|USES_SVM_POINTER|USE_HOST_PTR|WRITE_ONLY)|MIGRATE_MEM_OBJECT_(?:CONTENT_UNDEFINED|HOST)|MISALIGNED_SUB_BUFFER_OFFSET|NONE|NON_BLOCKING|OUT_OF_(?:HOST_MEMORY|RESOURCES)|PIPE_(?:MAX_PACKETS|PACKET_SIZE)|PLATFORM_(?:EXTENSIONS|HOST_TIMER_RESOLUTION|NAME|PROFILE|VENDOR|VERSION)|PROFILING_(?:COMMAND_(?:COMPLETE|END|QUEUED|START|SUBMIT)|INFO_NOT_AVAILABLE)|PROGRAM_(?:BINARIES|BINARY_SIZES|BINARY_TYPE(?:_COMPILED_OBJECT|_EXECUTABLE|_LIBRARY|_NONE)?|BUILD_(?:GLOBAL_VARIABLE_TOTAL_SIZE|LOG|OPTIONS|STATUS)|CONTEXT|DEVICES|IL|KERNEL_NAMES|NUM_DEVICES|NUM_KERNELS|REFERENCE_COUNT|SOURCE)|QUEUED|QUEUE_(?:CONTEXT|DEVICE|DEVICE_DEFAULT|ON_DEVICE|ON_DEVICE_DEFAULT|OUT_OF_ORDER_EXEC_MODE_ENABLE|PROFILING_ENABLE|PROPERTIES|REFERENCE_COUNT|SIZE)|R|RA|READ_(?:ONLY|WRITE)_CACHE|RG|RGB|RGBA|RGBx|RGx|RUNNING|Rx|SAMPLER_(?:ADDRESSING_MODE|CONTEXT|FILTER_MODE|LOD_MAX|LOD_MIN|MIP_FILTER_MODE|NORMALIZED_COORDS|REFERENCE_COUNT)|(?:UN)?SIGNED_INT(?:8|16|32)|SNORM_INT(?:8|16)|SUBMITTED|SUCCESS|UNORM_INT(?:8|16|24|_101010|_101010_2)|UNORM_SHORT_(?:555|565)|VERSION_(?:1_0|1_1|1_2|2_0|2_1)|sBGRA|sRGB|sRGBA|sRGBx)\b/,alias:"constant"},"function-opencl-host":{pattern:/\bcl(?:BuildProgram|CloneKernel|CompileProgram|Create(?:Buffer|CommandQueue(?:WithProperties)?|Context|ContextFromType|Image|Image2D|Image3D|Kernel|KernelsInProgram|Pipe|ProgramWith(?:Binary|BuiltInKernels|IL|Source)|Sampler|SamplerWithProperties|SubBuffer|SubDevices|UserEvent)|Enqueue(?:(?:Barrier|Marker)(?:WithWaitList)?|Copy(?:Buffer(?:Rect|ToImage)?|Image(?:ToBuffer)?)|(?:Fill|Map)(?:Buffer|Image)|MigrateMemObjects|NDRangeKernel|NativeKernel|(?:Read|Write)(?:Buffer(?:Rect)?|Image)|SVM(?:Free|Map|MemFill|Memcpy|MigrateMem|Unmap)|Task|UnmapMemObject|WaitForEvents)|Finish|Flush|Get(?:CommandQueueInfo|ContextInfo|Device(?:AndHostTimer|IDs|Info)|Event(?:Profiling)?Info|ExtensionFunctionAddress(?:ForPlatform)?|HostTimer|ImageInfo|Kernel(?:ArgInfo|Info|SubGroupInfo|WorkGroupInfo)|MemObjectInfo|PipeInfo|Platform(?:IDs|Info)|Program(?:Build)?Info|SamplerInfo|SupportedImageFormats)|LinkProgram|(?:Release|Retain)(?:CommandQueue|Context|Device|Event|Kernel|MemObject|Program|Sampler)|SVM(?:Alloc|Free)|Set(?:CommandQueueProperty|DefaultDeviceCommandQueue|EventCallback|Kernel|Kernel(?:Arg(?:SVMPointer)?|ExecInfo)|MemObjectDestructorCallback|UserEventStatus)|Unload(?:Platform)?Compiler|WaitForEvents)\b/,alias:"function"}};r.languages.insertBefore("c","keyword",a),r.languages.cpp&&(a["type-opencl-host-cpp"]={pattern:/\b(?:Buffer|BufferGL|BufferRenderGL|CommandQueue|Context|Device|DeviceCommandQueue|EnqueueArgs|Event|Image|Image1D|Image1DArray|Image1DBuffer|Image2D|Image2DArray|Image2DGL|Image3D|Image3DGL|ImageFormat|ImageGL|Kernel|KernelFunctor|LocalSpaceArg|Memory|NDRange|Pipe|Platform|Program|SVMAllocator|SVMTraitAtomic|SVMTraitCoarse|SVMTraitFine|SVMTraitReadOnly|SVMTraitReadWrite|SVMTraitWriteOnly|Sampler|UserEvent)\b/,alias:"keyword"},r.languages.insertBefore("cpp","keyword",a))})(n)}return kh}var wh,$4;function Ate(){if($4)return wh;$4=1,wh=e,e.displayName="openqasm",e.aliases=["qasm"];function e(t){t.languages.openqasm={comment:/\/\*[\s\S]*?\*\/|\/\/.*/,string:{pattern:/"[^"\r\n\t]*"|'[^'\r\n\t]*'/,greedy:!0},keyword:/\b(?:CX|OPENQASM|U|barrier|boxas|boxto|break|const|continue|ctrl|def|defcal|defcalgrammar|delay|else|end|for|gate|gphase|if|in|include|inv|kernel|lengthof|let|measure|pow|reset|return|rotary|stretchinf|while)\b|#pragma\b/,"class-name":/\b(?:angle|bit|bool|creg|fixed|float|int|length|qreg|qubit|stretch|uint)\b/,function:/\b(?:cos|exp|ln|popcount|rotl|rotr|sin|sqrt|tan)\b(?=\s*\()/,constant:/\b(?:euler|pi|tau)\b|π|𝜏|ℇ/,number:{pattern:/(^|[^.\w$])(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?(?:dt|ns|us|µs|ms|s)?/i,lookbehind:!0},operator:/->|>>=?|<<=?|&&|\|\||\+\+|--|[!=<>&|~^+\-*/%]=?|@/,punctuation:/[(){}\[\];,:.]/},t.languages.qasm=t.languages.openqasm}return wh}var Sh,U4;function Ite(){if(U4)return Sh;U4=1,Sh=e,e.displayName="oz",e.aliases=[];function e(t){t.languages.oz={comment:{pattern:/\/\*[\s\S]*?\*\/|%.*/,greedy:!0},string:{pattern:/"(?:[^"\\]|\\[\s\S])*"/,greedy:!0},atom:{pattern:/'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,alias:"builtin"},keyword:/\$|\[\]|\b(?:_|at|attr|case|catch|choice|class|cond|declare|define|dis|else(?:case|if)?|end|export|fail|false|feat|finally|from|fun|functor|if|import|in|local|lock|meth|nil|not|of|or|prepare|proc|prop|raise|require|self|skip|then|thread|true|try|unit)\b/,function:[/\b[a-z][A-Za-z\d]*(?=\()/,{pattern:/(\{)[A-Z][A-Za-z\d]*\b/,lookbehind:!0}],number:/\b(?:0[bx][\da-f]+|\d+(?:\.\d*)?(?:e~?\d+)?)\b|&(?:[^\\]|\\(?:\d{3}|.))/i,variable:/`(?:[^`\\]|\\.)+`/,"attr-name":/\b\w+(?=[ \t]*:(?![:=]))/,operator:/:(?:=|::?)|<[-:=]?|=(?:=|=?:?|\\=:?|!!?|[|#+\-*\/,~^@]|\b(?:andthen|div|mod|orelse)\b/,punctuation:/[\[\](){}.:;?]/}}return Sh}var Eh,z4;function Rte(){if(z4)return Eh;z4=1,Eh=e,e.displayName="parigp",e.aliases=[];function e(t){t.languages.parigp={comment:/\/\*[\s\S]*?\*\/|\\\\.*/,string:{pattern:/"(?:[^"\\\r\n]|\\.)*"/,greedy:!0},keyword:(function(){var n=["breakpoint","break","dbg_down","dbg_err","dbg_up","dbg_x","forcomposite","fordiv","forell","forpart","forprime","forstep","forsubgroup","forvec","for","iferr","if","local","my","next","return","until","while"];return n=n.map(function(r){return r.split("").join(" *")}).join("|"),RegExp("\\b(?:"+n+")\\b")})(),function:/\b\w(?:[\w ]*\w)?(?= *\()/,number:{pattern:/((?:\. *\. *)?)(?:\b\d(?: *\d)*(?: *(?!\. *\.)\.(?: *\d)*)?|\. *\d(?: *\d)*)(?: *e *(?:[+-] *)?\d(?: *\d)*)?/i,lookbehind:!0},operator:/\. *\.|[*\/!](?: *=)?|%(?: *=|(?: *#)?(?: *')*)?|\+(?: *[+=])?|-(?: *[-=>])?|<(?: *>|(?: *<)?(?: *=)?)?|>(?: *>)?(?: *=)?|=(?: *=){0,2}|\\(?: *\/)?(?: *=)?|&(?: *&)?|\| *\||['#~^]/,punctuation:/[\[\]{}().,:;|]/}}return Eh}var Ch,q4;function _te(){if(q4)return Ch;q4=1,Ch=e,e.displayName="parser",e.aliases=[];function e(t){(function(n){var r=n.languages.parser=n.languages.extend("markup",{keyword:{pattern:/(^|[^^])(?:\^(?:case|eval|for|if|switch|throw)\b|@(?:BASE|CLASS|GET(?:_DEFAULT)?|OPTIONS|SET_DEFAULT|USE)\b)/,lookbehind:!0},variable:{pattern:/(^|[^^])\B\$(?:\w+|(?=[.{]))(?:(?:\.|::?)\w+)*(?:\.|::?)?/,lookbehind:!0,inside:{punctuation:/\.|:+/}},function:{pattern:/(^|[^^])\B[@^]\w+(?:(?:\.|::?)\w+)*(?:\.|::?)?/,lookbehind:!0,inside:{keyword:{pattern:/(^@)(?:GET_|SET_)/,lookbehind:!0},punctuation:/\.|:+/}},escape:{pattern:/\^(?:[$^;@()\[\]{}"':]|#[a-f\d]*)/i,alias:"builtin"},punctuation:/[\[\](){};]/});r=n.languages.insertBefore("parser","keyword",{"parser-comment":{pattern:/(\s)#.*/,lookbehind:!0,alias:"comment"},expression:{pattern:/(^|[^^])\((?:[^()]|\((?:[^()]|\((?:[^()])*\))*\))*\)/,greedy:!0,lookbehind:!0,inside:{string:{pattern:/(^|[^^])(["'])(?:(?!\2)[^^]|\^[\s\S])*\2/,lookbehind:!0},keyword:r.keyword,variable:r.variable,function:r.function,boolean:/\b(?:false|true)\b/,number:/\b(?:0x[a-f\d]+|\d+(?:\.\d*)?(?:e[+-]?\d+)?)\b/i,escape:r.escape,operator:/[~+*\/\\%]|!(?:\|\|?|=)?|&&?|\|\|?|==|<[<=]?|>[>=]?|-[fd]?|\b(?:def|eq|ge|gt|in|is|le|lt|ne)\b/,punctuation:r.punctuation}}}),n.languages.insertBefore("inside","punctuation",{expression:r.expression,keyword:r.keyword,variable:r.variable,function:r.function,escape:r.escape,"parser-punctuation":{pattern:r.punctuation,alias:"punctuation"}},r.tag.inside["attr-value"])})(t)}return Ch}var Nh,H4;function jte(){if(H4)return Nh;H4=1,Nh=e,e.displayName="pascal",e.aliases=["objectpascal"];function e(t){t.languages.pascal={directive:{pattern:/\{\$[\s\S]*?\}/,greedy:!0,alias:["marco","property"]},comment:{pattern:/\(\*[\s\S]*?\*\)|\{[\s\S]*?\}|\/\/.*/,greedy:!0},string:{pattern:/(?:'(?:''|[^'\r\n])*'(?!')|#[&$%]?[a-f\d]+)+|\^[a-z]/i,greedy:!0},asm:{pattern:/(\basm\b)[\s\S]+?(?=\bend\s*[;[])/i,lookbehind:!0,greedy:!0,inside:null},keyword:[{pattern:/(^|[^&])\b(?:absolute|array|asm|begin|case|const|constructor|destructor|do|downto|else|end|file|for|function|goto|if|implementation|inherited|inline|interface|label|nil|object|of|operator|packed|procedure|program|record|reintroduce|repeat|self|set|string|then|to|type|unit|until|uses|var|while|with)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:dispose|exit|false|new|true)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:class|dispinterface|except|exports|finalization|finally|initialization|inline|library|on|out|packed|property|raise|resourcestring|threadvar|try)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:absolute|abstract|alias|assembler|bitpacked|break|cdecl|continue|cppdecl|cvar|default|deprecated|dynamic|enumerator|experimental|export|external|far|far16|forward|generic|helper|implements|index|interrupt|iochecks|local|message|name|near|nodefault|noreturn|nostackframe|oldfpccall|otherwise|overload|override|pascal|platform|private|protected|public|published|read|register|reintroduce|result|safecall|saveregisters|softfloat|specialize|static|stdcall|stored|strict|unaligned|unimplemented|varargs|virtual|write)\b/i,lookbehind:!0}],number:[/(?:[&%]\d+|\$[a-f\d]+)/i,/\b\d+(?:\.\d+)?(?:e[+-]?\d+)?/i],operator:[/\.\.|\*\*|:=|<[<=>]?|>[>=]?|[+\-*\/]=?|[@^=]/,{pattern:/(^|[^&])\b(?:and|as|div|exclude|in|include|is|mod|not|or|shl|shr|xor)\b/,lookbehind:!0}],punctuation:/\(\.|\.\)|[()\[\]:;,.]/},t.languages.pascal.asm.inside=t.languages.extend("pascal",{asm:void 0,keyword:void 0,operator:void 0}),t.languages.objectpascal=t.languages.pascal}return Nh}var Th,G4;function Ote(){if(G4)return Th;G4=1,Th=e,e.displayName="pascaligo",e.aliases=[];function e(t){(function(n){var r=/\((?:[^()]|\((?:[^()]|\([^()]*\))*\))*\)/.source,a=/(?:\b\w+(?:)?|)/.source.replace(//g,function(){return r}),i=n.languages.pascaligo={comment:/\(\*[\s\S]+?\*\)|\/\/.*/,string:{pattern:/(["'`])(?:\\[\s\S]|(?!\1)[^\\])*\1|\^[a-z]/i,greedy:!0},"class-name":[{pattern:RegExp(/(\btype\s+\w+\s+is\s+)/.source.replace(//g,function(){return a}),"i"),lookbehind:!0,inside:null},{pattern:RegExp(/(?=\s+is\b)/.source.replace(//g,function(){return a}),"i"),inside:null},{pattern:RegExp(/(:\s*)/.source.replace(//g,function(){return a})),lookbehind:!0,inside:null}],keyword:{pattern:/(^|[^&])\b(?:begin|block|case|const|else|end|fail|for|from|function|if|is|nil|of|remove|return|skip|then|type|var|while|with)\b/i,lookbehind:!0},boolean:{pattern:/(^|[^&])\b(?:False|True)\b/i,lookbehind:!0},builtin:{pattern:/(^|[^&])\b(?:bool|int|list|map|nat|record|string|unit)\b/i,lookbehind:!0},function:/\b\w+(?=\s*\()/,number:[/%[01]+|&[0-7]+|\$[a-f\d]+/i,/\b\d+(?:\.\d+)?(?:e[+-]?\d+)?(?:mtz|n)?/i],operator:/->|=\/=|\.\.|\*\*|:=|<[<=>]?|>[>=]?|[+\-*\/]=?|[@^=|]|\b(?:and|mod|or)\b/,punctuation:/\(\.|\.\)|[()\[\]:;,.{}]/},s=["comment","keyword","builtin","operator","punctuation"].reduce(function(l,c){return l[c]=i[c],l},{});i["class-name"].forEach(function(l){l.inside=s})})(t)}return Th}var Ah,V4;function Dte(){if(V4)return Ah;V4=1,Ah=e,e.displayName="pcaxis",e.aliases=["px"];function e(t){t.languages.pcaxis={string:/"[^"]*"/,keyword:{pattern:/((?:^|;)\s*)[-A-Z\d]+(?:\s*\[[-\w]+\])?(?:\s*\("[^"]*"(?:,\s*"[^"]*")*\))?(?=\s*=)/,lookbehind:!0,greedy:!0,inside:{keyword:/^[-A-Z\d]+/,language:{pattern:/^(\s*)\[[-\w]+\]/,lookbehind:!0,inside:{punctuation:/^\[|\]$/,property:/[-\w]+/}},"sub-key":{pattern:/^(\s*)\S[\s\S]*/,lookbehind:!0,inside:{parameter:{pattern:/"[^"]*"/,alias:"property"},punctuation:/^\(|\)$|,/}}}},operator:/=/,tlist:{pattern:/TLIST\s*\(\s*\w+(?:(?:\s*,\s*"[^"]*")+|\s*,\s*"[^"]*"-"[^"]*")?\s*\)/,greedy:!0,inside:{function:/^TLIST/,property:{pattern:/^(\s*\(\s*)\w+/,lookbehind:!0},string:/"[^"]*"/,punctuation:/[(),]/,operator:/-/}},punctuation:/[;,]/,number:{pattern:/(^|\s)\d+(?:\.\d+)?(?!\S)/,lookbehind:!0},boolean:/NO|YES/},t.languages.px=t.languages.pcaxis}return Ah}var Ih,W4;function Mte(){if(W4)return Ih;W4=1,Ih=e,e.displayName="peoplecode",e.aliases=["pcode"];function e(t){t.languages.peoplecode={comment:RegExp([/\/\*[\s\S]*?\*\//.source,/\bREM[^;]*;/.source,/<\*(?:[^<*]|\*(?!>)|<(?!\*)|<\*(?:(?!\*>)[\s\S])*\*>)*\*>/.source,/\/\+[\s\S]*?\+\//.source].join("|")),string:{pattern:/'(?:''|[^'\r\n])*'(?!')|"(?:""|[^"\r\n])*"(?!")/,greedy:!0},variable:/%\w+/,"function-definition":{pattern:/((?:^|[^\w-])(?:function|method)\s+)\w+/i,lookbehind:!0,alias:"function"},"class-name":{pattern:/((?:^|[^-\w])(?:as|catch|class|component|create|extends|global|implements|instance|local|of|property|returns)\s+)\w+(?::\w+)*/i,lookbehind:!0,inside:{punctuation:/:/}},keyword:/\b(?:abstract|alias|as|catch|class|component|constant|create|declare|else|end-(?:class|evaluate|for|function|get|if|method|set|try|while)|evaluate|extends|for|function|get|global|if|implements|import|instance|library|local|method|null|of|out|peopleCode|private|program|property|protected|readonly|ref|repeat|returns?|set|step|then|throw|to|try|until|value|when(?:-other)?|while)\b/i,"operator-keyword":{pattern:/\b(?:and|not|or)\b/i,alias:"operator"},function:/[_a-z]\w*(?=\s*\()/i,boolean:/\b(?:false|true)\b/i,number:/\b\d+(?:\.\d+)?\b/,operator:/<>|[<>]=?|!=|\*\*|[-+*/|=@]/,punctuation:/[:.;,()[\]]/},t.languages.pcode=t.languages.peoplecode}return Ih}var Rh,K4;function Lte(){if(K4)return Rh;K4=1,Rh=e,e.displayName="perl",e.aliases=[];function e(t){(function(n){var r=/(?:\((?:[^()\\]|\\[\s\S])*\)|\{(?:[^{}\\]|\\[\s\S])*\}|\[(?:[^[\]\\]|\\[\s\S])*\]|<(?:[^<>\\]|\\[\s\S])*>)/.source;n.languages.perl={comment:[{pattern:/(^\s*)=\w[\s\S]*?=cut.*/m,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\$])#.*/,lookbehind:!0,greedy:!0}],string:[{pattern:RegExp(/\b(?:q|qq|qw|qx)(?![a-zA-Z0-9])\s*/.source+"(?:"+[/([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/([a-zA-Z0-9])(?:(?!\2)[^\\]|\\[\s\S])*\2/.source,r].join("|")+")"),greedy:!0},{pattern:/("|`)(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/'(?:[^'\\\r\n]|\\.)*'/,greedy:!0}],regex:[{pattern:RegExp(/\b(?:m|qr)(?![a-zA-Z0-9])\s*/.source+"(?:"+[/([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,/([a-zA-Z0-9])(?:(?!\2)[^\\]|\\[\s\S])*\2/.source,r].join("|")+")"+/[msixpodualngc]*/.source),greedy:!0},{pattern:RegExp(/(^|[^-])\b(?:s|tr|y)(?![a-zA-Z0-9])\s*/.source+"(?:"+[/([^a-zA-Z0-9\s{(\[<])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2/.source,/([a-zA-Z0-9])(?:(?!\3)[^\\]|\\[\s\S])*\3(?:(?!\3)[^\\]|\\[\s\S])*\3/.source,r+/\s*/.source+r].join("|")+")"+/[msixpodualngcer]*/.source),lookbehind:!0,greedy:!0},{pattern:/\/(?:[^\/\\\r\n]|\\.)*\/[msixpodualngc]*(?=\s*(?:$|[\r\n,.;})&|\-+*~<>!?^]|(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|x|xor)\b))/,greedy:!0}],variable:[/[&*$@%]\{\^[A-Z]+\}/,/[&*$@%]\^[A-Z_]/,/[&*$@%]#?(?=\{)/,/[&*$@%]#?(?:(?:::)*'?(?!\d)[\w$]+(?![\w$]))+(?:::)*/,/[&*$@%]\d+/,/(?!%=)[$@%][!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~]/],filehandle:{pattern:/<(?![<=])\S*?>|\b_\b/,alias:"symbol"},"v-string":{pattern:/v\d+(?:\.\d+)*|\d+(?:\.\d+){2,}/,alias:"string"},function:{pattern:/(\bsub[ \t]+)\w+/,lookbehind:!0},keyword:/\b(?:any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|return|say|state|sub|switch|undef|unless|until|use|when|while)\b/,number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)\b/,operator:/-[rwxoRWXOezsfdlpSbctugkTBMAC]\b|\+[+=]?|-[-=>]?|\*\*?=?|\/\/?=?|=[=~>]?|~[~=]?|\|\|?=?|&&?=?|<(?:=>?|<=?)?|>>?=?|![~=]?|[%^]=?|\.(?:=|\.\.?)?|[\\?]|\bx(?:=|\b)|\b(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|xor)\b/,punctuation:/[{}[\];(),:]/}})(t)}return Rh}var _h,Y4;function Pte(){if(Y4)return _h;Y4=1;var e=du();_h=t,t.displayName="phpExtras",t.aliases=[];function t(n){n.register(e),n.languages.insertBefore("php","variable",{this:{pattern:/\$this\b/,alias:"keyword"},global:/\$(?:GLOBALS|HTTP_RAW_POST_DATA|_(?:COOKIE|ENV|FILES|GET|POST|REQUEST|SERVER|SESSION)|argc|argv|http_response_header|php_errormsg)\b/,scope:{pattern:/\b[\w\\]+::/,inside:{keyword:/\b(?:parent|self|static)\b/,punctuation:/::|\\/}}})}return _h}var jh,X4;function Fte(){if(X4)return jh;X4=1;var e=du(),t=uu();jh=n,n.displayName="phpdoc",n.aliases=[];function n(r){r.register(e),r.register(t),(function(a){var i=/(?:\b[a-zA-Z]\w*|[|\\[\]])+/.source;a.languages.phpdoc=a.languages.extend("javadoclike",{parameter:{pattern:RegExp("(@(?:global|param|property(?:-read|-write)?|var)\\s+(?:"+i+"\\s+)?)\\$\\w+"),lookbehind:!0}}),a.languages.insertBefore("phpdoc","keyword",{"class-name":[{pattern:RegExp("(@(?:global|package|param|property(?:-read|-write)?|return|subpackage|throws|var)\\s+)"+i),lookbehind:!0,inside:{keyword:/\b(?:array|bool|boolean|callback|double|false|float|int|integer|mixed|null|object|resource|self|string|true|void)\b/,punctuation:/[|\\[\]()]/}}]}),a.languages.javadoclike.addSupport("php",a.languages.phpdoc)})(r)}return jh}var Oh,Z4;function Bte(){if(Z4)return Oh;Z4=1;var e=Ey();Oh=t,t.displayName="plsql",t.aliases=[];function t(n){n.register(e),n.languages.plsql=n.languages.extend("sql",{comment:{pattern:/\/\*[\s\S]*?\*\/|--.*/,greedy:!0},keyword:/\b(?:A|ACCESSIBLE|ADD|AGENT|AGGREGATE|ALL|ALTER|AND|ANY|ARRAY|AS|ASC|AT|ATTRIBUTE|AUTHID|AVG|BEGIN|BETWEEN|BFILE_BASE|BINARY|BLOB_BASE|BLOCK|BODY|BOTH|BOUND|BULK|BY|BYTE|C|CALL|CALLING|CASCADE|CASE|CHAR|CHARACTER|CHARSET|CHARSETFORM|CHARSETID|CHAR_BASE|CHECK|CLOB_BASE|CLONE|CLOSE|CLUSTER|CLUSTERS|COLAUTH|COLLECT|COLUMNS|COMMENT|COMMIT|COMMITTED|COMPILED|COMPRESS|CONNECT|CONSTANT|CONSTRUCTOR|CONTEXT|CONTINUE|CONVERT|COUNT|CRASH|CREATE|CREDENTIAL|CURRENT|CURSOR|CUSTOMDATUM|DANGLING|DATA|DATE|DATE_BASE|DAY|DECLARE|DEFAULT|DEFINE|DELETE|DESC|DETERMINISTIC|DIRECTORY|DISTINCT|DOUBLE|DROP|DURATION|ELEMENT|ELSE|ELSIF|EMPTY|END|ESCAPE|EXCEPT|EXCEPTION|EXCEPTIONS|EXCLUSIVE|EXECUTE|EXISTS|EXIT|EXTERNAL|FETCH|FINAL|FIRST|FIXED|FLOAT|FOR|FORALL|FORCE|FROM|FUNCTION|GENERAL|GOTO|GRANT|GROUP|HASH|HAVING|HEAP|HIDDEN|HOUR|IDENTIFIED|IF|IMMEDIATE|IMMUTABLE|IN|INCLUDING|INDEX|INDEXES|INDICATOR|INDICES|INFINITE|INSERT|INSTANTIABLE|INT|INTERFACE|INTERSECT|INTERVAL|INTO|INVALIDATE|IS|ISOLATION|JAVA|LANGUAGE|LARGE|LEADING|LENGTH|LEVEL|LIBRARY|LIKE|LIKE2|LIKE4|LIKEC|LIMIT|LIMITED|LOCAL|LOCK|LONG|LOOP|MAP|MAX|MAXLEN|MEMBER|MERGE|MIN|MINUS|MINUTE|MOD|MODE|MODIFY|MONTH|MULTISET|MUTABLE|NAME|NAN|NATIONAL|NATIVE|NCHAR|NEW|NOCOMPRESS|NOCOPY|NOT|NOWAIT|NULL|NUMBER_BASE|OBJECT|OCICOLL|OCIDATE|OCIDATETIME|OCIDURATION|OCIINTERVAL|OCILOBLOCATOR|OCINUMBER|OCIRAW|OCIREF|OCIREFCURSOR|OCIROWID|OCISTRING|OCITYPE|OF|OLD|ON|ONLY|OPAQUE|OPEN|OPERATOR|OPTION|OR|ORACLE|ORADATA|ORDER|ORGANIZATION|ORLANY|ORLVARY|OTHERS|OUT|OVERLAPS|OVERRIDING|PACKAGE|PARALLEL_ENABLE|PARAMETER|PARAMETERS|PARENT|PARTITION|PASCAL|PERSISTABLE|PIPE|PIPELINED|PLUGGABLE|POLYMORPHIC|PRAGMA|PRECISION|PRIOR|PRIVATE|PROCEDURE|PUBLIC|RAISE|RANGE|RAW|READ|RECORD|REF|REFERENCE|RELIES_ON|REM|REMAINDER|RENAME|RESOURCE|RESULT|RESULT_CACHE|RETURN|RETURNING|REVERSE|REVOKE|ROLLBACK|ROW|SAMPLE|SAVE|SAVEPOINT|SB1|SB2|SB4|SECOND|SEGMENT|SELECT|SELF|SEPARATE|SEQUENCE|SERIALIZABLE|SET|SHARE|SHORT|SIZE|SIZE_T|SOME|SPARSE|SQL|SQLCODE|SQLDATA|SQLNAME|SQLSTATE|STANDARD|START|STATIC|STDDEV|STORED|STRING|STRUCT|STYLE|SUBMULTISET|SUBPARTITION|SUBSTITUTABLE|SUBTYPE|SUM|SYNONYM|TABAUTH|TABLE|TDO|THE|THEN|TIME|TIMESTAMP|TIMEZONE_ABBR|TIMEZONE_HOUR|TIMEZONE_MINUTE|TIMEZONE_REGION|TO|TRAILING|TRANSACTION|TRANSACTIONAL|TRUSTED|TYPE|UB1|UB2|UB4|UNDER|UNION|UNIQUE|UNPLUG|UNSIGNED|UNTRUSTED|UPDATE|USE|USING|VALIST|VALUE|VALUES|VARIABLE|VARIANCE|VARRAY|VARYING|VIEW|VIEWS|VOID|WHEN|WHERE|WHILE|WITH|WORK|WRAPPED|WRITE|YEAR|ZONE)\b/i,operator:/:=?|=>|[<>^~!]=|\.\.|\|\||\*\*|[-+*/%<>=@]/}),n.languages.insertBefore("plsql","operator",{label:{pattern:/<<\s*\w+\s*>>/,alias:"symbol"}})}return Oh}var Dh,J4;function $te(){if(J4)return Dh;J4=1,Dh=e,e.displayName="powerquery",e.aliases=[];function e(t){t.languages.powerquery={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0,greedy:!0},"quoted-identifier":{pattern:/#"(?:[^"\r\n]|"")*"(?!")/,greedy:!0},string:{pattern:/(?:#!)?"(?:[^"\r\n]|"")*"(?!")/,greedy:!0},constant:[/\bDay\.(?:Friday|Monday|Saturday|Sunday|Thursday|Tuesday|Wednesday)\b/,/\bTraceLevel\.(?:Critical|Error|Information|Verbose|Warning)\b/,/\bOccurrence\.(?:All|First|Last)\b/,/\bOrder\.(?:Ascending|Descending)\b/,/\bRoundingMode\.(?:AwayFromZero|Down|ToEven|TowardZero|Up)\b/,/\bMissingField\.(?:Error|Ignore|UseNull)\b/,/\bQuoteStyle\.(?:Csv|None)\b/,/\bJoinKind\.(?:FullOuter|Inner|LeftAnti|LeftOuter|RightAnti|RightOuter)\b/,/\bGroupKind\.(?:Global|Local)\b/,/\bExtraValues\.(?:Error|Ignore|List)\b/,/\bJoinAlgorithm\.(?:Dynamic|LeftHash|LeftIndex|PairwiseHash|RightHash|RightIndex|SortMerge)\b/,/\bJoinSide\.(?:Left|Right)\b/,/\bPrecision\.(?:Decimal|Double)\b/,/\bRelativePosition\.From(?:End|Start)\b/,/\bTextEncoding\.(?:Ascii|BigEndianUnicode|Unicode|Utf16|Utf8|Windows)\b/,/\b(?:Any|Binary|Date|DateTime|DateTimeZone|Duration|Function|Int16|Int32|Int64|Int8|List|Logical|None|Number|Record|Table|Text|Time)\.Type\b/,/\bnull\b/],boolean:/\b(?:false|true)\b/,keyword:/\b(?:and|as|each|else|error|if|in|is|let|meta|not|nullable|optional|or|otherwise|section|shared|then|try|type)\b|#(?:binary|date|datetime|datetimezone|duration|infinity|nan|sections|shared|table|time)\b/,function:{pattern:/(^|[^#\w.])[a-z_][\w.]*(?=\s*\()/i,lookbehind:!0},"data-type":{pattern:/\b(?:any|anynonnull|binary|date|datetime|datetimezone|duration|function|list|logical|none|number|record|table|text|time)\b/,alias:"class-name"},number:{pattern:/\b0x[\da-f]+\b|(?:[+-]?(?:\b\d+\.)?\b\d+|[+-]\.\d+|(^|[^.])\B\.\d+)(?:e[+-]?\d+)?\b/i,lookbehind:!0},operator:/[-+*\/&?@^]|<(?:=>?|>)?|>=?|=>?|\.\.\.?/,punctuation:/[,;\[\](){}]/},t.languages.pq=t.languages.powerquery,t.languages.mscript=t.languages.powerquery}return Dh}var Mh,Q4;function Ute(){if(Q4)return Mh;Q4=1,Mh=e,e.displayName="powershell",e.aliases=[];function e(t){(function(n){var r=n.languages.powershell={comment:[{pattern:/(^|[^`])<#[\s\S]*?#>/,lookbehind:!0},{pattern:/(^|[^`])#.*/,lookbehind:!0}],string:[{pattern:/"(?:`[\s\S]|[^`"])*"/,greedy:!0,inside:null},{pattern:/'(?:[^']|'')*'/,greedy:!0}],namespace:/\[[a-z](?:\[(?:\[[^\]]*\]|[^\[\]])*\]|[^\[\]])*\]/i,boolean:/\$(?:false|true)\b/i,variable:/\$\w+\b/,function:[/\b(?:Add|Approve|Assert|Backup|Block|Checkpoint|Clear|Close|Compare|Complete|Compress|Confirm|Connect|Convert|ConvertFrom|ConvertTo|Copy|Debug|Deny|Disable|Disconnect|Dismount|Edit|Enable|Enter|Exit|Expand|Export|Find|ForEach|Format|Get|Grant|Group|Hide|Import|Initialize|Install|Invoke|Join|Limit|Lock|Measure|Merge|Move|New|Open|Optimize|Out|Ping|Pop|Protect|Publish|Push|Read|Receive|Redo|Register|Remove|Rename|Repair|Request|Reset|Resize|Resolve|Restart|Restore|Resume|Revoke|Save|Search|Select|Send|Set|Show|Skip|Sort|Split|Start|Step|Stop|Submit|Suspend|Switch|Sync|Tee|Test|Trace|Unblock|Undo|Uninstall|Unlock|Unprotect|Unpublish|Unregister|Update|Use|Wait|Watch|Where|Write)-[a-z]+\b/i,/\b(?:ac|cat|chdir|clc|cli|clp|clv|compare|copy|cp|cpi|cpp|cvpa|dbp|del|diff|dir|ebp|echo|epal|epcsv|epsn|erase|fc|fl|ft|fw|gal|gbp|gc|gci|gcs|gdr|gi|gl|gm|gp|gps|group|gsv|gu|gv|gwmi|iex|ii|ipal|ipcsv|ipsn|irm|iwmi|iwr|kill|lp|ls|measure|mi|mount|move|mp|mv|nal|ndr|ni|nv|ogv|popd|ps|pushd|pwd|rbp|rd|rdr|ren|ri|rm|rmdir|rni|rnp|rp|rv|rvpa|rwmi|sal|saps|sasv|sbp|sc|select|set|shcm|si|sl|sleep|sls|sort|sp|spps|spsv|start|sv|swmi|tee|trcm|type|write)\b/i],keyword:/\b(?:Begin|Break|Catch|Class|Continue|Data|Define|Do|DynamicParam|Else|ElseIf|End|Exit|Filter|Finally|For|ForEach|From|Function|If|InlineScript|Parallel|Param|Process|Return|Sequence|Switch|Throw|Trap|Try|Until|Using|Var|While|Workflow)\b/i,operator:{pattern:/(^|\W)(?:!|-(?:b?(?:and|x?or)|as|(?:Not)?(?:Contains|In|Like|Match)|eq|ge|gt|is(?:Not)?|Join|le|lt|ne|not|Replace|sh[lr])\b|-[-=]?|\+[+=]?|[*\/%]=?)/i,lookbehind:!0},punctuation:/[|{}[\];(),.]/};r.string[0].inside={function:{pattern:/(^|[^`])\$\((?:\$\([^\r\n()]*\)|(?!\$\()[^\r\n)])*\)/,lookbehind:!0,inside:r},boolean:r.boolean,variable:r.variable}})(t)}return Mh}var Lh,eC;function zte(){if(eC)return Lh;eC=1,Lh=e,e.displayName="processing",e.aliases=[];function e(t){t.languages.processing=t.languages.extend("clike",{keyword:/\b(?:break|case|catch|class|continue|default|else|extends|final|for|if|implements|import|new|null|private|public|return|static|super|switch|this|try|void|while)\b/,function:/\b\w+(?=\s*\()/,operator:/<[<=]?|>[>=]?|&&?|\|\|?|[%?]|[!=+\-*\/]=?/}),t.languages.insertBefore("processing","number",{constant:/\b(?!XML\b)[A-Z][A-Z\d_]+\b/,type:{pattern:/\b(?:boolean|byte|char|color|double|float|int|[A-Z]\w*)\b/,alias:"class-name"}})}return Lh}var Ph,tC;function qte(){if(tC)return Ph;tC=1,Ph=e,e.displayName="prolog",e.aliases=[];function e(t){t.languages.prolog={comment:{pattern:/\/\*[\s\S]*?\*\/|%.*/,greedy:!0},string:{pattern:/(["'])(?:\1\1|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1(?!\1)/,greedy:!0},builtin:/\b(?:fx|fy|xf[xy]?|yfx?)\b/,function:/\b[a-z]\w*(?:(?=\()|\/\d+)/,number:/\b\d+(?:\.\d*)?/,operator:/[:\\=><\-?*@\/;+^|!$.]+|\b(?:is|mod|not|xor)\b/,punctuation:/[(){}\[\],]/}}return Ph}var Fh,nC;function Hte(){if(nC)return Fh;nC=1,Fh=e,e.displayName="promql",e.aliases=[];function e(t){(function(n){var r=["sum","min","max","avg","group","stddev","stdvar","count","count_values","bottomk","topk","quantile"],a=["on","ignoring","group_right","group_left","by","without"],i=["offset"],s=r.concat(a,i);n.languages.promql={comment:{pattern:/(^[ \t]*)#.*/m,lookbehind:!0},"vector-match":{pattern:new RegExp("((?:"+a.join("|")+")\\s*)\\([^)]*\\)"),lookbehind:!0,inside:{"label-key":{pattern:/\b[^,]+\b/,alias:"attr-name"},punctuation:/[(),]/}},"context-labels":{pattern:/\{[^{}]*\}/,inside:{"label-key":{pattern:/\b[a-z_]\w*(?=\s*(?:=|![=~]))/,alias:"attr-name"},"label-value":{pattern:/(["'`])(?:\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0,alias:"attr-value"},punctuation:/\{|\}|=~?|![=~]|,/}},"context-range":[{pattern:/\[[\w\s:]+\]/,inside:{punctuation:/\[|\]|:/,"range-duration":{pattern:/\b(?:\d+(?:[smhdwy]|ms))+\b/i,alias:"number"}}},{pattern:/(\boffset\s+)\w+/,lookbehind:!0,inside:{"range-duration":{pattern:/\b(?:\d+(?:[smhdwy]|ms))+\b/i,alias:"number"}}}],keyword:new RegExp("\\b(?:"+s.join("|")+")\\b","i"),function:/\b[a-z_]\w*(?=\s*\()/i,number:/[-+]?(?:(?:\b\d+(?:\.\d+)?|\B\.\d+)(?:e[-+]?\d+)?\b|\b(?:0x[0-9a-f]+|nan|inf)\b)/i,operator:/[\^*/%+-]|==|!=|<=|<|>=|>|\b(?:and|or|unless)\b/i,punctuation:/[{};()`,.[\]]/}})(t)}return Fh}var Bh,rC;function Gte(){if(rC)return Bh;rC=1,Bh=e,e.displayName="properties",e.aliases=[];function e(t){t.languages.properties={comment:/^[ \t]*[#!].*$/m,"attr-value":{pattern:/(^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+(?: *[=:] *(?! )| ))(?:\\(?:\r\n|[\s\S])|[^\\\r\n])+/m,lookbehind:!0},"attr-name":/^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+(?= *[=:]| )/m,punctuation:/[=:]/}}return Bh}var $h,aC;function Vte(){if(aC)return $h;aC=1,$h=e,e.displayName="protobuf",e.aliases=[];function e(t){(function(n){var r=/\b(?:bool|bytes|double|s?fixed(?:32|64)|float|[su]?int(?:32|64)|string)\b/;n.languages.protobuf=n.languages.extend("clike",{"class-name":[{pattern:/(\b(?:enum|extend|message|service)\s+)[A-Za-z_]\w*(?=\s*\{)/,lookbehind:!0},{pattern:/(\b(?:rpc\s+\w+|returns)\s*\(\s*(?:stream\s+)?)\.?[A-Za-z_]\w*(?:\.[A-Za-z_]\w*)*(?=\s*\))/,lookbehind:!0}],keyword:/\b(?:enum|extend|extensions|import|message|oneof|option|optional|package|public|repeated|required|reserved|returns|rpc(?=\s+\w)|service|stream|syntax|to)\b(?!\s*=\s*\d)/,function:/\b[a-z_]\w*(?=\s*\()/i}),n.languages.insertBefore("protobuf","operator",{map:{pattern:/\bmap<\s*[\w.]+\s*,\s*[\w.]+\s*>(?=\s+[a-z_]\w*\s*[=;])/i,alias:"class-name",inside:{punctuation:/[<>.,]/,builtin:r}},builtin:r,"positional-class-name":{pattern:/(?:\b|\B\.)[a-z_]\w*(?:\.[a-z_]\w*)*(?=\s+[a-z_]\w*\s*[=;])/i,alias:"class-name",inside:{punctuation:/\./}},annotation:{pattern:/(\[\s*)[a-z_]\w*(?=\s*=)/i,lookbehind:!0}})})(t)}return $h}var Uh,iC;function Wte(){if(iC)return Uh;iC=1,Uh=e,e.displayName="psl",e.aliases=[];function e(t){t.languages.psl={comment:{pattern:/#.*/,greedy:!0},string:{pattern:/"(?:\\.|[^\\"])*"/,greedy:!0,inside:{symbol:/\\[ntrbA-Z"\\]/}},"heredoc-string":{pattern:/<<<([a-zA-Z_]\w*)[\r\n](?:.*[\r\n])*?\1\b/,alias:"string",greedy:!0},keyword:/\b(?:__multi|__single|case|default|do|else|elsif|exit|export|for|foreach|function|if|last|line|local|next|requires|return|switch|until|while|word)\b/,constant:/\b(?:ALARM|CHART_ADD_GRAPH|CHART_DELETE_GRAPH|CHART_DESTROY|CHART_LOAD|CHART_PRINT|EOF|OFFLINE|OK|PSL_PROF_LOG|R_CHECK_HORIZ|R_CHECK_VERT|R_CLICKER|R_COLUMN|R_FRAME|R_ICON|R_LABEL|R_LABEL_CENTER|R_LIST_MULTIPLE|R_LIST_MULTIPLE_ND|R_LIST_SINGLE|R_LIST_SINGLE_ND|R_MENU|R_POPUP|R_POPUP_SCROLLED|R_RADIO_HORIZ|R_RADIO_VERT|R_ROW|R_SCALE_HORIZ|R_SCALE_VERT|R_SEP_HORIZ|R_SEP_VERT|R_SPINNER|R_TEXT_FIELD|R_TEXT_FIELD_LABEL|R_TOGGLE|TRIM_LEADING|TRIM_LEADING_AND_TRAILING|TRIM_REDUNDANT|TRIM_TRAILING|VOID|WARN)\b/,boolean:/\b(?:FALSE|False|NO|No|TRUE|True|YES|Yes|false|no|true|yes)\b/,variable:/\b(?:PslDebug|errno|exit_status)\b/,builtin:{pattern:/\b(?:PslExecute|PslFunctionCall|PslFunctionExists|PslSetOptions|_snmp_debug|acos|add_diary|annotate|annotate_get|ascii_to_ebcdic|asctime|asin|atan|atexit|batch_set|blackout|cat|ceil|chan_exists|change_state|close|code_cvt|cond_signal|cond_wait|console_type|convert_base|convert_date|convert_locale_date|cos|cosh|create|date|dcget_text|destroy|destroy_lock|dget_text|difference|dump_hist|ebcdic_to_ascii|encrypt|event_archive|event_catalog_get|event_check|event_query|event_range_manage|event_range_query|event_report|event_schedule|event_trigger|event_trigger2|execute|exists|exp|fabs|file|floor|fmod|fopen|fseek|ftell|full_discovery|get|get_chan_info|get_ranges|get_text|get_vars|getenv|gethostinfo|getpid|getpname|grep|history|history_get_retention|in_transition|index|int|internal|intersection|is_var|isnumber|join|kill|length|lines|lock|lock_info|log|log10|loge|matchline|msg_check|msg_get_format|msg_get_severity|msg_printf|msg_sprintf|ntharg|nthargf|nthline|nthlinef|num_bytes|num_consoles|pconfig|popen|poplines|pow|print|printf|proc_exists|process|random|read|readln|refresh_parameters|remote_check|remote_close|remote_event_query|remote_event_trigger|remote_file_send|remote_open|remove|replace|rindex|sec_check_priv|sec_store_get|sec_store_set|set|set_alarm_ranges|set_locale|share|sin|sinh|sleep|snmp_agent_config|snmp_agent_start|snmp_agent_stop|snmp_close|snmp_config|snmp_get|snmp_get_next|snmp_h_get|snmp_h_get_next|snmp_h_set|snmp_open|snmp_set|snmp_trap_ignore|snmp_trap_listen|snmp_trap_raise_std_trap|snmp_trap_receive|snmp_trap_register_im|snmp_trap_send|snmp_walk|sopen|sort|splitline|sprintf|sqrt|srandom|str_repeat|strcasecmp|subset|substr|system|tail|tan|tanh|text_domain|time|tmpnam|tolower|toupper|trace_psl_process|trim|union|unique|unlock|unset|va_arg|va_start|write)\b/,alias:"builtin-function"},"foreach-variable":{pattern:/(\bforeach\s+(?:(?:\w+\b|"(?:\\.|[^\\"])*")\s+){0,2})[_a-zA-Z]\w*(?=\s*\()/,lookbehind:!0,greedy:!0},function:/\b[_a-z]\w*\b(?=\s*\()/i,number:/\b(?:0x[0-9a-f]+|\d+(?:\.\d+)?)\b/i,operator:/--|\+\+|&&=?|\|\|=?|<<=?|>>=?|[=!]~|[-+*/%&|^!=<>]=?|\.|[:?]/,punctuation:/[(){}\[\];,]/}}return Uh}var zh,sC;function Kte(){if(sC)return zh;sC=1,zh=e,e.displayName="pug",e.aliases=[];function e(t){(function(n){n.languages.pug={comment:{pattern:/(^([\t ]*))\/\/.*(?:(?:\r?\n|\r)\2[\t ].+)*/m,lookbehind:!0},"multiline-script":{pattern:/(^([\t ]*)script\b.*\.[\t ]*)(?:(?:\r?\n|\r(?!\n))(?:\2[\t ].+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0,inside:n.languages.javascript},filter:{pattern:/(^([\t ]*)):.+(?:(?:\r?\n|\r(?!\n))(?:\2[\t ].+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"},text:/\S[\s\S]*/}},"multiline-plain-text":{pattern:/(^([\t ]*)[\w\-#.]+\.[\t ]*)(?:(?:\r?\n|\r(?!\n))(?:\2[\t ].+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0},markup:{pattern:/(^[\t ]*)<.+/m,lookbehind:!0,inside:n.languages.markup},doctype:{pattern:/((?:^|\n)[\t ]*)doctype(?: .+)?/,lookbehind:!0},"flow-control":{pattern:/(^[\t ]*)(?:case|default|each|else|if|unless|when|while)\b(?: .+)?/m,lookbehind:!0,inside:{each:{pattern:/^each .+? in\b/,inside:{keyword:/\b(?:each|in)\b/,punctuation:/,/}},branch:{pattern:/^(?:case|default|else|if|unless|when|while)\b/,alias:"keyword"},rest:n.languages.javascript}},keyword:{pattern:/(^[\t ]*)(?:append|block|extends|include|prepend)\b.+/m,lookbehind:!0},mixin:[{pattern:/(^[\t ]*)mixin .+/m,lookbehind:!0,inside:{keyword:/^mixin/,function:/\w+(?=\s*\(|\s*$)/,punctuation:/[(),.]/}},{pattern:/(^[\t ]*)\+.+/m,lookbehind:!0,inside:{name:{pattern:/^\+\w+/,alias:"function"},rest:n.languages.javascript}}],script:{pattern:/(^[\t ]*script(?:(?:&[^(]+)?\([^)]+\))*[\t ]).+/m,lookbehind:!0,inside:n.languages.javascript},"plain-text":{pattern:/(^[\t ]*(?!-)[\w\-#.]*[\w\-](?:(?:&[^(]+)?\([^)]+\))*\/?[\t ]).+/m,lookbehind:!0},tag:{pattern:/(^[\t ]*)(?!-)[\w\-#.]*[\w\-](?:(?:&[^(]+)?\([^)]+\))*\/?:?/m,lookbehind:!0,inside:{attributes:[{pattern:/&[^(]+\([^)]+\)/,inside:n.languages.javascript},{pattern:/\([^)]+\)/,inside:{"attr-value":{pattern:/(=\s*(?!\s))(?:\{[^}]*\}|[^,)\r\n]+)/,lookbehind:!0,inside:n.languages.javascript},"attr-name":/[\w-]+(?=\s*!?=|\s*[,)])/,punctuation:/[!=(),]+/}}],punctuation:/:/,"attr-id":/#[\w\-]+/,"attr-class":/\.[\w\-]+/}},code:[{pattern:/(^[\t ]*(?:-|!?=)).+/m,lookbehind:!0,inside:n.languages.javascript}],punctuation:/[.\-!=|]+/};for(var r=/(^([\t ]*)):(?:(?:\r?\n|\r(?!\n))(?:\2[\t ].+|\s*?(?=\r?\n|\r)))+/.source,a=[{filter:"atpl",language:"twig"},{filter:"coffee",language:"coffeescript"},"ejs","handlebars","less","livescript","markdown",{filter:"sass",language:"scss"},"stylus"],i={},s=0,l=a.length;s",function(){return c.filter}),"m"),lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"},text:{pattern:/\S[\s\S]*/,alias:[c.language,"language-"+c.language],inside:n.languages[c.language]}}})}n.languages.insertBefore("pug","filter",i)})(t)}return zh}var qh,oC;function Yte(){if(oC)return qh;oC=1,qh=e,e.displayName="puppet",e.aliases=[];function e(t){(function(n){n.languages.puppet={heredoc:[{pattern:/(@\("([^"\r\n\/):]+)"(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r(?!\n)))*?[ \t]*(?:\|[ \t]*)?(?:-[ \t]*)?\2/,lookbehind:!0,alias:"string",inside:{punctuation:/(?=\S).*\S(?= *$)/}},{pattern:/(@\(([^"\r\n\/):]+)(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r(?!\n)))*?[ \t]*(?:\|[ \t]*)?(?:-[ \t]*)?\2/,lookbehind:!0,greedy:!0,alias:"string",inside:{punctuation:/(?=\S).*\S(?= *$)/}},{pattern:/@\("?(?:[^"\r\n\/):]+)"?(?:\/[nrts$uL]*)?\)/,alias:"string",inside:{punctuation:{pattern:/(\().+?(?=\))/,lookbehind:!0}}}],"multiline-comment":{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0,greedy:!0,alias:"comment"},regex:{pattern:/((?:\bnode\s+|[~=\(\[\{,]\s*|[=+]>\s*|^\s*))\/(?:[^\/\\]|\\[\s\S])+\/(?:[imx]+\b|\B)/,lookbehind:!0,greedy:!0,inside:{"extended-regex":{pattern:/^\/(?:[^\/\\]|\\[\s\S])+\/[im]*x[im]*$/,inside:{comment:/#.*/}}}},comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},string:{pattern:/(["'])(?:\$\{(?:[^'"}]|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}|\$(?!\{)|(?!\1)[^\\$]|\\[\s\S])*\1/,greedy:!0,inside:{"double-quoted":{pattern:/^"[\s\S]*"$/,inside:{}}}},variable:{pattern:/\$(?:::)?\w+(?:::\w+)*/,inside:{punctuation:/::/}},"attr-name":/(?:\b\w+|\*)(?=\s*=>)/,function:[{pattern:/(\.)(?!\d)\w+/,lookbehind:!0},/\b(?:contain|debug|err|fail|include|info|notice|realize|require|tag|warning)\b|\b(?!\d)\w+(?=\()/],number:/\b(?:0x[a-f\d]+|\d+(?:\.\d+)?(?:e-?\d+)?)\b/i,boolean:/\b(?:false|true)\b/,keyword:/\b(?:application|attr|case|class|consumes|default|define|else|elsif|function|if|import|inherits|node|private|produces|type|undef|unless)\b/,datatype:{pattern:/\b(?:Any|Array|Boolean|Callable|Catalogentry|Class|Collection|Data|Default|Enum|Float|Hash|Integer|NotUndef|Numeric|Optional|Pattern|Regexp|Resource|Runtime|Scalar|String|Struct|Tuple|Type|Undef|Variant)\b/,alias:"symbol"},operator:/=[=~>]?|![=~]?|<(?:<\|?|[=~|-])?|>[>=]?|->?|~>|\|>?>?|[*\/%+?]|\b(?:and|in|or)\b/,punctuation:/[\[\]{}().,;]|:+/};var r=[{pattern:/(^|[^\\])\$\{(?:[^'"{}]|\{[^}]*\}|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}/,lookbehind:!0,inside:{"short-variable":{pattern:/(^\$\{)(?!\w+\()(?:::)?\w+(?:::\w+)*/,lookbehind:!0,alias:"variable",inside:{punctuation:/::/}},delimiter:{pattern:/^\$/,alias:"variable"},rest:n.languages.puppet}},{pattern:/(^|[^\\])\$(?:::)?\w+(?:::\w+)*/,lookbehind:!0,alias:"variable",inside:{punctuation:/::/}}];n.languages.puppet.heredoc[0].inside.interpolation=r,n.languages.puppet.string.inside["double-quoted"].inside.interpolation=r})(t)}return qh}var Hh,lC;function Xte(){if(lC)return Hh;lC=1,Hh=e,e.displayName="pure",e.aliases=[];function e(t){(function(n){n.languages.pure={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0},/#!.+/],"inline-lang":{pattern:/%<[\s\S]+?%>/,greedy:!0,inside:{lang:{pattern:/(^%< *)-\*-.+?-\*-/,lookbehind:!0,alias:"comment"},delimiter:{pattern:/^%<.*|%>$/,alias:"punctuation"}}},string:{pattern:/"(?:\\.|[^"\\\r\n])*"/,greedy:!0},number:{pattern:/((?:\.\.)?)(?:\b(?:inf|nan)\b|\b0x[\da-f]+|(?:\b(?:0b)?\d+(?:\.\d+)?|\B\.\d+)(?:e[+-]?\d+)?L?)/i,lookbehind:!0},keyword:/\b(?:NULL|ans|break|bt|case|catch|cd|clear|const|def|del|dump|else|end|exit|extern|false|force|help|if|infix[lr]?|interface|let|ls|mem|namespace|nonfix|of|otherwise|outfix|override|postfix|prefix|private|public|pwd|quit|run|save|show|stats|then|throw|trace|true|type|underride|using|when|with)\b/,function:/\b(?:abs|add_(?:addr|constdef|(?:fundef|interface|macdef|typedef)(?:_at)?|vardef)|all|any|applp?|arity|bigintp?|blob(?:_crc|_size|p)?|boolp?|byte_c?string(?:_pointer)?|byte_(?:matrix|pointer)|calloc|cat|catmap|ceil|char[ps]?|check_ptrtag|chr|clear_sentry|clearsym|closurep?|cmatrixp?|cols?|colcat(?:map)?|colmap|colrev|colvector(?:p|seq)?|complex(?:_float_(?:matrix|pointer)|_matrix(?:_view)?|_pointer|p)?|conj|cookedp?|cst|cstring(?:_(?:dup|list|vector))?|curry3?|cyclen?|del_(?:constdef|fundef|interface|macdef|typedef|vardef)|delete|diag(?:mat)?|dim|dmatrixp?|do|double(?:_matrix(?:_view)?|_pointer|p)?|dowith3?|drop|dropwhile|eval(?:cmd)?|exactp|filter|fix|fixity|flip|float(?:_matrix|_pointer)|floor|fold[lr]1?|frac|free|funp?|functionp?|gcd|get(?:_(?:byte|constdef|double|float|fundef|int(?:64)?|interface(?:_typedef)?|long|macdef|pointer|ptrtag|sentry|short|string|typedef|vardef))?|globsym|hash|head|id|im|imatrixp?|index|inexactp|infp|init|insert|int(?:_matrix(?:_view)?|_pointer|p)?|int64_(?:matrix|pointer)|integerp?|iteraten?|iterwhile|join|keys?|lambdap?|last(?:err(?:pos)?)?|lcd|list[2p]?|listmap|make_ptrtag|malloc|map|matcat|matrixp?|max|member|min|nanp|nargs|nmatrixp?|null|numberp?|ord|pack(?:ed)?|pointer(?:_cast|_tag|_type|p)?|pow|pred|ptrtag|put(?:_(?:byte|double|float|int(?:64)?|long|pointer|short|string))?|rationalp?|re|realp?|realloc|recordp?|redim|reduce(?:_with)?|refp?|repeatn?|reverse|rlistp?|round|rows?|rowcat(?:map)?|rowmap|rowrev|rowvector(?:p|seq)?|same|scan[lr]1?|sentry|sgn|short_(?:matrix|pointer)|slice|smatrixp?|sort|split|str|strcat|stream|stride|string(?:_(?:dup|list|vector)|p)?|subdiag(?:mat)?|submat|subseq2?|substr|succ|supdiag(?:mat)?|symbolp?|tail|take|takewhile|thunkp?|transpose|trunc|tuplep?|typep|ubyte|uint(?:64)?|ulong|uncurry3?|unref|unzip3?|update|ushort|vals?|varp?|vector(?:p|seq)?|void|zip3?|zipwith3?)\b/,special:{pattern:/\b__[a-z]+__\b/i,alias:"builtin"},operator:/(?:[!"#$%&'*+,\-.\/:<=>?@\\^`|~\u00a1-\u00bf\u00d7-\u00f7\u20d0-\u2bff]|\b_+\b)+|\b(?:and|div|mod|not|or)\b/,punctuation:/[(){}\[\];,|]/};var r=["c",{lang:"c++",alias:"cpp"},"fortran"],a=/%< *-\*- *\d* *-\*-[\s\S]+?%>/.source;r.forEach(function(i){var s=i;if(typeof i!="string"&&(s=i.alias,i=i.lang),n.languages[s]){var l={};l["inline-lang-"+s]={pattern:RegExp(a.replace("",i.replace(/([.+*?\/\\(){}\[\]])/g,"\\$1")),"i"),inside:n.util.clone(n.languages.pure["inline-lang"].inside)},l["inline-lang-"+s].inside.rest=n.util.clone(n.languages[s]),n.languages.insertBefore("pure","inline-lang",l)}}),n.languages.c&&(n.languages.pure["inline-lang"].inside.rest=n.util.clone(n.languages.c))})(t)}return Hh}var Gh,cC;function Zte(){if(cC)return Gh;cC=1,Gh=e,e.displayName="purebasic",e.aliases=[];function e(t){t.languages.purebasic=t.languages.extend("clike",{comment:/;.*/,keyword:/\b(?:align|and|as|break|calldebugger|case|compilercase|compilerdefault|compilerelse|compilerelseif|compilerendif|compilerendselect|compilererror|compilerif|compilerselect|continue|data|datasection|debug|debuglevel|declare|declarec|declarecdll|declaredll|declaremodule|default|define|dim|disableasm|disabledebugger|disableexplicit|else|elseif|enableasm|enabledebugger|enableexplicit|end|enddatasection|enddeclaremodule|endenumeration|endif|endimport|endinterface|endmacro|endmodule|endprocedure|endselect|endstructure|endstructureunion|endwith|enumeration|extends|fakereturn|for|foreach|forever|global|gosub|goto|if|import|importc|includebinary|includefile|includepath|interface|macro|module|newlist|newmap|next|not|or|procedure|procedurec|procedurecdll|proceduredll|procedurereturn|protected|prototype|prototypec|read|redim|repeat|restore|return|runtime|select|shared|static|step|structure|structureunion|swap|threaded|to|until|wend|while|with|xincludefile|xor)\b/i,function:/\b\w+(?:\.\w+)?\s*(?=\()/,number:/(?:\$[\da-f]+|\b-?(?:\d+(?:\.\d+)?|\.\d+)(?:e[+-]?\d+)?)\b/i,operator:/(?:@\*?|\?|\*)\w+|-[>-]?|\+\+?|!=?|<>?=?|==?|&&?|\|?\||[~^%?*/@]/}),t.languages.insertBefore("purebasic","keyword",{tag:/#\w+\$?/,asm:{pattern:/(^[\t ]*)!.*/m,lookbehind:!0,alias:"tag",inside:{comment:/;.*/,string:{pattern:/(["'`])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"label-reference-anonymous":{pattern:/(!\s*j[a-z]+\s+)@[fb]/i,lookbehind:!0,alias:"fasm-label"},"label-reference-addressed":{pattern:/(!\s*j[a-z]+\s+)[A-Z._?$@][\w.?$@~#]*/i,lookbehind:!0,alias:"fasm-label"},keyword:[/\b(?:extern|global)\b[^;\r\n]*/i,/\b(?:CPU|DEFAULT|FLOAT)\b.*/],function:{pattern:/^([\t ]*!\s*)[\da-z]+(?=\s|$)/im,lookbehind:!0},"function-inline":{pattern:/(:\s*)[\da-z]+(?=\s)/i,lookbehind:!0,alias:"function"},label:{pattern:/^([\t ]*!\s*)[A-Za-z._?$@][\w.?$@~#]*(?=:)/m,lookbehind:!0,alias:"fasm-label"},register:/\b(?:st\d|[xyz]mm\d\d?|[cdt]r\d|r\d\d?[bwd]?|[er]?[abcd]x|[abcd][hl]|[er]?(?:bp|di|si|sp)|[cdefgs]s|mm\d+)\b/i,number:/(?:\b|-|(?=\$))(?:0[hx](?:[\da-f]*\.)?[\da-f]+(?:p[+-]?\d+)?|\d[\da-f]+[hx]|\$\d[\da-f]*|0[oq][0-7]+|[0-7]+[oq]|0[by][01]+|[01]+[by]|0[dt]\d+|(?:\d+(?:\.\d+)?|\.\d+)(?:\.?e[+-]?\d+)?[dt]?)\b/i,operator:/[\[\]*+\-/%<>=&|$!,.:]/}}}),delete t.languages.purebasic["class-name"],delete t.languages.purebasic.boolean,t.languages.pbfasm=t.languages.purebasic}return Gh}var Vh,uC;function Jte(){if(uC)return Vh;uC=1;var e=Ny();Vh=t,t.displayName="purescript",t.aliases=["purs"];function t(n){n.register(e),n.languages.purescript=n.languages.extend("haskell",{keyword:/\b(?:ado|case|class|data|derive|do|else|forall|if|in|infixl|infixr|instance|let|module|newtype|of|primitive|then|type|where)\b|∀/,"import-statement":{pattern:/(^[\t ]*)import\s+[A-Z][\w']*(?:\.[A-Z][\w']*)*(?:\s+as\s+[A-Z][\w']*(?:\.[A-Z][\w']*)*)?(?:\s+hiding\b)?/m,lookbehind:!0,inside:{keyword:/\b(?:as|hiding|import)\b/,punctuation:/\./}},builtin:/\b(?:absurd|add|ap|append|apply|between|bind|bottom|clamp|compare|comparing|compose|conj|const|degree|discard|disj|div|eq|flap|flip|gcd|identity|ifM|join|lcm|liftA1|liftM1|map|max|mempty|min|mod|mul|negate|not|notEq|one|otherwise|recip|show|sub|top|unit|unless|unlessM|void|when|whenM|zero)\b/,operator:[n.languages.haskell.operator[0],n.languages.haskell.operator[2],/[\xa2-\xa6\xa8\xa9\xac\xae-\xb1\xb4\xb8\xd7\xf7\u02c2-\u02c5\u02d2-\u02df\u02e5-\u02eb\u02ed\u02ef-\u02ff\u0375\u0384\u0385\u03f6\u0482\u058d-\u058f\u0606-\u0608\u060b\u060e\u060f\u06de\u06e9\u06fd\u06fe\u07f6\u07fe\u07ff\u09f2\u09f3\u09fa\u09fb\u0af1\u0b70\u0bf3-\u0bfa\u0c7f\u0d4f\u0d79\u0e3f\u0f01-\u0f03\u0f13\u0f15-\u0f17\u0f1a-\u0f1f\u0f34\u0f36\u0f38\u0fbe-\u0fc5\u0fc7-\u0fcc\u0fce\u0fcf\u0fd5-\u0fd8\u109e\u109f\u1390-\u1399\u166d\u17db\u1940\u19de-\u19ff\u1b61-\u1b6a\u1b74-\u1b7c\u1fbd\u1fbf-\u1fc1\u1fcd-\u1fcf\u1fdd-\u1fdf\u1fed-\u1fef\u1ffd\u1ffe\u2044\u2052\u207a-\u207c\u208a-\u208c\u20a0-\u20bf\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211e-\u2123\u2125\u2127\u2129\u212e\u213a\u213b\u2140-\u2144\u214a-\u214d\u214f\u218a\u218b\u2190-\u2307\u230c-\u2328\u232b-\u2426\u2440-\u244a\u249c-\u24e9\u2500-\u2767\u2794-\u27c4\u27c7-\u27e5\u27f0-\u2982\u2999-\u29d7\u29dc-\u29fb\u29fe-\u2b73\u2b76-\u2b95\u2b97-\u2bff\u2ce5-\u2cea\u2e50\u2e51\u2e80-\u2e99\u2e9b-\u2ef3\u2f00-\u2fd5\u2ff0-\u2ffb\u3004\u3012\u3013\u3020\u3036\u3037\u303e\u303f\u309b\u309c\u3190\u3191\u3196-\u319f\u31c0-\u31e3\u3200-\u321e\u322a-\u3247\u3250\u3260-\u327f\u328a-\u32b0\u32c0-\u33ff\u4dc0-\u4dff\ua490-\ua4c6\ua700-\ua716\ua720\ua721\ua789\ua78a\ua828-\ua82b\ua836-\ua839\uaa77-\uaa79\uab5b\uab6a\uab6b\ufb29\ufbb2-\ufbc1\ufdfc\ufdfd\ufe62\ufe64-\ufe66\ufe69\uff04\uff0b\uff1c-\uff1e\uff3e\uff40\uff5c\uff5e\uffe0-\uffe6\uffe8-\uffee\ufffc\ufffd]/]}),n.languages.purs=n.languages.purescript}return Vh}var Wh,dC;function Qte(){if(dC)return Wh;dC=1,Wh=e,e.displayName="python",e.aliases=["py"];function e(t){t.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},t.languages.python["string-interpolation"].inside.interpolation.inside.rest=t.languages.python,t.languages.py=t.languages.python}return Wh}var Kh,pC;function ene(){if(pC)return Kh;pC=1,Kh=e,e.displayName="q",e.aliases=[];function e(t){t.languages.q={string:/"(?:\\.|[^"\\\r\n])*"/,comment:[{pattern:/([\t )\]}])\/.*/,lookbehind:!0,greedy:!0},{pattern:/(^|\r?\n|\r)\/[\t ]*(?:(?:\r?\n|\r)(?:.*(?:\r?\n|\r(?!\n)))*?(?:\\(?=[\t ]*(?:\r?\n|\r))|$)|\S.*)/,lookbehind:!0,greedy:!0},{pattern:/^\\[\t ]*(?:\r?\n|\r)[\s\S]+/m,greedy:!0},{pattern:/^#!.+/m,greedy:!0}],symbol:/`(?::\S+|[\w.]*)/,datetime:{pattern:/0N[mdzuvt]|0W[dtz]|\d{4}\.\d\d(?:m|\.\d\d(?:T(?:\d\d(?::\d\d(?::\d\d(?:[.:]\d\d\d)?)?)?)?)?[dz]?)|\d\d:\d\d(?::\d\d(?:[.:]\d\d\d)?)?[uvt]?/,alias:"number"},number:/\b(?![01]:)(?:0N[hje]?|0W[hj]?|0[wn]|0x[\da-fA-F]+|\d+(?:\.\d*)?(?:e[+-]?\d+)?[hjfeb]?)/,keyword:/\\\w+\b|\b(?:abs|acos|aj0?|all|and|any|asc|asin|asof|atan|attr|avgs?|binr?|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|ej|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|identity|idesc|if|ij|in|insert|inter|inv|keys?|last|like|list|ljf?|load|log|lower|lsq|ltime|ltrim|mavg|maxs?|mcount|md5|mdev|med|meta|mins?|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|plist|prds?|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ssr?|string|sublist|sums?|sv|svar|system|tables|tan|til|trim|txf|type|uj|ungroup|union|update|upper|upsert|value|var|views?|vs|wavg|where|while|within|wj1?|wsum|ww|xasc|xbar|xcols?|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)\b/,adverb:{pattern:/['\/\\]:?|\beach\b/,alias:"function"},verb:{pattern:/(?:\B\.\B|\b[01]:|<[=>]?|>=?|[:+\-*%,!?~=|$&#@^]):?|\b_\b:?/,alias:"operator"},punctuation:/[(){}\[\];.]/}}return Kh}var Yh,mC;function tne(){if(mC)return Yh;mC=1,Yh=e,e.displayName="qml",e.aliases=[];function e(t){(function(n){for(var r=/"(?:\\.|[^\\"\r\n])*"|'(?:\\.|[^\\'\r\n])*'/.source,a=/\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))*\*\//.source,i=/(?:[^\\()[\]{}"'/]||\/(?![*/])||\(*\)|\[*\]|\{*\}|\\[\s\S])/.source.replace(//g,function(){return r}).replace(//g,function(){return a}),s=0;s<2;s++)i=i.replace(//g,function(){return i});i=i.replace(//g,"[^\\s\\S]"),n.languages.qml={comment:{pattern:/\/\/.*|\/\*[\s\S]*?\*\//,greedy:!0},"javascript-function":{pattern:RegExp(/((?:^|;)[ \t]*)function\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*\(*\)\s*\{*\}/.source.replace(//g,function(){return i}),"m"),lookbehind:!0,greedy:!0,alias:"language-javascript",inside:n.languages.javascript},"class-name":{pattern:/((?:^|[:;])[ \t]*)(?!\d)\w+(?=[ \t]*\{|[ \t]+on\b)/m,lookbehind:!0},property:[{pattern:/((?:^|[;{])[ \t]*)(?!\d)\w+(?:\.\w+)*(?=[ \t]*:)/m,lookbehind:!0},{pattern:/((?:^|[;{])[ \t]*)property[ \t]+(?!\d)\w+(?:\.\w+)*[ \t]+(?!\d)\w+(?:\.\w+)*(?=[ \t]*:)/m,lookbehind:!0,inside:{keyword:/^property/,property:/\w+(?:\.\w+)*/}}],"javascript-expression":{pattern:RegExp(/(:[ \t]*)(?![\s;}[])(?:(?!$|[;}]))+/.source.replace(//g,function(){return i}),"m"),lookbehind:!0,greedy:!0,alias:"language-javascript",inside:n.languages.javascript},string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},keyword:/\b(?:as|import|on)\b/,punctuation:/[{}[\]:;,]/}})(t)}return Yh}var Xh,fC;function nne(){if(fC)return Xh;fC=1,Xh=e,e.displayName="qore",e.aliases=[];function e(t){t.languages.qore=t.languages.extend("clike",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:\/\/|#).*)/,lookbehind:!0},string:{pattern:/("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},keyword:/\b(?:abstract|any|assert|binary|bool|boolean|break|byte|case|catch|char|class|code|const|continue|data|default|do|double|else|enum|extends|final|finally|float|for|goto|hash|if|implements|import|inherits|instanceof|int|interface|long|my|native|new|nothing|null|object|our|own|private|reference|rethrow|return|short|soft(?:bool|date|float|int|list|number|string)|static|strictfp|string|sub|super|switch|synchronized|this|throw|throws|transient|try|void|volatile|while)\b/,boolean:/\b(?:false|true)\b/i,function:/\$?\b(?!\d)\w+(?=\()/,number:/\b(?:0b[01]+|0x(?:[\da-f]*\.)?[\da-fp\-]+|(?:\d+(?:\.\d+)?|\.\d+)(?:e\d+)?[df]|(?:\d+(?:\.\d+)?|\.\d+))\b/i,operator:{pattern:/(^|[^.])(?:\+[+=]?|-[-=]?|[!=](?:==?|~)?|>>?=?|<(?:=>?|<=?)?|&[&=]?|\|[|=]?|[*\/%^]=?|[~?])/,lookbehind:!0},variable:/\$(?!\d)\w+\b/})}return Xh}var Zh,hC;function rne(){if(hC)return Zh;hC=1,Zh=e,e.displayName="qsharp",e.aliases=["qs"];function e(t){(function(n){function r(g,b){return g.replace(/<<(\d+)>>/g,function(x,k){return"(?:"+b[+k]+")"})}function a(g,b,x){return RegExp(r(g,b),"")}function i(g,b){for(var x=0;x>/g,function(){return"(?:"+g+")"});return g.replace(/<>/g,"[^\\s\\S]")}var s={type:"Adj BigInt Bool Ctl Double false Int One Pauli PauliI PauliX PauliY PauliZ Qubit Range Result String true Unit Zero",other:"Adjoint adjoint apply as auto body borrow borrowing Controlled controlled distribute elif else fail fixup for function if in internal intrinsic invert is let mutable namespace new newtype open operation repeat return self set until use using while within"};function l(g){return"\\b(?:"+g.trim().replace(/ /g,"|")+")\\b"}var c=RegExp(l(s.type+" "+s.other)),u=/\b[A-Za-z_]\w*\b/.source,d=r(/<<0>>(?:\s*\.\s*<<0>>)*/.source,[u]),p={keyword:c,punctuation:/[<>()?,.:[\]]/},m=/"(?:\\.|[^\\"])*"/.source;n.languages.qsharp=n.languages.extend("clike",{comment:/\/\/.*/,string:[{pattern:a(/(^|[^$\\])<<0>>/.source,[m]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:a(/(\b(?:as|open)\s+)<<0>>(?=\s*(?:;|as\b))/.source,[d]),lookbehind:!0,inside:p},{pattern:a(/(\bnamespace\s+)<<0>>(?=\s*\{)/.source,[d]),lookbehind:!0,inside:p}],keyword:c,number:/(?:\b0(?:x[\da-f]+|b[01]+|o[0-7]+)|(?:\B\.\d+|\b\d+(?:\.\d*)?)(?:e[-+]?\d+)?)l?\b/i,operator:/\band=|\bor=|\band\b|\bnot\b|\bor\b|<[-=]|[-=]>|>>>=?|<<<=?|\^\^\^=?|\|\|\|=?|&&&=?|w\/=?|~~~|[*\/+\-^=!%]=?/,punctuation:/::|[{}[\];(),.:]/}),n.languages.insertBefore("qsharp","number",{range:{pattern:/\.\./,alias:"operator"}});var f=i(r(/\{(?:[^"{}]|<<0>>|<>)*\}/.source,[m]),2);n.languages.insertBefore("qsharp","string",{"interpolation-string":{pattern:a(/\$"(?:\\.|<<0>>|[^\\"{])*"/.source,[f]),greedy:!0,inside:{interpolation:{pattern:a(/((?:^|[^\\])(?:\\\\)*)<<0>>/.source,[f]),lookbehind:!0,inside:{punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-qsharp",inside:n.languages.qsharp}}},string:/[\s\S]+/}}})})(t),t.languages.qs=t.languages.qsharp}return Zh}var Jh,gC;function ane(){if(gC)return Jh;gC=1,Jh=e,e.displayName="r",e.aliases=[];function e(t){t.languages.r={comment:/#.*/,string:{pattern:/(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"percent-operator":{pattern:/%[^%\s]*%/,alias:"operator"},boolean:/\b(?:FALSE|TRUE)\b/,ellipsis:/\.\.(?:\.|\d+)/,number:[/\b(?:Inf|NaN)\b/,/(?:\b0x[\dA-Fa-f]+(?:\.\d*)?|\b\d+(?:\.\d*)?|\B\.\d+)(?:[EePp][+-]?\d+)?[iL]?/],keyword:/\b(?:NA|NA_character_|NA_complex_|NA_integer_|NA_real_|NULL|break|else|for|function|if|in|next|repeat|while)\b/,operator:/->?>?|<(?:=|=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/,punctuation:/[(){}\[\],;]/}}return Jh}var Qh,bC;function ine(){if(bC)return Qh;bC=1;var e=Ry();Qh=t,t.displayName="racket",t.aliases=["rkt"];function t(n){n.register(e),n.languages.racket=n.languages.extend("scheme",{"lambda-parameter":{pattern:/([(\[]lambda\s+[(\[])[^()\[\]'\s]+/,lookbehind:!0}}),n.languages.insertBefore("racket","string",{lang:{pattern:/^#lang.+/m,greedy:!0,alias:"keyword"}}),n.languages.rkt=n.languages.racket}return Qh}var e0,xC;function sne(){if(xC)return e0;xC=1,e0=e,e.displayName="reason",e.aliases=[];function e(t){t.languages.reason=t.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),t.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete t.languages.reason.function}return e0}var t0,yC;function one(){if(yC)return t0;yC=1,t0=e,e.displayName="regex",e.aliases=[];function e(t){(function(n){var r={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},a=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,i={pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},s={pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},l="(?:[^\\\\-]|"+a.source+")",c=RegExp(l+"-"+l),u={pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"};n.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:c,inside:{escape:a,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":r,"char-set":s,escape:a}},"special-escape":r,"char-set":i,backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":u}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:a,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|:=]=?|!=|\b_\b/,punctuation:/[,;.\[\]{}()]/}}return n0}var r0,kC;function cne(){if(kC)return r0;kC=1,r0=e,e.displayName="renpy",e.aliases=["rpy"];function e(t){t.languages.renpy={comment:{pattern:/(^|[^\\])#.+/,lookbehind:!0},string:{pattern:/("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\])*\2|(?:^#?(?:(?:[0-9a-fA-F]){3}|[0-9a-fA-F]{6})$)/m,greedy:!0},function:/\b[a-z_]\w*(?=\()/i,property:/\b(?:Update|UpdateVersion|action|activate_sound|adv_nvl_transition|after_load_transition|align|alpha|alt|anchor|antialias|area|auto|background|bar_invert|bar_resizing|bar_vertical|black_color|bold|bottom_bar|bottom_gutter|bottom_margin|bottom_padding|box_reverse|box_wrap|can_update|caret|child|color|crop|default_afm_enable|default_afm_time|default_fullscreen|default_text_cps|developer|directory_name|drag_handle|drag_joined|drag_name|drag_raise|draggable|dragged|drop_shadow|drop_shadow_color|droppable|dropped|easein|easeout|edgescroll|end_game_transition|end_splash_transition|enter_replay_transition|enter_sound|enter_transition|enter_yesno_transition|executable_name|exit_replay_transition|exit_sound|exit_transition|exit_yesno_transition|fadein|fadeout|first_indent|first_spacing|fit_first|focus|focus_mask|font|foreground|game_main_transition|get_installed_packages|google_play_key|google_play_salt|ground|has_music|has_sound|has_voice|height|help|hinting|hover|hover_background|hover_color|hover_sound|hovered|hyperlink_functions|idle|idle_color|image_style|include_update|insensitive|insensitive_background|insensitive_color|inside|intra_transition|italic|justify|kerning|keyboard_focus|language|layer_clipping|layers|layout|left_bar|left_gutter|left_margin|left_padding|length|line_leading|line_overlap_split|line_spacing|linear|main_game_transition|main_menu_music|maximum|min_width|minimum|minwidth|modal|mouse|mousewheel|name|narrator_menu|newline_indent|nvl_adv_transition|offset|order_reverse|outlines|overlay_functions|pos|position|prefix|radius|range|rest_indent|right_bar|right_gutter|right_margin|right_padding|rotate|rotate_pad|ruby_style|sample_sound|save_directory|say_attribute_transition|screen_height|screen_width|scrollbars|selected_hover|selected_hover_color|selected_idle|selected_idle_color|selected_insensitive|show_side_image|show_two_window|side_spacing|side_xpos|side_ypos|size|size_group|slow_cps|slow_cps_multiplier|spacing|strikethrough|subpixel|text_align|text_style|text_xpos|text_y_fudge|text_ypos|thumb|thumb_offset|thumb_shadow|thumbnail_height|thumbnail_width|time|top_bar|top_gutter|top_margin|top_padding|translations|underline|unscrollable|update|value|version|version_name|version_tuple|vertical|width|window_hide_transition|window_icon|window_left_padding|window_show_transition|window_title|windows_icon|xadjustment|xalign|xanchor|xanchoraround|xaround|xcenter|xfill|xinitial|xmargin|xmaximum|xminimum|xoffset|xofsset|xpadding|xpos|xsize|xzoom|yadjustment|yalign|yanchor|yanchoraround|yaround|ycenter|yfill|yinitial|ymargin|ymaximum|yminimum|yoffset|ypadding|ypos|ysize|ysizexysize|yzoom|zoom|zorder)\b/,tag:/\b(?:bar|block|button|buttoscreenn|drag|draggroup|fixed|frame|grid|[hv]box|hotbar|hotspot|image|imagebutton|imagemap|input|key|label|menu|mm_menu_frame|mousearea|nvl|parallel|screen|self|side|tag|text|textbutton|timer|vbar|viewport|window)\b|\$/,keyword:/\b(?:None|add|adjustment|alignaround|allow|angle|animation|around|as|assert|behind|box_layout|break|build|cache|call|center|changed|child_size|choice|circles|class|clear|clicked|clipping|clockwise|config|contains|continue|corner1|corner2|counterclockwise|def|default|define|del|delay|disabled|disabled_text|dissolve|elif|else|event|except|exclude|exec|expression|fade|finally|for|from|function|global|gm_root|has|hide|id|if|import|in|init|is|jump|knot|lambda|left|less_rounded|mm_root|movie|music|null|on|onlayer|pass|pause|persistent|play|print|python|queue|raise|random|renpy|repeat|return|right|rounded_window|scene|scope|set|show|slow|slow_abortable|slow_done|sound|stop|store|style|style_group|substitute|suffix|theme|transform|transform_anchor|transpose|try|ui|unhovered|updater|use|voice|while|widget|widget_hover|widget_selected|widget_text|yield)\b/,boolean:/\b(?:[Ff]alse|[Tt]rue)\b/,number:/(?:\b(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*(?:\.\d*)?)|\B\.\d+)(?:e[+-]?\d+)?j?/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:and|at|not|or|with)\b/,punctuation:/[{}[\];(),.:]/},t.languages.rpy=t.languages.renpy}return r0}var a0,wC;function une(){if(wC)return a0;wC=1,a0=e,e.displayName="rest",e.aliases=[];function e(t){t.languages.rest={table:[{pattern:/(^[\t ]*)(?:\+[=-]+)+\+(?:\r?\n|\r)(?:\1[+|].+[+|](?:\r?\n|\r))+\1(?:\+[=-]+)+\+/m,lookbehind:!0,inside:{punctuation:/\||(?:\+[=-]+)+\+/}},{pattern:/(^[\t ]*)=+ [ =]*=(?:(?:\r?\n|\r)\1.+)+(?:\r?\n|\r)\1=+ [ =]*=(?=(?:\r?\n|\r){2}|\s*$)/m,lookbehind:!0,inside:{punctuation:/[=-]+/}}],"substitution-def":{pattern:/(^[\t ]*\.\. )\|(?:[^|\s](?:[^|]*[^|\s])?)\| [^:]+::/m,lookbehind:!0,inside:{substitution:{pattern:/^\|(?:[^|\s]|[^|\s][^|]*[^|\s])\|/,alias:"attr-value",inside:{punctuation:/^\||\|$/}},directive:{pattern:/( )(?! )[^:]+::/,lookbehind:!0,alias:"function",inside:{punctuation:/::$/}}}},"link-target":[{pattern:/(^[\t ]*\.\. )\[[^\]]+\]/m,lookbehind:!0,alias:"string",inside:{punctuation:/^\[|\]$/}},{pattern:/(^[\t ]*\.\. )_(?:`[^`]+`|(?:[^:\\]|\\.)+):/m,lookbehind:!0,alias:"string",inside:{punctuation:/^_|:$/}}],directive:{pattern:/(^[\t ]*\.\. )[^:]+::/m,lookbehind:!0,alias:"function",inside:{punctuation:/::$/}},comment:{pattern:/(^[\t ]*\.\.)(?:(?: .+)?(?:(?:\r?\n|\r).+)+| .+)(?=(?:\r?\n|\r){2}|$)/m,lookbehind:!0},title:[{pattern:/^(([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+)(?:\r?\n|\r).+(?:\r?\n|\r)\1$/m,inside:{punctuation:/^[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+|[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/,important:/.+/}},{pattern:/(^|(?:\r?\n|\r){2}).+(?:\r?\n|\r)([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+(?=\r?\n|\r|$)/,lookbehind:!0,inside:{punctuation:/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/,important:/.+/}}],hr:{pattern:/((?:\r?\n|\r){2})([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2{3,}(?=(?:\r?\n|\r){2})/,lookbehind:!0,alias:"punctuation"},field:{pattern:/(^[\t ]*):[^:\r\n]+:(?= )/m,lookbehind:!0,alias:"attr-name"},"command-line-option":{pattern:/(^[\t ]*)(?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?(?:, (?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?)*(?=(?:\r?\n|\r)? {2,}\S)/im,lookbehind:!0,alias:"symbol"},"literal-block":{pattern:/::(?:\r?\n|\r){2}([ \t]+)(?![ \t]).+(?:(?:\r?\n|\r)\1.+)*/,inside:{"literal-block-punctuation":{pattern:/^::/,alias:"punctuation"}}},"quoted-literal-block":{pattern:/::(?:\r?\n|\r){2}([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]).*(?:(?:\r?\n|\r)\1.*)*/,inside:{"literal-block-punctuation":{pattern:/^(?:::|([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\1*)/m,alias:"punctuation"}}},"list-bullet":{pattern:/(^[\t ]*)(?:[*+\-•‣⁃]|\(?(?:\d+|[a-z]|[ivxdclm]+)\)|(?:\d+|[a-z]|[ivxdclm]+)\.)(?= )/im,lookbehind:!0,alias:"punctuation"},"doctest-block":{pattern:/(^[\t ]*)>>> .+(?:(?:\r?\n|\r).+)*/m,lookbehind:!0,inside:{punctuation:/^>>>/}},inline:[{pattern:/(^|[\s\-:\/'"<(\[{])(?::[^:]+:`.*?`|`.*?`:[^:]+:|(\*\*?|``?|\|)(?!\s)(?:(?!\2).)*\S\2(?=[\s\-.,:;!?\\\/'")\]}]|$))/m,lookbehind:!0,inside:{bold:{pattern:/(^\*\*).+(?=\*\*$)/,lookbehind:!0},italic:{pattern:/(^\*).+(?=\*$)/,lookbehind:!0},"inline-literal":{pattern:/(^``).+(?=``$)/,lookbehind:!0,alias:"symbol"},role:{pattern:/^:[^:]+:|:[^:]+:$/,alias:"function",inside:{punctuation:/^:|:$/}},"interpreted-text":{pattern:/(^`).+(?=`$)/,lookbehind:!0,alias:"attr-value"},substitution:{pattern:/(^\|).+(?=\|$)/,lookbehind:!0,alias:"attr-value"},punctuation:/\*\*?|``?|\|/}}],link:[{pattern:/\[[^\[\]]+\]_(?=[\s\-.,:;!?\\\/'")\]}]|$)/,alias:"string",inside:{punctuation:/^\[|\]_$/}},{pattern:/(?:\b[a-z\d]+(?:[_.:+][a-z\d]+)*_?_|`[^`]+`_?_|_`[^`]+`)(?=[\s\-.,:;!?\\\/'")\]}]|$)/i,alias:"string",inside:{punctuation:/^_?`|`$|`?_?_$/}}],punctuation:{pattern:/(^[\t ]*)(?:\|(?= |$)|(?:---?|—|\.\.|__)(?= )|\.\.$)/m,lookbehind:!0}}}return a0}var i0,SC;function dne(){if(SC)return i0;SC=1,i0=e,e.displayName="rip",e.aliases=[];function e(t){t.languages.rip={comment:{pattern:/#.*/,greedy:!0},char:{pattern:/\B`[^\s`'",.:;#\/\\()<>\[\]{}]\b/,greedy:!0},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},regex:{pattern:/(^|[^/])\/(?!\/)(?:\[[^\n\r\]]*\]|\\.|[^/\\\r\n\[])+\/(?=\s*(?:$|[\r\n,.;})]))/,lookbehind:!0,greedy:!0},keyword:/(?:=>|->)|\b(?:case|catch|class|else|exit|finally|if|raise|return|switch|try)\b/,builtin:/@|\bSystem\b/,boolean:/\b(?:false|true)\b/,date:/\b\d{4}-\d{2}-\d{2}\b/,time:/\b\d{2}:\d{2}:\d{2}\b/,datetime:/\b\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\b/,symbol:/:[^\d\s`'",.:;#\/\\()<>\[\]{}][^\s`'",.:;#\/\\()<>\[\]{}]*/,number:/[+-]?\b(?:\d+\.\d+|\d+)\b/,punctuation:/(?:\.{2,3})|[`,.:;=\/\\()<>\[\]{}]/,reference:/[^\d\s`'",.:;#\/\\()<>\[\]{}][^\s`'",.:;#\/\\()<>\[\]{}]*/}}return i0}var s0,EC;function pne(){if(EC)return s0;EC=1,s0=e,e.displayName="roboconf",e.aliases=[];function e(t){t.languages.roboconf={comment:/#.*/,keyword:{pattern:/(^|\s)(?:(?:external|import)\b|(?:facet|instance of)(?=[ \t]+[\w-]+[ \t]*\{))/,lookbehind:!0},component:{pattern:/[\w-]+(?=[ \t]*\{)/,alias:"variable"},property:/[\w.-]+(?=[ \t]*:)/,value:{pattern:/(=[ \t]*(?![ \t]))[^,;]+/,lookbehind:!0,alias:"attr-value"},optional:{pattern:/\(optional\)/,alias:"builtin"},wildcard:{pattern:/(\.)\*/,lookbehind:!0,alias:"operator"},punctuation:/[{},.;:=]/}}return s0}var o0,CC;function mne(){if(CC)return o0;CC=1,o0=e,e.displayName="robotframework",e.aliases=[];function e(t){(function(n){var r={pattern:/(^[ \t]*| {2}|\t)#.*/m,lookbehind:!0,greedy:!0},a={pattern:/((?:^|[^\\])(?:\\{2})*)[$@&%]\{(?:[^{}\r\n]|\{[^{}\r\n]*\})*\}/,lookbehind:!0,inside:{punctuation:/^[$@&%]\{|\}$/}};function i(u,d){var p={};p["section-header"]={pattern:/^ ?\*{3}.+?\*{3}/,alias:"keyword"};for(var m in d)p[m]=d[m];return p.tag={pattern:/([\r\n](?: {2}|\t)[ \t]*)\[[-\w]+\]/,lookbehind:!0,inside:{punctuation:/\[|\]/}},p.variable=a,p.comment=r,{pattern:RegExp(/^ ?\*{3}[ \t]*[ \t]*\*{3}(?:.|[\r\n](?!\*{3}))*/.source.replace(//g,function(){return u}),"im"),alias:"section",inside:p}}var s={pattern:/(\[Documentation\](?: {2}|\t)[ \t]*)(?![ \t]|#)(?:.|(?:\r\n?|\n)[ \t]*\.{3})+/,lookbehind:!0,alias:"string"},l={pattern:/([\r\n] ?)(?!#)(?:\S(?:[ \t]\S)*)+/,lookbehind:!0,alias:"function",inside:{variable:a}},c={pattern:/([\r\n](?: {2}|\t)[ \t]*)(?!\[|\.{3}|#)(?:\S(?:[ \t]\S)*)+/,lookbehind:!0,inside:{variable:a}};n.languages.robotframework={settings:i("Settings",{documentation:{pattern:/([\r\n] ?Documentation(?: {2}|\t)[ \t]*)(?![ \t]|#)(?:.|(?:\r\n?|\n)[ \t]*\.{3})+/,lookbehind:!0,alias:"string"},property:{pattern:/([\r\n] ?)(?!\.{3}|#)(?:\S(?:[ \t]\S)*)+/,lookbehind:!0}}),variables:i("Variables"),"test-cases":i("Test Cases",{"test-name":l,documentation:s,property:c}),keywords:i("Keywords",{"keyword-name":l,documentation:s,property:c}),tasks:i("Tasks",{"task-name":l,documentation:s,property:c}),comment:r},n.languages.robot=n.languages.robotframework})(t)}return o0}var l0,NC;function fne(){if(NC)return l0;NC=1,l0=e,e.displayName="rust",e.aliases=[];function e(t){(function(n){for(var r=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|)*\*\//.source,a=0;a<2;a++)r=r.replace(//g,function(){return r});r=r.replace(//g,function(){return/[^\s\S]/.source}),n.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+r),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<>?=?|[@?]/},n.languages.rust["closure-params"].inside.rest=n.languages.rust,n.languages.rust.attribute.inside.string=n.languages.rust.string})(t)}return l0}var c0,TC;function hne(){if(TC)return c0;TC=1,c0=e,e.displayName="sas",e.aliases=[];function e(t){(function(n){var r=/(?:"(?:""|[^"])*"(?!")|'(?:''|[^'])*'(?!'))/.source,a=/\b(?:\d[\da-f]*x|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b/i,i={pattern:RegExp(r+"[bx]"),alias:"number"},s={pattern:/&[a-z_]\w*/i},l={pattern:/((?:^|\s|=|\())%(?:ABORT|BY|CMS|COPY|DISPLAY|DO|ELSE|END|EVAL|GLOBAL|GO|GOTO|IF|INC|INCLUDE|INDEX|INPUT|KTRIM|LENGTH|LET|LIST|LOCAL|PUT|QKTRIM|QSCAN|QSUBSTR|QSYSFUNC|QUPCASE|RETURN|RUN|SCAN|SUBSTR|SUPERQ|SYMDEL|SYMEXIST|SYMGLOBL|SYMLOCAL|SYSCALL|SYSEVALF|SYSEXEC|SYSFUNC|SYSGET|SYSRPUT|THEN|TO|TSO|UNQUOTE|UNTIL|UPCASE|WHILE|WINDOW)\b/i,lookbehind:!0,alias:"keyword"},c={pattern:/(^|\s)(?:proc\s+\w+|data(?!=)|quit|run)\b/i,alias:"keyword",lookbehind:!0},u=[/\/\*[\s\S]*?\*\//,{pattern:/(^[ \t]*|;\s*)\*[^;]*;/m,lookbehind:!0}],d={pattern:RegExp(r),greedy:!0},p=/[$%@.(){}\[\];,\\]/,m={pattern:/%?\b\w+(?=\()/,alias:"keyword"},f={function:m,"arg-value":{pattern:/(=\s*)[A-Z\.]+/i,lookbehind:!0},operator:/=/,"macro-variable":s,arg:{pattern:/[A-Z]+/i,alias:"keyword"},number:a,"numeric-constant":i,punctuation:p,string:d},g={pattern:/\b(?:format|put)\b=?[\w'$.]+/i,inside:{keyword:/^(?:format|put)(?==)/i,equals:/=/,format:{pattern:/(?:\w|\$\d)+\.\d?/,alias:"number"}}},b={pattern:/\b(?:format|put)\s+[\w']+(?:\s+[$.\w]+)+(?=;)/i,inside:{keyword:/^(?:format|put)/i,format:{pattern:/[\w$]+\.\d?/,alias:"number"}}},x={pattern:/((?:^|\s)=?)(?:catname|checkpoint execute_always|dm|endsas|filename|footnote|%include|libname|%list|lock|missing|options|page|resetline|%run|sasfile|skip|sysecho|title\d?)\b/i,lookbehind:!0,alias:"keyword"},k={pattern:/(^|\s)(?:submit(?:\s+(?:load|norun|parseonly))?|endsubmit)\b/i,lookbehind:!0,alias:"keyword"},y=/aStore|accessControl|aggregation|audio|autotune|bayesianNetClassifier|bioMedImage|boolRule|builtins|cardinality|cdm|clustering|conditionalRandomFields|configuration|copula|countreg|dataDiscovery|dataPreprocess|dataSciencePilot|dataStep|decisionTree|deduplication|deepLearn|deepNeural|deepRnn|ds2|ecm|entityRes|espCluster|explainModel|factmac|fastKnn|fcmpact|fedSql|freqTab|gVarCluster|gam|gleam|graphSemiSupLearn|hiddenMarkovModel|hyperGroup|ica|image|iml|kernalPca|langModel|ldaTopic|loadStreams|mbc|mixed|mlTools|modelPublishing|network|neuralNet|nmf|nonParametricBayes|nonlinear|optNetwork|optimization|panel|pca|percentile|phreg|pls|qkb|qlim|quantreg|recommend|regression|reinforcementLearn|robustPca|ruleMining|sampling|sandwich|sccasl|search(?:Analytics)?|sentimentAnalysis|sequence|session(?:Prop)?|severity|simSystem|simple|smartData|sparkEmbeddedProcess|sparseML|spatialreg|spc|stabilityMonitoring|svDataDescription|svm|table|text(?:Filters|Frequency|Mining|Parse|Rule(?:Develop|Score)|Topic|Util)|timeData|transpose|tsInfo|tsReconcile|uniTimeSeries|varReduce/.source,v={pattern:RegExp(/(^|\s)(?:action\s+)?(?:)\.[a-z]+\b[^;]+/.source.replace(//g,function(){return y}),"i"),lookbehind:!0,inside:{keyword:RegExp(/(?:)\.[a-z]+\b/.source.replace(//g,function(){return y}),"i"),action:{pattern:/(?:action)/i,alias:"keyword"},comment:u,function:m,"arg-value":f["arg-value"],operator:f.operator,argument:f.arg,number:a,"numeric-constant":i,punctuation:p,string:d}},E={pattern:/((?:^|\s)=?)(?:after|analysis|and|array|barchart|barwidth|begingraph|by|call|cas|cbarline|cfill|class(?:lev)?|close|column|computed?|contains|continue|data(?==)|define|delete|describe|document|do\s+over|do|dol|drop|dul|else|end(?:comp|source)?|entryTitle|eval(?:uate)?|exec(?:ute)?|exit|file(?:name)?|fill(?:attrs)?|flist|fnc|function(?:list)?|global|goto|group(?:by)?|headline|headskip|histogram|if|infile|keep|keylabel|keyword|label|layout|leave|legendlabel|length|libname|loadactionset|merge|midpoints|_?null_|name|noobs|nowd|ods|options|or|otherwise|out(?:put)?|over(?:lay)?|plot|print|put|raise|ranexp|rannor|rbreak|retain|return|select|session|sessref|set|source|statgraph|sum|summarize|table|temp|terminate|then\s+do|then|title\d?|to|var|when|where|xaxisopts|y2axisopts|yaxisopts)\b/i,lookbehind:!0};n.languages.sas={datalines:{pattern:/^([ \t]*)(?:cards|(?:data)?lines);[\s\S]+?^[ \t]*;/im,lookbehind:!0,alias:"string",inside:{keyword:{pattern:/^(?:cards|(?:data)?lines)/i},punctuation:/;/}},"proc-sql":{pattern:/(^proc\s+(?:fed)?sql(?:\s+[\w|=]+)?;)[\s\S]+?(?=^(?:proc\s+\w+|data|quit|run);|(?![\s\S]))/im,lookbehind:!0,inside:{sql:{pattern:RegExp(/^[ \t]*(?:select|alter\s+table|(?:create|describe|drop)\s+(?:index|table(?:\s+constraints)?|view)|create\s+unique\s+index|insert\s+into|update)(?:|[^;"'])+;/.source.replace(//g,function(){return r}),"im"),alias:"language-sql",inside:n.languages.sql},"global-statements":x,"sql-statements":{pattern:/(^|\s)(?:disconnect\s+from|begin|commit|exec(?:ute)?|reset|rollback|validate)\b/i,lookbehind:!0,alias:"keyword"},number:a,"numeric-constant":i,punctuation:p,string:d}},"proc-groovy":{pattern:/(^proc\s+groovy(?:\s+[\w|=]+)?;)[\s\S]+?(?=^(?:proc\s+\w+|data|quit|run);|(?![\s\S]))/im,lookbehind:!0,inside:{comment:u,groovy:{pattern:RegExp(/(^[ \t]*submit(?:\s+(?:load|norun|parseonly))?)(?:|[^"'])+?(?=endsubmit;)/.source.replace(//g,function(){return r}),"im"),lookbehind:!0,alias:"language-groovy",inside:n.languages.groovy},keyword:E,"submit-statement":k,"global-statements":x,number:a,"numeric-constant":i,punctuation:p,string:d}},"proc-lua":{pattern:/(^proc\s+lua(?:\s+[\w|=]+)?;)[\s\S]+?(?=^(?:proc\s+\w+|data|quit|run);|(?![\s\S]))/im,lookbehind:!0,inside:{comment:u,lua:{pattern:RegExp(/(^[ \t]*submit(?:\s+(?:load|norun|parseonly))?)(?:|[^"'])+?(?=endsubmit;)/.source.replace(//g,function(){return r}),"im"),lookbehind:!0,alias:"language-lua",inside:n.languages.lua},keyword:E,"submit-statement":k,"global-statements":x,number:a,"numeric-constant":i,punctuation:p,string:d}},"proc-cas":{pattern:/(^proc\s+cas(?:\s+[\w|=]+)?;)[\s\S]+?(?=^(?:proc\s+\w+|quit|data);|(?![\s\S]))/im,lookbehind:!0,inside:{comment:u,"statement-var":{pattern:/((?:^|\s)=?)saveresult\s[^;]+/im,lookbehind:!0,inside:{statement:{pattern:/^saveresult\s+\S+/i,inside:{keyword:/^(?:saveresult)/i}},rest:f}},"cas-actions":v,statement:{pattern:/((?:^|\s)=?)(?:default|(?:un)?set|on|output|upload)[^;]+/im,lookbehind:!0,inside:f},step:c,keyword:E,function:m,format:g,altformat:b,"global-statements":x,number:a,"numeric-constant":i,punctuation:p,string:d}},"proc-args":{pattern:RegExp(/(^proc\s+\w+\s+)(?!\s)(?:[^;"']|)+;/.source.replace(//g,function(){return r}),"im"),lookbehind:!0,inside:f},"macro-keyword":l,"macro-variable":s,"macro-string-functions":{pattern:/((?:^|\s|=))%(?:BQUOTE|NRBQUOTE|NRQUOTE|NRSTR|QUOTE|STR)\(.*?(?:[^%]\))/i,lookbehind:!0,inside:{function:{pattern:/%(?:BQUOTE|NRBQUOTE|NRQUOTE|NRSTR|QUOTE|STR)/i,alias:"keyword"},"macro-keyword":l,"macro-variable":s,"escaped-char":{pattern:/%['"()<>=¬^~;,#]/},punctuation:p}},"macro-declaration":{pattern:/^%macro[^;]+(?=;)/im,inside:{keyword:/%macro/i}},"macro-end":{pattern:/^%mend[^;]+(?=;)/im,inside:{keyword:/%mend/i}},macro:{pattern:/%_\w+(?=\()/,alias:"keyword"},input:{pattern:/\binput\s[-\w\s/*.$&]+;/i,inside:{input:{alias:"keyword",pattern:/^input/i},comment:u,number:a,"numeric-constant":i}},"options-args":{pattern:/(^options)[-'"|/\\<>*+=:()\w\s]*(?=;)/im,lookbehind:!0,inside:f},"cas-actions":v,comment:u,function:m,format:g,altformat:b,"numeric-constant":i,datetime:{pattern:RegExp(r+"(?:dt?|t)"),alias:"number"},string:d,step:c,keyword:E,"operator-keyword":{pattern:/\b(?:eq|ge|gt|in|le|lt|ne|not)\b/i,alias:"operator"},number:a,operator:/\*\*?|\|\|?|!!?|¦¦?|<[>=]?|>[<=]?|[-+\/=&]|[~¬^]=?/,punctuation:p}})(t)}return c0}var u0,AC;function gne(){if(AC)return u0;AC=1,u0=e,e.displayName="sass",e.aliases=[];function e(t){(function(n){n.languages.sass=n.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),n.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete n.languages.sass.atrule;var r=/\$[-\w]+|#\{\$[-\w]+\}/,a=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];n.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:r,operator:a}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:r,operator:a,important:n.languages.sass.important}}}),delete n.languages.sass.property,delete n.languages.sass.important,n.languages.insertBefore("sass","punctuation",{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})})(t)}return u0}var d0,IC;function bne(){if(IC)return d0;IC=1;var e=Ty();d0=t,t.displayName="scala",t.aliases=[];function t(n){n.register(e),n.languages.scala=n.languages.extend("java",{"triple-quoted-string":{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string"},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:/<-|=>|\b(?:abstract|case|catch|class|def|do|else|extends|final|finally|for|forSome|if|implicit|import|lazy|match|new|null|object|override|package|private|protected|return|sealed|self|super|this|throw|trait|try|type|val|var|while|with|yield)\b/,number:/\b0x(?:[\da-f]*\.)?[\da-f]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e\d+)?[dfl]?/i,builtin:/\b(?:Any|AnyRef|AnyVal|Boolean|Byte|Char|Double|Float|Int|Long|Nothing|Short|String|Unit)\b/,symbol:/'[^\d\s\\]\w*/}),n.languages.insertBefore("scala","triple-quoted-string",{"string-interpolation":{pattern:/\b[a-z]\w*(?:"""(?:[^$]|\$(?:[^{]|\{(?:[^{}]|\{[^{}]*\})*\}))*?"""|"(?:[^$"\r\n]|\$(?:[^{]|\{(?:[^{}]|\{[^{}]*\})*\}))*")/i,greedy:!0,inside:{id:{pattern:/^\w+/,greedy:!0,alias:"function"},escape:{pattern:/\\\$"|\$[$"]/,greedy:!0,alias:"symbol"},interpolation:{pattern:/\$(?:\w+|\{(?:[^{}]|\{[^{}]*\})*\})/,greedy:!0,inside:{punctuation:/^\$\{?|\}$/,expression:{pattern:/[\s\S]+/,inside:n.languages.scala}}},string:/[\s\S]+/}}}),delete n.languages.scala["class-name"],delete n.languages.scala.function}return d0}var p0,RC;function xne(){if(RC)return p0;RC=1,p0=e,e.displayName="scss",e.aliases=[];function e(t){t.languages.scss=t.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),t.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),t.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),t.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),t.languages.scss.atrule.inside.rest=t.languages.scss}return p0}var m0,_C;function yne(){if(_C)return m0;_C=1;var e=o6();m0=t,t.displayName="shellSession",t.aliases=[];function t(n){n.register(e),(function(r){var a=[/"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/.source,/'[^']*'/.source,/\$'(?:[^'\\]|\\[\s\S])*'/.source,/<<-?\s*(["']?)(\w+)\1\s[\s\S]*?[\r\n]\2/.source].join("|");r.languages["shell-session"]={command:{pattern:RegExp(/^/.source+"(?:"+(/[^\s@:$#%*!/\\]+@[^\r\n@:$#%*!/\\]+(?::[^\0-\x1F$#%*?"<>:;|]+)?/.source+"|"+/[/~.][^\0-\x1F$#%*?"<>@:;|]*/.source)+")?"+/[$#%](?=\s)/.source+/(?:[^\\\r\n \t'"<$]|[ \t](?:(?!#)|#.*$)|\\(?:[^\r]|\r\n?)|\$(?!')|<(?!<)|<>)+/.source.replace(/<>/g,function(){return a}),"m"),greedy:!0,inside:{info:{pattern:/^[^#$%]+/,alias:"punctuation",inside:{user:/^[^\s@:$#%*!/\\]+@[^\r\n@:$#%*!/\\]+/,punctuation:/:/,path:/[\s\S]+/}},bash:{pattern:/(^[$#%]\s*)\S[\s\S]*/,lookbehind:!0,alias:"language-bash",inside:r.languages.bash},"shell-symbol":{pattern:/^[$#%]/,alias:"important"}}},output:/.(?:.*(?:[\r\n]|.$))*/},r.languages["sh-session"]=r.languages.shellsession=r.languages["shell-session"]})(n)}return m0}var f0,jC;function vne(){if(jC)return f0;jC=1,f0=e,e.displayName="smali",e.aliases=[];function e(t){t.languages.smali={comment:/#.*/,string:{pattern:/"(?:[^\r\n\\"]|\\.)*"|'(?:[^\r\n\\']|\\(?:.|u[\da-fA-F]{4}))'/,greedy:!0},"class-name":{pattern:/(^|[^L])L(?:(?:\w+|`[^`\r\n]*`)\/)*(?:[\w$]+|`[^`\r\n]*`)(?=\s*;)/,lookbehind:!0,inside:{"class-name":{pattern:/(^L|\/)(?:[\w$]+|`[^`\r\n]*`)$/,lookbehind:!0},namespace:{pattern:/^(L)(?:(?:\w+|`[^`\r\n]*`)\/)+/,lookbehind:!0,inside:{punctuation:/\//}},builtin:/^L/}},builtin:[{pattern:/([();\[])[BCDFIJSVZ]+/,lookbehind:!0},{pattern:/([\w$>]:)[BCDFIJSVZ]/,lookbehind:!0}],keyword:[{pattern:/(\.end\s+)[\w-]+/,lookbehind:!0},{pattern:/(^|[^\w.-])\.(?!\d)[\w-]+/,lookbehind:!0},{pattern:/(^|[^\w.-])(?:abstract|annotation|bridge|constructor|enum|final|interface|private|protected|public|runtime|static|synthetic|system|transient)(?![\w.-])/,lookbehind:!0}],function:{pattern:/(^|[^\w.-])(?:\w+|<[\w$-]+>)(?=\()/,lookbehind:!0},field:{pattern:/[\w$]+(?=:)/,alias:"variable"},register:{pattern:/(^|[^\w.-])[vp]\d(?![\w.-])/,lookbehind:!0,alias:"variable"},boolean:{pattern:/(^|[^\w.-])(?:false|true)(?![\w.-])/,lookbehind:!0},number:{pattern:/(^|[^/\w.-])-?(?:NAN|INFINITY|0x(?:[\dA-F]+(?:\.[\dA-F]*)?|\.[\dA-F]+)(?:p[+-]?[\dA-F]+)?|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)[dflst]?(?![\w.-])/i,lookbehind:!0},label:{pattern:/(:)\w+/,lookbehind:!0,alias:"property"},operator:/->|\.\.|[\[=]/,punctuation:/[{}(),;:]/}}return f0}var h0,OC;function kne(){if(OC)return h0;OC=1,h0=e,e.displayName="smalltalk",e.aliases=[];function e(t){t.languages.smalltalk={comment:{pattern:/"(?:""|[^"])*"/,greedy:!0},char:{pattern:/\$./,greedy:!0},string:{pattern:/'(?:''|[^'])*'/,greedy:!0},symbol:/#[\da-z]+|#(?:-|([+\/\\*~<>=@%|&?!])\1?)|#(?=\()/i,"block-arguments":{pattern:/(\[\s*):[^\[|]*\|/,lookbehind:!0,inside:{variable:/:[\da-z]+/i,punctuation:/\|/}},"temporary-variables":{pattern:/\|[^|]+\|/,inside:{variable:/[\da-z]+/i,punctuation:/\|/}},keyword:/\b(?:new|nil|self|super)\b/,boolean:/\b(?:false|true)\b/,number:[/\d+r-?[\dA-Z]+(?:\.[\dA-Z]+)?(?:e-?\d+)?/,/\b\d+(?:\.\d+)?(?:e-?\d+)?/],operator:/[<=]=?|:=|~[~=]|\/\/?|\\\\|>[>=]?|[!^+\-*&|,@]/,punctuation:/[.;:?\[\](){}]/}}return h0}var g0,DC;function wne(){if(DC)return g0;DC=1;var e=Gn();g0=t,t.displayName="smarty",t.aliases=[];function t(n){n.register(e),(function(r){r.languages.smarty={comment:{pattern:/^\{\*[\s\S]*?\*\}/,greedy:!0},"embedded-php":{pattern:/^\{php\}[\s\S]*?\{\/php\}/,greedy:!0,inside:{smarty:{pattern:/^\{php\}|\{\/php\}$/,inside:null},php:{pattern:/[\s\S]+/,alias:"language-php",inside:r.languages.php}}},string:[{pattern:/"(?:\\.|[^"\\\r\n])*"/,greedy:!0,inside:{interpolation:{pattern:/\{[^{}]*\}|`[^`]*`/,inside:{"interpolation-punctuation":{pattern:/^[{`]|[`}]$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:null}}},variable:/\$\w+/}},{pattern:/'(?:\\.|[^'\\\r\n])*'/,greedy:!0}],keyword:{pattern:/(^\{\/?)[a-z_]\w*\b(?!\()/i,lookbehind:!0,greedy:!0},delimiter:{pattern:/^\{\/?|\}$/,greedy:!0,alias:"punctuation"},number:/\b0x[\dA-Fa-f]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][-+]?\d+)?/,variable:[/\$(?!\d)\w+/,/#(?!\d)\w+#/,{pattern:/(\.|->|\w\s*=)(?!\d)\w+\b(?!\()/,lookbehind:!0},{pattern:/(\[)(?!\d)\w+(?=\])/,lookbehind:!0}],function:{pattern:/(\|\s*)@?[a-z_]\w*|\b[a-z_]\w*(?=\()/i,lookbehind:!0},"attr-name":/\b[a-z_]\w*(?=\s*=)/i,boolean:/\b(?:false|no|off|on|true|yes)\b/,punctuation:/[\[\](){}.,:`]|->/,operator:[/[+\-*\/%]|==?=?|[!<>]=?|&&|\|\|?/,/\bis\s+(?:not\s+)?(?:div|even|odd)(?:\s+by)?\b/,/\b(?:and|eq|gt?e|gt|lt?e|lt|mod|neq?|not|or)\b/]},r.languages.smarty["embedded-php"].inside.smarty.inside=r.languages.smarty,r.languages.smarty.string[0].inside.interpolation.inside.expression.inside=r.languages.smarty;var a=/"(?:\\.|[^"\\\r\n])*"|'(?:\\.|[^'\\\r\n])*'/,i=RegExp(/\{\*[\s\S]*?\*\}/.source+"|"+/\{php\}[\s\S]*?\{\/php\}/.source+"|"+/\{(?:[^{}"']||\{(?:[^{}"']||\{(?:[^{}"']|)*\})*\})*\}/.source.replace(//g,function(){return a.source}),"g");r.hooks.add("before-tokenize",function(s){var l="{literal}",c="{/literal}",u=!1;r.languages["markup-templating"].buildPlaceholders(s,"smarty",i,function(d){return d===c&&(u=!1),u?!1:(d===l&&(u=!0),!0)})}),r.hooks.add("after-tokenize",function(s){r.languages["markup-templating"].tokenizePlaceholders(s,"smarty")})})(n)}return g0}var b0,MC;function Sne(){if(MC)return b0;MC=1,b0=e,e.displayName="sml",e.aliases=["smlnj"];function e(t){(function(n){var r=/\b(?:abstype|and|andalso|as|case|datatype|do|else|end|eqtype|exception|fn|fun|functor|handle|if|in|include|infix|infixr|let|local|nonfix|of|op|open|orelse|raise|rec|sharing|sig|signature|struct|structure|then|type|val|where|while|with|withtype)\b/i;n.languages.sml={comment:/\(\*(?:[^*(]|\*(?!\))|\((?!\*)|\(\*(?:[^*(]|\*(?!\))|\((?!\*))*\*\))*\*\)/,string:{pattern:/#?"(?:[^"\\]|\\.)*"/,greedy:!0},"class-name":[{pattern:RegExp(/((?:^|[^:]):\s*)(?:\s*(?:(?:\*|->)\s*|,\s*(?:(?=)|(?!)\s+)))*/.source.replace(//g,function(){return/\s*(?:[*,]|->)/.source}).replace(//g,function(){return/(?:'[\w']*||\((?:[^()]|\([^()]*\))*\)|\{(?:[^{}]|\{[^{}]*\})*\})(?:\s+)*/.source}).replace(//g,function(){return/(?!)[a-z\d_][\w'.]*/.source}).replace(//g,function(){return r.source}),"i"),lookbehind:!0,greedy:!0,inside:null},{pattern:/((?:^|[^\w'])(?:datatype|exception|functor|signature|structure|type)\s+)[a-z_][\w'.]*/i,lookbehind:!0}],function:{pattern:/((?:^|[^\w'])fun\s+)[a-z_][\w'.]*/i,lookbehind:!0},keyword:r,variable:{pattern:/(^|[^\w'])'[\w']*/,lookbehind:!0},number:/~?\b(?:\d+(?:\.\d+)?(?:e~?\d+)?|0x[\da-f]+)\b/i,word:{pattern:/\b0w(?:\d+|x[\da-f]+)\b/i,alias:"constant"},boolean:/\b(?:false|true)\b/i,operator:/\.\.\.|:[>=:]|=>?|->|[<>]=?|[!+\-*/^#|@~]/,punctuation:/[(){}\[\].:,;]/},n.languages.sml["class-name"][0].inside=n.languages.sml,n.languages.smlnj=n.languages.sml})(t)}return b0}var x0,LC;function Ene(){if(LC)return x0;LC=1,x0=e,e.displayName="solidity",e.aliases=["sol"];function e(t){t.languages.solidity=t.languages.extend("clike",{"class-name":{pattern:/(\b(?:contract|enum|interface|library|new|struct|using)\s+)(?!\d)[\w$]+/,lookbehind:!0},keyword:/\b(?:_|anonymous|as|assembly|assert|break|calldata|case|constant|constructor|continue|contract|default|delete|do|else|emit|enum|event|external|for|from|function|if|import|indexed|inherited|interface|internal|is|let|library|mapping|memory|modifier|new|payable|pragma|private|public|pure|require|returns?|revert|selfdestruct|solidity|storage|struct|suicide|switch|this|throw|using|var|view|while)\b/,operator:/=>|->|:=|=:|\*\*|\+\+|--|\|\||&&|<<=?|>>=?|[-+*/%^&|<>!=]=?|[~?]/}),t.languages.insertBefore("solidity","keyword",{builtin:/\b(?:address|bool|byte|u?int(?:8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?|string|bytes(?:[1-9]|[12]\d|3[0-2])?)\b/}),t.languages.insertBefore("solidity","number",{version:{pattern:/([<>]=?|\^)\d+\.\d+\.\d+\b/,lookbehind:!0,alias:"number"}}),t.languages.sol=t.languages.solidity}return x0}var y0,PC;function Cne(){if(PC)return y0;PC=1,y0=e,e.displayName="solutionFile",e.aliases=[];function e(t){(function(n){var r={pattern:/\{[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}\}/i,alias:"constant",inside:{punctuation:/[{}]/}};n.languages["solution-file"]={comment:{pattern:/#.*/,greedy:!0},string:{pattern:/"[^"\r\n]*"|'[^'\r\n]*'/,greedy:!0,inside:{guid:r}},object:{pattern:/^([ \t]*)(?:([A-Z]\w*)\b(?=.*(?:\r\n?|\n)(?:\1[ \t].*(?:\r\n?|\n))*\1End\2(?=[ \t]*$))|End[A-Z]\w*(?=[ \t]*$))/m,lookbehind:!0,greedy:!0,alias:"keyword"},property:{pattern:/^([ \t]*)(?!\s)[^\r\n"#=()]*[^\s"#=()](?=\s*=)/m,lookbehind:!0,inside:{guid:r}},guid:r,number:/\b\d+(?:\.\d+)*\b/,boolean:/\b(?:FALSE|TRUE)\b/,operator:/=/,punctuation:/[(),]/},n.languages.sln=n.languages["solution-file"]})(t)}return y0}var v0,FC;function Nne(){if(FC)return v0;FC=1;var e=Gn();v0=t,t.displayName="soy",t.aliases=[];function t(n){n.register(e),(function(r){var a=/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,i=/\b\d+(?:\.\d+)?(?:[eE][+-]?\d+)?\b|\b0x[\dA-F]+\b/;r.languages.soy={comment:[/\/\*[\s\S]*?\*\//,{pattern:/(\s)\/\/.*/,lookbehind:!0,greedy:!0}],"command-arg":{pattern:/(\{+\/?\s*(?:alias|call|delcall|delpackage|deltemplate|namespace|template)\s+)\.?[\w.]+/,lookbehind:!0,alias:"string",inside:{punctuation:/\./}},parameter:{pattern:/(\{+\/?\s*@?param\??\s+)\.?[\w.]+/,lookbehind:!0,alias:"variable"},keyword:[{pattern:/(\{+\/?[^\S\r\n]*)(?:\\[nrt]|alias|call|case|css|default|delcall|delpackage|deltemplate|else(?:if)?|fallbackmsg|for(?:each)?|if(?:empty)?|lb|let|literal|msg|namespace|nil|@?param\??|rb|sp|switch|template|xid)/,lookbehind:!0},/\b(?:any|as|attributes|bool|css|float|html|in|int|js|list|map|null|number|string|uri)\b/],delimiter:{pattern:/^\{+\/?|\/?\}+$/,alias:"punctuation"},property:/\w+(?==)/,variable:{pattern:/\$[^\W\d]\w*(?:\??(?:\.\w+|\[[^\]]+\]))*/,inside:{string:{pattern:a,greedy:!0},number:i,punctuation:/[\[\].?]/}},string:{pattern:a,greedy:!0},function:[/\w+(?=\()/,{pattern:/(\|[^\S\r\n]*)\w+/,lookbehind:!0}],boolean:/\b(?:false|true)\b/,number:i,operator:/\?:?|<=?|>=?|==?|!=|[+*/%-]|\b(?:and|not|or)\b/,punctuation:/[{}()\[\]|.,:]/},r.hooks.add("before-tokenize",function(s){var l=/\{\{.+?\}\}|\{.+?\}|\s\/\/.*|\/\*[\s\S]*?\*\//g,c="{literal}",u="{/literal}",d=!1;r.languages["markup-templating"].buildPlaceholders(s,"soy",l,function(p){return p===u&&(d=!1),d?!1:(p===c&&(d=!0),!0)})}),r.hooks.add("after-tokenize",function(s){r.languages["markup-templating"].tokenizePlaceholders(s,"soy")})})(n)}return v0}var k0,BC;function d6(){if(BC)return k0;BC=1,k0=e,e.displayName="turtle",e.aliases=[];function e(t){t.languages.turtle={comment:{pattern:/#.*/,greedy:!0},"multiline-string":{pattern:/"""(?:(?:""?)?(?:[^"\\]|\\.))*"""|'''(?:(?:''?)?(?:[^'\\]|\\.))*'''/,greedy:!0,alias:"string",inside:{comment:/#.*/}},string:{pattern:/"(?:[^\\"\r\n]|\\.)*"|'(?:[^\\'\r\n]|\\.)*'/,greedy:!0},url:{pattern:/<(?:[^\x00-\x20<>"{}|^`\\]|\\(?:u[\da-fA-F]{4}|U[\da-fA-F]{8}))*>/,greedy:!0,inside:{punctuation:/[<>]/}},function:{pattern:/(?:(?![-.\d\xB7])[-.\w\xB7\xC0-\uFFFD]+)?:(?:(?![-.])(?:[-.:\w\xC0-\uFFFD]|%[\da-f]{2}|\\.)+)?/i,inside:{"local-name":{pattern:/([^:]*:)[\s\S]+/,lookbehind:!0},prefix:{pattern:/[\s\S]+/,inside:{punctuation:/:/}}}},number:/[+-]?\b\d+(?:\.\d*)?(?:e[+-]?\d+)?/i,punctuation:/[{}.,;()[\]]|\^\^/,boolean:/\b(?:false|true)\b/,keyword:[/(?:\ba|@prefix|@base)\b|=/,/\b(?:base|graph|prefix)\b/i],tag:{pattern:/@[a-z]+(?:-[a-z\d]+)*/i,inside:{punctuation:/@/}}},t.languages.trig=t.languages.turtle}return k0}var w0,$C;function Tne(){if($C)return w0;$C=1;var e=d6();w0=t,t.displayName="sparql",t.aliases=["rq"];function t(n){n.register(e),n.languages.sparql=n.languages.extend("turtle",{boolean:/\b(?:false|true)\b/i,variable:{pattern:/[?$]\w+/,greedy:!0}}),n.languages.insertBefore("sparql","punctuation",{keyword:[/\b(?:A|ADD|ALL|AS|ASC|ASK|BNODE|BY|CLEAR|CONSTRUCT|COPY|CREATE|DATA|DEFAULT|DELETE|DESC|DESCRIBE|DISTINCT|DROP|EXISTS|FILTER|FROM|GROUP|HAVING|INSERT|INTO|LIMIT|LOAD|MINUS|MOVE|NAMED|NOT|NOW|OFFSET|OPTIONAL|ORDER|RAND|REDUCED|SELECT|SEPARATOR|SERVICE|SILENT|STRUUID|UNION|USING|UUID|VALUES|WHERE)\b/i,/\b(?:ABS|AVG|BIND|BOUND|CEIL|COALESCE|CONCAT|CONTAINS|COUNT|DATATYPE|DAY|ENCODE_FOR_URI|FLOOR|GROUP_CONCAT|HOURS|IF|IRI|isBLANK|isIRI|isLITERAL|isNUMERIC|isURI|LANG|LANGMATCHES|LCASE|MAX|MD5|MIN|MINUTES|MONTH|REGEX|REPLACE|ROUND|sameTerm|SAMPLE|SECONDS|SHA1|SHA256|SHA384|SHA512|STR|STRAFTER|STRBEFORE|STRDT|STRENDS|STRLANG|STRLEN|STRSTARTS|SUBSTR|SUM|TIMEZONE|TZ|UCASE|URI|YEAR)\b(?=\s*\()/i,/\b(?:BASE|GRAPH|PREFIX)\b/i]}),n.languages.rq=n.languages.sparql}return w0}var S0,UC;function Ane(){if(UC)return S0;UC=1,S0=e,e.displayName="splunkSpl",e.aliases=[];function e(t){t.languages["splunk-spl"]={comment:/`comment\("(?:\\.|[^\\"])*"\)`/,string:{pattern:/"(?:\\.|[^\\"])*"/,greedy:!0},keyword:/\b(?:abstract|accum|addcoltotals|addinfo|addtotals|analyzefields|anomalies|anomalousvalue|anomalydetection|append|appendcols|appendcsv|appendlookup|appendpipe|arules|associate|audit|autoregress|bin|bucket|bucketdir|chart|cluster|cofilter|collect|concurrency|contingency|convert|correlate|datamodel|dbinspect|dedup|delete|delta|diff|erex|eval|eventcount|eventstats|extract|fieldformat|fields|fieldsummary|filldown|fillnull|findtypes|folderize|foreach|format|from|gauge|gentimes|geom|geomfilter|geostats|head|highlight|history|iconify|input|inputcsv|inputlookup|iplocation|join|kmeans|kv|kvform|loadjob|localize|localop|lookup|makecontinuous|makemv|makeresults|map|mcollect|metadata|metasearch|meventcollect|mstats|multikv|multisearch|mvcombine|mvexpand|nomv|outlier|outputcsv|outputlookup|outputtext|overlap|pivot|predict|rangemap|rare|regex|relevancy|reltime|rename|replace|rest|return|reverse|rex|rtorder|run|savedsearch|script|scrub|search|searchtxn|selfjoin|sendemail|set|setfields|sichart|sirare|sistats|sitimechart|sitop|sort|spath|stats|strcat|streamstats|table|tags|tail|timechart|timewrap|top|transaction|transpose|trendline|tscollect|tstats|typeahead|typelearner|typer|union|uniq|untable|where|x11|xmlkv|xmlunescape|xpath|xyseries)\b/i,"operator-word":{pattern:/\b(?:and|as|by|not|or|xor)\b/i,alias:"operator"},function:/\b\w+(?=\s*\()/,property:/\b\w+(?=\s*=(?!=))/,date:{pattern:/\b\d{1,2}\/\d{1,2}\/\d{1,4}(?:(?::\d{1,2}){3})?\b/,alias:"number"},number:/\b\d+(?:\.\d+)?\b/,boolean:/\b(?:f|false|t|true)\b/i,operator:/[<>=]=?|[-+*/%|]/,punctuation:/[()[\],]/}}return S0}var E0,zC;function Ine(){if(zC)return E0;zC=1,E0=e,e.displayName="sqf",e.aliases=[];function e(t){t.languages.sqf=t.languages.extend("clike",{string:{pattern:/"(?:(?:"")?[^"])*"(?!")|'(?:[^'])*'/,greedy:!0},keyword:/\b(?:breakOut|breakTo|call|case|catch|default|do|echo|else|execFSM|execVM|exitWith|for|forEach|forEachMember|forEachMemberAgent|forEachMemberTeam|from|goto|if|nil|preprocessFile|preprocessFileLineNumbers|private|scopeName|spawn|step|switch|then|throw|to|try|while|with)\b/i,boolean:/\b(?:false|true)\b/i,function:/\b(?:abs|accTime|acos|action|actionIDs|actionKeys|actionKeysImages|actionKeysNames|actionKeysNamesArray|actionName|actionParams|activateAddons|activatedAddons|activateKey|add3DENConnection|add3DENEventHandler|add3DENLayer|addAction|addBackpack|addBackpackCargo|addBackpackCargoGlobal|addBackpackGlobal|addCamShake|addCuratorAddons|addCuratorCameraArea|addCuratorEditableObjects|addCuratorEditingArea|addCuratorPoints|addEditorObject|addEventHandler|addForce|addForceGeneratorRTD|addGoggles|addGroupIcon|addHandgunItem|addHeadgear|addItem|addItemCargo|addItemCargoGlobal|addItemPool|addItemToBackpack|addItemToUniform|addItemToVest|addLiveStats|addMagazine|addMagazineAmmoCargo|addMagazineCargo|addMagazineCargoGlobal|addMagazineGlobal|addMagazinePool|addMagazines|addMagazineTurret|addMenu|addMenuItem|addMissionEventHandler|addMPEventHandler|addMusicEventHandler|addOwnedMine|addPlayerScores|addPrimaryWeaponItem|addPublicVariableEventHandler|addRating|addResources|addScore|addScoreSide|addSecondaryWeaponItem|addSwitchableUnit|addTeamMember|addToRemainsCollector|addTorque|addUniform|addVehicle|addVest|addWaypoint|addWeapon|addWeaponCargo|addWeaponCargoGlobal|addWeaponGlobal|addWeaponItem|addWeaponPool|addWeaponTurret|admin|agent|agents|AGLToASL|aimedAtTarget|aimPos|airDensityCurveRTD|airDensityRTD|airplaneThrottle|airportSide|AISFinishHeal|alive|all3DENEntities|allAirports|allControls|allCurators|allCutLayers|allDead|allDeadMen|allDisplays|allGroups|allMapMarkers|allMines|allMissionObjects|allow3DMode|allowCrewInImmobile|allowCuratorLogicIgnoreAreas|allowDamage|allowDammage|allowFileOperations|allowFleeing|allowGetIn|allowSprint|allPlayers|allSimpleObjects|allSites|allTurrets|allUnits|allUnitsUAV|allVariables|ammo|ammoOnPylon|animate|animateBay|animateDoor|animatePylon|animateSource|animationNames|animationPhase|animationSourcePhase|animationState|append|apply|armoryPoints|arrayIntersect|asin|ASLToAGL|ASLToATL|assert|assignAsCargo|assignAsCargoIndex|assignAsCommander|assignAsDriver|assignAsGunner|assignAsTurret|assignCurator|assignedCargo|assignedCommander|assignedDriver|assignedGunner|assignedItems|assignedTarget|assignedTeam|assignedVehicle|assignedVehicleRole|assignItem|assignTeam|assignToAirport|atan|atan2|atg|ATLToASL|attachedObject|attachedObjects|attachedTo|attachObject|attachTo|attackEnabled|backpack|backpackCargo|backpackContainer|backpackItems|backpackMagazines|backpackSpaceFor|behaviour|benchmark|binocular|blufor|boundingBox|boundingBoxReal|boundingCenter|briefingName|buildingExit|buildingPos|buldozer_EnableRoadDiag|buldozer_IsEnabledRoadDiag|buldozer_LoadNewRoads|buldozer_reloadOperMap|buttonAction|buttonSetAction|cadetMode|callExtension|camCommand|camCommit|camCommitPrepared|camCommitted|camConstuctionSetParams|camCreate|camDestroy|cameraEffect|cameraEffectEnableHUD|cameraInterest|cameraOn|cameraView|campaignConfigFile|camPreload|camPreloaded|camPrepareBank|camPrepareDir|camPrepareDive|camPrepareFocus|camPrepareFov|camPrepareFovRange|camPreparePos|camPrepareRelPos|camPrepareTarget|camSetBank|camSetDir|camSetDive|camSetFocus|camSetFov|camSetFovRange|camSetPos|camSetRelPos|camSetTarget|camTarget|camUseNVG|canAdd|canAddItemToBackpack|canAddItemToUniform|canAddItemToVest|cancelSimpleTaskDestination|canFire|canMove|canSlingLoad|canStand|canSuspend|canTriggerDynamicSimulation|canUnloadInCombat|canVehicleCargo|captive|captiveNum|cbChecked|cbSetChecked|ceil|channelEnabled|cheatsEnabled|checkAIFeature|checkVisibility|civilian|className|clear3DENAttribute|clear3DENInventory|clearAllItemsFromBackpack|clearBackpackCargo|clearBackpackCargoGlobal|clearForcesRTD|clearGroupIcons|clearItemCargo|clearItemCargoGlobal|clearItemPool|clearMagazineCargo|clearMagazineCargoGlobal|clearMagazinePool|clearOverlay|clearRadio|clearVehicleInit|clearWeaponCargo|clearWeaponCargoGlobal|clearWeaponPool|clientOwner|closeDialog|closeDisplay|closeOverlay|collapseObjectTree|collect3DENHistory|collectiveRTD|combatMode|commandArtilleryFire|commandChat|commander|commandFire|commandFollow|commandFSM|commandGetOut|commandingMenu|commandMove|commandRadio|commandStop|commandSuppressiveFire|commandTarget|commandWatch|comment|commitOverlay|compile|compileFinal|completedFSM|composeText|configClasses|configFile|configHierarchy|configName|configNull|configProperties|configSourceAddonList|configSourceMod|configSourceModList|confirmSensorTarget|connectTerminalToUAV|controlNull|controlsGroupCtrl|copyFromClipboard|copyToClipboard|copyWaypoints|cos|count|countEnemy|countFriendly|countSide|countType|countUnknown|create3DENComposition|create3DENEntity|createAgent|createCenter|createDialog|createDiaryLink|createDiaryRecord|createDiarySubject|createDisplay|createGearDialog|createGroup|createGuardedPoint|createLocation|createMarker|createMarkerLocal|createMenu|createMine|createMissionDisplay|createMPCampaignDisplay|createSimpleObject|createSimpleTask|createSite|createSoundSource|createTask|createTeam|createTrigger|createUnit|createVehicle|createVehicleCrew|createVehicleLocal|crew|ctAddHeader|ctAddRow|ctClear|ctCurSel|ctData|ctFindHeaderRows|ctFindRowHeader|ctHeaderControls|ctHeaderCount|ctRemoveHeaders|ctRemoveRows|ctrlActivate|ctrlAddEventHandler|ctrlAngle|ctrlAutoScrollDelay|ctrlAutoScrollRewind|ctrlAutoScrollSpeed|ctrlChecked|ctrlClassName|ctrlCommit|ctrlCommitted|ctrlCreate|ctrlDelete|ctrlEnable|ctrlEnabled|ctrlFade|ctrlHTMLLoaded|ctrlIDC|ctrlIDD|ctrlMapAnimAdd|ctrlMapAnimClear|ctrlMapAnimCommit|ctrlMapAnimDone|ctrlMapCursor|ctrlMapMouseOver|ctrlMapScale|ctrlMapScreenToWorld|ctrlMapWorldToScreen|ctrlModel|ctrlModelDirAndUp|ctrlModelScale|ctrlParent|ctrlParentControlsGroup|ctrlPosition|ctrlRemoveAllEventHandlers|ctrlRemoveEventHandler|ctrlScale|ctrlSetActiveColor|ctrlSetAngle|ctrlSetAutoScrollDelay|ctrlSetAutoScrollRewind|ctrlSetAutoScrollSpeed|ctrlSetBackgroundColor|ctrlSetChecked|ctrlSetDisabledColor|ctrlSetEventHandler|ctrlSetFade|ctrlSetFocus|ctrlSetFont|ctrlSetFontH1|ctrlSetFontH1B|ctrlSetFontH2|ctrlSetFontH2B|ctrlSetFontH3|ctrlSetFontH3B|ctrlSetFontH4|ctrlSetFontH4B|ctrlSetFontH5|ctrlSetFontH5B|ctrlSetFontH6|ctrlSetFontH6B|ctrlSetFontHeight|ctrlSetFontHeightH1|ctrlSetFontHeightH2|ctrlSetFontHeightH3|ctrlSetFontHeightH4|ctrlSetFontHeightH5|ctrlSetFontHeightH6|ctrlSetFontHeightSecondary|ctrlSetFontP|ctrlSetFontPB|ctrlSetFontSecondary|ctrlSetForegroundColor|ctrlSetModel|ctrlSetModelDirAndUp|ctrlSetModelScale|ctrlSetPixelPrecision|ctrlSetPosition|ctrlSetScale|ctrlSetStructuredText|ctrlSetText|ctrlSetTextColor|ctrlSetTextColorSecondary|ctrlSetTextSecondary|ctrlSetTooltip|ctrlSetTooltipColorBox|ctrlSetTooltipColorShade|ctrlSetTooltipColorText|ctrlShow|ctrlShown|ctrlText|ctrlTextHeight|ctrlTextSecondary|ctrlTextWidth|ctrlType|ctrlVisible|ctRowControls|ctRowCount|ctSetCurSel|ctSetData|ctSetHeaderTemplate|ctSetRowTemplate|ctSetValue|ctValue|curatorAddons|curatorCamera|curatorCameraArea|curatorCameraAreaCeiling|curatorCoef|curatorEditableObjects|curatorEditingArea|curatorEditingAreaType|curatorMouseOver|curatorPoints|curatorRegisteredObjects|curatorSelected|curatorWaypointCost|current3DENOperation|currentChannel|currentCommand|currentMagazine|currentMagazineDetail|currentMagazineDetailTurret|currentMagazineTurret|currentMuzzle|currentNamespace|currentTask|currentTasks|currentThrowable|currentVisionMode|currentWaypoint|currentWeapon|currentWeaponMode|currentWeaponTurret|currentZeroing|cursorObject|cursorTarget|customChat|customRadio|cutFadeOut|cutObj|cutRsc|cutText|damage|date|dateToNumber|daytime|deActivateKey|debriefingText|debugFSM|debugLog|deg|delete3DENEntities|deleteAt|deleteCenter|deleteCollection|deleteEditorObject|deleteGroup|deleteGroupWhenEmpty|deleteIdentity|deleteLocation|deleteMarker|deleteMarkerLocal|deleteRange|deleteResources|deleteSite|deleteStatus|deleteTeam|deleteVehicle|deleteVehicleCrew|deleteWaypoint|detach|detectedMines|diag_activeMissionFSMs|diag_activeScripts|diag_activeSQFScripts|diag_activeSQSScripts|diag_captureFrame|diag_captureFrameToFile|diag_captureSlowFrame|diag_codePerformance|diag_drawMode|diag_dynamicSimulationEnd|diag_enable|diag_enabled|diag_fps|diag_fpsMin|diag_frameNo|diag_lightNewLoad|diag_list|diag_log|diag_logSlowFrame|diag_mergeConfigFile|diag_recordTurretLimits|diag_setLightNew|diag_tickTime|diag_toggle|dialog|diarySubjectExists|didJIP|didJIPOwner|difficulty|difficultyEnabled|difficultyEnabledRTD|difficultyOption|direction|directSay|disableAI|disableCollisionWith|disableConversation|disableDebriefingStats|disableMapIndicators|disableNVGEquipment|disableRemoteSensors|disableSerialization|disableTIEquipment|disableUAVConnectability|disableUserInput|displayAddEventHandler|displayCtrl|displayNull|displayParent|displayRemoveAllEventHandlers|displayRemoveEventHandler|displaySetEventHandler|dissolveTeam|distance|distance2D|distanceSqr|distributionRegion|do3DENAction|doArtilleryFire|doFire|doFollow|doFSM|doGetOut|doMove|doorPhase|doStop|doSuppressiveFire|doTarget|doWatch|drawArrow|drawEllipse|drawIcon|drawIcon3D|drawLine|drawLine3D|drawLink|drawLocation|drawPolygon|drawRectangle|drawTriangle|driver|drop|dynamicSimulationDistance|dynamicSimulationDistanceCoef|dynamicSimulationEnabled|dynamicSimulationSystemEnabled|east|edit3DENMissionAttributes|editObject|editorSetEventHandler|effectiveCommander|emptyPositions|enableAI|enableAIFeature|enableAimPrecision|enableAttack|enableAudioFeature|enableAutoStartUpRTD|enableAutoTrimRTD|enableCamShake|enableCaustics|enableChannel|enableCollisionWith|enableCopilot|enableDebriefingStats|enableDiagLegend|enableDynamicSimulation|enableDynamicSimulationSystem|enableEndDialog|enableEngineArtillery|enableEnvironment|enableFatigue|enableGunLights|enableInfoPanelComponent|enableIRLasers|enableMimics|enablePersonTurret|enableRadio|enableReload|enableRopeAttach|enableSatNormalOnDetail|enableSaving|enableSentences|enableSimulation|enableSimulationGlobal|enableStamina|enableStressDamage|enableTeamSwitch|enableTraffic|enableUAVConnectability|enableUAVWaypoints|enableVehicleCargo|enableVehicleSensor|enableWeaponDisassembly|endl|endLoadingScreen|endMission|engineOn|enginesIsOnRTD|enginesPowerRTD|enginesRpmRTD|enginesTorqueRTD|entities|environmentEnabled|estimatedEndServerTime|estimatedTimeLeft|evalObjectArgument|everyBackpack|everyContainer|exec|execEditorScript|exp|expectedDestination|exportJIPMessages|eyeDirection|eyePos|face|faction|fadeMusic|fadeRadio|fadeSound|fadeSpeech|failMission|fillWeaponsFromPool|find|findCover|findDisplay|findEditorObject|findEmptyPosition|findEmptyPositionReady|findIf|findNearestEnemy|finishMissionInit|finite|fire|fireAtTarget|firstBackpack|flag|flagAnimationPhase|flagOwner|flagSide|flagTexture|fleeing|floor|flyInHeight|flyInHeightASL|fog|fogForecast|fogParams|forceAddUniform|forceAtPositionRTD|forcedMap|forceEnd|forceFlagTexture|forceFollowRoad|forceGeneratorRTD|forceMap|forceRespawn|forceSpeed|forceWalk|forceWeaponFire|forceWeatherChange|forgetTarget|format|formation|formationDirection|formationLeader|formationMembers|formationPosition|formationTask|formatText|formLeader|freeLook|fromEditor|fuel|fullCrew|gearIDCAmmoCount|gearSlotAmmoCount|gearSlotData|get3DENActionState|get3DENAttribute|get3DENCamera|get3DENConnections|get3DENEntity|get3DENEntityID|get3DENGrid|get3DENIconsVisible|get3DENLayerEntities|get3DENLinesVisible|get3DENMissionAttribute|get3DENMouseOver|get3DENSelected|getAimingCoef|getAllEnvSoundControllers|getAllHitPointsDamage|getAllOwnedMines|getAllSoundControllers|getAmmoCargo|getAnimAimPrecision|getAnimSpeedCoef|getArray|getArtilleryAmmo|getArtilleryComputerSettings|getArtilleryETA|getAssignedCuratorLogic|getAssignedCuratorUnit|getBackpackCargo|getBleedingRemaining|getBurningValue|getCameraViewDirection|getCargoIndex|getCenterOfMass|getClientState|getClientStateNumber|getCompatiblePylonMagazines|getConnectedUAV|getContainerMaxLoad|getCursorObjectParams|getCustomAimCoef|getDammage|getDescription|getDir|getDirVisual|getDLCAssetsUsage|getDLCAssetsUsageByName|getDLCs|getDLCUsageTime|getEditorCamera|getEditorMode|getEditorObjectScope|getElevationOffset|getEngineTargetRpmRTD|getEnvSoundController|getFatigue|getFieldManualStartPage|getForcedFlagTexture|getFriend|getFSMVariable|getFuelCargo|getGroupIcon|getGroupIconParams|getGroupIcons|getHideFrom|getHit|getHitIndex|getHitPointDamage|getItemCargo|getMagazineCargo|getMarkerColor|getMarkerPos|getMarkerSize|getMarkerType|getMass|getMissionConfig|getMissionConfigValue|getMissionDLCs|getMissionLayerEntities|getMissionLayers|getModelInfo|getMousePosition|getMusicPlayedTime|getNumber|getObjectArgument|getObjectChildren|getObjectDLC|getObjectMaterials|getObjectProxy|getObjectTextures|getObjectType|getObjectViewDistance|getOxygenRemaining|getPersonUsedDLCs|getPilotCameraDirection|getPilotCameraPosition|getPilotCameraRotation|getPilotCameraTarget|getPlateNumber|getPlayerChannel|getPlayerScores|getPlayerUID|getPlayerUIDOld|getPos|getPosASL|getPosASLVisual|getPosASLW|getPosATL|getPosATLVisual|getPosVisual|getPosWorld|getPylonMagazines|getRelDir|getRelPos|getRemoteSensorsDisabled|getRepairCargo|getResolution|getRotorBrakeRTD|getShadowDistance|getShotParents|getSlingLoad|getSoundController|getSoundControllerResult|getSpeed|getStamina|getStatValue|getSuppression|getTerrainGrid|getTerrainHeightASL|getText|getTotalDLCUsageTime|getTrimOffsetRTD|getUnitLoadout|getUnitTrait|getUserMFDText|getUserMFDValue|getVariable|getVehicleCargo|getWeaponCargo|getWeaponSway|getWingsOrientationRTD|getWingsPositionRTD|getWPPos|glanceAt|globalChat|globalRadio|goggles|group|groupChat|groupFromNetId|groupIconSelectable|groupIconsVisible|groupId|groupOwner|groupRadio|groupSelectedUnits|groupSelectUnit|grpNull|gunner|gusts|halt|handgunItems|handgunMagazine|handgunWeapon|handsHit|hasInterface|hasPilotCamera|hasWeapon|hcAllGroups|hcGroupParams|hcLeader|hcRemoveAllGroups|hcRemoveGroup|hcSelected|hcSelectGroup|hcSetGroup|hcShowBar|hcShownBar|headgear|hideBody|hideObject|hideObjectGlobal|hideSelection|hint|hintC|hintCadet|hintSilent|hmd|hostMission|htmlLoad|HUDMovementLevels|humidity|image|importAllGroups|importance|in|inArea|inAreaArray|incapacitatedState|independent|inflame|inflamed|infoPanel|infoPanelComponentEnabled|infoPanelComponents|infoPanels|inGameUISetEventHandler|inheritsFrom|initAmbientLife|inPolygon|inputAction|inRangeOfArtillery|insertEditorObject|intersect|is3DEN|is3DENMultiplayer|isAbleToBreathe|isAgent|isAimPrecisionEnabled|isArray|isAutoHoverOn|isAutonomous|isAutoStartUpEnabledRTD|isAutotest|isAutoTrimOnRTD|isBleeding|isBurning|isClass|isCollisionLightOn|isCopilotEnabled|isDamageAllowed|isDedicated|isDLCAvailable|isEngineOn|isEqualTo|isEqualType|isEqualTypeAll|isEqualTypeAny|isEqualTypeArray|isEqualTypeParams|isFilePatchingEnabled|isFlashlightOn|isFlatEmpty|isForcedWalk|isFormationLeader|isGroupDeletedWhenEmpty|isHidden|isInRemainsCollector|isInstructorFigureEnabled|isIRLaserOn|isKeyActive|isKindOf|isLaserOn|isLightOn|isLocalized|isManualFire|isMarkedForCollection|isMultiplayer|isMultiplayerSolo|isNil|isNull|isNumber|isObjectHidden|isObjectRTD|isOnRoad|isPipEnabled|isPlayer|isRealTime|isRemoteExecuted|isRemoteExecutedJIP|isServer|isShowing3DIcons|isSimpleObject|isSprintAllowed|isStaminaEnabled|isSteamMission|isStreamFriendlyUIEnabled|isStressDamageEnabled|isText|isTouchingGround|isTurnedOut|isTutHintsEnabled|isUAVConnectable|isUAVConnected|isUIContext|isUniformAllowed|isVehicleCargo|isVehicleRadarOn|isVehicleSensorEnabled|isWalking|isWeaponDeployed|isWeaponRested|itemCargo|items|itemsWithMagazines|join|joinAs|joinAsSilent|joinSilent|joinString|kbAddDatabase|kbAddDatabaseTargets|kbAddTopic|kbHasTopic|kbReact|kbRemoveTopic|kbTell|kbWasSaid|keyImage|keyName|knowsAbout|land|landAt|landResult|language|laserTarget|lbAdd|lbClear|lbColor|lbColorRight|lbCurSel|lbData|lbDelete|lbIsSelected|lbPicture|lbPictureRight|lbSelection|lbSetColor|lbSetColorRight|lbSetCurSel|lbSetData|lbSetPicture|lbSetPictureColor|lbSetPictureColorDisabled|lbSetPictureColorSelected|lbSetPictureRight|lbSetPictureRightColor|lbSetPictureRightColorDisabled|lbSetPictureRightColorSelected|lbSetSelectColor|lbSetSelectColorRight|lbSetSelected|lbSetText|lbSetTextRight|lbSetTooltip|lbSetValue|lbSize|lbSort|lbSortByValue|lbText|lbTextRight|lbValue|leader|leaderboardDeInit|leaderboardGetRows|leaderboardInit|leaderboardRequestRowsFriends|leaderboardRequestRowsGlobal|leaderboardRequestRowsGlobalAroundUser|leaderboardsRequestUploadScore|leaderboardsRequestUploadScoreKeepBest|leaderboardState|leaveVehicle|libraryCredits|libraryDisclaimers|lifeState|lightAttachObject|lightDetachObject|lightIsOn|lightnings|limitSpeed|linearConversion|lineBreak|lineIntersects|lineIntersectsObjs|lineIntersectsSurfaces|lineIntersectsWith|linkItem|list|listObjects|listRemoteTargets|listVehicleSensors|ln|lnbAddArray|lnbAddColumn|lnbAddRow|lnbClear|lnbColor|lnbColorRight|lnbCurSelRow|lnbData|lnbDeleteColumn|lnbDeleteRow|lnbGetColumnsPosition|lnbPicture|lnbPictureRight|lnbSetColor|lnbSetColorRight|lnbSetColumnsPos|lnbSetCurSelRow|lnbSetData|lnbSetPicture|lnbSetPictureColor|lnbSetPictureColorRight|lnbSetPictureColorSelected|lnbSetPictureColorSelectedRight|lnbSetPictureRight|lnbSetText|lnbSetTextRight|lnbSetValue|lnbSize|lnbSort|lnbSortByValue|lnbText|lnbTextRight|lnbValue|load|loadAbs|loadBackpack|loadFile|loadGame|loadIdentity|loadMagazine|loadOverlay|loadStatus|loadUniform|loadVest|local|localize|locationNull|locationPosition|lock|lockCameraTo|lockCargo|lockDriver|locked|lockedCargo|lockedDriver|lockedTurret|lockIdentity|lockTurret|lockWP|log|logEntities|logNetwork|logNetworkTerminate|lookAt|lookAtPos|magazineCargo|magazines|magazinesAllTurrets|magazinesAmmo|magazinesAmmoCargo|magazinesAmmoFull|magazinesDetail|magazinesDetailBackpack|magazinesDetailUniform|magazinesDetailVest|magazinesTurret|magazineTurretAmmo|mapAnimAdd|mapAnimClear|mapAnimCommit|mapAnimDone|mapCenterOnCamera|mapGridPosition|markAsFinishedOnSteam|markerAlpha|markerBrush|markerColor|markerDir|markerPos|markerShape|markerSize|markerText|markerType|max|members|menuAction|menuAdd|menuChecked|menuClear|menuCollapse|menuData|menuDelete|menuEnable|menuEnabled|menuExpand|menuHover|menuPicture|menuSetAction|menuSetCheck|menuSetData|menuSetPicture|menuSetValue|menuShortcut|menuShortcutText|menuSize|menuSort|menuText|menuURL|menuValue|min|mineActive|mineDetectedBy|missionConfigFile|missionDifficulty|missionName|missionNamespace|missionStart|missionVersion|modelToWorld|modelToWorldVisual|modelToWorldVisualWorld|modelToWorldWorld|modParams|moonIntensity|moonPhase|morale|move|move3DENCamera|moveInAny|moveInCargo|moveInCommander|moveInDriver|moveInGunner|moveInTurret|moveObjectToEnd|moveOut|moveTime|moveTo|moveToCompleted|moveToFailed|musicVolume|name|nameSound|nearEntities|nearestBuilding|nearestLocation|nearestLocations|nearestLocationWithDubbing|nearestObject|nearestObjects|nearestTerrainObjects|nearObjects|nearObjectsReady|nearRoads|nearSupplies|nearTargets|needReload|netId|netObjNull|newOverlay|nextMenuItemIndex|nextWeatherChange|nMenuItems|numberOfEnginesRTD|numberToDate|objectCurators|objectFromNetId|objectParent|objNull|objStatus|onBriefingGear|onBriefingGroup|onBriefingNotes|onBriefingPlan|onBriefingTeamSwitch|onCommandModeChanged|onDoubleClick|onEachFrame|onGroupIconClick|onGroupIconOverEnter|onGroupIconOverLeave|onHCGroupSelectionChanged|onMapSingleClick|onPlayerConnected|onPlayerDisconnected|onPreloadFinished|onPreloadStarted|onShowNewObject|onTeamSwitch|openCuratorInterface|openDLCPage|openDSInterface|openMap|openSteamApp|openYoutubeVideo|opfor|orderGetIn|overcast|overcastForecast|owner|param|params|parseNumber|parseSimpleArray|parseText|parsingNamespace|particlesQuality|pi|pickWeaponPool|pitch|pixelGrid|pixelGridBase|pixelGridNoUIScale|pixelH|pixelW|playableSlotsNumber|playableUnits|playAction|playActionNow|player|playerRespawnTime|playerSide|playersNumber|playGesture|playMission|playMove|playMoveNow|playMusic|playScriptedMission|playSound|playSound3D|position|positionCameraToWorld|posScreenToWorld|posWorldToScreen|ppEffectAdjust|ppEffectCommit|ppEffectCommitted|ppEffectCreate|ppEffectDestroy|ppEffectEnable|ppEffectEnabled|ppEffectForceInNVG|precision|preloadCamera|preloadObject|preloadSound|preloadTitleObj|preloadTitleRsc|primaryWeapon|primaryWeaponItems|primaryWeaponMagazine|priority|processDiaryLink|processInitCommands|productVersion|profileName|profileNamespace|profileNameSteam|progressLoadingScreen|progressPosition|progressSetPosition|publicVariable|publicVariableClient|publicVariableServer|pushBack|pushBackUnique|putWeaponPool|queryItemsPool|queryMagazinePool|queryWeaponPool|rad|radioChannelAdd|radioChannelCreate|radioChannelRemove|radioChannelSetCallSign|radioChannelSetLabel|radioVolume|rain|rainbow|random|rank|rankId|rating|rectangular|registeredTasks|registerTask|reload|reloadEnabled|remoteControl|remoteExec|remoteExecCall|remoteExecutedOwner|remove3DENConnection|remove3DENEventHandler|remove3DENLayer|removeAction|removeAll3DENEventHandlers|removeAllActions|removeAllAssignedItems|removeAllContainers|removeAllCuratorAddons|removeAllCuratorCameraAreas|removeAllCuratorEditingAreas|removeAllEventHandlers|removeAllHandgunItems|removeAllItems|removeAllItemsWithMagazines|removeAllMissionEventHandlers|removeAllMPEventHandlers|removeAllMusicEventHandlers|removeAllOwnedMines|removeAllPrimaryWeaponItems|removeAllWeapons|removeBackpack|removeBackpackGlobal|removeCuratorAddons|removeCuratorCameraArea|removeCuratorEditableObjects|removeCuratorEditingArea|removeDrawIcon|removeDrawLinks|removeEventHandler|removeFromRemainsCollector|removeGoggles|removeGroupIcon|removeHandgunItem|removeHeadgear|removeItem|removeItemFromBackpack|removeItemFromUniform|removeItemFromVest|removeItems|removeMagazine|removeMagazineGlobal|removeMagazines|removeMagazinesTurret|removeMagazineTurret|removeMenuItem|removeMissionEventHandler|removeMPEventHandler|removeMusicEventHandler|removeOwnedMine|removePrimaryWeaponItem|removeSecondaryWeaponItem|removeSimpleTask|removeSwitchableUnit|removeTeamMember|removeUniform|removeVest|removeWeapon|removeWeaponAttachmentCargo|removeWeaponCargo|removeWeaponGlobal|removeWeaponTurret|reportRemoteTarget|requiredVersion|resetCamShake|resetSubgroupDirection|resistance|resize|resources|respawnVehicle|restartEditorCamera|reveal|revealMine|reverse|reversedMouseY|roadAt|roadsConnectedTo|roleDescription|ropeAttachedObjects|ropeAttachedTo|ropeAttachEnabled|ropeAttachTo|ropeCreate|ropeCut|ropeDestroy|ropeDetach|ropeEndPosition|ropeLength|ropes|ropeUnwind|ropeUnwound|rotorsForcesRTD|rotorsRpmRTD|round|runInitScript|safeZoneH|safeZoneW|safeZoneWAbs|safeZoneX|safeZoneXAbs|safeZoneY|save3DENInventory|saveGame|saveIdentity|saveJoysticks|saveOverlay|saveProfileNamespace|saveStatus|saveVar|savingEnabled|say|say2D|say3D|score|scoreSide|screenshot|screenToWorld|scriptDone|scriptName|scriptNull|scudState|secondaryWeapon|secondaryWeaponItems|secondaryWeaponMagazine|select|selectBestPlaces|selectDiarySubject|selectedEditorObjects|selectEditorObject|selectionNames|selectionPosition|selectLeader|selectMax|selectMin|selectNoPlayer|selectPlayer|selectRandom|selectRandomWeighted|selectWeapon|selectWeaponTurret|sendAUMessage|sendSimpleCommand|sendTask|sendTaskResult|sendUDPMessage|serverCommand|serverCommandAvailable|serverCommandExecutable|serverName|serverTime|set|set3DENAttribute|set3DENAttributes|set3DENGrid|set3DENIconsVisible|set3DENLayer|set3DENLinesVisible|set3DENLogicType|set3DENMissionAttribute|set3DENMissionAttributes|set3DENModelsVisible|set3DENObjectType|set3DENSelected|setAccTime|setActualCollectiveRTD|setAirplaneThrottle|setAirportSide|setAmmo|setAmmoCargo|setAmmoOnPylon|setAnimSpeedCoef|setAperture|setApertureNew|setArmoryPoints|setAttributes|setAutonomous|setBehaviour|setBleedingRemaining|setBrakesRTD|setCameraInterest|setCamShakeDefParams|setCamShakeParams|setCamUseTI|setCaptive|setCenterOfMass|setCollisionLight|setCombatMode|setCompassOscillation|setConvoySeparation|setCuratorCameraAreaCeiling|setCuratorCoef|setCuratorEditingAreaType|setCuratorWaypointCost|setCurrentChannel|setCurrentTask|setCurrentWaypoint|setCustomAimCoef|setCustomWeightRTD|setDamage|setDammage|setDate|setDebriefingText|setDefaultCamera|setDestination|setDetailMapBlendPars|setDir|setDirection|setDrawIcon|setDriveOnPath|setDropInterval|setDynamicSimulationDistance|setDynamicSimulationDistanceCoef|setEditorMode|setEditorObjectScope|setEffectCondition|setEngineRpmRTD|setFace|setFaceAnimation|setFatigue|setFeatureType|setFlagAnimationPhase|setFlagOwner|setFlagSide|setFlagTexture|setFog|setForceGeneratorRTD|setFormation|setFormationTask|setFormDir|setFriend|setFromEditor|setFSMVariable|setFuel|setFuelCargo|setGroupIcon|setGroupIconParams|setGroupIconsSelectable|setGroupIconsVisible|setGroupId|setGroupIdGlobal|setGroupOwner|setGusts|setHideBehind|setHit|setHitIndex|setHitPointDamage|setHorizonParallaxCoef|setHUDMovementLevels|setIdentity|setImportance|setInfoPanel|setLeader|setLightAmbient|setLightAttenuation|setLightBrightness|setLightColor|setLightDayLight|setLightFlareMaxDistance|setLightFlareSize|setLightIntensity|setLightnings|setLightUseFlare|setLocalWindParams|setMagazineTurretAmmo|setMarkerAlpha|setMarkerAlphaLocal|setMarkerBrush|setMarkerBrushLocal|setMarkerColor|setMarkerColorLocal|setMarkerDir|setMarkerDirLocal|setMarkerPos|setMarkerPosLocal|setMarkerShape|setMarkerShapeLocal|setMarkerSize|setMarkerSizeLocal|setMarkerText|setMarkerTextLocal|setMarkerType|setMarkerTypeLocal|setMass|setMimic|setMousePosition|setMusicEffect|setMusicEventHandler|setName|setNameSound|setObjectArguments|setObjectMaterial|setObjectMaterialGlobal|setObjectProxy|setObjectTexture|setObjectTextureGlobal|setObjectViewDistance|setOvercast|setOwner|setOxygenRemaining|setParticleCircle|setParticleClass|setParticleFire|setParticleParams|setParticleRandom|setPilotCameraDirection|setPilotCameraRotation|setPilotCameraTarget|setPilotLight|setPiPEffect|setPitch|setPlateNumber|setPlayable|setPlayerRespawnTime|setPos|setPosASL|setPosASL2|setPosASLW|setPosATL|setPosition|setPosWorld|setPylonLoadOut|setPylonsPriority|setRadioMsg|setRain|setRainbow|setRandomLip|setRank|setRectangular|setRepairCargo|setRotorBrakeRTD|setShadowDistance|setShotParents|setSide|setSimpleTaskAlwaysVisible|setSimpleTaskCustomData|setSimpleTaskDescription|setSimpleTaskDestination|setSimpleTaskTarget|setSimpleTaskType|setSimulWeatherLayers|setSize|setSkill|setSlingLoad|setSoundEffect|setSpeaker|setSpeech|setSpeedMode|setStamina|setStaminaScheme|setStatValue|setSuppression|setSystemOfUnits|setTargetAge|setTaskMarkerOffset|setTaskResult|setTaskState|setTerrainGrid|setText|setTimeMultiplier|setTitleEffect|setToneMapping|setToneMappingParams|setTrafficDensity|setTrafficDistance|setTrafficGap|setTrafficSpeed|setTriggerActivation|setTriggerArea|setTriggerStatements|setTriggerText|setTriggerTimeout|setTriggerType|setType|setUnconscious|setUnitAbility|setUnitLoadout|setUnitPos|setUnitPosWeak|setUnitRank|setUnitRecoilCoefficient|setUnitTrait|setUnloadInCombat|setUserActionText|setUserMFDText|setUserMFDValue|setVariable|setVectorDir|setVectorDirAndUp|setVectorUp|setVehicleAmmo|setVehicleAmmoDef|setVehicleArmor|setVehicleCargo|setVehicleId|setVehicleInit|setVehicleLock|setVehiclePosition|setVehicleRadar|setVehicleReceiveRemoteTargets|setVehicleReportOwnPosition|setVehicleReportRemoteTargets|setVehicleTIPars|setVehicleVarName|setVelocity|setVelocityModelSpace|setVelocityTransformation|setViewDistance|setVisibleIfTreeCollapsed|setWantedRpmRTD|setWaves|setWaypointBehaviour|setWaypointCombatMode|setWaypointCompletionRadius|setWaypointDescription|setWaypointForceBehaviour|setWaypointFormation|setWaypointHousePosition|setWaypointLoiterRadius|setWaypointLoiterType|setWaypointName|setWaypointPosition|setWaypointScript|setWaypointSpeed|setWaypointStatements|setWaypointTimeout|setWaypointType|setWaypointVisible|setWeaponReloadingTime|setWind|setWindDir|setWindForce|setWindStr|setWingForceScaleRTD|setWPPos|show3DIcons|showChat|showCinemaBorder|showCommandingMenu|showCompass|showCuratorCompass|showGPS|showHUD|showLegend|showMap|shownArtilleryComputer|shownChat|shownCompass|shownCuratorCompass|showNewEditorObject|shownGPS|shownHUD|shownMap|shownPad|shownRadio|shownScoretable|shownUAVFeed|shownWarrant|shownWatch|showPad|showRadio|showScoretable|showSubtitles|showUAVFeed|showWarrant|showWatch|showWaypoint|showWaypoints|side|sideAmbientLife|sideChat|sideEmpty|sideEnemy|sideFriendly|sideLogic|sideRadio|sideUnknown|simpleTasks|simulationEnabled|simulCloudDensity|simulCloudOcclusion|simulInClouds|simulWeatherSync|sin|size|sizeOf|skill|skillFinal|skipTime|sleep|sliderPosition|sliderRange|sliderSetPosition|sliderSetRange|sliderSetSpeed|sliderSpeed|slingLoadAssistantShown|soldierMagazines|someAmmo|sort|soundVolume|speaker|speed|speedMode|splitString|sqrt|squadParams|stance|startLoadingScreen|stop|stopEngineRTD|stopped|str|sunOrMoon|supportInfo|suppressFor|surfaceIsWater|surfaceNormal|surfaceType|swimInDepth|switchableUnits|switchAction|switchCamera|switchGesture|switchLight|switchMove|synchronizedObjects|synchronizedTriggers|synchronizedWaypoints|synchronizeObjectsAdd|synchronizeObjectsRemove|synchronizeTrigger|synchronizeWaypoint|systemChat|systemOfUnits|tan|targetKnowledge|targets|targetsAggregate|targetsQuery|taskAlwaysVisible|taskChildren|taskCompleted|taskCustomData|taskDescription|taskDestination|taskHint|taskMarkerOffset|taskNull|taskParent|taskResult|taskState|taskType|teamMember|teamMemberNull|teamName|teams|teamSwitch|teamSwitchEnabled|teamType|terminate|terrainIntersect|terrainIntersectASL|terrainIntersectAtASL|text|textLog|textLogFormat|tg|time|timeMultiplier|titleCut|titleFadeOut|titleObj|titleRsc|titleText|toArray|toFixed|toLower|toString|toUpper|triggerActivated|triggerActivation|triggerArea|triggerAttachedVehicle|triggerAttachObject|triggerAttachVehicle|triggerDynamicSimulation|triggerStatements|triggerText|triggerTimeout|triggerTimeoutCurrent|triggerType|turretLocal|turretOwner|turretUnit|tvAdd|tvClear|tvCollapse|tvCollapseAll|tvCount|tvCurSel|tvData|tvDelete|tvExpand|tvExpandAll|tvPicture|tvPictureRight|tvSetColor|tvSetCurSel|tvSetData|tvSetPicture|tvSetPictureColor|tvSetPictureColorDisabled|tvSetPictureColorSelected|tvSetPictureRight|tvSetPictureRightColor|tvSetPictureRightColorDisabled|tvSetPictureRightColorSelected|tvSetSelectColor|tvSetText|tvSetTooltip|tvSetValue|tvSort|tvSortByValue|tvText|tvTooltip|tvValue|type|typeName|typeOf|UAVControl|uiNamespace|uiSleep|unassignCurator|unassignItem|unassignTeam|unassignVehicle|underwater|uniform|uniformContainer|uniformItems|uniformMagazines|unitAddons|unitAimPosition|unitAimPositionVisual|unitBackpack|unitIsUAV|unitPos|unitReady|unitRecoilCoefficient|units|unitsBelowHeight|unlinkItem|unlockAchievement|unregisterTask|updateDrawIcon|updateMenuItem|updateObjectTree|useAIOperMapObstructionTest|useAISteeringComponent|useAudioTimeForMoves|userInputDisabled|vectorAdd|vectorCos|vectorCrossProduct|vectorDiff|vectorDir|vectorDirVisual|vectorDistance|vectorDistanceSqr|vectorDotProduct|vectorFromTo|vectorMagnitude|vectorMagnitudeSqr|vectorModelToWorld|vectorModelToWorldVisual|vectorMultiply|vectorNormalized|vectorUp|vectorUpVisual|vectorWorldToModel|vectorWorldToModelVisual|vehicle|vehicleCargoEnabled|vehicleChat|vehicleRadio|vehicleReceiveRemoteTargets|vehicleReportOwnPosition|vehicleReportRemoteTargets|vehicles|vehicleVarName|velocity|velocityModelSpace|verifySignature|vest|vestContainer|vestItems|vestMagazines|viewDistance|visibleCompass|visibleGPS|visibleMap|visiblePosition|visiblePositionASL|visibleScoretable|visibleWatch|waitUntil|waves|waypointAttachedObject|waypointAttachedVehicle|waypointAttachObject|waypointAttachVehicle|waypointBehaviour|waypointCombatMode|waypointCompletionRadius|waypointDescription|waypointForceBehaviour|waypointFormation|waypointHousePosition|waypointLoiterRadius|waypointLoiterType|waypointName|waypointPosition|waypoints|waypointScript|waypointsEnabledUAV|waypointShow|waypointSpeed|waypointStatements|waypointTimeout|waypointTimeoutCurrent|waypointType|waypointVisible|weaponAccessories|weaponAccessoriesCargo|weaponCargo|weaponDirection|weaponInertia|weaponLowered|weapons|weaponsItems|weaponsItemsCargo|weaponState|weaponsTurret|weightRTD|west|WFSideText|wind|windDir|windRTD|windStr|wingsForcesRTD|worldName|worldSize|worldToModel|worldToModelVisual|worldToScreen)\b/i,number:/(?:\$|\b0x)[\da-f]+\b|(?:\B\.\d+|\b\d+(?:\.\d+)?)(?:e[+-]?\d+)?\b/i,operator:/##|>>|&&|\|\||[!=<>]=?|[-+*/%#^]|\b(?:and|mod|not|or)\b/i,"magic-variable":{pattern:/\b(?:this|thisList|thisTrigger|_exception|_fnc_scriptName|_fnc_scriptNameParent|_forEachIndex|_this|_thisEventHandler|_thisFSM|_thisScript|_x)\b/i,alias:"keyword"},constant:/\bDIK(?:_[a-z\d]+)+\b/i}),t.languages.insertBefore("sqf","string",{macro:{pattern:/(^[ \t]*)#[a-z](?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{directive:{pattern:/#[a-z]+\b/i,alias:"keyword"},comment:t.languages.sqf.comment}}}),delete t.languages.sqf["class-name"]}return E0}var C0,qC;function Rne(){if(qC)return C0;qC=1,C0=e,e.displayName="squirrel",e.aliases=[];function e(t){t.languages.squirrel=t.languages.extend("clike",{comment:[t.languages.clike.comment[0],{pattern:/(^|[^\\:])(?:\/\/|#).*/,lookbehind:!0,greedy:!0}],string:{pattern:/(^|[^\\"'@])(?:@"(?:[^"]|"")*"(?!")|"(?:[^\\\r\n"]|\\.)*")/,lookbehind:!0,greedy:!0},"class-name":{pattern:/(\b(?:class|enum|extends|instanceof)\s+)\w+(?:\.\w+)*/,lookbehind:!0,inside:{punctuation:/\./}},keyword:/\b(?:__FILE__|__LINE__|base|break|case|catch|class|clone|const|constructor|continue|default|delete|else|enum|extends|for|foreach|function|if|in|instanceof|local|null|resume|return|static|switch|this|throw|try|typeof|while|yield)\b/,number:/\b(?:0x[0-9a-fA-F]+|\d+(?:\.(?:\d+|[eE][+-]?\d+))?)\b/,operator:/\+\+|--|<=>|<[-<]|>>>?|&&?|\|\|?|[-+*/%!=<>]=?|[~^]|::?/,punctuation:/[(){}\[\],;.]/}),t.languages.insertBefore("squirrel","string",{char:{pattern:/(^|[^\\"'])'(?:[^\\']|\\(?:[xuU][0-9a-fA-F]{0,8}|[\s\S]))'/,lookbehind:!0,greedy:!0}}),t.languages.insertBefore("squirrel","operator",{"attribute-punctuation":{pattern:/<\/|\/>/,alias:"important"},lambda:{pattern:/@(?=\()/,alias:"operator"}})}return C0}var N0,HC;function _ne(){if(HC)return N0;HC=1,N0=e,e.displayName="stan",e.aliases=[];function e(t){(function(n){var r=/\b(?:algebra_solver|algebra_solver_newton|integrate_1d|integrate_ode|integrate_ode_bdf|integrate_ode_rk45|map_rect|ode_(?:adams|bdf|ckrk|rk45)(?:_tol)?|ode_adjoint_tol_ctl|reduce_sum|reduce_sum_static)\b/;n.languages.stan={comment:/\/\/.*|\/\*[\s\S]*?\*\/|#(?!include).*/,string:{pattern:/"[\x20\x21\x23-\x5B\x5D-\x7E]*"/,greedy:!0},directive:{pattern:/^([ \t]*)#include\b.*/m,lookbehind:!0,alias:"property"},"function-arg":{pattern:RegExp("("+r.source+/\s*\(\s*/.source+")"+/[a-zA-Z]\w*/.source),lookbehind:!0,alias:"function"},constraint:{pattern:/(\b(?:int|matrix|real|row_vector|vector)\s*)<[^<>]*>/,lookbehind:!0,inside:{expression:{pattern:/(=\s*)\S(?:\S|\s+(?!\s))*?(?=\s*(?:>$|,\s*\w+\s*=))/,lookbehind:!0,inside:null},property:/\b[a-z]\w*(?=\s*=)/i,operator:/=/,punctuation:/^<|>$|,/}},keyword:[{pattern:/\bdata(?=\s*\{)|\b(?:functions|generated|model|parameters|quantities|transformed)\b/,alias:"program-block"},/\b(?:array|break|cholesky_factor_corr|cholesky_factor_cov|complex|continue|corr_matrix|cov_matrix|data|else|for|if|in|increment_log_prob|int|matrix|ordered|positive_ordered|print|real|reject|return|row_vector|simplex|target|unit_vector|vector|void|while)\b/,r],function:/\b[a-z]\w*(?=\s*\()/i,number:/(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:E[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,boolean:/\b(?:false|true)\b/,operator:/<-|\.[*/]=?|\|\|?|&&|[!=<>+\-*/]=?|['^%~?:]/,punctuation:/[()\[\]{},;]/},n.languages.stan.constraint.inside.expression.inside=n.languages.stan})(t)}return N0}var T0,GC;function jne(){if(GC)return T0;GC=1,T0=e,e.displayName="stylus",e.aliases=[];function e(t){(function(n){var r={pattern:/(\b\d+)(?:%|[a-z]+)/,lookbehind:!0},a={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0},i={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},url:{pattern:/\burl\((["']?).*?\1\)/i,greedy:!0},string:{pattern:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,greedy:!0},interpolation:null,func:null,important:/\B!(?:important|optional)\b/i,keyword:{pattern:/(^|\s+)(?:(?:else|for|if|return|unless)(?=\s|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,color:[/\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i,{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:r,number:a,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:r,boolean:/\b(?:false|true)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.{2,3}|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],number:a,punctuation:/[{}()\[\];:,]/};i.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^\{|\}$/,alias:"punctuation"},rest:i}},i.func={pattern:/[\w-]+\([^)]*\).*/,inside:{function:/^[^(]+/,rest:i}},n.languages.stylus={"atrule-declaration":{pattern:/(^[ \t]*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:i}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:\{[^{}]*\}|\S.*|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:i}},statement:{pattern:/(^[ \t]*)(?:else|for|if|return|unless)[ \t].+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:i}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)(?!\s)[^{\r\n]*(?:;|[^{\r\n,]$(?!(?:\r?\n|\r)(?:\{|\2[ \t])))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:i.interpolation}},rest:i}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t])))/m,lookbehind:!0,inside:{interpolation:i.interpolation,comment:i.comment,punctuation:/[{},]/}},func:i.func,string:i.string,comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0,greedy:!0},interpolation:i.interpolation,punctuation:/[{}()\[\];:.]/}})(t)}return T0}var A0,VC;function One(){if(VC)return A0;VC=1,A0=e,e.displayName="swift",e.aliases=[];function e(t){t.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(/(^|[^"#])/.source+"(?:"+/"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source+"|"+/"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source+")"+/(?!["#])/.source),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:"punctuation"},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(/(^|[^"#])(#+)/.source+"(?:"+/"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source+"|"+/"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source+")\\2"),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:"punctuation"},string:/[\s\S]+/}}],directive:{pattern:RegExp(/#/.source+"(?:"+(/(?:elseif|if)\b/.source+"(?:[ ]*"+/(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source+")+")+"|"+/(?:else|endif)\b/.source+")"),alias:"property",inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:"constant"},"other-directive":{pattern:/#\w+\b/,alias:"property"},attribute:{pattern:/@\w+/,alias:"atrule"},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:"function"},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:"important"},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:"constant"},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:"keyword"},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},t.languages.swift["string-literal"].forEach(function(n){n.inside.interpolation.inside=t.languages.swift})}return A0}var I0,WC;function Dne(){if(WC)return I0;WC=1,I0=e,e.displayName="systemd",e.aliases=[];function e(t){(function(n){var r={pattern:/^[;#].*/m,greedy:!0},a=/"(?:[^\r\n"\\]|\\(?:[^\r]|\r\n?))*"(?!\S)/.source;n.languages.systemd={comment:r,section:{pattern:/^\[[^\n\r\[\]]*\](?=[ \t]*$)/m,greedy:!0,inside:{punctuation:/^\[|\]$/,"section-name":{pattern:/[\s\S]+/,alias:"selector"}}},key:{pattern:/^[^\s=]+(?=[ \t]*=)/m,greedy:!0,alias:"attr-name"},value:{pattern:RegExp(/(=[ \t]*(?!\s))/.source+"(?:"+a+`|(?=[^"\r +]))(?:`+(/[^\s\\]/.source+'|[ ]+(?:(?![ "])|'+a+")|"+/\\[\r\n]+(?:[#;].*[\r\n]+)*(?![#;])/.source)+")*"),lookbehind:!0,greedy:!0,alias:"attr-value",inside:{comment:r,quoted:{pattern:RegExp(/(^|\s)/.source+a),lookbehind:!0,greedy:!0},punctuation:/\\$/m,boolean:{pattern:/^(?:false|no|off|on|true|yes)$/,greedy:!0}}},punctuation:/=/}})(t)}return I0}var R0,KC;function _y(){if(KC)return R0;KC=1,R0=e,e.displayName="t4Templating",e.aliases=[];function e(t){(function(n){function r(i,s,l){return{pattern:RegExp("<#"+i+"[\\s\\S]*?#>"),alias:"block",inside:{delimiter:{pattern:RegExp("^<#"+i+"|#>$"),alias:"important"},content:{pattern:/[\s\S]+/,inside:s,alias:l}}}}function a(i){var s=n.languages[i],l="language-"+i;return{block:{pattern:/<#[\s\S]+?#>/,inside:{directive:r("@",{"attr-value":{pattern:/=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+)/,inside:{punctuation:/^=|^["']|["']$/}},keyword:/\b\w+(?=\s)/,"attr-name":/\b\w+/}),expression:r("=",s,l),"class-feature":r("\\+",s,l),standard:r("",s,l)}}}}n.languages["t4-templating"]=Object.defineProperty({},"createT4",{value:a})})(t)}return R0}var _0,YC;function Mne(){if(YC)return _0;YC=1;var e=_y(),t=lu();_0=n,n.displayName="t4Cs",n.aliases=[];function n(r){r.register(e),r.register(t),r.languages.t4=r.languages["t4-cs"]=r.languages["t4-templating"].createT4("csharp")}return _0}var j0,XC;function p6(){if(XC)return j0;XC=1;var e=l6();j0=t,t.displayName="vbnet",t.aliases=[];function t(n){n.register(e),n.languages.vbnet=n.languages.extend("basic",{comment:[{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},{pattern:/(^|[^\\:])'.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(^|[^"])"(?:""|[^"])*"(?!")/,lookbehind:!0,greedy:!0},keyword:/(?:\b(?:ADDHANDLER|ADDRESSOF|ALIAS|AND|ANDALSO|AS|BEEP|BLOAD|BOOLEAN|BSAVE|BYREF|BYTE|BYVAL|CALL(?: ABSOLUTE)?|CASE|CATCH|CBOOL|CBYTE|CCHAR|CDATE|CDBL|CDEC|CHAIN|CHAR|CHDIR|CINT|CLASS|CLEAR|CLNG|CLOSE|CLS|COBJ|COM|COMMON|CONST|CONTINUE|CSBYTE|CSHORT|CSNG|CSTR|CTYPE|CUINT|CULNG|CUSHORT|DATA|DATE|DECIMAL|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DEFAULT|DELEGATE|DIM|DIRECTCAST|DO|DOUBLE|ELSE|ELSEIF|END|ENUM|ENVIRON|ERASE|ERROR|EVENT|EXIT|FALSE|FIELD|FILES|FINALLY|FOR(?: EACH)?|FRIEND|FUNCTION|GET|GETTYPE|GETXMLNAMESPACE|GLOBAL|GOSUB|GOTO|HANDLES|IF|IMPLEMENTS|IMPORTS|IN|INHERITS|INPUT|INTEGER|INTERFACE|IOCTL|IS|ISNOT|KEY|KILL|LET|LIB|LIKE|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|ME|MKDIR|MOD|MODULE|MUSTINHERIT|MUSTOVERRIDE|MYBASE|MYCLASS|NAME|NAMESPACE|NARROWING|NEW|NEXT|NOT|NOTHING|NOTINHERITABLE|NOTOVERRIDABLE|OBJECT|OF|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPERATOR|OPTION(?: BASE)?|OPTIONAL|OR|ORELSE|OUT|OVERLOADS|OVERRIDABLE|OVERRIDES|PARAMARRAY|PARTIAL|POKE|PRIVATE|PROPERTY|PROTECTED|PUBLIC|PUT|RAISEEVENT|READ|READONLY|REDIM|REM|REMOVEHANDLER|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SBYTE|SELECT(?: CASE)?|SET|SHADOWS|SHARED|SHELL|SHORT|SINGLE|SLEEP|STATIC|STEP|STOP|STRING|STRUCTURE|SUB|SWAP|SYNCLOCK|SYSTEM|THEN|THROW|TIMER|TO|TROFF|TRON|TRUE|TRY|TRYCAST|TYPE|TYPEOF|UINTEGER|ULONG|UNLOCK|UNTIL|USHORT|USING|VIEW PRINT|WAIT|WEND|WHEN|WHILE|WIDENING|WITH|WITHEVENTS|WRITE|WRITEONLY|XOR)|\B(?:#CONST|#ELSE|#ELSEIF|#END|#IF))(?:\$|\b)/i,punctuation:/[,;:(){}]/})}return j0}var O0,ZC;function Lne(){if(ZC)return O0;ZC=1;var e=_y(),t=p6();O0=n,n.displayName="t4Vb",n.aliases=[];function n(r){r.register(e),r.register(t),r.languages["t4-vb"]=r.languages["t4-templating"].createT4("vbnet")}return O0}var D0,JC;function m6(){if(JC)return D0;JC=1,D0=e,e.displayName="yaml",e.aliases=["yml"];function e(t){(function(n){var r=/[*&][^\s[\]{},]+/,a=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,i="(?:"+a.source+"(?:[ ]+"+r.source+")?|"+r.source+"(?:[ ]+"+a.source+")?)",s=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),l=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function c(u,d){d=(d||"").replace(/m/g,"")+"m";var p=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,function(){return i}).replace(/<>/g,function(){return u});return RegExp(p,d)}n.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,function(){return i})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,function(){return i}).replace(/<>/g,function(){return"(?:"+s+"|"+l+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:c(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:c(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:c(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:c(l),lookbehind:!0,greedy:!0},number:{pattern:c(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:a,important:r,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},n.languages.yml=n.languages.yaml})(t)}return D0}var M0,QC;function Pne(){if(QC)return M0;QC=1;var e=m6();M0=t,t.displayName="tap",t.aliases=[];function t(n){n.register(e),n.languages.tap={fail:/not ok[^#{\n\r]*/,pass:/ok[^#{\n\r]*/,pragma:/pragma [+-][a-z]+/,bailout:/bail out!.*/i,version:/TAP version \d+/i,plan:/\b\d+\.\.\d+(?: +#.*)?/,subtest:{pattern:/# Subtest(?:: .*)?/,greedy:!0},punctuation:/[{}]/,directive:/#.*/,yamlish:{pattern:/(^[ \t]*)---[\s\S]*?[\r\n][ \t]*\.\.\.$/m,lookbehind:!0,inside:n.languages.yaml,alias:"language-yaml"}}}return M0}var L0,eN;function Fne(){if(eN)return L0;eN=1,L0=e,e.displayName="tcl",e.aliases=[];function e(t){t.languages.tcl={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},string:{pattern:/"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"/,greedy:!0},variable:[{pattern:/(\$)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/,lookbehind:!0},{pattern:/(\$)\{[^}]+\}/,lookbehind:!0},{pattern:/(^[\t ]*set[ \t]+)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/m,lookbehind:!0}],function:{pattern:/(^[\t ]*proc[ \t]+)\S+/m,lookbehind:!0},builtin:[{pattern:/(^[\t ]*)(?:break|class|continue|error|eval|exit|for|foreach|if|proc|return|switch|while)\b/m,lookbehind:!0},/\b(?:else|elseif)\b/],scope:{pattern:/(^[\t ]*)(?:global|upvar|variable)\b/m,lookbehind:!0,alias:"constant"},keyword:{pattern:/(^[\t ]*|\[)(?:Safe_Base|Tcl|after|append|apply|array|auto_(?:execok|import|load|mkindex|qualify|reset)|automkindex_old|bgerror|binary|catch|cd|chan|clock|close|concat|dde|dict|encoding|eof|exec|expr|fblocked|fconfigure|fcopy|file(?:event|name)?|flush|gets|glob|history|http|incr|info|interp|join|lappend|lassign|lindex|linsert|list|llength|load|lrange|lrepeat|lreplace|lreverse|lsearch|lset|lsort|math(?:func|op)|memory|msgcat|namespace|open|package|parray|pid|pkg_mkIndex|platform|puts|pwd|re_syntax|read|refchan|regexp|registry|regsub|rename|scan|seek|set|socket|source|split|string|subst|tcl(?:_endOfWord|_findLibrary|startOf(?:Next|Previous)Word|test|vars|wordBreak(?:After|Before))|tell|time|tm|trace|unknown|unload|unset|update|uplevel|vwait)\b/m,lookbehind:!0},operator:/!=?|\*\*?|==|&&?|\|\|?|<[=<]?|>[=>]?|[-+~\/%?^]|\b(?:eq|in|ne|ni)\b/,punctuation:/[{}()\[\]]/}}return L0}var P0,tN;function Bne(){if(tN)return P0;tN=1,P0=e,e.displayName="textile",e.aliases=[];function e(t){(function(n){var r=/\([^|()\n]+\)|\[[^\]\n]+\]|\{[^}\n]+\}/.source,a=/\)|\((?![^|()\n]+\))/.source;function i(m,f){return RegExp(m.replace(//g,function(){return"(?:"+r+")"}).replace(//g,function(){return"(?:"+a+")"}),f||"")}var s={css:{pattern:/\{[^{}]+\}/,inside:{rest:n.languages.css}},"class-id":{pattern:/(\()[^()]+(?=\))/,lookbehind:!0,alias:"attr-value"},lang:{pattern:/(\[)[^\[\]]+(?=\])/,lookbehind:!0,alias:"attr-value"},punctuation:/[\\\/]\d+|\S/},l=n.languages.textile=n.languages.extend("markup",{phrase:{pattern:/(^|\r|\n)\S[\s\S]*?(?=$|\r?\n\r?\n|\r\r)/,lookbehind:!0,inside:{"block-tag":{pattern:i(/^[a-z]\w*(?:||[<>=])*\./.source),inside:{modifier:{pattern:i(/(^[a-z]\w*)(?:||[<>=])+(?=\.)/.source),lookbehind:!0,inside:s},tag:/^[a-z]\w*/,punctuation:/\.$/}},list:{pattern:i(/^[*#]+*\s+\S.*/.source,"m"),inside:{modifier:{pattern:i(/(^[*#]+)+/.source),lookbehind:!0,inside:s},punctuation:/^[*#]+/}},table:{pattern:i(/^(?:(?:||[<>=^~])+\.\s*)?(?:\|(?:(?:||[<>=^~_]|[\\/]\d+)+\.|(?!(?:||[<>=^~_]|[\\/]\d+)+\.))[^|]*)+\|/.source,"m"),inside:{modifier:{pattern:i(/(^|\|(?:\r?\n|\r)?)(?:||[<>=^~_]|[\\/]\d+)+(?=\.)/.source),lookbehind:!0,inside:s},punctuation:/\||^\./}},inline:{pattern:i(/(^|[^a-zA-Z\d])(\*\*|__|\?\?|[*_%@+\-^~])*.+?\2(?![a-zA-Z\d])/.source),lookbehind:!0,inside:{bold:{pattern:i(/(^(\*\*?)*).+?(?=\2)/.source),lookbehind:!0},italic:{pattern:i(/(^(__?)*).+?(?=\2)/.source),lookbehind:!0},cite:{pattern:i(/(^\?\?*).+?(?=\?\?)/.source),lookbehind:!0,alias:"string"},code:{pattern:i(/(^@*).+?(?=@)/.source),lookbehind:!0,alias:"keyword"},inserted:{pattern:i(/(^\+*).+?(?=\+)/.source),lookbehind:!0},deleted:{pattern:i(/(^-*).+?(?=-)/.source),lookbehind:!0},span:{pattern:i(/(^%*).+?(?=%)/.source),lookbehind:!0},modifier:{pattern:i(/(^\*\*|__|\?\?|[*_%@+\-^~])+/.source),lookbehind:!0,inside:s},punctuation:/[*_%?@+\-^~]+/}},"link-ref":{pattern:/^\[[^\]]+\]\S+$/m,inside:{string:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0},url:{pattern:/(^\])\S+$/,lookbehind:!0},punctuation:/[\[\]]/}},link:{pattern:i(/"*[^"]+":.+?(?=[^\w/]?(?:\s|$))/.source),inside:{text:{pattern:i(/(^"*)[^"]+(?=")/.source),lookbehind:!0},modifier:{pattern:i(/(^")+/.source),lookbehind:!0,inside:s},url:{pattern:/(:).+/,lookbehind:!0},punctuation:/[":]/}},image:{pattern:i(/!(?:||[<>=])*(?![<>=])[^!\s()]+(?:\([^)]+\))?!(?::.+?(?=[^\w/]?(?:\s|$)))?/.source),inside:{source:{pattern:i(/(^!(?:||[<>=])*)(?![<>=])[^!\s()]+(?:\([^)]+\))?(?=!)/.source),lookbehind:!0,alias:"url"},modifier:{pattern:i(/(^!)(?:||[<>=])+/.source),lookbehind:!0,inside:s},url:{pattern:/(:).+/,lookbehind:!0},punctuation:/[!:]/}},footnote:{pattern:/\b\[\d+\]/,alias:"comment",inside:{punctuation:/\[|\]/}},acronym:{pattern:/\b[A-Z\d]+\([^)]+\)/,inside:{comment:{pattern:/(\()[^()]+(?=\))/,lookbehind:!0},punctuation:/[()]/}},mark:{pattern:/\b\((?:C|R|TM)\)/,alias:"comment",inside:{punctuation:/[()]/}}}}}),c=l.phrase.inside,u={inline:c.inline,link:c.link,image:c.image,footnote:c.footnote,acronym:c.acronym,mark:c.mark};l.tag.pattern=/<\/?(?!\d)[a-z0-9]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i;var d=c.inline.inside;d.bold.inside=u,d.italic.inside=u,d.inserted.inside=u,d.deleted.inside=u,d.span.inside=u;var p=c.table.inside;p.inline=u.inline,p.link=u.link,p.image=u.image,p.footnote=u.footnote,p.acronym=u.acronym,p.mark=u.mark})(t)}return P0}var F0,nN;function $ne(){if(nN)return F0;nN=1,F0=e,e.displayName="toml",e.aliases=[];function e(t){(function(n){var r=/(?:[\w-]+|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*")/.source;function a(i){return i.replace(/__/g,function(){return r})}n.languages.toml={comment:{pattern:/#.*/,greedy:!0},table:{pattern:RegExp(a(/(^[\t ]*\[\s*(?:\[\s*)?)__(?:\s*\.\s*__)*(?=\s*\])/.source),"m"),lookbehind:!0,greedy:!0,alias:"class-name"},key:{pattern:RegExp(a(/(^[\t ]*|[{,]\s*)__(?:\s*\.\s*__)*(?=\s*=)/.source),"m"),lookbehind:!0,greedy:!0,alias:"property"},string:{pattern:/"""(?:\\[\s\S]|[^\\])*?"""|'''[\s\S]*?'''|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},date:[{pattern:/\b\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?)?\b/i,alias:"number"},{pattern:/\b\d{2}:\d{2}:\d{2}(?:\.\d+)?\b/,alias:"number"}],number:/(?:\b0(?:x[\da-zA-Z]+(?:_[\da-zA-Z]+)*|o[0-7]+(?:_[0-7]+)*|b[10]+(?:_[10]+)*))\b|[-+]?\b\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?\b|[-+]?\b(?:inf|nan)\b/,boolean:/\b(?:false|true)\b/,punctuation:/[.,=[\]{}]/}})(t)}return F0}var B0,rN;function Une(){if(rN)return B0;rN=1,B0=e,e.displayName="tremor",e.aliases=[];function e(t){(function(n){n.languages.tremor={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},"interpolated-string":null,extractor:{pattern:/\b[a-z_]\w*\|(?:[^\r\n\\|]|\\(?:\r\n|[\s\S]))*\|/i,greedy:!0,inside:{regex:{pattern:/(^re)\|[\s\S]+/,lookbehind:!0},function:/^\w+/,value:/\|[\s\S]+/}},identifier:{pattern:/`[^`]*`/,greedy:!0},function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())\b/,keyword:/\b(?:args|as|by|case|config|connect|connector|const|copy|create|default|define|deploy|drop|each|emit|end|erase|event|flow|fn|for|from|group|having|insert|into|intrinsic|let|links|match|merge|mod|move|of|operator|patch|pipeline|recur|script|select|set|sliding|state|stream|to|tumbling|update|use|when|where|window|with)\b/,boolean:/\b(?:false|null|true)\b/i,number:/\b(?:0b[01_]*|0x[0-9a-fA-F_]*|\d[\d_]*(?:\.\d[\d_]*)?(?:[Ee][+-]?[\d_]+)?)\b/,"pattern-punctuation":{pattern:/%(?=[({[])/,alias:"punctuation"},operator:/[-+*\/%~!^]=?|=[=>]?|&[&=]?|\|[|=]?|<>?>?=?|(?:absent|and|not|or|present|xor)\b/,punctuation:/::|[;\[\]()\{\},.:]/};var r=/#\{(?:[^"{}]|\{[^{}]*\}|"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*")*\}/.source;n.languages.tremor["interpolated-string"]={pattern:RegExp(/(^|[^\\])/.source+'(?:"""(?:'+/[^"\\#]|\\[\s\S]|"(?!"")|#(?!\{)/.source+"|"+r+')*"""|"(?:'+/[^"\\\r\n#]|\\(?:\r\n|[\s\S])|#(?!\{)/.source+"|"+r+')*")'),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:RegExp(r),inside:{punctuation:/^#\{|\}$/,expression:{pattern:/[\s\S]+/,inside:n.languages.tremor}}},string:/[\s\S]+/}},n.languages.troy=n.languages.tremor,n.languages.trickle=n.languages.tremor})(t)}return B0}var $0,aN;function zne(){if(aN)return $0;aN=1;var e=u6(),t=Ay();$0=n,n.displayName="tsx",n.aliases=[];function n(r){r.register(e),r.register(t),(function(a){var i=a.util.clone(a.languages.typescript);a.languages.tsx=a.languages.extend("jsx",i),delete a.languages.tsx.parameter,delete a.languages.tsx["literal-property"];var s=a.languages.tsx.tag;s.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+s.pattern.source+")",s.pattern.flags),s.lookbehind=!0})(r)}return $0}var U0,iN;function qne(){if(iN)return U0;iN=1;var e=Gn();U0=t,t.displayName="tt2",t.aliases=[];function t(n){n.register(e),(function(r){r.languages.tt2=r.languages.extend("clike",{comment:/#.*|\[%#[\s\S]*?%\]/,keyword:/\b(?:BLOCK|CALL|CASE|CATCH|CLEAR|DEBUG|DEFAULT|ELSE|ELSIF|END|FILTER|FINAL|FOREACH|GET|IF|IN|INCLUDE|INSERT|LAST|MACRO|META|NEXT|PERL|PROCESS|RAWPERL|RETURN|SET|STOP|SWITCH|TAGS|THROW|TRY|UNLESS|USE|WHILE|WRAPPER)\b/,punctuation:/[[\]{},()]/}),r.languages.insertBefore("tt2","number",{operator:/=[>=]?|!=?|<=?|>=?|&&|\|\|?|\b(?:and|not|or)\b/,variable:{pattern:/\b[a-z]\w*(?:\s*\.\s*(?:\d+|\$?[a-z]\w*))*\b/i}}),r.languages.insertBefore("tt2","keyword",{delimiter:{pattern:/^(?:\[%|%%)-?|-?%\]$/,alias:"punctuation"}}),r.languages.insertBefore("tt2","string",{"single-quoted-string":{pattern:/'[^\\']*(?:\\[\s\S][^\\']*)*'/,greedy:!0,alias:"string"},"double-quoted-string":{pattern:/"[^\\"]*(?:\\[\s\S][^\\"]*)*"/,greedy:!0,alias:"string",inside:{variable:{pattern:/\$(?:[a-z]\w*(?:\.(?:\d+|\$?[a-z]\w*))*)/i}}}}),delete r.languages.tt2.string,r.hooks.add("before-tokenize",function(a){var i=/\[%[\s\S]+?%\]/g;r.languages["markup-templating"].buildPlaceholders(a,"tt2",i)}),r.hooks.add("after-tokenize",function(a){r.languages["markup-templating"].tokenizePlaceholders(a,"tt2")})})(n)}return U0}var z0,sN;function Hne(){if(sN)return z0;sN=1;var e=Gn();z0=t,t.displayName="twig",t.aliases=[];function t(n){n.register(e),n.languages.twig={comment:/^\{#[\s\S]*?#\}$/,"tag-name":{pattern:/(^\{%-?\s*)\w+/,lookbehind:!0,alias:"keyword"},delimiter:{pattern:/^\{[{%]-?|-?[%}]\}$/,alias:"punctuation"},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,inside:{punctuation:/^['"]|['"]$/}},keyword:/\b(?:even|if|odd)\b/,boolean:/\b(?:false|null|true)\b/,number:/\b0x[\dA-Fa-f]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][-+]?\d+)?/,operator:[{pattern:/(\s)(?:and|b-and|b-or|b-xor|ends with|in|is|matches|not|or|same as|starts with)(?=\s)/,lookbehind:!0},/[=<>]=?|!=|\*\*?|\/\/?|\?:?|[-+~%|]/],punctuation:/[()\[\]{}:.,]/},n.hooks.add("before-tokenize",function(r){if(r.language==="twig"){var a=/\{(?:#[\s\S]*?#|%[\s\S]*?%|\{[\s\S]*?\})\}/g;n.languages["markup-templating"].buildPlaceholders(r,"twig",a)}}),n.hooks.add("after-tokenize",function(r){n.languages["markup-templating"].tokenizePlaceholders(r,"twig")})}return z0}var q0,oN;function Gne(){if(oN)return q0;oN=1,q0=e,e.displayName="typoscript",e.aliases=["tsconfig"];function e(t){(function(n){var r=/\b(?:ACT|ACTIFSUB|CARRAY|CASE|CLEARGIF|COA|COA_INT|CONSTANTS|CONTENT|CUR|EDITPANEL|EFFECT|EXT|FILE|FLUIDTEMPLATE|FORM|FRAME|FRAMESET|GIFBUILDER|GMENU|GMENU_FOLDOUT|GMENU_LAYERS|GP|HMENU|HRULER|HTML|IENV|IFSUB|IMAGE|IMGMENU|IMGMENUITEM|IMGTEXT|IMG_RESOURCE|INCLUDE_TYPOSCRIPT|JSMENU|JSMENUITEM|LLL|LOAD_REGISTER|NO|PAGE|RECORDS|RESTORE_REGISTER|TEMPLATE|TEXT|TMENU|TMENUITEM|TMENU_LAYERS|USER|USER_INT|_GIFBUILDER|global|globalString|globalVar)\b/;n.languages.typoscript={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:= \t]|(?:^|[^= \t])[ \t]+)\/\/.*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^"'])#.*/,lookbehind:!0,greedy:!0}],function:[{pattern://,inside:{string:{pattern:/"[^"\r\n]*"|'[^'\r\n]*'/,inside:{keyword:r}},keyword:{pattern:/INCLUDE_TYPOSCRIPT/}}},{pattern:/@import\s*(?:"[^"\r\n]*"|'[^'\r\n]*')/,inside:{string:/"[^"\r\n]*"|'[^'\r\n]*'/}}],string:{pattern:/^([^=]*=[< ]?)(?:(?!\]\n).)*/,lookbehind:!0,inside:{function:/\{\$.*\}/,keyword:r,number:/^\d+$/,punctuation:/[,|:]/}},keyword:r,number:{pattern:/\b\d+\s*[.{=]/,inside:{operator:/[.{=]/}},tag:{pattern:/\.?[-\w\\]+\.?/,inside:{punctuation:/\./}},punctuation:/[{}[\];(),.:|]/,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/},n.languages.tsconfig=n.languages.typoscript})(t)}return q0}var H0,lN;function Vne(){if(lN)return H0;lN=1,H0=e,e.displayName="unrealscript",e.aliases=["uc","uscript"];function e(t){t.languages.unrealscript={comment:/\/\/.*|\/\*[\s\S]*?\*\//,string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},category:{pattern:/(\b(?:(?:autoexpand|hide|show)categories|var)\s*\()[^()]+(?=\))/,lookbehind:!0,greedy:!0,alias:"property"},metadata:{pattern:/(\w\s*)<\s*\w+\s*=[^<>|=\r\n]+(?:\|\s*\w+\s*=[^<>|=\r\n]+)*>/,lookbehind:!0,greedy:!0,inside:{property:/\b\w+(?=\s*=)/,operator:/=/,punctuation:/[<>|]/}},macro:{pattern:/`\w+/,alias:"property"},"class-name":{pattern:/(\b(?:class|enum|extends|interface|state(?:\(\))?|struct|within)\s+)\w+/,lookbehind:!0},keyword:/\b(?:abstract|actor|array|auto|autoexpandcategories|bool|break|byte|case|class|classgroup|client|coerce|collapsecategories|config|const|continue|default|defaultproperties|delegate|dependson|deprecated|do|dontcollapsecategories|editconst|editinlinenew|else|enum|event|exec|export|extends|final|float|for|forcescriptorder|foreach|function|goto|guid|hidecategories|hidedropdown|if|ignores|implements|inherits|input|int|interface|iterator|latent|local|material|name|native|nativereplication|noexport|nontransient|noteditinlinenew|notplaceable|operator|optional|out|pawn|perobjectconfig|perobjectlocalized|placeable|postoperator|preoperator|private|protected|reliable|replication|return|server|showcategories|simulated|singular|state|static|string|struct|structdefault|structdefaultproperties|switch|texture|transient|travel|unreliable|until|var|vector|while|within)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,boolean:/\b(?:false|true)\b/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/>>|<<|--|\+\+|\*\*|[-+*/~!=<>$@]=?|&&?|\|\|?|\^\^?|[?:%]|\b(?:ClockwiseFrom|Cross|Dot)\b/,punctuation:/[()[\]{};,.]/},t.languages.uc=t.languages.uscript=t.languages.unrealscript}return H0}var G0,cN;function Wne(){if(cN)return G0;cN=1,G0=e,e.displayName="uorazor",e.aliases=[];function e(t){t.languages.uorazor={"comment-hash":{pattern:/#.*/,alias:"comment",greedy:!0},"comment-slash":{pattern:/\/\/.*/,alias:"comment",greedy:!0},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,inside:{punctuation:/^['"]|['"]$/},greedy:!0},"source-layers":{pattern:/\b(?:arms|backpack|blue|bracelet|cancel|clear|cloak|criminal|earrings|enemy|facialhair|friend|friendly|gloves|gray|grey|ground|hair|head|innerlegs|innertorso|innocent|lefthand|middletorso|murderer|neck|nonfriendly|onehandedsecondary|outerlegs|outertorso|pants|red|righthand|ring|self|shirt|shoes|talisman|waist)\b/i,alias:"function"},"source-commands":{pattern:/\b(?:alliance|attack|cast|clearall|clearignore|clearjournal|clearlist|clearsysmsg|createlist|createtimer|dclick|dclicktype|dclickvar|dress|dressconfig|drop|droprelloc|emote|getlabel|guild|gumpclose|gumpresponse|hotkey|ignore|lasttarget|lift|lifttype|menu|menuresponse|msg|org|organize|organizer|overhead|pause|poplist|potion|promptresponse|pushlist|removelist|removetimer|rename|restock|say|scav|scavenger|script|setability|setlasttarget|setskill|settimer|setvar|sysmsg|target|targetloc|targetrelloc|targettype|undress|unignore|unsetvar|useobject|useonce|useskill|usetype|virtue|wait|waitforgump|waitformenu|waitforprompt|waitforstat|waitforsysmsg|waitfortarget|walk|wfsysmsg|wft|whisper|yell)\b/,alias:"function"},"tag-name":{pattern:/(^\{%-?\s*)\w+/,lookbehind:!0,alias:"keyword"},delimiter:{pattern:/^\{[{%]-?|-?[%}]\}$/,alias:"punctuation"},function:/\b(?:atlist|close|closest|count|counter|counttype|dead|dex|diffhits|diffmana|diffstam|diffweight|find|findbuff|finddebuff|findlayer|findtype|findtypelist|followers|gumpexists|hidden|hits|hp|hue|human|humanoid|ingump|inlist|insysmessage|insysmsg|int|invul|lhandempty|list|listexists|mana|maxhits|maxhp|maxmana|maxstam|maxweight|monster|mounted|name|next|noto|paralyzed|poisoned|position|prev|previous|queued|rand|random|rhandempty|skill|stam|str|targetexists|timer|timerexists|varexist|warmode|weight)\b/,keyword:/\b(?:and|as|break|continue|else|elseif|endfor|endif|endwhile|for|if|loop|not|or|replay|stop|while)\b/,boolean:/\b(?:false|null|true)\b/,number:/\b0x[\dA-Fa-f]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][-+]?\d+)?/,operator:[{pattern:/(\s)(?:and|b-and|b-or|b-xor|ends with|in|is|matches|not|or|same as|starts with)(?=\s)/,lookbehind:!0},/[=<>]=?|!=|\*\*?|\/\/?|\?:?|[-+~%|]/],punctuation:/[()\[\]{}:.,]/}}return G0}var V0,uN;function Kne(){if(uN)return V0;uN=1,V0=e,e.displayName="uri",e.aliases=["url"];function e(t){t.languages.uri={scheme:{pattern:/^[a-z][a-z0-9+.-]*:/im,greedy:!0,inside:{"scheme-delimiter":/:$/}},fragment:{pattern:/#[\w\-.~!$&'()*+,;=%:@/?]*/,inside:{"fragment-delimiter":/^#/}},query:{pattern:/\?[\w\-.~!$&'()*+,;=%:@/?]*/,inside:{"query-delimiter":{pattern:/^\?/,greedy:!0},"pair-delimiter":/[&;]/,pair:{pattern:/^[^=][\s\S]*/,inside:{key:/^[^=]+/,value:{pattern:/(^=)[\s\S]+/,lookbehind:!0}}}}},authority:{pattern:RegExp(/^\/\//.source+/(?:[\w\-.~!$&'()*+,;=%:]*@)?/.source+("(?:"+/\[(?:[0-9a-fA-F:.]{2,48}|v[0-9a-fA-F]+\.[\w\-.~!$&'()*+,;=]+)\]/.source+"|"+/[\w\-.~!$&'()*+,;=%]*/.source+")")+/(?::\d*)?/.source,"m"),inside:{"authority-delimiter":/^\/\//,"user-info-segment":{pattern:/^[\w\-.~!$&'()*+,;=%:]*@/,inside:{"user-info-delimiter":/@$/,"user-info":/^[\w\-.~!$&'()*+,;=%:]+/}},"port-segment":{pattern:/:\d*$/,inside:{"port-delimiter":/^:/,port:/^\d+/}},host:{pattern:/[\s\S]+/,inside:{"ip-literal":{pattern:/^\[[\s\S]+\]$/,inside:{"ip-literal-delimiter":/^\[|\]$/,"ipv-future":/^v[\s\S]+/,"ipv6-address":/^[\s\S]+/}},"ipv4-address":/^(?:(?:[03-9]\d?|[12]\d{0,2})\.){3}(?:[03-9]\d?|[12]\d{0,2})$/}}}},path:{pattern:/^[\w\-.~!$&'()*+,;=%:@/]+/m,inside:{"path-separator":/\//}}},t.languages.url=t.languages.uri}return V0}var W0,dN;function Yne(){if(dN)return W0;dN=1,W0=e,e.displayName="v",e.aliases=[];function e(t){(function(n){var r={pattern:/[\s\S]+/,inside:null};n.languages.v=n.languages.extend("clike",{string:{pattern:/r?(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,alias:"quoted-string",greedy:!0,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:\{[^{}]*\}|\w+(?:\.\w+(?:\([^\(\)]*\))?|\[[^\[\]]+\])*)/,lookbehind:!0,inside:{"interpolation-variable":{pattern:/^\$\w[\s\S]*$/,alias:"variable"},"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},"interpolation-expression":r}}}},"class-name":{pattern:/(\b(?:enum|interface|struct|type)\s+)(?:C\.)?\w+/,lookbehind:!0},keyword:/(?:\b(?:__global|as|asm|assert|atomic|break|chan|const|continue|defer|else|embed|enum|fn|for|go(?:to)?|if|import|in|interface|is|lock|match|module|mut|none|or|pub|return|rlock|select|shared|sizeof|static|struct|type(?:of)?|union|unsafe)|\$(?:else|for|if)|#(?:flag|include))\b/,number:/\b(?:0x[a-f\d]+(?:_[a-f\d]+)*|0b[01]+(?:_[01]+)*|0o[0-7]+(?:_[0-7]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?)\b/i,operator:/~|\?|[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\.?/,builtin:/\b(?:any(?:_float|_int)?|bool|byte(?:ptr)?|charptr|f(?:32|64)|i(?:8|16|64|128|nt)|rune|size_t|string|u(?:16|32|64|128)|voidptr)\b/}),r.inside=n.languages.v,n.languages.insertBefore("v","string",{char:{pattern:/`(?:\\`|\\?[^`]{1,2})`/,alias:"rune"}}),n.languages.insertBefore("v","operator",{attribute:{pattern:/(^[\t ]*)\[(?:deprecated|direct_array_access|flag|inline|live|ref_only|typedef|unsafe_fn|windows_stdcall)\]/m,lookbehind:!0,alias:"annotation",inside:{punctuation:/[\[\]]/,keyword:/\w+/}},generic:{pattern:/<\w+>(?=\s*[\)\{])/,inside:{punctuation:/[<>]/,"class-name":/\w+/}}}),n.languages.insertBefore("v","function",{"generic-function":{pattern:/\b\w+\s*<\w+>(?=\()/,inside:{function:/^\w+/,generic:{pattern:/<\w+>/,inside:n.languages.v.generic.inside}}}})})(t)}return W0}var K0,pN;function Xne(){if(pN)return K0;pN=1,K0=e,e.displayName="vala",e.aliases=[];function e(t){t.languages.vala=t.languages.extend("clike",{"class-name":[{pattern:/\b[A-Z]\w*(?:\.\w+)*\b(?=(?:\?\s+|\*?\s+\*?)\w)/,inside:{punctuation:/\./}},{pattern:/(\[)[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}},{pattern:/(\b(?:class|interface)\s+[A-Z]\w*(?:\.\w+)*\s*:\s*)[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}},{pattern:/((?:\b(?:class|enum|interface|new|struct)\s+)|(?:catch\s+\())[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}}],keyword:/\b(?:abstract|as|assert|async|base|bool|break|case|catch|char|class|const|construct|continue|default|delegate|delete|do|double|dynamic|else|ensures|enum|errordomain|extern|finally|float|for|foreach|get|if|in|inline|int|int16|int32|int64|int8|interface|internal|is|lock|long|namespace|new|null|out|override|owned|params|private|protected|public|ref|requires|return|set|short|signal|sizeof|size_t|ssize_t|static|string|struct|switch|this|throw|throws|try|typeof|uchar|uint|uint16|uint32|uint64|uint8|ulong|unichar|unowned|ushort|using|value|var|virtual|void|volatile|weak|while|yield)\b/i,function:/\b\w+(?=\s*\()/,number:/(?:\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)(?:f|u?l?)?/i,operator:/\+\+|--|&&|\|\||<<=?|>>=?|=>|->|~|[+\-*\/%&^|=!<>]=?|\?\??|\.\.\./,punctuation:/[{}[\];(),.:]/,constant:/\b[A-Z0-9_]+\b/}),t.languages.insertBefore("vala","string",{"raw-string":{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string"},"template-string":{pattern:/@"[\s\S]*?"/,greedy:!0,inside:{interpolation:{pattern:/\$(?:\([^)]*\)|[a-zA-Z]\w*)/,inside:{delimiter:{pattern:/^\$\(?|\)$/,alias:"punctuation"},rest:t.languages.vala}},string:/[\s\S]+/}}}),t.languages.insertBefore("vala","keyword",{regex:{pattern:/\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[imsx]{0,4}(?=\s*(?:$|[\r\n,.;})\]]))/,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:t.languages.regex},"regex-delimiter":/^\//,"regex-flags":/^[a-z]+$/}}})}return K0}var Y0,mN;function Zne(){if(mN)return Y0;mN=1,Y0=e,e.displayName="velocity",e.aliases=[];function e(t){(function(n){n.languages.velocity=n.languages.extend("markup",{});var r={variable:{pattern:/(^|[^\\](?:\\\\)*)\$!?(?:[a-z][\w-]*(?:\([^)]*\))?(?:\.[a-z][\w-]*(?:\([^)]*\))?|\[[^\]]+\])*|\{[^}]+\})/i,lookbehind:!0,inside:{}},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},number:/\b\d+\b/,boolean:/\b(?:false|true)\b/,operator:/[=!<>]=?|[+*/%-]|&&|\|\||\.\.|\b(?:eq|g[et]|l[et]|n(?:e|ot))\b/,punctuation:/[(){}[\]:,.]/};r.variable.inside={string:r.string,function:{pattern:/([^\w-])[a-z][\w-]*(?=\()/,lookbehind:!0},number:r.number,boolean:r.boolean,punctuation:r.punctuation},n.languages.insertBefore("velocity","comment",{unparsed:{pattern:/(^|[^\\])#\[\[[\s\S]*?\]\]#/,lookbehind:!0,greedy:!0,inside:{punctuation:/^#\[\[|\]\]#$/}},"velocity-comment":[{pattern:/(^|[^\\])#\*[\s\S]*?\*#/,lookbehind:!0,greedy:!0,alias:"comment"},{pattern:/(^|[^\\])##.*/,lookbehind:!0,greedy:!0,alias:"comment"}],directive:{pattern:/(^|[^\\](?:\\\\)*)#@?(?:[a-z][\w-]*|\{[a-z][\w-]*\})(?:\s*\((?:[^()]|\([^()]*\))*\))?/i,lookbehind:!0,inside:{keyword:{pattern:/^#@?(?:[a-z][\w-]*|\{[a-z][\w-]*\})|\bin\b/,inside:{punctuation:/[{}]/}},rest:r}},variable:r.variable}),n.languages.velocity.tag.inside["attr-value"].inside.rest=n.languages.velocity})(t)}return Y0}var X0,fN;function Jne(){if(fN)return X0;fN=1,X0=e,e.displayName="verilog",e.aliases=[];function e(t){t.languages.verilog={comment:{pattern:/\/\/.*|\/\*[\s\S]*?\*\//,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"kernel-function":{pattern:/\B\$\w+\b/,alias:"property"},constant:/\B`\w+\b/,function:/\b\w+(?=\()/,keyword:/\b(?:alias|and|assert|assign|assume|automatic|before|begin|bind|bins|binsof|bit|break|buf|bufif0|bufif1|byte|case|casex|casez|cell|chandle|class|clocking|cmos|config|const|constraint|context|continue|cover|covergroup|coverpoint|cross|deassign|default|defparam|design|disable|dist|do|edge|else|end|endcase|endclass|endclocking|endconfig|endfunction|endgenerate|endgroup|endinterface|endmodule|endpackage|endprimitive|endprogram|endproperty|endsequence|endspecify|endtable|endtask|enum|event|expect|export|extends|extern|final|first_match|for|force|foreach|forever|fork|forkjoin|function|generate|genvar|highz0|highz1|if|iff|ifnone|ignore_bins|illegal_bins|import|incdir|include|initial|inout|input|inside|instance|int|integer|interface|intersect|join|join_any|join_none|large|liblist|library|local|localparam|logic|longint|macromodule|matches|medium|modport|module|nand|negedge|new|nmos|nor|noshowcancelled|not|notif0|notif1|null|or|output|package|packed|parameter|pmos|posedge|primitive|priority|program|property|protected|pull0|pull1|pulldown|pullup|pulsestyle_ondetect|pulsestyle_onevent|pure|rand|randc|randcase|randsequence|rcmos|real|realtime|ref|reg|release|repeat|return|rnmos|rpmos|rtran|rtranif0|rtranif1|scalared|sequence|shortint|shortreal|showcancelled|signed|small|solve|specify|specparam|static|string|strong0|strong1|struct|super|supply0|supply1|table|tagged|task|this|throughout|time|timeprecision|timeunit|tran|tranif0|tranif1|tri|tri0|tri1|triand|trior|trireg|type|typedef|union|unique|unsigned|use|uwire|var|vectored|virtual|void|wait|wait_order|wand|weak0|weak1|while|wildcard|wire|with|within|wor|xnor|xor)\b/,important:/\b(?:always|always_comb|always_ff|always_latch)\b(?: *@)?/,number:/\B##?\d+|(?:\b\d+)?'[odbh] ?[\da-fzx_?]+|\b(?:\d*[._])?\d+(?:e[-+]?\d+)?/i,operator:/[-+{}^~%*\/?=!<>&|]+/,punctuation:/[[\];(),.:]/}}return X0}var Z0,hN;function Qne(){if(hN)return Z0;hN=1,Z0=e,e.displayName="vhdl",e.aliases=[];function e(t){t.languages.vhdl={comment:/--.+/,"vhdl-vectors":{pattern:/\b[oxb]"[\da-f_]+"|"[01uxzwlh-]+"/i,alias:"number"},"quoted-function":{pattern:/"\S+?"(?=\()/,alias:"function"},string:/"(?:[^\\"\r\n]|\\(?:\r\n|[\s\S]))*"/,constant:/\b(?:library|use)\b/i,keyword:/\b(?:'active|'ascending|'base|'delayed|'driving|'driving_value|'event|'high|'image|'instance_name|'last_active|'last_event|'last_value|'left|'leftof|'length|'low|'path_name|'pos|'pred|'quiet|'range|'reverse_range|'right|'rightof|'simple_name|'stable|'succ|'transaction|'val|'value|access|after|alias|all|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|disconnect|downto|else|elsif|end|entity|exit|file|for|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|new|next|null|of|on|open|others|out|package|port|postponed|procedure|process|pure|range|record|register|reject|report|return|select|severity|shared|signal|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with)\b/i,boolean:/\b(?:false|true)\b/i,function:/\w+(?=\()/,number:/'[01uxzwlh-]'|\b(?:\d+#[\da-f_.]+#|\d[\d_.]*)(?:e[-+]?\d+)?/i,operator:/[<>]=?|:=|[-+*/&=]|\b(?:abs|and|mod|nand|nor|not|or|rem|rol|ror|sla|sll|sra|srl|xnor|xor)\b/i,punctuation:/[{}[\];(),.:]/}}return Z0}var J0,gN;function ere(){if(gN)return J0;gN=1,J0=e,e.displayName="vim",e.aliases=[];function e(t){t.languages.vim={string:/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\r\n]|'')*'/,comment:/".*/,function:/\b\w+(?=\()/,keyword:/\b(?:N|Next|P|Print|X|XMLent|XMLns|ab|abbreviate|abc|abclear|abo|aboveleft|al|all|ar|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|args|argu|argument|as|ascii|b|bN|bNext|ba|bad|badd|ball|bd|bdelete|be|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bo|botright|bp|bprevious|br|brea|break|breaka|breakadd|breakd|breakdel|breakl|breaklist|brewind|bro|browse|bufdo|buffer|buffers|bun|bunload|bw|bwipeout|c|cN|cNext|cNfcNfile|ca|cabbrev|cabc|cabclear|cad|caddb|caddbuffer|caddexpr|caddf|caddfile|cal|call|cat|catch|cb|cbuffer|cc|ccl|cclose|cd|ce|center|cex|cexpr|cf|cfile|cfir|cfirst|cg|cgetb|cgetbuffer|cgete|cgetexpr|cgetfile|change|changes|chd|chdir|che|checkpath|checkt|checktime|cl|cla|clast|clist|clo|close|cmapc|cmapclear|cn|cnew|cnewer|cnext|cnf|cnfile|cnorea|cnoreabbrev|co|col|colder|colo|colorscheme|comc|comclear|comp|compiler|con|conf|confirm|continue|cope|copen|copy|cp|cpf|cpfile|cprevious|cq|cquit|cr|crewind|cu|cuna|cunabbrev|cunmap|cw|cwindow|d|debugg|debuggreedy|delc|delcommand|delete|delf|delfunction|delm|delmarks|di|diffg|diffget|diffoff|diffpatch|diffpu|diffput|diffsplit|diffthis|diffu|diffupdate|dig|digraphs|display|dj|djump|dl|dlist|dr|drop|ds|dsearch|dsp|dsplit|e|earlier|echoe|echoerr|echom|echomsg|echon|edit|el|else|elsei|elseif|em|emenu|en|endf|endfo|endfor|endfun|endfunction|endif|endt|endtry|endw|endwhile|ene|enew|ex|exi|exit|exu|exusage|f|file|files|filetype|fin|fina|finally|find|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|foldd|folddoc|folddoclosed|folddoopen|foldo|foldopen|for|fu|fun|function|go|goto|gr|grep|grepa|grepadd|h|ha|hardcopy|help|helpf|helpfind|helpg|helpgrep|helpt|helptags|hid|hide|his|history|ia|iabbrev|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|inorea|inoreabbrev|isearch|isp|isplit|iu|iuna|iunabbrev|iunmap|j|join|ju|jumps|k|kee|keepalt|keepj|keepjumps|keepmarks|l|lN|lNext|lNf|lNfile|la|lad|laddb|laddbuffer|laddexpr|laddf|laddfile|lan|language|last|later|lb|lbuffer|lc|lcd|lch|lchdir|lcl|lclose|left|lefta|leftabove|let|lex|lexpr|lf|lfile|lfir|lfirst|lg|lgetb|lgetbuffer|lgete|lgetexpr|lgetfile|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|list|ll|lla|llast|lli|llist|lm|lmak|lmake|lmap|lmapc|lmapclear|ln|lne|lnew|lnewer|lnext|lnf|lnfile|lnoremap|lo|loadview|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lp|lpf|lpfile|lprevious|lr|lrewind|ls|lt|ltag|lu|lunmap|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|m|ma|mak|make|mark|marks|mat|match|menut|menutranslate|mk|mkexrc|mks|mksession|mksp|mkspell|mkv|mkvie|mkview|mkvimrc|mod|mode|move|mz|mzf|mzfile|mzscheme|n|nbkey|new|next|nmapc|nmapclear|noh|nohlsearch|norea|noreabbrev|nu|number|nun|nunmap|o|omapc|omapclear|on|only|open|opt|options|ou|ounmap|p|pc|pclose|pe|ped|pedit|perl|perld|perldo|po|pop|popu|popup|pp|ppop|pre|preserve|prev|previous|print|prof|profd|profdel|profile|promptf|promptfind|promptr|promptrepl|ps|psearch|ptN|ptNext|pta|ptag|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|pu|put|pw|pwd|py|pyf|pyfile|python|q|qa|qall|quit|quita|quitall|r|read|rec|recover|red|redi|redir|redo|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|ru|rub|ruby|rubyd|rubydo|rubyf|rubyfile|runtime|rv|rviminfo|sN|sNext|sa|sal|sall|san|sandbox|sargument|sav|saveas|sb|sbN|sbNext|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbp|sbprevious|sbr|sbrewind|sbuffer|scrip|scripte|scriptencoding|scriptnames|se|set|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sh|shell|sign|sil|silent|sim|simalt|sl|sla|slast|sleep|sm|smagic|smap|smapc|smapclear|sme|smenu|sn|snext|sni|sniff|sno|snomagic|snor|snoremap|snoreme|snoremenu|so|sor|sort|source|sp|spe|spelld|spelldump|spellgood|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|split|spr|sprevious|sre|srewind|st|sta|stag|star|startg|startgreplace|startinsert|startr|startreplace|stj|stjump|stop|stopi|stopinsert|sts|stselect|sun|sunhide|sunm|sunmap|sus|suspend|sv|sview|syncbind|t|tN|tNext|ta|tab|tabN|tabNext|tabc|tabclose|tabd|tabdo|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabn|tabnew|tabnext|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|tag|tags|tc|tcl|tcld|tcldo|tclf|tclfile|te|tearoff|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tmenu|tn|tnext|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tunmenu|u|una|unabbreviate|undo|undoj|undojoin|undol|undolist|unh|unhide|unlet|unlo|unlockvar|unm|unmap|up|update|ve|verb|verbose|version|vert|vertical|vi|vie|view|vim|vimgrep|vimgrepa|vimgrepadd|visual|viu|viusage|vmapc|vmapclear|vne|vnew|vs|vsplit|vu|vunmap|w|wN|wNext|wa|wall|wh|while|win|winc|wincmd|windo|winp|winpos|winsize|wn|wnext|wp|wprevious|wq|wqa|wqall|write|ws|wsverb|wv|wviminfo|x|xa|xall|xit|xm|xmap|xmapc|xmapclear|xme|xmenu|xn|xnoremap|xnoreme|xnoremenu|xu|xunmap|y|yank)\b/,builtin:/\b(?:acd|ai|akm|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|arab|arabic|arabicshape|ari|arshape|autochdir|autocmd|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|bdir|bdlay|beval|bex|bexpr|bg|bh|bin|binary|biosk|bioskey|bk|bkc|bomb|breakat|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|ccv|cdpath|cedit|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cmdheight|cmdwinheight|cmp|cms|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|consk|conskey|copyindent|cot|cpo|cpoptions|cpt|cscopepathcomp|cscopeprg|cscopequickfix|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|cst|csto|csverb|cuc|cul|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fileencoding|fileencodings|fileformat|fileformats|fillchars|fk|fkmap|flp|fml|fmr|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hidden|highlight|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatekey|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invbeval|invbin|invbinary|invbiosk|invbioskey|invbk|invbl|invbomb|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invconsk|invconskey|invcopyindent|invcp|invcscopetag|invcscopeverbose|invcst|invcsverb|invcuc|invcul|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invdisable|invea|inveb|inved|invedcompatible|invek|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfk|invfkmap|invfoldenable|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invloadplugins|invlpl|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invremap|invrestorescreen|invrevins|invri|invrightleft|invrightleftcmd|invrl|invrlc|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|isf|isfname|isi|isident|isk|iskeyword|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|laststatus|lazyredraw|lbr|lcs|linebreak|lines|linespace|lisp|lispwords|listchars|loadplugins|lpl|lsp|lz|macatsui|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|nf|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|nobeval|nobin|nobinary|nobiosk|nobioskey|nobk|nobl|nobomb|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|noconsk|noconskey|nocopyindent|nocp|nocscopetag|nocscopeverbose|nocst|nocsverb|nocuc|nocul|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|nodisable|noea|noeb|noed|noedcompatible|noek|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofk|nofkmap|nofoldenable|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|noloadplugins|nolpl|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|noremap|norestorescreen|norevins|nori|norightleft|norightleftcmd|norl|norlc|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|nrformats|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pvh|pvw|qe|quoteescape|readonly|remap|report|restorescreen|revins|rightleft|rightleftcmd|rl|rlc|ro|rs|rtp|ruf|ruler|rulerformat|runtimepath|sbo|sc|scb|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|shcf|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|siso|sj|slm|smartcase|smartindent|smarttab|smc|smd|softtabstop|sol|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|sps|sr|srr|ss|ssl|ssop|stal|startofline|statusline|stl|stmp|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxq|syn|synmaxcol|syntax|t_AB|t_AF|t_AL|t_CS|t_CV|t_Ce|t_Co|t_Cs|t_DL|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_IE|t_IS|t_K1|t_K3|t_K4|t_K5|t_K6|t_K7|t_K8|t_K9|t_KA|t_KB|t_KC|t_KD|t_KE|t_KF|t_KG|t_KH|t_KI|t_KJ|t_KK|t_KL|t_RI|t_RV|t_SI|t_Sb|t_Sf|t_WP|t_WS|t_ZH|t_ZR|t_al|t_bc|t_cd|t_ce|t_cl|t_cm|t_cs|t_da|t_db|t_dl|t_fs|t_k1|t_k2|t_k3|t_k4|t_k5|t_k6|t_k7|t_k8|t_k9|t_kB|t_kD|t_kI|t_kN|t_kP|t_kb|t_kd|t_ke|t_kh|t_kl|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_se|t_so|t_sr|t_te|t_ti|t_ts|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_xs|tabline|tabpagemax|tabstop|tagbsearch|taglength|tagrelative|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tenc|term|termbidi|termencoding|terse|textauto|textmode|textwidth|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|toolbar|toolbariconsize|top|tpm|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|tx|uc|ul|undolevels|updatecount|updatetime|ut|vb|vbs|vdir|verbosefile|vfile|viewdir|viewoptions|viminfo|virtualedit|visualbell|vop|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|whichwrap|wi|wig|wildchar|wildcharm|wildignore|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|writeany|writebackup|writedelay|ww)\b/,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?)\b/i,operator:/\|\||&&|[-+.]=?|[=!](?:[=~][#?]?)?|[<>]=?[#?]?|[*\/%?]|\b(?:is(?:not)?)\b/,punctuation:/[{}[\](),;:]/}}return J0}var Q0,bN;function tre(){if(bN)return Q0;bN=1,Q0=e,e.displayName="visualBasic",e.aliases=[];function e(t){t.languages["visual-basic"]={comment:{pattern:/(?:['‘’]|REM\b)(?:[^\r\n_]|_(?:\r\n?|\n)?)*/i,inside:{keyword:/^REM/i}},directive:{pattern:/#(?:Const|Else|ElseIf|End|ExternalChecksum|ExternalSource|If|Region)(?:\b_[ \t]*(?:\r\n?|\n)|.)+/i,alias:"property",greedy:!0},string:{pattern:/\$?["“”](?:["“”]{2}|[^"“”])*["“”]C?/i,greedy:!0},date:{pattern:/#[ \t]*(?:\d+([/-])\d+\1\d+(?:[ \t]+(?:\d+[ \t]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[ \t]*(?:AM|PM))?))?|\d+[ \t]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[ \t]*(?:AM|PM))?)[ \t]*#/i,alias:"number"},number:/(?:(?:\b\d+(?:\.\d+)?|\.\d+)(?:E[+-]?\d+)?|&[HO][\dA-F]+)(?:[FRD]|U?[ILS])?/i,boolean:/\b(?:False|Nothing|True)\b/i,keyword:/\b(?:AddHandler|AddressOf|Alias|And(?:Also)?|As|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|C(?:Bool|Byte|Char|Date|Dbl|Dec|Int|Lng|Obj|SByte|Short|Sng|Str|Type|UInt|ULng|UShort)|Char|Class|Const|Continue|Currency|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else(?:If)?|End(?:If)?|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get(?:Type|XMLNamespace)?|Global|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|IsNot|Let|Lib|Like|Long|Loop|Me|Mod|Module|Must(?:Inherit|Override)|My(?:Base|Class)|Namespace|Narrowing|New|Next|Not(?:Inheritable|Overridable)?|Object|Of|On|Operator|Option(?:al)?|Or(?:Else)?|Out|Overloads|Overridable|Overrides|ParamArray|Partial|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|SByte|Select|Set|Shadows|Shared|short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TryCast|Type|TypeOf|U(?:Integer|Long|Short)|Until|Using|Variant|Wend|When|While|Widening|With(?:Events)?|WriteOnly|Xor)\b/i,operator:/[+\-*/\\^<=>&#@$%!]|\b_(?=[ \t]*[\r\n])/,punctuation:/[{}().,:?]/},t.languages.vb=t.languages["visual-basic"],t.languages.vba=t.languages["visual-basic"]}return Q0}var eg,xN;function nre(){if(xN)return eg;xN=1,eg=e,e.displayName="warpscript",e.aliases=[];function e(t){t.languages.warpscript={comment:/#.*|\/\/.*|\/\*[\s\S]*?\*\//,string:{pattern:/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'|<'(?:[^\\']|'(?!>)|\\.)*'>/,greedy:!0},variable:/\$\S+/,macro:{pattern:/@\S+/,alias:"property"},keyword:/\b(?:BREAK|CHECKMACRO|CONTINUE|CUDF|DEFINED|DEFINEDMACRO|EVAL|FAIL|FOR|FOREACH|FORSTEP|IFT|IFTE|MSGFAIL|NRETURN|RETHROW|RETURN|SWITCH|TRY|UDF|UNTIL|WHILE)\b/,number:/[+-]?\b(?:NaN|Infinity|\d+(?:\.\d*)?(?:[Ee][+-]?\d+)?|0x[\da-fA-F]+|0b[01]+)\b/,boolean:/\b(?:F|T|false|true)\b/,punctuation:/<%|%>|[{}[\]()]/,operator:/==|&&?|\|\|?|\*\*?|>>>?|<<|[<>!~]=?|[-/%^]|\+!?|\b(?:AND|NOT|OR)\b/}}return eg}var tg,yN;function rre(){if(yN)return tg;yN=1,tg=e,e.displayName="wasm",e.aliases=[];function e(t){t.languages.wasm={comment:[/\(;[\s\S]*?;\)/,{pattern:/;;.*/,greedy:!0}],string:{pattern:/"(?:\\[\s\S]|[^"\\])*"/,greedy:!0},keyword:[{pattern:/\b(?:align|offset)=/,inside:{operator:/=/}},{pattern:/\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|neg?|nearest|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|sqrt|store(?:8|16|32)?|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,inside:{punctuation:/\./}},/\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/],variable:/\$[\w!#$%&'*+\-./:<=>?@\\^`|~]+/,number:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,punctuation:/[()]/}}return tg}var ng,vN;function are(){if(vN)return ng;vN=1,ng=e,e.displayName="webIdl",e.aliases=[];function e(t){(function(n){var r=/(?:\B-|\b_|\b)[A-Za-z][\w-]*(?![\w-])/.source,a="(?:"+/\b(?:unsigned\s+)?long\s+long(?![\w-])/.source+"|"+/\b(?:unrestricted|unsigned)\s+[a-z]+(?![\w-])/.source+"|"+/(?!(?:unrestricted|unsigned)\b)/.source+r+/(?:\s*<(?:[^<>]|<[^<>]*>)*>)?/.source+")"+/(?:\s*\?)?/.source,i={};n.languages["web-idl"]={comment:{pattern:/\/\/.*|\/\*[\s\S]*?\*\//,greedy:!0},string:{pattern:/"[^"]*"/,greedy:!0},namespace:{pattern:RegExp(/(\bnamespace\s+)/.source+r),lookbehind:!0},"class-name":[{pattern:/(^|[^\w-])(?:iterable|maplike|setlike)\s*<(?:[^<>]|<[^<>]*>)*>/,lookbehind:!0,inside:i},{pattern:RegExp(/(\b(?:attribute|const|deleter|getter|optional|setter)\s+)/.source+a),lookbehind:!0,inside:i},{pattern:RegExp("("+/\bcallback\s+/.source+r+/\s*=\s*/.source+")"+a),lookbehind:!0,inside:i},{pattern:RegExp(/(\btypedef\b\s*)/.source+a),lookbehind:!0,inside:i},{pattern:RegExp(/(\b(?:callback|dictionary|enum|interface(?:\s+mixin)?)\s+)(?!(?:interface|mixin)\b)/.source+r),lookbehind:!0},{pattern:RegExp(/(:\s*)/.source+r),lookbehind:!0},RegExp(r+/(?=\s+(?:implements|includes)\b)/.source),{pattern:RegExp(/(\b(?:implements|includes)\s+)/.source+r),lookbehind:!0},{pattern:RegExp(a+"(?="+/\s*(?:\.{3}\s*)?/.source+r+/\s*[(),;=]/.source+")"),inside:i}],builtin:/\b(?:ArrayBuffer|BigInt64Array|BigUint64Array|ByteString|DOMString|DataView|Float32Array|Float64Array|FrozenArray|Int16Array|Int32Array|Int8Array|ObservableArray|Promise|USVString|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray)\b/,keyword:[/\b(?:async|attribute|callback|const|constructor|deleter|dictionary|enum|getter|implements|includes|inherit|interface|mixin|namespace|null|optional|or|partial|readonly|required|setter|static|stringifier|typedef|unrestricted)\b/,/\b(?:any|bigint|boolean|byte|double|float|iterable|long|maplike|object|octet|record|sequence|setlike|short|symbol|undefined|unsigned|void)\b/],boolean:/\b(?:false|true)\b/,number:{pattern:/(^|[^\w-])-?(?:0x[0-9a-f]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|NaN|Infinity)(?![\w-])/i,lookbehind:!0},operator:/\.{3}|[=:?<>-]/,punctuation:/[(){}[\].,;]/};for(var s in n.languages["web-idl"])s!=="class-name"&&(i[s]=n.languages["web-idl"][s]);n.languages.webidl=n.languages["web-idl"]})(t)}return ng}var rg,kN;function ire(){if(kN)return rg;kN=1,rg=e,e.displayName="wiki",e.aliases=[];function e(t){t.languages.wiki=t.languages.extend("markup",{"block-comment":{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0,alias:"comment"},heading:{pattern:/^(=+)[^=\r\n].*?\1/m,inside:{punctuation:/^=+|=+$/,important:/.+/}},emphasis:{pattern:/('{2,5}).+?\1/,inside:{"bold-italic":{pattern:/(''''').+?(?=\1)/,lookbehind:!0,alias:["bold","italic"]},bold:{pattern:/(''')[^'](?:.*?[^'])?(?=\1)/,lookbehind:!0},italic:{pattern:/('')[^'](?:.*?[^'])?(?=\1)/,lookbehind:!0},punctuation:/^''+|''+$/}},hr:{pattern:/^-{4,}/m,alias:"punctuation"},url:[/ISBN +(?:97[89][ -]?)?(?:\d[ -]?){9}[\dx]\b|(?:PMID|RFC) +\d+/i,/\[\[.+?\]\]|\[.+?\]/],variable:[/__[A-Z]+__/,/\{{3}.+?\}{3}/,/\{\{.+?\}\}/],symbol:[/^#redirect/im,/~{3,5}/],"table-tag":{pattern:/((?:^|[|!])[|!])[^|\r\n]+\|(?!\|)/m,lookbehind:!0,inside:{"table-bar":{pattern:/\|$/,alias:"punctuation"},rest:t.languages.markup.tag.inside}},punctuation:/^(?:\{\||\|\}|\|-|[*#:;!|])|\|\||!!/m}),t.languages.insertBefore("wiki","tag",{nowiki:{pattern:/<(nowiki|pre|source)\b[^>]*>[\s\S]*?<\/\1>/i,inside:{tag:{pattern:/<(?:nowiki|pre|source)\b[^>]*>|<\/(?:nowiki|pre|source)>/i,inside:t.languages.markup.tag.inside}}}})}return rg}var ag,wN;function sre(){if(wN)return ag;wN=1,ag=e,e.displayName="wolfram",e.aliases=["mathematica","wl","nb"];function e(t){t.languages.wolfram={comment:/\(\*(?:\(\*(?:[^*]|\*(?!\)))*\*\)|(?!\(\*)[\s\S])*?\*\)/,string:{pattern:/"(?:\\.|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:Abs|AbsArg|Accuracy|Block|Do|For|Function|If|Manipulate|Module|Nest|NestList|None|Return|Switch|Table|Which|While)\b/,context:{pattern:/\b\w+`+\w*/,alias:"class-name"},blank:{pattern:/\b\w+_\b/,alias:"regex"},"global-variable":{pattern:/\$\w+/,alias:"variable"},boolean:/\b(?:False|True)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?j?\b/i,operator:/\/\.|;|=\.|\^=|\^:=|:=|<<|>>|<\||\|>|:>|\|->|->|<-|@@@|@@|@|\/@|=!=|===|==|=|\+|-|\^|\[\/-+%=\]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},t.languages.mathematica=t.languages.wolfram,t.languages.wl=t.languages.wolfram,t.languages.nb=t.languages.wolfram}return ag}var ig,SN;function ore(){if(SN)return ig;SN=1,ig=e,e.displayName="wren",e.aliases=[];function e(t){t.languages.wren={comment:[{pattern:/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|\/\*(?:[^*/]|\*(?!\/)|\/(?!\*))*\*\/)*\*\/)*\*\//,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],"triple-quoted-string":{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string"},"string-literal":null,hashbang:{pattern:/^#!\/.+/,greedy:!0,alias:"comment"},attribute:{pattern:/#!?[ \t\u3000]*\w+/,alias:"keyword"},"class-name":[{pattern:/(\bclass\s+)\w+/,lookbehind:!0},/\b[A-Z][a-z\d_]*\b/],constant:/\b[A-Z][A-Z\d_]*\b/,null:{pattern:/\bnull\b/,alias:"keyword"},keyword:/\b(?:as|break|class|construct|continue|else|for|foreign|if|import|in|is|return|static|super|this|var|while)\b/,boolean:/\b(?:false|true)\b/,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b/i,function:/\b[a-z_]\w*(?=\s*[({])/i,operator:/<<|>>|[=!<>]=?|&&|\|\||[-+*/%~^&|?:]|\.{2,3}/,punctuation:/[\[\](){}.,;]/},t.languages.wren["string-literal"]={pattern:/(^|[^\\"])"(?:[^\\"%]|\\[\s\S]|%(?!\()|%\((?:[^()]|\((?:[^()]|\([^)]*\))*\))*\))*"/,lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)%\((?:[^()]|\((?:[^()]|\([^)]*\))*\))*\)/,lookbehind:!0,inside:{expression:{pattern:/^(%\()[\s\S]+(?=\)$)/,lookbehind:!0,inside:t.languages.wren},"interpolation-punctuation":{pattern:/^%\(|\)$/,alias:"punctuation"}}},string:/[\s\S]+/}}}return ig}var sg,EN;function lre(){if(EN)return sg;EN=1,sg=e,e.displayName="xeora",e.aliases=["xeoracube"];function e(t){(function(n){n.languages.xeora=n.languages.extend("markup",{constant:{pattern:/\$(?:DomainContents|PageRenderDuration)\$/,inside:{punctuation:{pattern:/\$/}}},variable:{pattern:/\$@?(?:#+|[-+*~=^])?[\w.]+\$/,inside:{punctuation:{pattern:/[$.]/},operator:{pattern:/#+|[-+*~=^@]/}}},"function-inline":{pattern:/\$F:[-\w.]+\?[-\w.]+(?:,(?:(?:@[-#]*\w+\.[\w+.]\.*)*\|)*(?:(?:[\w+]|[-#*.~^]+[\w+]|=\S)(?:[^$=]|=+[^=])*=*|(?:@[-#]*\w+\.[\w+.]\.*)+(?:(?:[\w+]|[-#*~^][-#*.~^]*[\w+]|=\S)(?:[^$=]|=+[^=])*=*)?)?)?\$/,inside:{variable:{pattern:/(?:[,|])@?(?:#+|[-+*~=^])?[\w.]+/,inside:{punctuation:{pattern:/[,.|]/},operator:{pattern:/#+|[-+*~=^@]/}}},punctuation:{pattern:/\$\w:|[$:?.,|]/}},alias:"function"},"function-block":{pattern:/\$XF:\{[-\w.]+\?[-\w.]+(?:,(?:(?:@[-#]*\w+\.[\w+.]\.*)*\|)*(?:(?:[\w+]|[-#*.~^]+[\w+]|=\S)(?:[^$=]|=+[^=])*=*|(?:@[-#]*\w+\.[\w+.]\.*)+(?:(?:[\w+]|[-#*~^][-#*.~^]*[\w+]|=\S)(?:[^$=]|=+[^=])*=*)?)?)?\}:XF\$/,inside:{punctuation:{pattern:/[$:{}?.,|]/}},alias:"function"},"directive-inline":{pattern:/\$\w(?:#\d+\+?)?(?:\[[-\w.]+\])?:[-\/\w.]+\$/,inside:{punctuation:{pattern:/\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/,inside:{tag:{pattern:/#\d/}}}},alias:"function"},"directive-block-open":{pattern:/\$\w+:\{|\$\w(?:#\d+\+?)?(?:\[[-\w.]+\])?:[-\w.]+:\{(?:![A-Z]+)?/,inside:{punctuation:{pattern:/\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/,inside:{tag:{pattern:/#\d/}}},attribute:{pattern:/![A-Z]+$/,inside:{punctuation:{pattern:/!/}},alias:"keyword"}},alias:"function"},"directive-block-separator":{pattern:/\}:[-\w.]+:\{/,inside:{punctuation:{pattern:/[:{}]/}},alias:"function"},"directive-block-close":{pattern:/\}:[-\w.]+\$/,inside:{punctuation:{pattern:/[:{}$]/}},alias:"function"}}),n.languages.insertBefore("inside","punctuation",{variable:n.languages.xeora["function-inline"].inside.variable},n.languages.xeora["function-block"]),n.languages.xeoracube=n.languages.xeora})(t)}return sg}var og,CN;function cre(){if(CN)return og;CN=1,og=e,e.displayName="xmlDoc",e.aliases=[];function e(t){(function(n){function r(l,c){n.languages[l]&&n.languages.insertBefore(l,"comment",{"doc-comment":c})}var a=n.languages.markup.tag,i={pattern:/\/\/\/.*/,greedy:!0,alias:"comment",inside:{tag:a}},s={pattern:/'''.*/,greedy:!0,alias:"comment",inside:{tag:a}};r("csharp",i),r("fsharp",i),r("vbnet",s)})(t)}return og}var lg,NN;function ure(){if(NN)return lg;NN=1,lg=e,e.displayName="xojo",e.aliases=[];function e(t){t.languages.xojo={comment:{pattern:/(?:'|\/\/|Rem\b).+/i,greedy:!0},string:{pattern:/"(?:""|[^"])*"/,greedy:!0},number:[/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:E[+-]?\d+)?/i,/&[bchou][a-z\d]+/i],directive:{pattern:/#(?:Else|ElseIf|Endif|If|Pragma)\b/i,alias:"property"},keyword:/\b(?:AddHandler|App|Array|As(?:signs)?|Auto|Boolean|Break|By(?:Ref|Val)|Byte|Call|Case|Catch|CFStringRef|CGFloat|Class|Color|Const|Continue|CString|Currency|CurrentMethodName|Declare|Delegate|Dim|Do(?:uble|wnTo)?|Each|Else(?:If)?|End|Enumeration|Event|Exception|Exit|Extends|False|Finally|For|Function|Get|GetTypeInfo|Global|GOTO|If|Implements|In|Inherits|Int(?:8|16|32|64|eger|erface)?|Lib|Loop|Me|Module|Next|Nil|Object|Optional|OSType|ParamArray|Private|Property|Protected|PString|Ptr|Raise(?:Event)?|ReDim|RemoveHandler|Return|Select(?:or)?|Self|Set|Shared|Short|Single|Soft|Static|Step|String|Sub|Super|Text|Then|To|True|Try|Ubound|UInt(?:8|16|32|64|eger)?|Until|Using|Var(?:iant)?|Wend|While|WindowPtr|WString)\b/i,operator:/<[=>]?|>=?|[+\-*\/\\^=]|\b(?:AddressOf|And|Ctype|IsA?|Mod|New|Not|Or|WeakAddressOf|Xor)\b/i,punctuation:/[.,;:()]/}}return lg}var cg,TN;function dre(){if(TN)return cg;TN=1,cg=e,e.displayName="xquery",e.aliases=[];function e(t){(function(n){n.languages.xquery=n.languages.extend("markup",{"xquery-comment":{pattern:/\(:[\s\S]*?:\)/,greedy:!0,alias:"comment"},string:{pattern:/(["'])(?:\1\1|(?!\1)[\s\S])*\1/,greedy:!0},extension:{pattern:/\(#.+?#\)/,alias:"symbol"},variable:/\$[-\w:]+/,axis:{pattern:/(^|[^-])(?:ancestor(?:-or-self)?|attribute|child|descendant(?:-or-self)?|following(?:-sibling)?|parent|preceding(?:-sibling)?|self)(?=::)/,lookbehind:!0,alias:"operator"},"keyword-operator":{pattern:/(^|[^:-])\b(?:and|castable as|div|eq|except|ge|gt|idiv|instance of|intersect|is|le|lt|mod|ne|or|union)\b(?=$|[^:-])/,lookbehind:!0,alias:"operator"},keyword:{pattern:/(^|[^:-])\b(?:as|ascending|at|base-uri|boundary-space|case|cast as|collation|construction|copy-namespaces|declare|default|descending|else|empty (?:greatest|least)|encoding|every|external|for|function|if|import|in|inherit|lax|let|map|module|namespace|no-inherit|no-preserve|option|order(?: by|ed|ing)?|preserve|return|satisfies|schema|some|stable|strict|strip|then|to|treat as|typeswitch|unordered|validate|variable|version|where|xquery)\b(?=$|[^:-])/,lookbehind:!0},function:/[\w-]+(?::[\w-]+)*(?=\s*\()/,"xquery-element":{pattern:/(element\s+)[\w-]+(?::[\w-]+)*/,lookbehind:!0,alias:"tag"},"xquery-attribute":{pattern:/(attribute\s+)[\w-]+(?::[\w-]+)*/,lookbehind:!0,alias:"attr-name"},builtin:{pattern:/(^|[^:-])\b(?:attribute|comment|document|element|processing-instruction|text|xs:(?:ENTITIES|ENTITY|ID|IDREFS?|NCName|NMTOKENS?|NOTATION|Name|QName|anyAtomicType|anyType|anyURI|base64Binary|boolean|byte|date|dateTime|dayTimeDuration|decimal|double|duration|float|gDay|gMonth|gMonthDay|gYear|gYearMonth|hexBinary|int|integer|language|long|negativeInteger|nonNegativeInteger|nonPositiveInteger|normalizedString|positiveInteger|short|string|time|token|unsigned(?:Byte|Int|Long|Short)|untyped(?:Atomic)?|yearMonthDuration))\b(?=$|[^:-])/,lookbehind:!0},number:/\b\d+(?:\.\d+)?(?:E[+-]?\d+)?/,operator:[/[+*=?|@]|\.\.?|:=|!=|<[=<]?|>[=>]?/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}],punctuation:/[[\](){},;:/]/}),n.languages.xquery.tag.pattern=/<\/?(?!\d)[^\s>\/=$<%]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|\{(?!\{)(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])+\}|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/,n.languages.xquery.tag.inside["attr-value"].pattern=/=(?:("|')(?:\\[\s\S]|\{(?!\{)(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])+\}|(?!\1)[^\\])*\1|[^\s'">=]+)/,n.languages.xquery.tag.inside["attr-value"].inside.punctuation=/^="|"$/,n.languages.xquery.tag.inside["attr-value"].inside.expression={pattern:/\{(?!\{)(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])+\}/,inside:n.languages.xquery,alias:"language-xquery"};var r=function(i){return typeof i=="string"?i:typeof i.content=="string"?i.content:i.content.map(r).join("")},a=function(i){for(var s=[],l=0;l0&&s[s.length-1].tagName===r(c.content[0].content[1])&&s.pop():c.content[c.content.length-1].content==="/>"||s.push({tagName:r(c.content[0].content[1]),openedBraces:0}):s.length>0&&c.type==="punctuation"&&c.content==="{"&&(!i[l+1]||i[l+1].type!=="punctuation"||i[l+1].content!=="{")&&(!i[l-1]||i[l-1].type!=="plain-text"||i[l-1].content!=="{")?s[s.length-1].openedBraces++:s.length>0&&s[s.length-1].openedBraces>0&&c.type==="punctuation"&&c.content==="}"?s[s.length-1].openedBraces--:c.type!=="comment"&&(u=!0)),(u||typeof c=="string")&&s.length>0&&s[s.length-1].openedBraces===0){var d=r(c);l0&&(typeof i[l-1]=="string"||i[l-1].type==="plain-text")&&(d=r(i[l-1])+d,i.splice(l-1,1),l--),/^\s+$/.test(d)?i[l]=d:i[l]=new n.Token("plain-text",d,null,d)}c.content&&typeof c.content!="string"&&a(c.content)}};n.hooks.add("after-tokenize",function(i){i.language==="xquery"&&a(i.tokens)})})(t)}return cg}var ug,AN;function pre(){if(AN)return ug;AN=1,ug=e,e.displayName="yang",e.aliases=[];function e(t){t.languages.yang={comment:/\/\*[\s\S]*?\*\/|\/\/.*/,string:{pattern:/"(?:[^\\"]|\\.)*"|'[^']*'/,greedy:!0},keyword:{pattern:/(^|[{};\r\n][ \t]*)[a-z_][\w.-]*/i,lookbehind:!0},namespace:{pattern:/(\s)[a-z_][\w.-]*(?=:)/i,lookbehind:!0},boolean:/\b(?:false|true)\b/,operator:/\+/,punctuation:/[{};:]/}}return ug}var dg,IN;function mre(){if(IN)return dg;IN=1,dg=e,e.displayName="zig",e.aliases=[];function e(t){(function(n){function r(d){return function(){return d}}var a=/\b(?:align|allowzero|and|anyframe|anytype|asm|async|await|break|cancel|catch|comptime|const|continue|defer|else|enum|errdefer|error|export|extern|fn|for|if|inline|linksection|nakedcc|noalias|nosuspend|null|or|orelse|packed|promise|pub|resume|return|stdcallcc|struct|suspend|switch|test|threadlocal|try|undefined|union|unreachable|usingnamespace|var|volatile|while)\b/,i="\\b(?!"+a.source+")(?!\\d)\\w+\\b",s=/align\s*\((?:[^()]|\([^()]*\))*\)/.source,l=/(?:\?|\bpromise->|(?:\[[^[\]]*\]|\*(?!\*)|\*\*)(?:\s*|\s*const\b|\s*volatile\b|\s*allowzero\b)*)/.source.replace(//g,r(s)),c=/(?:\bpromise\b|(?:\berror\.)?(?:\.)*(?!\s+))/.source.replace(//g,r(i)),u="(?!\\s)(?:!?\\s*(?:"+l+"\\s*)*"+c+")+";n.languages.zig={comment:[{pattern:/\/\/[/!].*/,alias:"doc-comment"},/\/{2}.*/],string:[{pattern:/(^|[^\\@])c?"(?:[^"\\\r\n]|\\.)*"/,lookbehind:!0,greedy:!0},{pattern:/([\r\n])([ \t]+c?\\{2}).*(?:(?:\r\n?|\n)\2.*)*/,lookbehind:!0,greedy:!0}],char:{pattern:/(^|[^\\])'(?:[^'\\\r\n]|[\uD800-\uDFFF]{2}|\\(?:.|x[a-fA-F\d]{2}|u\{[a-fA-F\d]{1,6}\}))'/,lookbehind:!0,greedy:!0},builtin:/\B@(?!\d)\w+(?=\s*\()/,label:{pattern:/(\b(?:break|continue)\s*:\s*)\w+\b|\b(?!\d)\w+\b(?=\s*:\s*(?:\{|while\b))/,lookbehind:!0},"class-name":[/\b(?!\d)\w+(?=\s*=\s*(?:(?:extern|packed)\s+)?(?:enum|struct|union)\s*[({])/,{pattern:RegExp(/(:\s*)(?=\s*(?:\s*)?[=;,)])|(?=\s*(?:\s*)?\{)/.source.replace(//g,r(u)).replace(//g,r(s))),lookbehind:!0,inside:null},{pattern:RegExp(/(\)\s*)(?=\s*(?:\s*)?;)/.source.replace(//g,r(u)).replace(//g,r(s))),lookbehind:!0,inside:null}],"builtin-type":{pattern:/\b(?:anyerror|bool|c_u?(?:int|long|longlong|short)|c_longdouble|c_void|comptime_(?:float|int)|f(?:16|32|64|128)|[iu](?:8|16|32|64|128|size)|noreturn|type|void)\b/,alias:"keyword"},keyword:a,function:/\b(?!\d)\w+(?=\s*\()/,number:/\b(?:0b[01]+|0o[0-7]+|0x[a-fA-F\d]+(?:\.[a-fA-F\d]*)?(?:[pP][+-]?[a-fA-F\d]+)?|\d+(?:\.\d*)?(?:[eE][+-]?\d+)?)\b/,boolean:/\b(?:false|true)\b/,operator:/\.[*?]|\.{2,3}|[-=]>|\*\*|\+\+|\|\||(?:<<|>>|[-+*]%|[-+*/%^&|<>!=])=?|[?~]/,punctuation:/[.:,;(){}[\]]/},n.languages.zig["class-name"].forEach(function(d){d.inside===null&&(d.inside=n.languages.zig)})})(t)}return dg}var pg,RN;function fre(){if(RN)return pg;RN=1;var e=RJ();return pg=e,e.register(jJ()),e.register(OJ()),e.register(DJ()),e.register(MJ()),e.register(LJ()),e.register(PJ()),e.register(FJ()),e.register(BJ()),e.register($J()),e.register(UJ()),e.register(zJ()),e.register(qJ()),e.register(HJ()),e.register(GJ()),e.register(VJ()),e.register(WJ()),e.register(KJ()),e.register(YJ()),e.register(XJ()),e.register(ZJ()),e.register(JJ()),e.register(QJ()),e.register(o6()),e.register(l6()),e.register(eQ()),e.register(tQ()),e.register(nQ()),e.register(rQ()),e.register(aQ()),e.register(iQ()),e.register(sQ()),e.register(oQ()),e.register(lQ()),e.register(cQ()),e.register(fi()),e.register(uQ()),e.register(dQ()),e.register(pQ()),e.register(mQ()),e.register(fQ()),e.register(hQ()),e.register(gQ()),e.register(bQ()),e.register(xQ()),e.register(Cy()),e.register(yQ()),e.register(lu()),e.register(vQ()),e.register(kQ()),e.register(wQ()),e.register(SQ()),e.register(EQ()),e.register(CQ()),e.register(NQ()),e.register(TQ()),e.register(AQ()),e.register(IQ()),e.register(RQ()),e.register(_Q()),e.register(jQ()),e.register(OQ()),e.register(DQ()),e.register(MQ()),e.register(LQ()),e.register(PQ()),e.register(FQ()),e.register(BQ()),e.register($Q()),e.register(UQ()),e.register(zQ()),e.register(qQ()),e.register(HQ()),e.register(GQ()),e.register(VQ()),e.register(WQ()),e.register(KQ()),e.register(YQ()),e.register(XQ()),e.register(ZQ()),e.register(JQ()),e.register(QQ()),e.register(eee()),e.register(tee()),e.register(nee()),e.register(ree()),e.register(aee()),e.register(iee()),e.register(see()),e.register(oee()),e.register(lee()),e.register(cee()),e.register(uee()),e.register(dee()),e.register(pee()),e.register(Ny()),e.register(mee()),e.register(fee()),e.register(hee()),e.register(gee()),e.register(bee()),e.register(xee()),e.register(yee()),e.register(vee()),e.register(kee()),e.register(wee()),e.register(See()),e.register(Eee()),e.register(Cee()),e.register(Nee()),e.register(Tee()),e.register(Aee()),e.register(Iee()),e.register(Ty()),e.register(Ree()),e.register(uu()),e.register(_ee()),e.register(jee()),e.register(Oee()),e.register(Dee()),e.register(Mee()),e.register(Lee()),e.register(Pee()),e.register(Iy()),e.register(Fee()),e.register(Bee()),e.register($ee()),e.register(u6()),e.register(Uee()),e.register(zee()),e.register(qee()),e.register(Hee()),e.register(Gee()),e.register(Vee()),e.register(Wee()),e.register(Kee()),e.register(Yee()),e.register(Xee()),e.register(Zee()),e.register(Jee()),e.register(Qee()),e.register(ete()),e.register(tte()),e.register(nte()),e.register(c6()),e.register(rte()),e.register(ate()),e.register(ite()),e.register(Gn()),e.register(ste()),e.register(ote()),e.register(lte()),e.register(cte()),e.register(ute()),e.register(dte()),e.register(pte()),e.register(mte()),e.register(fte()),e.register(hte()),e.register(gte()),e.register(bte()),e.register(xte()),e.register(yte()),e.register(vte()),e.register(kte()),e.register(wte()),e.register(Ste()),e.register(Ete()),e.register(Cte()),e.register(Nte()),e.register(Tte()),e.register(Ate()),e.register(Ite()),e.register(Rte()),e.register(_te()),e.register(jte()),e.register(Ote()),e.register(Dte()),e.register(Mte()),e.register(Lte()),e.register(Pte()),e.register(du()),e.register(Fte()),e.register(Bte()),e.register($te()),e.register(Ute()),e.register(zte()),e.register(qte()),e.register(Hte()),e.register(Gte()),e.register(Vte()),e.register(Wte()),e.register(Kte()),e.register(Yte()),e.register(Xte()),e.register(Zte()),e.register(Jte()),e.register(Qte()),e.register(ene()),e.register(tne()),e.register(nne()),e.register(rne()),e.register(ane()),e.register(ine()),e.register(sne()),e.register(one()),e.register(lne()),e.register(cne()),e.register(une()),e.register(dne()),e.register(pne()),e.register(mne()),e.register(cu()),e.register(fne()),e.register(hne()),e.register(gne()),e.register(bne()),e.register(Ry()),e.register(xne()),e.register(yne()),e.register(vne()),e.register(kne()),e.register(wne()),e.register(Sne()),e.register(Ene()),e.register(Cne()),e.register(Nne()),e.register(Tne()),e.register(Ane()),e.register(Ine()),e.register(Ey()),e.register(Rne()),e.register(_ne()),e.register(jne()),e.register(One()),e.register(Dne()),e.register(Mne()),e.register(_y()),e.register(Lne()),e.register(Pne()),e.register(Fne()),e.register(Bne()),e.register($ne()),e.register(Une()),e.register(zne()),e.register(qne()),e.register(d6()),e.register(Hne()),e.register(Ay()),e.register(Gne()),e.register(Vne()),e.register(Wne()),e.register(Kne()),e.register(Yne()),e.register(Xne()),e.register(p6()),e.register(Zne()),e.register(Jne()),e.register(Qne()),e.register(ere()),e.register(tre()),e.register(nre()),e.register(rre()),e.register(are()),e.register(ire()),e.register(sre()),e.register(ore()),e.register(lre()),e.register(cre()),e.register(ure()),e.register(dre()),e.register(m6()),e.register(pre()),e.register(mre()),pg}var hre=fre();const gre=os(hre);var jy=nX(gre,_J);jy.supportedLanguages=rX;const f6={'code[class*="language-"]':{background:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)",fontFamily:'"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace',direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"2",OTabSize:"2",tabSize:"2",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none"},'pre[class*="language-"]':{background:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)",fontFamily:'"Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace',direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"2",OTabSize:"2",tabSize:"2",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none",padding:"1em",margin:"0.5em 0",overflow:"auto",borderRadius:"0.3em"},'code[class*="language-"]::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"] *::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'pre[class*="language-"] *::-moz-selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"]::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'code[class*="language-"] *::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},'pre[class*="language-"] *::selection':{background:"hsl(220, 13%, 28%)",color:"inherit",textShadow:"none"},':not(pre) > code[class*="language-"]':{padding:"0.2em 0.3em",borderRadius:"0.3em",whiteSpace:"normal"},comment:{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},prolog:{color:"hsl(220, 10%, 40%)"},cdata:{color:"hsl(220, 10%, 40%)"},doctype:{color:"hsl(220, 14%, 71%)"},punctuation:{color:"hsl(220, 14%, 71%)"},entity:{color:"hsl(220, 14%, 71%)",cursor:"help"},"attr-name":{color:"hsl(29, 54%, 61%)"},"class-name":{color:"hsl(29, 54%, 61%)"},boolean:{color:"hsl(29, 54%, 61%)"},constant:{color:"hsl(29, 54%, 61%)"},number:{color:"hsl(29, 54%, 61%)"},atrule:{color:"hsl(29, 54%, 61%)"},keyword:{color:"hsl(286, 60%, 67%)"},property:{color:"hsl(355, 65%, 65%)"},tag:{color:"hsl(355, 65%, 65%)"},symbol:{color:"hsl(355, 65%, 65%)"},deleted:{color:"hsl(355, 65%, 65%)"},important:{color:"hsl(355, 65%, 65%)"},selector:{color:"hsl(95, 38%, 62%)"},string:{color:"hsl(95, 38%, 62%)"},char:{color:"hsl(95, 38%, 62%)"},builtin:{color:"hsl(95, 38%, 62%)"},inserted:{color:"hsl(95, 38%, 62%)"},regex:{color:"hsl(95, 38%, 62%)"},"attr-value":{color:"hsl(95, 38%, 62%)"},"attr-value > .token.punctuation":{color:"hsl(95, 38%, 62%)"},variable:{color:"hsl(207, 82%, 66%)"},operator:{color:"hsl(207, 82%, 66%)"},function:{color:"hsl(207, 82%, 66%)"},url:{color:"hsl(187, 47%, 55%)"},"attr-value > .token.punctuation.attr-equals":{color:"hsl(220, 14%, 71%)"},"special-attr > .token.attr-value > .token.value.css":{color:"hsl(220, 14%, 71%)"},".language-css .token.selector":{color:"hsl(355, 65%, 65%)"},".language-css .token.property":{color:"hsl(220, 14%, 71%)"},".language-css .token.function":{color:"hsl(187, 47%, 55%)"},".language-css .token.url > .token.function":{color:"hsl(187, 47%, 55%)"},".language-css .token.url > .token.string.url":{color:"hsl(95, 38%, 62%)"},".language-css .token.important":{color:"hsl(286, 60%, 67%)"},".language-css .token.atrule .token.rule":{color:"hsl(286, 60%, 67%)"},".language-javascript .token.operator":{color:"hsl(286, 60%, 67%)"},".language-javascript .token.template-string > .token.interpolation > .token.interpolation-punctuation.punctuation":{color:"hsl(5, 48%, 51%)"},".language-json .token.operator":{color:"hsl(220, 14%, 71%)"},".language-json .token.null.keyword":{color:"hsl(29, 54%, 61%)"},".language-markdown .token.url":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url > .token.operator":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url-reference.url > .token.string":{color:"hsl(220, 14%, 71%)"},".language-markdown .token.url > .token.content":{color:"hsl(207, 82%, 66%)"},".language-markdown .token.url > .token.url":{color:"hsl(187, 47%, 55%)"},".language-markdown .token.url-reference.url":{color:"hsl(187, 47%, 55%)"},".language-markdown .token.blockquote.punctuation":{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},".language-markdown .token.hr.punctuation":{color:"hsl(220, 10%, 40%)",fontStyle:"italic"},".language-markdown .token.code-snippet":{color:"hsl(95, 38%, 62%)"},".language-markdown .token.bold .token.content":{color:"hsl(29, 54%, 61%)"},".language-markdown .token.italic .token.content":{color:"hsl(286, 60%, 67%)"},".language-markdown .token.strike .token.content":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.strike .token.punctuation":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.list.punctuation":{color:"hsl(355, 65%, 65%)"},".language-markdown .token.title.important > .token.punctuation":{color:"hsl(355, 65%, 65%)"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"},namespace:{Opacity:"0.8"},"token.tab:not(:empty):before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.cr:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.lf:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"token.space:before":{color:"hsla(220, 14%, 71%, 0.15)",textShadow:"none"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item":{marginRight:"0.4em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 9%, 55%)",padding:"0.1em 0.4em",borderRadius:"0.3em"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:hover":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},"div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:focus":{background:"hsl(220, 13%, 28%)",color:"hsl(220, 14%, 71%)"},".line-highlight.line-highlight":{background:"hsla(220, 100%, 80%, 0.04)"},".line-highlight.line-highlight:before":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 14%, 71%)",padding:"0.1em 0.6em",borderRadius:"0.3em",boxShadow:"0 2px 0 0 rgba(0, 0, 0, 0.2)"},".line-highlight.line-highlight[data-end]:after":{background:"hsl(220, 13%, 26%)",color:"hsl(220, 14%, 71%)",padding:"0.1em 0.6em",borderRadius:"0.3em",boxShadow:"0 2px 0 0 rgba(0, 0, 0, 0.2)"},"pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows > span:hover:before":{backgroundColor:"hsla(220, 100%, 80%, 0.04)"},".line-numbers.line-numbers .line-numbers-rows":{borderRightColor:"hsla(220, 14%, 71%, 0.15)"},".command-line .command-line-prompt":{borderRightColor:"hsla(220, 14%, 71%, 0.15)"},".line-numbers .line-numbers-rows > span:before":{color:"hsl(220, 14%, 45%)"},".command-line .command-line-prompt > span:before":{color:"hsl(220, 14%, 45%)"},".rainbow-braces .token.token.punctuation.brace-level-1":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-5":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-9":{color:"hsl(355, 65%, 65%)"},".rainbow-braces .token.token.punctuation.brace-level-2":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-6":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-10":{color:"hsl(95, 38%, 62%)"},".rainbow-braces .token.token.punctuation.brace-level-3":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-7":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-11":{color:"hsl(207, 82%, 66%)"},".rainbow-braces .token.token.punctuation.brace-level-4":{color:"hsl(286, 60%, 67%)"},".rainbow-braces .token.token.punctuation.brace-level-8":{color:"hsl(286, 60%, 67%)"},".rainbow-braces .token.token.punctuation.brace-level-12":{color:"hsl(286, 60%, 67%)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)":{backgroundColor:"hsla(353, 100%, 66%, 0.15)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)":{backgroundColor:"hsla(353, 100%, 66%, 0.15)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix)::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.deleted:not(.prefix) *::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix)::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre > code.diff-highlight .token.token.deleted:not(.prefix) *::selection":{backgroundColor:"hsla(353, 95%, 66%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)":{backgroundColor:"hsla(137, 100%, 55%, 0.15)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)":{backgroundColor:"hsla(137, 100%, 55%, 0.15)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix) *::-moz-selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix)::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre.diff-highlight > code .token.token.inserted:not(.prefix) *::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix)::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},"pre > code.diff-highlight .token.token.inserted:not(.prefix) *::selection":{backgroundColor:"hsla(135, 73%, 55%, 0.25)"},".prism-previewer.prism-previewer:before":{borderColor:"hsl(224, 13%, 17%)"},".prism-previewer-gradient.prism-previewer-gradient div":{borderColor:"hsl(224, 13%, 17%)",borderRadius:"0.3em"},".prism-previewer-color.prism-previewer-color:before":{borderRadius:"0.3em"},".prism-previewer-easing.prism-previewer-easing:before":{borderRadius:"0.3em"},".prism-previewer.prism-previewer:after":{borderTopColor:"hsl(224, 13%, 17%)"},".prism-previewer-flipped.prism-previewer-flipped.after":{borderBottomColor:"hsl(224, 13%, 17%)"},".prism-previewer-angle.prism-previewer-angle:before":{background:"hsl(219, 13%, 22%)"},".prism-previewer-time.prism-previewer-time:before":{background:"hsl(219, 13%, 22%)"},".prism-previewer-easing.prism-previewer-easing":{background:"hsl(219, 13%, 22%)"},".prism-previewer-angle.prism-previewer-angle circle":{stroke:"hsl(220, 14%, 71%)",strokeOpacity:"1"},".prism-previewer-time.prism-previewer-time circle":{stroke:"hsl(220, 14%, 71%)",strokeOpacity:"1"},".prism-previewer-easing.prism-previewer-easing circle":{stroke:"hsl(220, 14%, 71%)",fill:"transparent"},".prism-previewer-easing.prism-previewer-easing path":{stroke:"hsl(220, 14%, 71%)"},".prism-previewer-easing.prism-previewer-easing line":{stroke:"hsl(220, 14%, 71%)"}},bre=({node:e,inline:t,className:n,children:r,...a})=>{const{t:i}=Je("chat"),[s,l]=h.useState(!1),c=Array.isArray(r)?r.join(""):String(r??""),u=/[\r\n]/.test(c);if(t||e&&e.type==="inlineCode"||!u)return o.jsx("code",{className:`whitespace-pre-wrap break-words rounded-md border border-gray-200 bg-gray-100 px-1.5 py-0.5 font-mono text-[0.9em] text-gray-900 dark:border-gray-700 dark:bg-gray-800/60 dark:text-gray-100 ${n||""}`,...a,children:r});const m=/language-(\w+)/.exec(n||""),f=m?m[1]:"text";return o.jsxs("div",{className:"group relative my-2",children:[f&&f!=="text"&&o.jsx("div",{className:"absolute left-3 top-2 z-10 text-xs font-medium uppercase text-gray-400",children:f}),o.jsx("button",{type:"button",onClick:()=>ta(c).then(g=>{g&&(l(!0),setTimeout(()=>l(!1),2e3))}),className:"absolute right-2 top-2 z-10 rounded-md border border-gray-600 bg-gray-700/80 px-2 py-1 text-xs text-white opacity-0 transition-opacity hover:bg-gray-700 focus:opacity-100 active:opacity-100 group-hover:opacity-100",title:i(s?"codeBlock.copied":"codeBlock.copyCode"),"aria-label":i(s?"codeBlock.copied":"codeBlock.copyCode"),children:s?o.jsxs("span",{className:"flex items-center gap-1",children:[o.jsx("svg",{className:"h-3.5 w-3.5",viewBox:"0 0 20 20",fill:"currentColor",children:o.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})}),i("codeBlock.copied")]}):o.jsxs("span",{className:"flex items-center gap-1",children:[o.jsxs("svg",{className:"h-3.5 w-3.5",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[o.jsx("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),o.jsx("path",{d:"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"})]}),i("codeBlock.copy")]})}),o.jsx(jy,{language:f,style:f6,customStyle:{margin:0,borderRadius:"0.5rem",fontSize:"0.875rem",padding:f&&f!=="text"?"2rem 1rem 1rem 1rem":"1rem"},codeTagProps:{style:{fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'}},children:c})]})},xre={code:bre,blockquote:({children:e})=>o.jsx("blockquote",{className:"my-2 border-l-4 border-gray-300 pl-4 italic text-gray-600 dark:border-gray-600 dark:text-gray-400",children:e}),a:({href:e,children:t})=>o.jsx("a",{href:e,className:"text-blue-600 hover:underline dark:text-blue-400",target:"_blank",rel:"noopener noreferrer",children:t}),p:({children:e})=>o.jsx("div",{className:"mb-2 last:mb-0",children:e}),table:({children:e})=>o.jsx("div",{className:"my-2 overflow-x-auto",children:o.jsx("table",{className:"min-w-full border-collapse border border-gray-200 dark:border-gray-700",children:e})}),thead:({children:e})=>o.jsx("thead",{className:"bg-gray-50 dark:bg-gray-800",children:e}),th:({children:e})=>o.jsx("th",{className:"border border-gray-200 px-3 py-2 text-left text-sm font-semibold dark:border-gray-700",children:e}),td:({children:e})=>o.jsx("td",{className:"border border-gray-200 px-3 py-2 align-top text-sm dark:border-gray-700",children:e})};function lr({children:e,className:t}){const n=HP(String(e??"")),r=h.useMemo(()=>[HI,UR],[]),a=h.useMemo(()=>[YR],[]);return o.jsx("div",{className:t,children:o.jsx(yI,{remarkPlugins:r,rehypePlugins:a,components:xre,children:n})})}function yre(e){if(typeof e=="string")return e;if(e==null)return"";try{return typeof e=="object"?JSON.stringify(e,null,2):String(e)}catch{return String(e)}}const h6=({content:e,className:t="mt-1 prose prose-sm max-w-none dark:prose-invert"})=>o.jsx(lr,{className:t,children:yre(e)});function vre(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"?t.trim().length>0:!!t&&typeof t=="object"&&typeof t.path=="string"&&t.path.trim().length>0):[]}const kre=({files:e,onFileClick:t,title:n})=>{const r=vre(e);return r.length===0?null:o.jsxs("div",{children:[n&&o.jsx("div",{className:"mb-1 text-[11px] text-gray-500 dark:text-gray-400",children:n}),o.jsx("div",{className:"flex max-h-48 flex-wrap gap-x-1 gap-y-0.5 overflow-y-auto",children:r.map((a,i)=>{const s=typeof a=="string"?a:a.path,l=s.split("/").pop()||s,c=typeof a=="string"?()=>t?.(a):a.onClick;return o.jsxs("span",{className:"inline-flex items-center",children:[o.jsx("button",{onClick:c,className:"font-mono text-[11px] text-blue-600 transition-colors hover:text-blue-700 hover:underline dark:text-blue-400 dark:hover:text-blue-300",title:s,children:l}),ie==="completed"||e==="in_progress"?e:"pending",Ere=h.memo(({todo:e})=>{const t=wre[e.status],n=t.icon;return o.jsxs("div",{className:"flex items-start gap-2 rounded border border-gray-200 bg-white p-2 transition-colors dark:border-gray-700 dark:bg-gray-800",children:[o.jsx("div",{className:"mt-0.5 flex-shrink-0",children:o.jsx(n,{className:t.iconClassName})}),o.jsx("div",{className:"min-w-0 flex-1",children:o.jsxs("div",{className:"mb-0.5 flex items-start justify-between gap-2",children:[o.jsx("p",{className:`text-xs font-medium ${t.textClassName}`,children:e.content}),o.jsx("div",{className:"flex flex-shrink-0 gap-1",children:o.jsx(_M,{variant:"outline",className:`px-1.5 py-px text-[10px] ${t.badgeClassName}`,children:e.status.replace("_"," ")})})]})})]})}),Cre=h.memo(({todos:e,isResult:t=!1})=>{const n=h.useMemo(()=>e.map(r=>({id:r.id,content:r.content,status:Sre(r.status)})),[e]);return n.length===0?null:o.jsxs("div",{className:"space-y-1.5",children:[t&&o.jsxs("div",{className:"mb-1.5 text-xs font-medium text-gray-600 dark:text-gray-400",children:["Todo List (",n.length," ",n.length===1?"item":"items",")"]}),n.map((r,a)=>o.jsx(Ere,{todo:r},r.id??`${r.content}-${a}`))]})}),Nre=e=>{if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.content=="string"&&typeof t.status=="string"},Tre=h.memo(({todos:e,isResult:t=!1})=>{const n=h.useMemo(()=>Array.isArray(e)?e.filter(Nre):[],[e]);return n.length===0?null:o.jsx(Cre,{todos:n,isResult:t})});function g6(e){if(typeof e=="string")return e;if(e==null)return"";try{return typeof e=="object"?JSON.stringify(e,null,2):String(e)}catch{return String(e)}}function Are(e){const t=[],n=g6(e).split(` +`);for(const r of n){const a=r.match(/#(\d+)\.?\s*(?:\[(\w+)\]\s*)?(.+?)(?:\s*\((?:owner:\s*\w+)?\))?$/);if(a){const[,i,s,l]=a,c=r.match(/blockedBy:\s*\[([^\]]*)\]/);t.push({id:i,subject:l.trim(),status:s||"pending",blockedBy:c?c[1].split(",").map(u=>u.trim()).filter(Boolean):void 0})}}return t}const _N={completed:{icon:o.jsx("svg",{className:"h-3.5 w-3.5 text-green-500 dark:text-green-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})}),textClass:"line-through text-gray-400 dark:text-gray-500",badgeClass:"bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-300 border-green-200 dark:border-green-800"},in_progress:{icon:o.jsx("svg",{className:"h-3.5 w-3.5 text-blue-500 dark:text-blue-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})}),textClass:"text-gray-900 dark:text-gray-100",badgeClass:"bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300 border-blue-200 dark:border-blue-800"},pending:{icon:o.jsx("svg",{className:"h-3.5 w-3.5 text-gray-400 dark:text-gray-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("circle",{cx:"12",cy:"12",r:"9",strokeWidth:2})}),textClass:"text-gray-700 dark:text-gray-300",badgeClass:"bg-gray-100 dark:bg-gray-800 text-gray-600 dark:text-gray-400 border-gray-200 dark:border-gray-700"}},Ire=({content:e})=>{const t=g6(e),n=Are(e);if(n.length===0)return o.jsx("pre",{className:"whitespace-pre-wrap font-mono text-[11px] text-gray-600 dark:text-gray-400",children:t});const r=n.filter(i=>i.status==="completed").length,a=n.length;return o.jsxs("div",{children:[o.jsxs("div",{className:"mb-1.5 flex items-center gap-2",children:[o.jsxs("span",{className:"text-[11px] text-gray-500 dark:text-gray-400",children:[r,"/",a," completed"]}),o.jsx("div",{className:"h-1 flex-1 overflow-hidden rounded-full bg-gray-200 dark:bg-gray-700",children:o.jsx("div",{className:"h-full rounded-full bg-green-500 transition-all dark:bg-green-400",style:{width:`${a>0?r/a*100:0}%`}})})]}),o.jsx("div",{className:"space-y-px",children:n.map(i=>{const s=_N[i.status]||_N.pending;return o.jsxs("div",{className:"group flex items-center gap-1.5 py-0.5",children:[o.jsx("span",{className:"flex-shrink-0",children:s.icon}),o.jsxs("span",{className:"flex-shrink-0 font-mono text-[11px] text-gray-400 dark:text-gray-500",children:["#",i.id]}),o.jsx("span",{className:`flex-1 truncate text-xs ${s.textClass}`,children:i.subject}),o.jsx("span",{className:`flex-shrink-0 rounded border px-1 py-px text-[10px] ${s.badgeClass}`,children:i.status.replace("_"," ")})]},i.id)})})]})};function Rre(e){if(typeof e=="string")return e;if(e==null)return"";try{return typeof e=="object"?JSON.stringify(e,null,2):String(e)}catch{return String(e)}}const _re=({content:e,format:t="plain",className:n=""})=>{const r=Rre(e);if(t==="json"){let a=r;try{const i=JSON.parse(r);a=JSON.stringify(i,null,2)}catch(i){console.warn("Failed to parse JSON content:",i)}return o.jsx("pre",{className:`mt-1 overflow-x-auto rounded bg-gray-900 p-2.5 font-mono text-xs text-gray-100 dark:bg-gray-950 ${n}`,children:a})}return t==="code"?o.jsx("pre",{className:`mt-1 overflow-hidden whitespace-pre-wrap break-words rounded border border-gray-200/50 bg-gray-50 p-2 font-mono text-xs text-gray-700 dark:border-gray-700/50 dark:bg-gray-800/50 dark:text-gray-300 ${n}`,children:r}):o.jsx("div",{className:`mt-1 whitespace-pre-wrap text-sm text-gray-700 dark:text-gray-300 ${n}`,children:r})};function jre(e){if(!e||typeof e!="object")return null;const t=e,n=typeof t.label=="string"?t.label:"";return n.trim()?{label:n,description:typeof t.description=="string"?t.description:void 0}:null}function Ore(e){if(!e||typeof e!="object")return null;const t=e,n=typeof t.question=="string"?t.question:"";if(!n.trim())return null;const r=Array.isArray(t.options)?t.options.map(jre).filter(a=>!!a):[];return{question:n,header:typeof t.header=="string"?t.header:void 0,options:r,multiSelect:!!t.multiSelect}}function b6(e){if(Array.isArray(e))return e.map(Ore).filter(t=>!!t);if(typeof e=="string"&&e.trim())try{const t=JSON.parse(e);if(t!==e)return b6(t)}catch{}return[]}function Dre(e){return!e||typeof e!="object"||Array.isArray(e)?{}:Object.fromEntries(Object.entries(e).filter(([t])=>t.trim()).map(([t,n])=>[t,typeof n=="string"?n:String(n??"")]))}function Mre(e){if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}const Lre=({questions:e,answers:t,className:n=""})=>{const[r,a]=h.useState(null),i=b6(e),s=Dre(t);if(i.length===0)return e==null||e===""?null:o.jsxs("div",{className:`rounded-lg border border-amber-200 bg-amber-50/70 p-3 text-xs text-amber-800 dark:border-amber-800/50 dark:bg-amber-950/20 dark:text-amber-200 ${n}`,children:[o.jsx("div",{className:"font-medium",children:"Question payload could not be rendered."}),o.jsx("pre",{className:"mt-2 max-h-40 overflow-auto whitespace-pre-wrap break-words text-[11px] opacity-80",children:Mre(e)})]});const l=Object.keys(s).length>0,c=i.length;return o.jsxs("div",{className:`space-y-2 ${n}`,children:[i.map((u,d)=>{const p=s[u.question],m=p?p.split(", "):[],f=!p,g=r===d;return o.jsxs("div",{className:"border-gray-150 overflow-hidden rounded-lg border bg-gray-50/50 dark:border-gray-700/50 dark:bg-gray-800/30",children:[o.jsxs("button",{type:"button",onClick:()=>a(g?null:d),className:"flex w-full items-start gap-2.5 px-3 py-2 text-left transition-colors hover:bg-gray-50 dark:hover:bg-gray-800/50",children:[o.jsx("div",{className:`mt-0.5 flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-full ${m.length>0?"bg-blue-100 dark:bg-blue-900/40":"bg-gray-100 dark:bg-gray-800"}`,children:m.length>0?o.jsx("svg",{className:"h-2.5 w-2.5 text-blue-600 dark:text-blue-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",strokeWidth:3,children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 13l4 4L19 7"})}):o.jsx("div",{className:"h-1.5 w-1.5 rounded-full bg-gray-300 dark:bg-gray-600"})}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[u.header&&o.jsx("span",{className:"inline-flex items-center rounded border border-blue-100/80 bg-blue-50 px-1.5 py-0.5 text-[9px] font-semibold uppercase tracking-wider text-blue-600 dark:border-blue-800/40 dark:bg-blue-900/30 dark:text-blue-400",children:u.header}),c>1&&o.jsxs("span",{className:"text-[10px] tabular-nums text-gray-400 dark:text-gray-500",children:[d+1,"/",c]})]}),o.jsx("div",{className:"mt-0.5 text-xs leading-snug text-gray-600 dark:text-gray-400",children:u.question}),!g&&m.length>0&&o.jsx("div",{className:"mt-1.5 flex flex-wrap gap-1",children:m.map(b=>{const x=!u.options.some(k=>k.label===b);return o.jsxs("span",{className:"inline-flex items-center gap-1 rounded-md bg-blue-50 px-1.5 py-0.5 text-[11px] font-medium text-blue-700 dark:bg-blue-900/30 dark:text-blue-300",children:[b,x&&o.jsx("span",{className:"text-[9px] font-normal text-blue-400 dark:text-blue-500",children:"(custom)"})]},b)})}),!g&&f&&l&&o.jsx("span",{className:"mt-1 inline-block text-[10px] italic text-gray-400 dark:text-gray-500",children:"Skipped"})]}),o.jsx("svg",{className:`mt-0.5 h-3.5 w-3.5 flex-shrink-0 text-gray-400 transition-transform duration-200 dark:text-gray-500 ${g?"rotate-180":""}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",strokeWidth:2,children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 9l-7 7-7-7"})})]}),g&&o.jsx("div",{className:"border-t border-gray-100 px-3 pb-2.5 pt-0.5 dark:border-gray-700/40",children:o.jsxs("div",{className:"ml-6.5 space-y-1",children:[u.options.map(b=>{const x=m.includes(b.label);return o.jsxs("div",{className:`flex items-start gap-2 rounded-lg px-2.5 py-1.5 text-[12px] ${x?"border border-blue-200/60 bg-blue-50/80 dark:border-blue-800/40 dark:bg-blue-900/20":"text-gray-400 dark:text-gray-500"}`,children:[o.jsx("div",{className:`mt-0.5 h-3.5 w-3.5 flex-shrink-0 ${u.multiSelect?"rounded-[3px]":"rounded-full"} flex items-center justify-center border-[1.5px] ${x?"border-blue-500 bg-blue-500 dark:border-blue-400 dark:bg-blue-500":"border-gray-300 dark:border-gray-600"}`,children:x&&o.jsx("svg",{className:"h-2 w-2 text-white",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",strokeWidth:3,children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 13l4 4L19 7"})})}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("span",{className:x?"font-medium text-gray-900 dark:text-gray-100":"",children:b.label}),b.description&&o.jsx("span",{className:`mt-0.5 block text-[11px] ${x?"text-blue-600/70 dark:text-blue-300/70":"text-gray-400 dark:text-gray-600"}`,children:b.description})]})]},b.label)}),m.filter(b=>!u.options.some(x=>x.label===b)).map(b=>o.jsxs("div",{className:"flex items-start gap-2 rounded-lg border border-blue-200/60 bg-blue-50/80 px-2.5 py-1.5 text-[12px] dark:border-blue-800/40 dark:bg-blue-900/20",children:[o.jsx("div",{className:`mt-0.5 h-3.5 w-3.5 flex-shrink-0 ${u.multiSelect?"rounded-[3px]":"rounded-full"} flex items-center justify-center border-[1.5px] border-blue-500 bg-blue-500 dark:border-blue-400 dark:bg-blue-500`,children:o.jsx("svg",{className:"h-2 w-2 text-white",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",strokeWidth:3,children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 13l4 4L19 7"})})}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("span",{className:"font-medium text-gray-900 dark:text-gray-100",children:b}),o.jsx("span",{className:"ml-1 text-[10px] text-blue-500 dark:text-blue-400",children:"(custom)"})]})]},b)),f&&l&&o.jsx("div",{className:"px-2.5 py-1 text-[11px] italic text-gray-400 dark:text-gray-500",children:"No answer provided"})]})})]},d)}),!l&&c===1&&o.jsx("div",{className:"text-[11px] italic text-gray-400 dark:text-gray-500",children:"Skipped"})]})},jN=({planTitle:e,planSummary:t,planFilePath:n,onViewPlan:r})=>{const{t:a}=Je("chat"),i=!!n;return o.jsxs("div",{className:"overflow-hidden rounded-xl border border-indigo-200 bg-white dark:border-indigo-900/60 dark:bg-neutral-900",children:[o.jsxs("div",{className:"flex items-center gap-2.5 border-b border-indigo-100 bg-indigo-50/50 px-4 py-2.5 dark:border-indigo-900/50 dark:bg-indigo-950/20",children:[o.jsx(vT,{className:"h-4 w-4 shrink-0 text-indigo-600 dark:text-indigo-400",strokeWidth:2}),o.jsx("span",{className:"truncate text-sm font-semibold text-neutral-900 dark:text-neutral-100",children:e})]}),t&&o.jsx("div",{className:"px-4 py-2.5 text-xs leading-relaxed text-neutral-600 line-clamp-2 dark:text-neutral-400",children:t}),o.jsx("div",{className:"flex items-center justify-end border-t border-indigo-100 px-4 py-2 dark:border-indigo-900/50",children:o.jsxs("button",{type:"button",onClick:r,disabled:!i,className:"inline-flex items-center gap-1.5 rounded-lg border border-indigo-200 bg-white px-3 py-1.5 text-xs font-medium text-indigo-700 transition hover:bg-indigo-50 disabled:cursor-not-allowed disabled:opacity-40 dark:border-indigo-800 dark:bg-neutral-900 dark:text-indigo-300 dark:hover:bg-indigo-950/30",children:[o.jsx(yr,{className:"h-3.5 w-3.5",strokeWidth:2}),a("plan.approvedCard.viewPlan",{defaultValue:"View Plan"})]})})]})};function ON(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Pre(...e){return t=>{let n=!1;const r=e.map(a=>{const i=ON(a,t);return!n&&typeof i=="function"&&(n=!0),i});if(n)return()=>{for(let a=0;a{let{children:i,...s}=r;x6(i)&&typeof yc=="function"&&(i=yc(i._payload));const l=h.Children.toArray(i),c=l.find(Hre);if(c){const u=c.props.children,d=l.map(p=>p===c?h.Children.count(u)>1?h.Children.only(null):h.isValidElement(u)?u.props.children:null:p);return o.jsx(t,{...s,ref:a,children:h.isValidElement(u)?h.cloneElement(u,void 0,d):null})}return o.jsx(t,{...s,ref:a,children:i})});return n.displayName=`${e}.Slot`,n}var Ure=$re("Slot");function zre(e){const t=h.forwardRef((n,r)=>{let{children:a,...i}=n;if(x6(a)&&typeof yc=="function"&&(a=yc(a._payload)),h.isValidElement(a)){const s=Vre(a),l=Gre(i,a.props);return a.type!==h.Fragment&&(l.ref=r?Pre(r,s):s),h.cloneElement(a,l)}return h.Children.count(a)>1?h.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var qre=Symbol("radix.slottable");function Hre(e){return h.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===qre}function Gre(e,t){const n={...t};for(const r in t){const a=e[r],i=t[r];/^on[A-Z]/.test(r)?a&&i?n[r]=(...l)=>{const c=i(...l);return a(...l),c}:a&&(n[r]=a):r==="style"?n[r]={...a,...i}:r==="className"&&(n[r]=[a,i].filter(Boolean).join(" "))}return{...e,...n}}function Vre(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}const Wre=mx("inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",ghost:"hover:bg-accent hover:text-accent-foreground",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 gap-2 px-4 py-2",sm:"h-8 gap-1.5 rounded-md px-3",lg:"h-10 gap-2 rounded-md px-6",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),Fl=h.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...a},i)=>{const s=r?Ure:"button";return o.jsx(s,{ref:i,className:oe(Wre({variant:t,size:n,className:e})),...a})});Fl.displayName="Button";const y6=h.forwardRef(({className:e,type:t,...n},r)=>o.jsx("input",{ref:r,type:t,className:oe("flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),...n}));y6.displayName="Input";function Kre(e){if(!e||typeof e!="object")return null;const t=e,n=typeof t.label=="string"?t.label:"";return n.trim()?{label:n,description:typeof t.description=="string"?t.description:void 0}:null}function Yre(e){if(!e||typeof e!="object")return null;const t=e,n=typeof t.question=="string"?t.question:"";return n.trim()?{question:n,header:typeof t.header=="string"?t.header:void 0,options:Array.isArray(t.options)?t.options.map(Kre).filter(r=>!!r):[],multiSelect:!!t.multiSelect}:null}function Xre(e){return Array.isArray(e)?e.map(Yre).filter(t=>!!t):[]}const v6=({request:e,onDecision:t})=>{const n=e.input,r=Xre(n?.questions),[a,i]=h.useState(0),[s,l]=h.useState(()=>new Map),[c,u]=h.useState(()=>new Map),[d,p]=h.useState(()=>new Map),[m,f]=h.useState(!1),g=h.useRef(null),b=h.useRef(null);h.useEffect(()=>{requestAnimationFrame(()=>f(!0))},[]),h.useEffect(()=>{d.get(a)||g.current?.focus()},[a,d]),h.useEffect(()=>{d.get(a)&&b.current?.focus()},[d,a]);const x=h.useCallback((B,$,U)=>{l(q=>{const A=new Map(q),K=new Set(A.get(B)||[]);return U?K.has($)?K.delete($):K.add($):(K.clear(),K.add($),p(V=>{const L=new Map(V);return L.set(B,!1),L})),A.set(B,K),A})},[]),k=h.useCallback((B,$)=>{p(U=>{const q=new Map(U),A=q.get(B)||!1;return q.set(B,!A),!$&&!A&&l(K=>{const V=new Map(K);return V.set(B,new Set),V}),q})},[]),y=h.useCallback((B,$)=>{u(U=>{const q=new Map(U);return q.set(B,$),q})},[]),v=h.useCallback(()=>{const B={};return r.forEach(($,U)=>{const q=Array.from(s.get(U)||[]),A=d.get(U)||!1,K=(c.get(U)||"").trim();A&&K&&q.push(K),q.length>0&&(B[$.question]=q.join(", "))}),B},[r,s,d,c]),E=h.useCallback(()=>{t(e.requestId,{allow:!0,updatedInput:{...n,answers:v()}})},[t,e.requestId,n,v]),N=h.useCallback(()=>{t(e.requestId,{allow:!0,updatedInput:{...n,answers:{}}})},[t,e.requestId,n]),w=h.useCallback(B=>{if(B.target instanceof HTMLInputElement)return;const $=r[a];if(!$)return;const U=$.multiSelect||!1,q=$.options.length,A=parseInt(B.key);if(!isNaN(A)&&A>=1&&A<=q){B.preventDefault(),x(a,$.options[A-1].label,U);return}if(B.key==="0"){B.preventDefault(),k(a,U);return}if(B.key==="Enter"){if(En(B))return;B.preventDefault(),a===r.length-1?E():i(V=>V+1);return}if(B.key==="Escape"){B.preventDefault(),N();return}},[a,r,x,k,E,N]);if(r.length===0)return null;const T=r.length,j=T===1,_=r[a],C=_.multiSelect||!1,O=s.get(a)||new Set,I=d.get(a)||!1,z=a===T-1,M=a===0,P=O.size>0||I&&(c.get(a)||"").trim().length>0;return o.jsx("div",{ref:g,tabIndex:-1,onKeyDown:w,className:oe("w-full outline-none transition-all duration-300 ease-out",m?"translate-y-0 opacity-100":"translate-y-1 opacity-0"),children:o.jsxs("div",{className:"overflow-hidden rounded-lg border border-border bg-card shadow-sm",children:[o.jsxs("div",{className:"px-4 pb-2 pt-3",children:[o.jsxs("div",{className:"mb-1.5 flex items-center gap-2",children:[o.jsx(Yj,{className:"h-4 w-4 flex-shrink-0 text-muted-foreground",strokeWidth:1.75}),o.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[o.jsx("span",{className:"text-[10px] font-medium uppercase tracking-wider text-muted-foreground",children:"Agent needs your input"}),_.header&&o.jsx("span",{className:"inline-flex items-center rounded border border-border bg-muted px-1.5 py-px text-[9px] font-semibold uppercase tracking-wider text-muted-foreground",children:_.header})]}),!j&&o.jsxs("span",{className:"flex-shrink-0 text-[10px] tabular-nums text-muted-foreground",children:[a+1,"/",T]})]}),!j&&o.jsx("div",{className:"mb-2 flex items-center gap-1",children:r.map((B,$)=>o.jsx("button",{type:"button",onClick:()=>i($),"aria-label":`Go to question ${$+1}`,className:oe("h-[3px] rounded-full transition-all duration-300",$===a?"w-5 bg-foreground":${const U=O.has(B.label);return o.jsxs("button",{type:"button",onClick:()=>x(a,B.label,C),"aria-pressed":U,className:oe("group flex w-full items-center gap-2.5 rounded-md border px-3 py-2 text-left transition-colors duration-150",U?"border-foreground/40 bg-accent text-accent-foreground":"border-border hover:border-foreground/30 hover:bg-accent/50"),children:[o.jsx("kbd",{className:oe("flex h-5 w-5 flex-shrink-0 items-center justify-center rounded font-mono text-[10px] transition-colors duration-150",U?"bg-primary font-semibold text-primary-foreground":"border border-border bg-muted text-muted-foreground"),children:$+1}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:oe("text-[13px] leading-tight",U?"font-medium text-foreground":"text-foreground/80"),children:B.label}),B.description&&o.jsx("div",{className:"text-[11px] leading-snug text-muted-foreground",children:B.description})]}),U&&o.jsx(Er,{className:"h-4 w-4 flex-shrink-0 text-foreground",strokeWidth:2.5})]},B.label)}),o.jsxs("button",{type:"button",onClick:()=>k(a,C),"aria-pressed":I,className:oe("group flex w-full items-center gap-2.5 rounded-md border px-3 py-2 text-left transition-colors duration-150",I?"border-foreground/40 bg-accent text-accent-foreground":"border-dashed border-border hover:border-foreground/30 hover:bg-accent/50"),children:[o.jsx("kbd",{className:oe("flex h-5 w-5 flex-shrink-0 items-center justify-center rounded font-mono text-[10px] transition-colors duration-150",I?"bg-primary font-semibold text-primary-foreground":"border border-border bg-muted text-muted-foreground"),children:"0"}),o.jsx("span",{className:oe("text-[13px] leading-tight",I?"font-medium text-foreground":"text-muted-foreground"),children:"Other..."}),I&&o.jsx(Er,{className:"ml-auto h-4 w-4 flex-shrink-0 text-foreground",strokeWidth:2.5})]}),I&&o.jsx("div",{className:"pl-[30px] pr-0.5",children:o.jsxs("div",{className:"relative",children:[o.jsx(y6,{ref:b,type:"text",value:c.get(a)||"",onChange:B=>y(a,B.target.value),onKeyDown:B=>{if(En(B)){B.stopPropagation();return}B.key==="Enter"&&(B.preventDefault(),z?E():i($=>$+1)),B.stopPropagation()},placeholder:"Type your answer...",className:"h-8 pr-14 text-[13px]"}),o.jsx("kbd",{className:"pointer-events-none absolute right-2 top-1/2 -translate-y-1/2 rounded border border-border bg-muted px-1 py-0.5 font-mono text-[9px] text-muted-foreground",children:"Enter"})]})})]})}),o.jsxs("div",{className:"flex items-center justify-between gap-2 border-t border-border bg-muted/30 px-3 py-2",children:[o.jsxs(Fl,{type:"button",variant:"ghost",size:"sm",onClick:N,className:"h-7 px-2 text-[11px] text-muted-foreground hover:text-foreground",children:[j?"Skip":"Skip all",o.jsx("span",{className:"ml-1 font-mono text-[9px] opacity-60",children:"Esc"})]}),o.jsxs("div",{className:"flex items-center gap-1.5",children:[!j&&!M&&o.jsxs(Fl,{type:"button",variant:"ghost",size:"sm",onClick:()=>i(B=>B-1),className:"h-7 gap-0.5 px-2 text-[11px]",children:[o.jsx(Nc,{className:"!h-3 !w-3"}),"Back"]}),o.jsxs(Fl,{type:"button",size:"sm",onClick:z?E:()=>i(B=>B+1),disabled:z&&!P&&!Object.keys(v()).length,className:"h-7 gap-1 px-3 text-[11px] font-medium",children:[z?"Submit":"Next",o.jsx("span",{className:"font-mono text-[9px] opacity-60",children:"Enter"})]})]})]})]})})},mg="What should happen next?";function Zre(e){return e.replace(/\\n/g,` +`).trim()}function Gb(e){if(typeof e=="string")return Zre(e)||null;if(Array.isArray(e)){const n=e.map(r=>Gb(r)).filter(r=>!!r);return n.length>0?n.join(` + +`):null}if(!e||typeof e!="object")return null;const t=e;for(const n of["plan","planContent","content","markdown","text","body"]){const r=Gb(t[n]);if(r)return r}return null}function Jre(e){const t=Gb(e);if(t)return t;if(e==null)return"";if(typeof e=="object"&&!Array.isArray(e)){const r=Object.keys(e);if(r.length===0||r.every(i=>i==="allowedPrompts"||i==="planFilePath"))return""}try{return JSON.stringify(e,null,2)}catch{return String(e)}}const Oy=({request:e,onDecision:t,onPlanExecutionApproved:n})=>{const{t:r}=Je("chat"),[a,i]=h.useState(""),s=h.useMemo(()=>Jre(e.input)||r("plan.exitMode.syncingPlan"),[e.input,r]),l=()=>{n?.(),t(e.requestId,{allow:!0,updatedInput:{answers:{[mg]:"execute_plan"}}})},c=()=>{const u=a.trim();t(e.requestId,{allow:!0,updatedInput:{answers:{[mg]:"continue_planning"},...u?{annotations:{[mg]:{notes:u}}}:{}}})};return o.jsxs("div",{className:"overflow-hidden rounded-2xl border border-blue-200 bg-white shadow-lg dark:border-blue-900/70 dark:bg-neutral-900",children:[o.jsx("div",{className:"border-b border-blue-100 bg-blue-50/70 px-4 py-3 dark:border-blue-900/70 dark:bg-blue-950/25",children:o.jsxs("div",{className:"flex items-start gap-3",children:[o.jsx("div",{className:"mt-0.5 flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-blue-100 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300",children:o.jsx(vT,{className:"h-4 w-4",strokeWidth:2})}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"text-sm font-semibold text-neutral-950 dark:text-neutral-50",children:r("plan.exitMode.header")}),o.jsx("div",{className:"mt-0.5 text-xs text-neutral-600 dark:text-neutral-400",children:r("plan.exitMode.subtitle")})]})]})}),o.jsx("div",{className:"min-h-[200px] max-h-[50vh] overflow-y-auto px-4 py-3",children:o.jsx(h6,{content:s,className:"prose prose-sm max-w-none text-neutral-800 dark:prose-invert dark:text-neutral-200"})}),o.jsxs("div",{className:"border-t border-neutral-100 bg-neutral-50/70 px-4 py-3 dark:border-neutral-800 dark:bg-neutral-950/40",children:[o.jsx("label",{className:"mb-2 block text-xs font-medium text-neutral-600 dark:text-neutral-400",children:r("plan.exitMode.feedbackLabel")}),o.jsx("textarea",{value:a,onChange:u=>i(u.target.value),rows:3,placeholder:r("plan.exitMode.feedbackPlaceholder"),className:"block w-full resize-none rounded-lg border border-neutral-200 bg-white px-3 py-2 text-sm text-neutral-900 outline-none transition focus:border-blue-300 focus:ring-2 focus:ring-blue-100 dark:border-neutral-800 dark:bg-neutral-900 dark:text-neutral-100 dark:focus:border-blue-700 dark:focus:ring-blue-950"}),o.jsxs("div",{className:"mt-3 flex flex-wrap justify-end gap-2",children:[o.jsxs("button",{type:"button",onClick:c,className:"inline-flex items-center gap-1.5 rounded-lg border border-neutral-300 bg-white px-3 py-1.5 text-xs font-medium text-neutral-700 transition hover:bg-neutral-100 dark:border-neutral-700 dark:bg-neutral-900 dark:text-neutral-200 dark:hover:bg-neutral-800",children:[o.jsx(iO,{className:"h-3.5 w-3.5",strokeWidth:2}),r("plan.exitMode.continueButton")]}),o.jsxs("button",{type:"button",onClick:l,className:"inline-flex items-center gap-1.5 rounded-lg bg-blue-600 px-3 py-1.5 text-xs font-semibold text-white transition hover:bg-blue-700 dark:bg-blue-500 dark:hover:bg-blue-600",children:[o.jsx(vr,{className:"h-3.5 w-3.5",strokeWidth:2}),r("plan.exitMode.executeButton")]})]})]})]})};class Qre extends $n.Component{state={error:null};static getDerivedStateFromError(t){return{error:t}}componentDidCatch(t,n){console.warn("[ToolRenderer] Failed to render tool block:",{toolName:this.props.toolName,toolId:this.props.toolId,error:t,errorInfo:n})}componentDidUpdate(t){this.state.error&&(t.toolName!==this.props.toolName||t.toolId!==this.props.toolId)&&this.setState({error:null})}render(){return this.state.error?o.jsxs("div",{className:"my-1 rounded-lg border border-amber-200 bg-amber-50/70 px-3 py-2 text-xs text-amber-800 dark:border-amber-800/50 dark:bg-amber-950/20 dark:text-amber-200",children:[o.jsx("div",{className:"font-medium",children:"Tool output could not be rendered."}),o.jsx("div",{className:"mt-0.5 opacity-80",children:this.props.toolName})]}):this.props.children}}function $a(e,t,n,r){try{return n()}catch(a){return console.warn(`[ToolRenderer] ${e} failed for ${t}:`,a),r}}function Us(e,t=""){if(typeof e=="string")return e;if(e==null)return t;try{return typeof e=="object"?JSON.stringify(e):String(e)}catch{return t}}function DN(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}function eae(e){return["Edit","Write","ApplyPatch"].includes(e)?"edit":["Grep","Glob"].includes(e)?"search":e==="Bash"?"bash":["TodoWrite","TodoRead","todo_write","todo_read"].includes(e)?"todo":["TaskCreate","TaskUpdate","TaskList","TaskGet"].includes(e)?"task":e==="Task"||e==="agent"||e==="Agent"?"agent":e==="exit_plan_mode"||e==="ExitPlanMode"?"plan":e==="AskUserQuestion"?"question":"default"}const k6=({toolName:e,toolInput:t,toolResult:n,toolId:r,mode:a,onFileOpen:i,createDiff:s,selectedProject:l,autoExpandTools:c=!1,showRawParameters:u=!1,rawToolInput:d,isSubagentContainer:p,subagentState:m})=>{const f=jA(e),g=OA(e),b=a==="input"?g.input:g.result,x=h.useMemo(()=>{try{const y=a==="input"?t:n;return typeof y=="string"?JSON.parse(y):y}catch{return a==="input"?t:n}},[a,t,n]),k=h.useCallback(()=>{if(b?.action==="open-file"&&i){const y=Us($a("action value",e,()=>b.getValue?.(x),""));i(y)}},[b,x,i,e]);if(p&&m)return a==="result"?null:o.jsx(_$,{toolInput:t,toolResult:n,subagentState:m});if(!b)return null;if(b.type==="one-line"){const y=Us($a("value getter",e,()=>b.getValue?.(x),"")),v=$a("secondary getter",e,()=>b.getSecondary?.(x),void 0),E=v===void 0?void 0:Us(v);return o.jsx(R$,{toolName:e,toolResult:n,toolId:r,icon:b.icon,label:b.label,value:y,secondary:E,action:b.action,onAction:k,style:b.style,wrapText:b.wrapText,colorScheme:b.colorScheme,resultId:a==="input"?`tool-result-${r}`:void 0})}if(b.type==="collapsible"){const y=Us($a("title getter",e,()=>typeof b.title=="function"?b.title(x):b.title,"Details"),"Details"),v=b.defaultOpen!==void 0?b.defaultOpen:c,E=DN($a("content props getter",e,()=>b.getContentProps?.(x,{selectedProject:l,createDiff:s,onFileOpen:i}),{}));let N=null;switch(b.contentType){case"diff":s&&(N=o.jsx(I$,{oldContent:E.oldContent,newContent:E.newContent,filePath:E.filePath,badge:E.badge,badgeColor:E.badgeColor,createDiff:s,onFileClick:()=>i?.(E.filePath)}));break;case"markdown":N=o.jsx(h6,{content:E.content||""});break;case"file-list":N=o.jsx(kre,{files:E.files||[],onFileClick:i,title:E.title});break;case"todo-list":E.todos?.length>0&&(N=o.jsx(Tre,{todos:E.todos,isResult:E.isResult}));break;case"task":N=o.jsx(Ire,{content:E.content||""});break;case"question-answer":N=o.jsx(Lre,{questions:E.questions||[],answers:E.answers||{}});break;case"text":N=o.jsx(_re,{content:E.content||"",format:E.format||"plain"});break;case"plan-card":N=o.jsx(jN,{planTitle:E.planTitle||"",planSummary:E.planSummary||"",planFilePath:E.planFilePath||"",onViewPlan:()=>i?.(E.planFilePath)});break;case"success-message":{const T=Us($a("success message getter",e,()=>b.getMessage?.(x),"Success"),"Success");N=o.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-green-600 dark:text-green-400",children:[o.jsx("svg",{className:"h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})}),T]});break}}const w=(f==="Edit"||f==="Write"||f==="ApplyPatch")&&E.filePath&&i?()=>i(E.filePath,{old_string:E.oldContent,new_string:E.newContent}):void 0;return o.jsx(MA,{toolName:e,toolId:r,title:y,defaultOpen:v,onTitleClick:w,showRawParameters:a==="input"&&u,rawContent:d,toolCategory:eae(f),children:N})}if(b.type==="card"){const y=DN($a("content props getter",e,()=>b.getContentProps?.(x,{selectedProject:l,createDiff:s,onFileOpen:i}),{}));let v=null;return b.contentType==="plan-card"&&(v=o.jsx(jN,{planTitle:y.planTitle||"",planSummary:y.planSummary||"",planFilePath:y.planFilePath||"",onViewPlan:()=>i?.(y.planFilePath)})),v}return null};k6.displayName="ToolRendererInner";const Vb=h.memo(e=>o.jsx(Qre,{toolName:e.toolName,toolId:e.toolId,children:o.jsx(k6,{...e})}));Vb.displayName="ToolRenderer";const tae=2e3,nae=e=>{let t=e.replace(/\r\n/g,` +`);const n=[];return t=t.replace(/```[\w-]*\n([\s\S]*?)```/g,(r,a)=>{const i=`@@CODEBLOCK${n.length}@@`;return n.push(a.replace(/\n$/,"")),i}),t=t.replace(/`([^`]+)`/g,"$1"),t=t.replace(/!\[([^\]]*)\]\(([^)]+)\)/g,"$1"),t=t.replace(/\[([^\]]+)\]\(([^)]+)\)/g,"$1"),t=t.replace(/^>\s?/gm,""),t=t.replace(/^#{1,6}\s+/gm,""),t=t.replace(/^[-*+]\s+/gm,""),t=t.replace(/^\d+\.\s+/gm,""),t=t.replace(/(\*\*|__)(.*?)\1/g,"$2"),t=t.replace(/(\*|_)(.*?)\1/g,"$2"),t=t.replace(/~~(.*?)~~/g,"$1"),t=t.replace(/<\/?[^>]+(>|$)/g,""),t=t.replace(/\n{3,}/g,` + +`),t=t.replace(/@@CODEBLOCK(\d+)@@/g,(r,a)=>n[Number(a)]??""),t.trim()},MN=({content:e,messageType:t})=>{const{t:n}=Je("chat"),r=t==="assistant",a=r?"markdown":"text",[i,s]=h.useState(a),[l,c]=h.useState(!1),[u,d]=h.useState(!1),p=h.useRef(null),m=h.useRef(null),f=h.useMemo(()=>[{format:"markdown",label:n("copyMessage.copyAsMarkdown",{defaultValue:"Copy as markdown"})},{format:"text",label:n("copyMessage.copyAsText",{defaultValue:"Copy as text"})}],[n]),g=i==="markdown"?n("copyMessage.markdownShort",{defaultValue:"MD"}):n("copyMessage.textShort",{defaultValue:"TXT"}),b=h.useMemo(()=>i==="markdown"?e:nae(e),[e,i]);h.useEffect(()=>{s(a),d(!1)},[a]),h.useEffect(()=>{const N=w=>{if(!u)return;const T=w.target;p.current&&!p.current.contains(T)&&d(!1)};return window.addEventListener("mousedown",N),()=>{window.removeEventListener("mousedown",N)}},[u]),h.useEffect(()=>()=>{m.current&&clearTimeout(m.current)},[]);const x=async()=>{!b.trim()||!await ta(b)||(c(!0),m.current&&clearTimeout(m.current),m.current=setTimeout(()=>{c(!1)},tae))},k=N=>{s(N),d(!1)},y=t==="user"?"text-blue-100 hover:text-white":"text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",v=n(l?"copyMessage.copied":"copyMessage.copy"),E=r?"relative flex min-w-0 flex-1 items-center gap-0.5 sm:min-w-max sm:flex-none sm:w-auto":"relative flex items-center gap-0.5";return o.jsxs("div",{ref:p,className:E,children:[o.jsxs("button",{type:"button",onClick:x,title:v,"aria-label":v,className:`inline-flex items-center gap-1 rounded px-1 py-0.5 transition-colors ${y}`,children:[l?o.jsx("svg",{className:"h-3.5 w-3.5",viewBox:"0 0 20 20",fill:"currentColor",children:o.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})}):o.jsxs("svg",{className:"h-3.5 w-3.5",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[o.jsx("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2"}),o.jsx("path",{d:"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"})]}),o.jsx("span",{className:"text-[10px] font-semibold uppercase tracking-wide",children:g})]}),r&&o.jsxs(o.Fragment,{children:[o.jsx("button",{type:"button",onClick:()=>d(N=>!N),className:`rounded px-1 py-0.5 transition-colors ${y}`,"aria-label":n("copyMessage.selectFormat",{defaultValue:"Select copy format"}),title:n("copyMessage.selectFormat",{defaultValue:"Select copy format"}),children:o.jsx("svg",{className:`h-3 w-3 transition-transform ${u?"rotate-180":""}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})}),u&&o.jsx("div",{className:"absolute left-auto top-full z-30 mt-1 min-w-36 rounded-md border border-gray-200 bg-white p-1 shadow-lg dark:border-gray-700 dark:bg-gray-900",children:f.map(N=>{const w=N.format===i;return o.jsx("button",{type:"button",onClick:()=>k(N.format),className:`block w-full rounded px-2 py-1.5 text-left transition-colors ${w?"bg-gray-100 text-gray-900 dark:bg-gray-800 dark:text-gray-100":"text-gray-700 hover:bg-gray-50 dark:text-gray-300 dark:hover:bg-gray-800/60"}`,children:o.jsx("span",{className:"block text-xs font-medium",children:N.label})},N.format)})})]})]})},Dy=({images:e,startIndex:t=0,onClose:n})=>{const r=h.useMemo(()=>e.length===0||t<0?0:t>=e.length?e.length-1:t,[e.length,t]),[a,i]=h.useState(r);h.useEffect(()=>{i(r)},[r]);const s=h.useCallback(()=>{i(u=>u<=0?e.length-1:u-1)},[e.length]),l=h.useCallback(()=>{i(u=>u>=e.length-1?0:u+1)},[e.length]);if(h.useEffect(()=>{const u=d=>{if(d.key==="Escape"){d.preventDefault(),n();return}e.length<=1||(d.key==="ArrowLeft"?(d.preventDefault(),s()):d.key==="ArrowRight"&&(d.preventDefault(),l()))};return document.addEventListener("keydown",u),()=>document.removeEventListener("keydown",u)},[n,s,l,e.length]),h.useEffect(()=>{const u=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=u}},[]),typeof document>"u"||e.length===0)return null;const c=e[a];return Y7.createPortal(o.jsxs("div",{role:"dialog","aria-modal":"true","aria-label":c?.name||"Image preview",className:"fixed inset-0 z-[2147483647] flex items-center justify-center bg-black/85 backdrop-blur-sm",onClick:n,children:[o.jsx("button",{type:"button",onClick:u=>{u.stopPropagation(),n()},className:"absolute right-4 top-4 flex h-9 w-9 items-center justify-center rounded-full bg-white/15 text-white shadow-sm transition hover:bg-white/30 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/60","aria-label":"Close preview",children:o.jsx("svg",{className:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",strokeWidth:2,children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})})}),e.length>1?o.jsx("button",{type:"button",onClick:u=>{u.stopPropagation(),s()},className:"absolute left-4 top-1/2 flex h-10 w-10 -translate-y-1/2 items-center justify-center rounded-full bg-white/15 text-white shadow-sm transition hover:bg-white/30 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/60","aria-label":"Previous image",children:o.jsx("svg",{className:"h-5 w-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",strokeWidth:2,children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 19l-7-7 7-7"})})}):null,e.length>1?o.jsx("button",{type:"button",onClick:u=>{u.stopPropagation(),l()},className:"absolute right-4 top-1/2 flex h-10 w-10 -translate-y-1/2 items-center justify-center rounded-full bg-white/15 text-white shadow-sm transition hover:bg-white/30 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/60","aria-label":"Next image",children:o.jsx("svg",{className:"h-5 w-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",strokeWidth:2,children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 5l7 7-7 7"})})}):null,o.jsxs("figure",{className:"flex max-h-[92vh] max-w-[92vw] flex-col items-center gap-2",onClick:u=>u.stopPropagation(),children:[o.jsx("img",{src:c.data,alt:c.name||"Image preview",className:"max-h-[88vh] max-w-[92vw] rounded-md object-contain shadow-2xl"},c.data),c.name||e.length>1?o.jsxs("figcaption",{className:"flex items-center gap-2 text-xs text-white/80",children:[c.name?o.jsx("span",{className:"truncate",children:c.name}):null,e.length>1?o.jsxs("span",{className:"rounded-full bg-white/15 px-2 py-0.5 tabular-nums",children:[a+1," / ",e.length]}):null]}):null]})]}),document.body)},Pi=e=>{if(typeof e=="string")return e;if(e==null)return"";try{return typeof e=="object"?JSON.stringify(e,null,2):String(e)}catch{return String(e)}};function rae(e){return Pi(e).replace(/<\/?tool_use_error>/g,"").replace(/^InputValidationError:\s*/i,"").trim()}function aae(e){const t=Pi(e);if(!t.includes(""))return!1;const n=t.toLowerCase();return!(n.includes("permission")&&(n.includes("denied")||n.includes("not allowed")||n.includes("requires")||n.includes("grant")))}function w6(e,t){const n=String(e||"").split(".").pop()?.toUpperCase();return n&&n!==String(e||"").toUpperCase()?n:t?.includes("/")&&t.split("/").pop()?.toUpperCase()||"FILE"}function iae(e,t){const n=w6(e,t).toLowerCase();return n==="pdf"?"bg-red-500 text-white":n==="doc"||n==="docx"?"bg-blue-500 text-white":n==="xls"||n==="xlsx"||n==="csv"?"bg-emerald-500 text-white":n==="ppt"||n==="pptx"?"bg-orange-500 text-white":"bg-neutral-500 text-white"}const sae=h.memo(({message:e,prevMessage:t,createDiff:n,onFileOpen:r,onShowSettings:a,onGrantSessionToolPermission:i,autoExpandTools:s,showRawParameters:l,showThinking:c,selectedProject:u,provider:d,hideHeader:p=!1})=>{const{t:m}=Je("chat"),f=t&&t.type===e.type&&(t.type==="assistant"||t.type==="user"||t.type==="tool"||t.type==="error"),g=h.useRef(null),[b,x]=h.useState(!1),k=mB(e),[y,v]=h.useState("idle"),E=Pi(e.content),N=Array.isArray(e.images)?e.images.filter(q=>q&&typeof q.data=="string"):[],w=Array.isArray(e.attachments)?e.attachments.filter(q=>q&&typeof q.name=="string"):[],T=h.useMemo(()=>(e.toolResult?.images??[]).filter(A=>A&&typeof A.data=="string"&&A.data.length>0).map(A=>({data:A.data,name:typeof A.name=="string"?A.name:void 0,mimeType:typeof A.mimeType=="string"?A.mimeType:void 0})),[e.toolResult]),[j,_]=h.useState(null),C=(q,A)=>_({images:q,index:A}),O=()=>_(null),I=E,z=h.useMemo(()=>Mx(E),[E]),M=e.isToolUse?Pi(e.displayText||e.content):z,P=e.type==="user"&&I.trim().length>0,B=e.type==="assistant"&&M.trim().length>0&&!e.isToolUse;h.useEffect(()=>{v("idle")},[k?.entry,e.toolId]),h.useEffect(()=>{const q=g.current;if(!s||!q||!e.isToolUse)return;const A=new IntersectionObserver(K=>{K.forEach(V=>{V.isIntersecting&&!b&&(x(!0),q.querySelectorAll('details:not([data-auto-expand="false"])').forEach(le=>{le.open=!0}))})},{threshold:.1});return A.observe(q),()=>{A.unobserve(q)}},[s,b,e.isToolUse]);const $=h.useMemo(()=>new Date(e.timestamp).toLocaleTimeString(),[e.timestamp]);return e.isThinking&&!c?null:o.jsxs("div",{ref:g,"data-message-timestamp":e.timestamp||void 0,className:`chat-message ${e.type} ${f?"grouped":""} ${e.type==="user"?"flex justify-end px-3 sm:px-0":"px-3 sm:px-0"}`,children:[e.type==="user"?o.jsxs("div",{className:"flex w-full items-end space-x-0 sm:w-auto sm:max-w-[85%] sm:space-x-3 md:max-w-md lg:max-w-lg xl:max-w-xl",children:[o.jsxs("div",{className:"group flex-1 rounded-2xl rounded-br-md bg-blue-600 px-3 py-2 text-white shadow-sm sm:flex-initial sm:px-4",children:[w.length>0&&o.jsx("div",{className:"mb-2 grid grid-cols-1 gap-2",children:w.map((q,A)=>o.jsxs("div",{className:"flex min-w-0 items-center gap-3 rounded-2xl bg-white/90 p-2.5 pr-3 text-neutral-900",children:[o.jsx("div",{className:`flex h-10 w-10 shrink-0 items-center justify-center rounded-xl ${iae(q.name,q.mimeType)}`,children:o.jsx(yr,{className:"h-5 w-5",strokeWidth:2})}),o.jsxs("div",{className:"min-w-0 text-left",children:[o.jsx("div",{className:"truncate text-[13px] font-semibold",children:q.name}),o.jsx("div",{className:"mt-0.5 text-[11px] font-medium uppercase text-neutral-500",children:w6(q.name,q.mimeType)})]})]},`${q.name||"attachment"}-${A}`))}),o.jsx("div",{className:"whitespace-pre-wrap break-words text-sm",children:E}),N.length>0&&o.jsx("div",{className:"mt-2 grid grid-cols-2 gap-2",children:N.map((q,A)=>o.jsx("button",{type:"button",onClick:()=>C(N,A),className:"block overflow-hidden rounded-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/70","aria-label":q.name?`Preview ${q.name}`:"Preview image",children:o.jsx("img",{src:q.data,alt:q.name,className:"h-auto max-w-full cursor-zoom-in rounded-lg transition-opacity hover:opacity-90"})},q.name||A))}),o.jsxs("div",{className:"mt-1 flex items-center justify-end gap-1 text-xs text-blue-100",children:[P&&o.jsx(MN,{content:I,messageType:"user"}),o.jsx("span",{children:$})]})]}),!p&&!f&&o.jsx("div",{className:"hidden h-8 w-8 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-sm text-white sm:flex",children:"U"})]}):e.isCompactBoundary?o.jsxs("div",{className:"my-2 flex w-full items-center justify-center gap-2 px-3 sm:px-0",children:[o.jsx("span",{className:"h-px flex-1 bg-emerald-200/70 dark:bg-emerald-900/50"}),o.jsx("span",{className:"rounded-full border border-emerald-200/80 bg-emerald-50 px-2.5 py-0.5 text-[11px] font-medium uppercase tracking-wide text-emerald-700 dark:border-emerald-800/60 dark:bg-emerald-950/30 dark:text-emerald-300",children:m("compact.label")}),typeof e.preTokens=="number"&&o.jsx("span",{className:"text-[11px] tabular-nums text-muted-foreground",children:m("compact.tokens",{tokens:e.preTokens.toLocaleString()})}),o.jsx("span",{className:"text-[11px] tabular-nums text-muted-foreground",children:$}),o.jsx("span",{className:"h-px flex-1 bg-emerald-200/70 dark:bg-emerald-900/50"})]}):e.isInterruptedNotice?o.jsxs("div",{className:"my-1 flex w-full items-center justify-center gap-2 px-3 sm:px-0",children:[o.jsx("span",{className:"h-px flex-1 bg-border/60"}),o.jsx("span",{className:"rounded-full border border-border/60 bg-muted/40 px-2.5 py-0.5 text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:m("interrupted.label")}),o.jsx("span",{className:"text-[11px] tabular-nums text-muted-foreground",children:$}),o.jsx("span",{className:"h-px flex-1 bg-border/60"})]}):e.isTaskNotification?o.jsx("div",{className:"w-full",children:o.jsx("div",{className:"rounded-xl border border-border/50 bg-muted/20 px-3 py-2 text-sm",children:o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx("span",{className:`mt-1 inline-block h-1.5 w-1.5 flex-shrink-0 rounded-full ${e.taskStatus==="completed"?"bg-green-500":e.taskStatus==="failed"||e.taskStatus==="error"?"bg-red-500":"bg-amber-500"}`}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"break-words text-foreground",children:E}),(e.taskStatus||e.taskId)&&o.jsxs("div",{className:"mt-1 flex flex-wrap gap-1 text-[11px] text-muted-foreground",children:[e.taskStatus&&o.jsx("span",{className:"rounded bg-background/80 px-1.5 py-0.5",children:e.taskStatus}),e.taskId&&o.jsx("span",{className:"rounded bg-background/80 px-1.5 py-0.5",children:e.taskId})]})]}),o.jsx("span",{className:"flex-shrink-0 text-xs text-muted-foreground",children:$})]})})}):o.jsxs("div",{className:"w-full",children:[!p&&!f&&o.jsxs("div",{className:"mb-2 flex items-center space-x-3",children:[e.type==="error"?o.jsx("div",{className:"flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-full bg-red-600 text-sm text-white",children:"!"}):e.type==="tool"?o.jsx("div",{className:"flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-full bg-gray-600 text-sm text-white dark:bg-gray-700",children:"🔧"}):o.jsx("div",{className:"flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-full p-1 text-sm text-white",children:o.jsx(C$,{provider:d,className:"h-full w-full"})}),o.jsx("div",{className:"text-sm font-medium text-gray-900 dark:text-white",children:e.type==="error"?m("messageTypes.error"):e.type==="tool"?m("messageTypes.tool"):m(d==="cursor"?"messageTypes.cursor":d==="codex"?"messageTypes.codex":d==="gemini"?"messageTypes.gemini":"messageTypes.pilotdeck")})]}),o.jsxs("div",{className:"w-full",children:[e.isToolUse?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"flex flex-col",children:o.jsx("div",{className:"flex flex-col",children:o.jsx(lr,{className:"prose prose-sm max-w-none dark:prose-invert",children:String(e.displayText||"")})})}),e.toolInput&&o.jsx(Vb,{toolName:e.toolName||"UnknownTool",toolInput:e.toolInput,toolResult:e.toolResult,toolId:e.toolId,mode:"input",onFileOpen:r,createDiff:n,selectedProject:u,autoExpandTools:s,showRawParameters:l,rawToolInput:typeof e.toolInput=="string"?e.toolInput:void 0,isSubagentContainer:e.isSubagentContainer,subagentState:e.subagentState}),T.length>0&&!e.toolResult?.isError&&o.jsx("div",{className:"my-1 flex flex-wrap gap-2",children:T.map((q,A)=>o.jsx("button",{type:"button",onClick:()=>C(T,A),className:"block overflow-hidden rounded-lg border border-neutral-200 bg-white shadow-sm transition hover:shadow-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 dark:border-neutral-700 dark:bg-neutral-900","aria-label":q.name?`Preview ${q.name}`:"Preview image",children:o.jsx("img",{src:q.data,alt:q.name||"Tool result image",className:"block h-auto max-h-72 max-w-xs cursor-zoom-in object-contain",loading:"lazy"})},`${q.name||"tool-image"}-${A}`))}),e.toolResult&&!A$(e.toolName||"UnknownTool",e.toolResult)&&(e.toolResult.isError?o.jsx("div",{id:`tool-result-${e.toolId}`,className:"scroll-mt-4",children:(()=>{const q=aae(e.toolResult?.content),A=q?rae(e.toolResult?.content):Pi(e.toolResult?.content);return k?o.jsx("div",{className:"my-1 border-l-2 border-l-red-500 py-0.5 pl-3 dark:border-l-red-400",children:o.jsxs("details",{className:"group/details relative",children:[o.jsxs("summary",{className:"flex cursor-pointer list-none items-center gap-1.5 text-xs font-medium text-red-600 transition-colors hover:text-red-700 dark:text-red-300 dark:hover:text-red-200 [&::-webkit-details-marker]:hidden",children:[o.jsx("svg",{className:"h-3.5 w-3.5 transition-transform group-open/details:rotate-90",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})}),o.jsx("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})}),o.jsx("span",{children:q?m("toolUseError.title",{defaultValue:"Tool error"}):m("messageTypes.error",{defaultValue:"Error"})}),e.toolName?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-red-400/80 dark:text-red-300/60",children:"/"}),o.jsx("span",{className:"font-normal text-red-500 dark:text-red-300/90",children:e.toolName})]}):null]}),o.jsxs("div",{className:"mt-1.5 pl-[18px] text-xs leading-5 text-gray-700 dark:text-gray-300",children:[o.jsx(lr,{className:"prose prose-sm prose-red max-w-none dark:prose-invert",children:A}),o.jsxs("div",{className:"mt-3 border-t border-red-200/60 pt-3 dark:border-red-800/60",children:[o.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[o.jsx("button",{type:"button",onClick:()=>{if(!i)return;i(k)?.success?v("granted"):v("error")},disabled:k.isAllowed||y==="granted",className:`inline-flex items-center gap-2 rounded-md border px-3 py-1.5 text-xs font-medium transition-colors ${k.isAllowed||y==="granted"?"cursor-default border-green-300/70 bg-green-100 text-green-800 dark:border-green-800/60 dark:bg-green-900/30 dark:text-green-200":"border-red-300/70 bg-white/80 text-red-700 hover:bg-white dark:border-red-800/60 dark:bg-gray-900/40 dark:text-red-200 dark:hover:bg-gray-900/70"}`,children:k.isAllowed||y==="granted"?m("permissions.added"):m("permissions.grant",{tool:k.toolName})}),a&&o.jsx("button",{type:"button",onClick:K=>{K.stopPropagation(),typeof window<"u"&&window.openSettings?window.openSettings("permissions"):a()},className:"text-xs text-red-700 underline hover:text-red-800 dark:text-red-200 dark:hover:text-red-100",children:m("permissions.openSettings")})]}),o.jsx("div",{className:"mt-2 text-xs text-red-700/90 dark:text-red-200/80",children:m("permissions.addTo",{entry:k.entry})}),y==="error"&&o.jsx("div",{className:"mt-2 text-xs text-red-700 dark:text-red-200",children:m("permissions.error")}),(k.isAllowed||y==="granted")&&o.jsx("div",{className:"mt-2 text-xs text-green-700 dark:text-green-200",children:m("permissions.retry")})]})]})]})}):o.jsx(MA,{toolName:e.toolName||"UnknownTool",toolId:e.toolId,title:m("toolUseError.title",{defaultValue:"Tool error"}),defaultOpen:!1,toolCategory:"default",autoExpandable:!1,children:o.jsx(lr,{className:"prose prose-sm max-w-none dark:prose-invert",children:A})})})()}):o.jsx("div",{id:`tool-result-${e.toolId}`,className:"scroll-mt-4",children:o.jsx(Vb,{toolName:e.toolName||"UnknownTool",toolInput:e.toolInput,toolResult:e.toolResult,toolId:e.toolId,mode:"result",onFileOpen:r,createDiff:n,selectedProject:u,autoExpandTools:s,isSubagentContainer:e.isSubagentContainer,subagentState:e.subagentState})}))]}):e.isInteractivePrompt?o.jsx("div",{className:"rounded-lg border border-amber-200 bg-amber-50 p-4 dark:border-amber-800 dark:bg-amber-900/20",children:o.jsxs("div",{className:"flex items-start gap-3",children:[o.jsx("div",{className:"mt-0.5 flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-full bg-amber-500",children:o.jsx("svg",{className:"h-5 w-5 text-white",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})}),o.jsxs("div",{className:"flex-1",children:[o.jsx("h4",{className:"mb-3 text-base font-semibold text-amber-900 dark:text-amber-100",children:m("interactive.title")}),(()=>{const q=E.split(` +`).filter(V=>V.trim()),A=q.find(V=>V.includes("?"))||q[0]||"",K=[];return q.forEach(V=>{const L=V.match(/[❯\s]*(\d+)\.\s+(.+)/);if(L){const le=V.includes("❯");K.push({number:L[1],text:L[2].trim(),isSelected:le})}}),o.jsxs(o.Fragment,{children:[o.jsx("p",{className:"mb-4 text-sm text-amber-800 dark:text-amber-200",children:A}),o.jsx("div",{className:"mb-4 space-y-2",children:K.map(V=>o.jsx("button",{className:`w-full rounded-lg border-2 px-4 py-3 text-left transition-all ${V.isSelected?"border-amber-600 bg-amber-600 text-white shadow-md dark:border-amber-700 dark:bg-amber-700":"border-amber-300 bg-white text-amber-900 dark:border-amber-700 dark:bg-gray-800 dark:text-amber-100"} cursor-not-allowed opacity-75`,disabled:!0,children:o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsx("span",{className:`flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-full text-sm font-bold ${V.isSelected?"bg-white/20":"bg-amber-100 dark:bg-amber-800/50"}`,children:V.number}),o.jsx("span",{className:"flex-1 text-sm font-medium sm:text-base",children:V.text}),V.isSelected&&o.jsx("span",{className:"text-lg",children:"❯"})]})},V.number))}),o.jsxs("div",{className:"rounded-lg bg-amber-100 p-3 dark:bg-amber-800/30",children:[o.jsx("p",{className:"mb-1 text-sm font-medium text-amber-900 dark:text-amber-100",children:m("interactive.waiting")}),o.jsx("p",{className:"text-xs text-amber-800 dark:text-amber-200",children:m("interactive.instruction")})]})]})})()]})]})}):e.isThinking?o.jsx("div",{className:"text-sm text-gray-700 dark:text-gray-300",children:o.jsxs("details",{className:"group",children:[o.jsxs("summary",{className:"flex cursor-pointer items-center gap-2 font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200",children:[o.jsx("svg",{className:"h-3 w-3 transition-transform group-open:rotate-90",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})}),o.jsx("span",{children:m("thinking.emoji")})]}),o.jsx("div",{className:"mt-2 border-l-2 border-gray-300 pl-4 text-sm text-gray-600 dark:border-gray-600 dark:text-gray-400",children:o.jsx(lr,{className:"prose prose-sm prose-gray max-w-none dark:prose-invert",children:E})})]})}):o.jsxs("div",{className:"text-sm text-gray-700 dark:text-gray-300",children:[c&&e.reasoning&&o.jsxs("details",{className:"mb-3",children:[o.jsx("summary",{className:"cursor-pointer font-medium text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200",children:m("thinking.emoji")}),o.jsx("div",{className:"mt-2 border-l-2 border-gray-300 pl-4 text-sm italic text-gray-600 dark:border-gray-600 dark:text-gray-400",children:o.jsx("div",{className:"whitespace-pre-wrap",children:Pi(e.reasoning)})})]}),(()=>{const q=z,A=q.trim();if((A.startsWith("{")||A.startsWith("["))&&(A.endsWith("}")||A.endsWith("]")))try{const K=JSON.parse(A),V=JSON.stringify(K,null,2);return o.jsxs("div",{className:"my-2",children:[o.jsxs("div",{className:"mb-2 flex items-center gap-2 text-sm text-gray-600 dark:text-gray-400",children:[o.jsx("svg",{className:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 21h10a2 2 0 002-2V9.414a1 1 0 00-.293-.707l-5.414-5.414A1 1 0 0012.586 3H7a2 2 0 00-2 2v14a2 2 0 002 2z"})}),o.jsx("span",{className:"font-medium",children:m("json.response")})]}),o.jsx("div",{className:"overflow-hidden rounded-lg border border-gray-600/30 bg-gray-800 dark:border-gray-700 dark:bg-gray-900",children:o.jsx("pre",{className:"overflow-x-auto p-4",children:o.jsx("code",{className:"block whitespace-pre font-mono text-sm text-gray-100 dark:text-gray-200",children:V})})})]})}catch{}return e.type==="assistant"?o.jsx(lr,{className:"prose prose-sm prose-gray max-w-none dark:prose-invert",children:q}):o.jsx("div",{className:"whitespace-pre-wrap",children:q})})()]}),(B||!f)&&o.jsxs("div",{className:"mt-1 flex w-full items-center gap-2 text-[11px] text-gray-400 dark:text-gray-500",children:[B&&o.jsx(MN,{content:M,messageType:"assistant"}),!f&&o.jsx("span",{children:$})]})]})]}),j?o.jsx(Dy,{images:j.images,startIndex:j.index,onClose:O}):null]})});function S6({label:e,className:t=""}){return o.jsx("div",{role:"status","aria-live":"polite",className:`mb-3 border-b border-neutral-200/70 pb-1.5 text-[14px] leading-relaxed text-neutral-500 dark:border-neutral-800/80 dark:text-neutral-400 ${t}`,children:o.jsx("span",{className:"tabular-nums",children:e})})}function LN({step:e,children:t,compact:n=!1,defaultExpanded:r=!1,expanded:a,onExpandedChange:i,className:s=""}){const[l,c]=h.useState(r),u=a??l,d=x=>{const k=typeof x=="function"?x(u):x;a===void 0&&c(k),i?.(k)},p=My(e),m=e.title||e.toolName||"Working",f=e.state!=="failed"&&e.state!=="completed"&&e.state!=="cancelled",g=!!t,b=o.jsxs(o.Fragment,{children:[o.jsx(p,{className:`mt-[0.28rem] h-3.5 w-3.5 shrink-0 ${Ly(e)} ${p===pt&&f?"animate-spin":""}`,strokeWidth:1.8}),o.jsxs("div",{className:"min-w-0",children:[o.jsx("div",{className:"truncate",children:m}),e.detail?o.jsx("div",{className:"truncate text-[12px] leading-5 text-neutral-400/80 dark:text-neutral-500/80",children:e.detail}):null]}),g?u?o.jsx(Sn,{className:"mt-1 h-4 w-4 shrink-0 text-neutral-400 dark:text-neutral-500",strokeWidth:1.8}):o.jsx(qn,{className:"mt-1 h-4 w-4 shrink-0 text-neutral-400 dark:text-neutral-500",strokeWidth:1.8}):null]});return o.jsxs("div",{role:"status","aria-live":"polite",className:`process-live-status ${n?"py-0":"pb-1"} text-[14px] leading-relaxed text-neutral-400 dark:text-neutral-500 ${s}`,children:[g?o.jsx("button",{type:"button","aria-expanded":u,onClick:()=>d(x=>!x),className:`group inline-flex min-w-0 max-w-full items-start gap-2 text-left transition hover:text-neutral-600 dark:hover:text-neutral-300 ${f?"animate-pulse":""}`,children:b}):o.jsx("div",{className:`inline-flex min-w-0 max-w-full items-start gap-2 ${f?"animate-pulse":""}`,children:b}),u&&g?o.jsx("div",{className:"mt-1.5 space-y-1.5 pl-5",children:t}):null]})}function My(e){const t=`${e.phase||""} ${e.toolName||""} ${e.title||""}`.toLowerCase();return e.state==="failed"||e.severity==="error"||e.severity==="warning"?ka:e.phase==="rag"||/search|grep|glob|find|检索|搜索/.test(t)?Ic:/edit|write|patch|update|create|modify|修改|编辑|写入|创建/.test(t)?ox:/bash|shell|terminal|command|exec|run|命令|运行/.test(t)?Or:e.phase==="tool"||e.phase==="subtask"||e.toolName?rD:e.state==="completed"?vr:e.state==="running"?pt:nx}function Ly(e){return e.state==="failed"||e.severity==="error"?"text-amber-600 dark:text-amber-400":e.severity==="warning"?"text-amber-500 dark:text-amber-400":(e.state==="running","text-neutral-400 dark:text-neutral-500")}function PN({step:e}){const t=My(e),n=e.state==="running",r=e.title||e.toolName||"Step";return o.jsxs("div",{className:`inline-flex min-w-0 max-w-full items-start gap-2 text-[14px] leading-relaxed text-neutral-400 dark:text-neutral-500 ${n?"animate-pulse":""}`,children:[o.jsx(t,{className:`mt-[0.28rem] h-3.5 w-3.5 shrink-0 ${Ly(e)} ${t===pt&&n?"animate-spin":""}`,strokeWidth:1.9}),o.jsxs("div",{className:"min-w-0",children:[o.jsx("div",{className:"truncate",children:r}),e.detail?o.jsx("div",{className:"truncate text-[12px] leading-5 text-neutral-400/80 dark:text-neutral-500/80",children:e.detail}):null]})]})}function oae({label:e,collapsedDetail:t,statusLabel:n,status:r="completed",metrics:a=[],steps:i=[],children:s,defaultExpanded:l=!1,expanded:c,onExpandedChange:u,live:d=!1,className:p=""}){const[m,f]=h.useState(l),g=c??m,b=w=>{const T=typeof w=="function"?w(g):w;c===void 0&&f(T),u?.(T)},x=!!n||a.length>0||i.length>0||!!s,k=!g&&t,y=n||a.length>0?{id:"process-status",title:n,detail:a.map(w=>w.label).join(", "),state:r}:null,v=i[0]||y||{title:e,state:r},E=My(v),N=r==="running";return o.jsxs("div",{role:d?"status":void 0,"aria-live":d?"polite":void 0,className:`process-trace py-0 ${p}`,children:[o.jsxs("button",{type:"button","aria-expanded":x?g:void 0,onClick:()=>{x&&b(w=>!w)},disabled:!x,className:`group inline-flex min-w-0 max-w-full items-center gap-2 text-left text-[14px] leading-relaxed text-neutral-400 transition hover:text-neutral-600 disabled:cursor-default disabled:hover:text-neutral-400 dark:text-neutral-500 dark:hover:text-neutral-300 dark:disabled:hover:text-neutral-500 ${N?"animate-pulse":""}`,children:[o.jsx(E,{className:`h-3.5 w-3.5 shrink-0 ${Ly(v)} ${E===pt&&N?"animate-spin":""}`,strokeWidth:1.8}),o.jsx("span",{className:"min-w-0 truncate tabular-nums",children:e}),k?o.jsx("span",{className:"min-w-0 shrink truncate text-neutral-400/75 dark:text-neutral-500/75",children:k}):null,x?g?o.jsx(Sn,{className:"h-4 w-4 shrink-0 text-neutral-400 transition group-hover:text-neutral-500 dark:text-neutral-500 dark:group-hover:text-neutral-300",strokeWidth:1.8}):o.jsx(qn,{className:"h-4 w-4 shrink-0 text-neutral-400 transition group-hover:text-neutral-500 dark:text-neutral-500 dark:group-hover:text-neutral-300",strokeWidth:1.8}):null]}),g?o.jsxs("div",{className:"mt-1.5 space-y-1.5 pl-5",children:[y?o.jsx(PN,{step:y}):null,i.map((w,T)=>o.jsx(PN,{step:w},w.id||`${w.title||"process-step"}-${T}`)),s?o.jsx("div",{className:"space-y-1.5 pt-0.5",children:s}):null]}):null]})}function Py(e){const t=Math.max(0,Math.round((Number(e)||0)/1e3));if(t<60)return`${t}s`;const n=Math.floor(t/60),r=t%60;return r?`${n}m ${r}s`:`${n}m`}const E6=new Set(["AskUserQuestion","ExitPlanMode","ExitPlanModeV2","exit_plan_mode"]);function ea(e){if(!e)return null;const t=Date.parse(String(e));return Number.isFinite(t)?t:null}function lae(e,t){return e.runId||e.id||`${e.startedAt||""}-${e.endedAt||""}-${t}`}function FN(e,t){const n=e?.id||e?.toolId||e?.activityId||e?.runId;return String(n||t)}function C6(e,t,n,r){const a=FN(e[t.start],`turn-${t.start}`),i=FN(n,`message-${r}`);return`process-segment-${a}-${i}`}function N6(e){if(e.length===0)return[];const t=[];return e.forEach((n,r)=>{n.type==="user"&&t.push(r)}),(t.length===0||t[0]>0)&&t.unshift(0),t.map((n,r)=>({start:n,end:t[r+1]??e.length,summary:null}))}function cae(e,t){return e.findIndex(n=>t>=n.start&&tn)break}}return r}function dae(e){return ea(e.startedAt)??ea(e.timestamp)??ea(e.endedAt)}function BN(e){return ea(e.endedAt)??ea(e.timestamp)??ea(e.startedAt)??0}function pae(e,t){if(!t)return!0;const n=BN(e.message),r=BN(t.message);return n!==r?n>r:e.originalIndex>t.originalIndex}function mae(e,t){const n=new Map;e.forEach((a,i)=>{a.isAgentActivitySummary&&n.set(lae(a,i),{message:a,originalIndex:i})});const r=Array.from(n.values()).sort((a,i)=>a.originalIndex-i.originalIndex);for(const a of r){const i=dae(a.message),s=i==null?-1:uae(e,t,i),l=s>=0?s:cae(t,a.originalIndex);l<0||pae(a,t[l].summary)&&(t[l].summary=a)}}function fae(e){if(!e)return{};if(typeof e=="object"&&!Array.isArray(e))return e;if(typeof e!="string")return{};try{const t=JSON.parse(e);return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{return{}}}function zs(e,t){const n=fae(e.toolInput)[t];return typeof n=="string"?n:""}function Wb(e){return zs(e,"file_path")||zs(e,"path")||zs(e,"pattern")||zs(e,"query")||zs(e,"command")||""}function hae(e){return e?e.replace(/\\/g,"/").split("/").filter(Boolean).pop()||e:""}function gae(e){return!!(e.toolResult?.isError||e.type==="error")}function T6(e){if(!e.toolResult?.isError||yA(e))return!1;const t=typeof e.toolResult.errorCode=="string"?e.toolResult.errorCode:"";if(t==="permission_denied"||t==="permission_required"||t==="permission_cancelled")return!0;const r=(typeof e.toolResult.content=="string"?e.toolResult.content:"").toLowerCase();return r.includes("permission")&&(r.includes("denied")||r.includes("not allowed")||r.includes("requires")||r.includes("grant"))}function bae(e){if(!e.isToolUse)return!1;const t=String(e.toolName||"");return E6.has(t)}function Po(e){return e.isAgentActivity||e.isAgentActivitySummary||e.type==="user"||e.type==="error"||e.isInteractivePrompt||bae(e)||T6(e)?!1:!!(e.isToolUse||e.isSubagentContainer||e.isTaskNotification||e.isCompactBoundary||e.isThinking||e.type==="tool")}function A6(e){if(!e.isToolUse||e.isSubagentContainer||T6(e))return!1;const t=String(e.toolName||"");return!(!t||t==="Task"||E6.has(t))}function Fy(e){return e.type==="assistant"&&!e.isAgentActivitySummary&&!e.isAgentActivity&&!e.isToolUse&&!e.isInteractivePrompt&&!e.isSubagentContainer&&!e.isTaskNotification&&!e.isThinking&&typeof e.content=="string"&&e.content.trim().length>0}function xae(e){return Po(e)}function By(e){if(e.isCompactBoundary)return"compact";if(e.isThinking)return"thinking";if(e.isSubagentContainer||e.toolName==="Task"||e.isTaskNotification)return"subagent";const t=String(e.toolName||"").toLowerCase();return/edit|write|applypatch|patch|update|create|modify|multi_edit|multiedit/.test(t)?"edit":/read|cat|view/.test(t)?"read":/grep|glob|search|websearch|rag|find|rg/.test(t)||e.phase==="rag"?"search":/bash|shell|terminal|exec|command|run/.test(t)?"command":"tool"}function vc(e){const t=e.map(n=>n.trim()).filter(Boolean);return t.length>0?new Set(t).size:e.length}function I6(e){const t={editedTargets:[],readTargets:[],searchCount:0,commandCount:0,subagentCount:0,compactCount:0,thinkingCount:0,otherToolCount:0,toolCallCount:0,toolErrorCount:0};for(const n of e){(n.isToolUse||n.toolName)&&(t.toolCallCount+=1),gae(n)&&(t.toolErrorCount+=1);const r=By(n);r==="edit"?t.editedTargets.push(Wb(n)):r==="read"?t.readTargets.push(Wb(n)):r==="search"?t.searchCount+=1:r==="command"?t.commandCount+=1:r==="subagent"?t.subagentCount+=1:r==="compact"?t.compactCount+=1:r==="thinking"?t.thinkingCount+=1:t.otherToolCount+=1}return t}function R6(e,t){const n=ea(e),r=ea(t);return n==null||r==null?0:Math.max(0,r-n)}function _6(e,t){for(let n=t.end-1;n>=t.start;n-=1){const r=e[n];if(!(!r||r.isAgentActivity||r.isAgentActivitySummary))return n}return t.end-1}function yae(e,t){const n=t.summary?.message.durationMs;if(typeof n=="number"&&Number.isFinite(n))return Math.max(0,n);const r=t.summary?.message.startedAt,a=t.summary?.message.endedAt,i=_6(e,t),s=r??e[t.start]?.timestamp,l=a??e[i]?.timestamp,c=R6(s,l);return c>0?c:null}function vae(e,t){if(t.summary)return!0;for(let n=t.start;n{const i=e[a];return typeof i=="number"&&Number.isFinite(i)&&i>0})||Array.isArray(e.keySteps)&&e.keySteps.length>0?!0:String(e.state||"completed")!=="completed"}function wae(e,t,n,r,a,i,s){const l=e[n],c=I6(r),u=e[a]?.timestamp??e[t.start]?.timestamp,d=e[i]?.timestamp??l?.timestamp;return{id:`process-summary-${s}`,type:"system",content:"",timestamp:d||new Date().toISOString(),isAgentActivitySummary:!0,startedAt:u?String(u):"",endedAt:d?String(d):"",durationMs:R6(u,d),state:c.toolErrorCount>0?"failed":"completed",toolCallCount:c.toolCallCount,toolErrorCount:c.toolErrorCount,ragSearchCount:c.searchCount,editedFileCount:vc(c.editedTargets),exploredFileCount:vc(c.readTargets),commandCount:c.commandCount,subagentCount:c.subagentCount,compactCount:c.compactCount,thinkingCount:c.thinkingCount,otherToolCount:c.otherToolCount,keySteps:[]}}function Sae(e){const t=[];for(const n of e){const r=n.toolResult?.images??[];if(Array.isArray(r))for(const a of r)!a||typeof a.data!="string"||a.data.length===0||t.push({data:a.data,name:typeof a.name=="string"&&a.name.length>0?a.name:void 0,mimeType:typeof a.mimeType=="string"?a.mimeType:void 0,source:"tool_result",toolId:typeof n.toolId=="string"?n.toolId:void 0})}return t}function Eae(e,t,n){for(let r=n;r{if(i.length===0||a<0){a=-1,i=[];return}const c=l-1,u=i[0],d=r==null?Eae(e,t,l):null;n.push({id:C6(e,t,u,a),startIndex:a,endIndex:c,messages:i,detailMessages:i.filter(A6),previousHostIndex:r,nextHostIndex:d}),a=-1,i=[]};for(let l=t.start;l{if(c.isAgentActivitySummary)return;if(l&&u>=l.start&&u{const d=u===s.length-1;if(t.isAssistantWorking&&d)return;const p=yae(e,c);if(p!=null&&vae(e,c)){const f={id:`completed-run-${c.start}-${c.end}`,durationMs:p,startIndex:c.start,endIndex:_6(e,c)},g=e[c.start],b=r.get(c.start);if(g?.type==="user"&&b)b.afterRunAttachment=f;else{const x=n.find(k=>k.originalIndex>=c.start&&k.originalIndex!i.has(c.originalIndex)).sort((c,u)=>c.originalIndex-u.originalIndex)}function Tae(e){return j6(e,{isAssistantWorking:!0}).flatMap(t=>t.detailMessages)}function j6(e,t={}){const n=N6(e),r=n[n.length-1];if(!r)return[];const a=[];let i=r.start,s=-1,l=[];const c=u=>{if(l.length===0||i<0){s=-1,l=[];return}const d=l[0];a.push({id:C6(e,r,d,s),afterOriginalIndex:i,beforeOriginalIndex:u,startIndex:s,endIndex:u??e.length,messages:l,detailMessages:l.filter(A6)}),s=-1,l=[]};for(let u=r.start;u{const p=d===a.length-1,m=u.beforeOriginalIndex==null;return{...u,isRunning:!!(t.isAssistantWorking&&p&&m)}})}function Aae(e,t){return t!=="plan"?!0:!e.messages.every(n=>n.isCompactBoundary)}function Kn(e,t){const n=e[t];return typeof n=="number"&&Number.isFinite(n)?Math.max(0,n):0}function O6(e,t){const n=Array.isArray(e)?I6(e):{editedTargets:[],readTargets:[],searchCount:Kn(e,"ragSearchCount"),commandCount:Kn(e,"commandCount"),subagentCount:Kn(e,"subagentCount"),compactCount:Kn(e,"compactCount"),thinkingCount:Kn(e,"thinkingCount"),otherToolCount:Kn(e,"otherToolCount"),toolCallCount:Kn(e,"toolCallCount"),toolErrorCount:Kn(e,"toolErrorCount")},r=Array.isArray(e)?vc(n.editedTargets):Kn(e,"editedFileCount"),a=Array.isArray(e)?vc(n.readTargets):Kn(e,"exploredFileCount"),i=[];return r>0&&i.push(t("process.live.editedFiles",{count:r,defaultValue:`Edited ${r} ${r===1?"file":"files"}`})),a>0&&i.push(t("process.live.exploredFiles",{count:a,defaultValue:`Explored ${a} ${a===1?"file":"files"}`})),n.searchCount>0&&i.push(t("process.live.searches",{count:n.searchCount,defaultValue:`Searched ${n.searchCount} ${n.searchCount===1?"time":"times"}`})),n.commandCount>0&&i.push(t("process.live.commands",{count:n.commandCount,defaultValue:`Ran ${n.commandCount} ${n.commandCount===1?"command":"commands"}`})),n.subagentCount>0&&i.push(t("process.live.subagentCompleted",{defaultValue:"Subagent finished"})),n.compactCount>0&&i.push(t("process.live.compactCompleted",{defaultValue:"Compacted context"})),n.thinkingCount>0&&i.length===0&&i.push(t("process.live.thoughtCompleted",{defaultValue:"Thought through next step"})),i.length===0&&n.otherToolCount>0&&i.push(t("process.live.toolCalls",{count:n.otherToolCount,defaultValue:`Used ${n.otherToolCount} ${n.otherToolCount===1?"tool":"tools"}`})),n.toolErrorCount>0&&i.push(t("process.live.errors",{count:n.toolErrorCount,defaultValue:`${n.toolErrorCount} ${n.toolErrorCount===1?"error":"errors"}`})),i.join(" ")}function Iae(e,t){const n=[...e.messages].reverse().find(i=>Po(i));if(!n)return t("working.processing",{defaultValue:"Processing"});const r=By(n),a=hae(Wb(n));return r==="edit"?a?t("process.live.runningEditTarget",{target:a,defaultValue:`Editing ${a}`}):t("process.live.runningEdit",{defaultValue:"Editing file"}):r==="read"?a?t("process.live.runningReadTarget",{target:a,defaultValue:`Reading ${a}`}):t("process.live.runningRead",{defaultValue:"Reading file"}):r==="search"?a?t("process.live.runningSearchTarget",{target:a,defaultValue:`Searching ${a}`}):t("process.live.runningSearch",{defaultValue:"Searching"}):r==="command"?a?t("process.live.runningCommandTarget",{target:a,defaultValue:`Running ${a}`}):t("process.live.runningCommand",{defaultValue:"Running command"}):r==="subagent"?t("process.live.runningSubagent",{defaultValue:"Running subagent"}):r==="compact"?t("working.compacting",{defaultValue:"Compacting context..."}):r==="thinking"?t("working.thinking",{defaultValue:"Thinking"}):n.title||n.content||n.toolName||t("working.processing",{defaultValue:"Processing"})}function Rae(e,t,n){const r=String(n?.phase||""),a=n?.title&&!["generation","thinking","permission"].includes(r);if(e.isRunning&&a)return{...n,id:e.id,state:n.state||"running"};const i=e.isRunning?Iae(e,t):O6(e.messages,t),s=e.messages[e.messages.length-1],l=s?By(s):"tool";return{id:e.id,title:i,state:e.isRunning?"running":"completed",phase:l==="search"?"rag":l==="command"?"tool":s?.phase,toolName:s?.toolName}}function _ae(e,t){const n=String(e.state||"completed"),r=Py(typeof e.durationMs=="number"?e.durationMs:0),a=O6(e,t)||t("process.summary.processed",{duration:r,defaultValue:`Processed ${r}`}),i=Kn(e,"toolCallCount"),s=Kn(e,"ragSearchCount"),l=Kn(e,"toolErrorCount"),c=n==="failed"&&l>0?"completed":n,u=[i>0?{key:"toolCalls",label:t("process.metrics.toolCalls",{count:i,defaultValue:"{{count}} tool calls"})}:null,s>0?{key:"searches",label:t("process.metrics.searches",{count:s,defaultValue:"{{count}} searches"})}:null,l>0?{key:"errors",label:t("process.metrics.errors",{count:l,defaultValue:"{{count}} errors"})}:null].filter(p=>!!p),d=Array.isArray(e.keySteps)?e.keySteps.filter(p=>!!p&&typeof p=="object").map(p=>({id:typeof p.activityId=="string"?p.activityId:typeof p.id=="string"?p.id:void 0,title:typeof p.title=="string"?p.title:void 0,detail:typeof p.detail=="string"?p.detail:void 0,state:typeof p.state=="string"?p.state:void 0,severity:typeof p.severity=="string"?p.severity:void 0,phase:typeof p.phase=="string"?p.phase:void 0,toolName:typeof p.toolName=="string"?p.toolName:void 0})):[];return{label:a,collapsedDetail:"",statusLabel:c==="failed"?t("process.summary.failed",{defaultValue:"Process failed"}):c==="cancelled"?t("process.summary.cancelled",{defaultValue:"Process stopped"}):t("process.summary.completed",{defaultValue:"Process completed"}),status:c,metrics:u,steps:d}}const jae={"application/vnd.openxmlformats-officedocument.wordprocessingml.document":"DOCX","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"XLSX","application/vnd.openxmlformats-officedocument.presentationml.presentation":"PPTX","application/msword":"DOC","application/vnd.ms-excel":"XLS","application/vnd.ms-powerpoint":"PPT","application/pdf":"PDF","application/zip":"ZIP","text/plain":"TXT","text/csv":"CSV","text/markdown":"MD","application/json":"JSON"},D6=(e,t)=>{const n=String(e||"").split(".").pop()?.toUpperCase();if(n&&n!==String(e||"").toUpperCase())return n;if(t){const r=jae[t.toLowerCase()];if(r)return r;if(t.includes("/")){const a=t.split("/").pop()||"";if(a.length<=10&&!a.includes("."))return a.toUpperCase()}}return"FILE"},Oae=(e,t)=>{const n=D6(e,t).toLowerCase();return n==="pdf"?"bg-red-500 text-white":n==="doc"||n==="docx"?"bg-blue-500 text-white":n==="xls"||n==="xlsx"||n==="csv"?"bg-emerald-500 text-white":n==="ppt"||n==="pptx"?"bg-orange-500 text-white":"bg-neutral-500 text-white"},Dae=e=>{if(e.isToolUse||e.isInteractivePrompt||e.isSubagentContainer||e.isTaskNotification)return!0;const t=e.type;return t!=="user"&&t!=="assistant"&&t!=="error"};function M6({message:e,prevMessage:t,nextMessage:n,beforeProcessAttachments:r=[],afterProcessAttachments:a=[],provider:i,selectedProject:s,createDiff:l,onFileOpen:c,onShowSettings:u,onGrantSessionToolPermission:d,autoExpandTools:p,showRawParameters:m,showThinking:f,isProcessExpanded:g,onProcessExpandedChange:b}){const{t:x}=Je("chat"),k=h.useMemo(()=>Dae(e),[e]),y=h.useMemo(()=>Mx(String(e.content??"")),[e.content]),v=h.useMemo(()=>Array.isArray(e.images)?e.images.filter(O=>O&&typeof O.data=="string"):[],[e.images]),E=h.useMemo(()=>Array.isArray(e.attachments)?e.attachments.filter(O=>O&&typeof O.name=="string"):[],[e.attachments]);if(e.isAgentActivitySummary)return o.jsx(L6,{message:e,processKey:e.id||e.runId||e.activityId,isProcessExpanded:g,onProcessExpandedChange:b,t:x});const N=O=>o.jsx(Lae,{attachment:O,renderDetail:(I,z)=>o.jsx(M6,{message:I,prevMessage:z>0?O.processDetailMessages[z-1]:null,provider:i,selectedProject:s,createDiff:l,onFileOpen:c,onShowSettings:u,onGrantSessionToolPermission:d,autoExpandTools:p,showRawParameters:m,showThinking:f,isProcessExpanded:g,onProcessExpandedChange:b},I.id||I.toolId||`${O.id||"process-detail"}-${z}`),isProcessExpanded:g,onProcessExpandedChange:b,t:x},O.id),w=O=>r.length===0&&a.length===0?O:o.jsxs("div",{className:"flex min-w-0 flex-col gap-2",children:[r.map(N),O,a.map(N)]});if(k)return w(o.jsx("div",{className:"ui-v2-legacy-row",children:o.jsx(sae,{message:e,prevMessage:t,createDiff:l,onFileOpen:c,onShowSettings:u,onGrantSessionToolPermission:d,autoExpandTools:p,showRawParameters:m,showThinking:f,selectedProject:s??null,provider:i,hideHeader:!0})}));const T=e.type==="user",j=e.type==="error",[_,C]=h.useState(null);if(T){const O=v.map(I=>({data:I.data,name:I.name,mimeType:I.mimeType}));return w(o.jsxs("div",{className:"flex w-full justify-end",children:[o.jsx("div",{className:"min-w-0 max-w-[78%] overflow-hidden rounded-[22px] bg-neutral-100 px-4 py-2.5 text-[14px] leading-relaxed text-neutral-900 dark:bg-neutral-800 dark:text-neutral-100",children:e.isStreaming&&!y?o.jsx("span",{className:"inline-block h-4 w-2 animate-pulse bg-neutral-400 dark:bg-neutral-500"}):o.jsxs(o.Fragment,{children:[E.length>0?o.jsx("div",{className:y?"mb-2 grid grid-cols-1 gap-2":"grid grid-cols-1 gap-2",children:E.map((I,z)=>o.jsxs("div",{className:"flex min-w-0 items-center gap-3 rounded-2xl bg-white/85 p-2.5 pr-3 dark:bg-neutral-900/45",children:[o.jsx("div",{className:`flex h-10 w-10 shrink-0 items-center justify-center rounded-xl ${Oae(I.name,I.mimeType)}`,children:o.jsx(yr,{className:"h-5 w-5",strokeWidth:2})}),o.jsxs("div",{className:"min-w-0 text-left",children:[o.jsx("div",{className:"truncate text-[13px] font-semibold text-neutral-900 dark:text-neutral-100",children:I.name}),o.jsx("div",{className:"mt-0.5 text-[11px] font-medium uppercase text-neutral-500 dark:text-neutral-400",children:D6(I.name,I.mimeType)})]})]},`${I.name||"attachment"}-${z}`))}):null,v.length>0?o.jsx("div",{className:y?"mb-2 grid grid-cols-1 gap-2":"grid grid-cols-1 gap-2",children:v.map((I,z)=>o.jsx("button",{type:"button",onClick:()=>C(z),className:"block w-72 max-w-full overflow-hidden rounded-xl border border-neutral-200 bg-white/70 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 dark:border-neutral-700 dark:bg-neutral-900/40","aria-label":I.name?`Preview ${I.name}`:"Preview image",children:o.jsx("img",{src:I.data,alt:I.name||"Uploaded image",className:"block h-auto max-h-64 w-full cursor-zoom-in object-contain transition-opacity hover:opacity-90",loading:"lazy"})},`${I.name||"image"}-${z}`))}):null,y?o.jsx(lr,{className:"min-w-0 break-words [overflow-wrap:anywhere]",children:y}):null]})}),_!==null&&O.length>0?o.jsx(Dy,{images:O,startIndex:_,onClose:()=>C(null)}):null]}))}return j?w(o.jsxs("div",{className:"flex gap-3",children:[o.jsx("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-red-500/10 text-red-500",children:o.jsx(co,{className:"h-3.5 w-3.5",strokeWidth:2})}),o.jsx("div",{className:"min-w-0 flex-1 pt-0.5 text-[14px] leading-relaxed text-red-500",children:o.jsx(lr,{children:y})})]})):e.isThinking?w(o.jsx("div",{className:"min-w-0 text-[14px] leading-relaxed",children:o.jsxs("details",{className:"group",children:[o.jsxs("summary",{className:"flex cursor-pointer select-none items-center gap-1.5 text-[13px] font-medium text-neutral-500 hover:text-neutral-700 dark:text-neutral-400 dark:hover:text-neutral-200",children:[o.jsx(qn,{className:"h-3.5 w-3.5 transition-transform group-open:rotate-90",strokeWidth:2}),o.jsx("span",{children:x("thinking.title",{defaultValue:"Thinking..."})})]}),o.jsx("div",{className:"mt-1.5 border-l-2 border-neutral-300 pl-3 text-[13px] text-neutral-500 dark:border-neutral-700 dark:text-neutral-400",children:o.jsx(lr,{children:y})})]})})):w(o.jsx("div",{className:"min-w-0 text-[14px] leading-relaxed text-neutral-900 dark:text-neutral-100",children:e.isStreaming&&!y?o.jsx("span",{className:"inline-block h-4 w-2 animate-pulse bg-neutral-400 dark:bg-neutral-500"}):o.jsxs(o.Fragment,{children:[o.jsx(lr,{className:"prose prose-sm prose-neutral max-w-none dark:prose-invert prose-headings:mb-2 prose-headings:mt-4 prose-h2:text-lg prose-h3:text-base prose-p:my-2 prose-pre:my-3 prose-ol:my-2 prose-ul:my-2 prose-table:my-0 prose-hr:my-4",children:y}),y.trim()&&(!n||n.type==="user"||n.type==="error")?o.jsx("div",{className:"mt-1.5 flex justify-end",children:o.jsx(Mae,{content:y})}):null]})}))}function Mae({content:e}){const[t,n]=h.useState(!1),r=h.useRef(null),a=async()=>{await ta(e)&&(n(!0),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>n(!1),2e3))};return o.jsx("button",{type:"button",onClick:a,className:"rounded p-1 text-neutral-400 transition-colors hover:text-neutral-600 dark:text-neutral-500 dark:hover:text-neutral-300","aria-label":t?"Copied":"Copy",title:t?"Copied":"Copy",children:t?o.jsx(Er,{className:"h-3.5 w-3.5",strokeWidth:2}):o.jsx(c8,{className:"h-3.5 w-3.5",strokeWidth:2})})}const UN=h.memo(M6);function L6({message:e,processKey:t,detailMessages:n=[],renderDetailMessage:r,isProcessExpanded:a,onProcessExpandedChange:i,t:s}){const l=h.useMemo(()=>_ae(e,s),[e,s]),c=n.length>0&&r?[]:l.steps,u=t||e.id||e.runId||e.activityId,d=u?a?.(u,!1):void 0;return o.jsx(oae,{label:l.label,collapsedDetail:l.collapsedDetail,statusLabel:l.statusLabel,status:l.status,metrics:l.metrics,steps:c,expanded:d,onExpandedChange:u?p=>i?.(u,p):void 0,children:n.length>0&&r?n.map((p,m)=>r(p,m)):null})}function Lae({attachment:e,renderDetail:t,isProcessExpanded:n,onProcessExpandedChange:r,t:a}){const[i,s]=h.useState(null),l=h.useMemo(()=>e.inlineImages.map(c=>({data:c.data,name:c.name,mimeType:c.mimeType})),[e.inlineImages]);return o.jsxs("div",{className:"flex min-w-0 flex-col items-start gap-2",children:[o.jsx(L6,{message:e.processSummary,processKey:e.id,detailMessages:e.processDetailMessages,renderDetailMessage:t,isProcessExpanded:n,onProcessExpandedChange:r,t:a}),l.length>0?o.jsx("div",{className:"flex max-w-full flex-wrap gap-2",children:l.map((c,u)=>o.jsx("button",{type:"button",onClick:()=>s(u),className:"block overflow-hidden rounded-lg border border-neutral-200 bg-white shadow-sm transition hover:shadow-md focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 dark:border-neutral-700 dark:bg-neutral-900","aria-label":c.name?`Preview ${c.name}`:"Preview image",children:o.jsx("img",{src:c.data,alt:c.name||"Tool result image",className:"block h-auto max-h-72 max-w-xs cursor-zoom-in object-contain",loading:"lazy"})},`${e.inlineImages[u].toolId||"tool-image"}-${u}`))}):null,i!==null&&l.length>0?o.jsx(Dy,{images:l,startIndex:i,onClose:()=>s(null)}):null]})}const Pae=160,P6=12,Fae=16;function F6(e,t,n){return Math.min(n,Math.max(t,e))}function zN(e,t){let n=0,r=e.length;for(;n0?56:0,c=Array.isArray(e.message.images)&&e.message.images.length>0?180:0,u=e.message.isToolUse||e.message.toolName?140:0;return F6(r+n*20+s+i+l+c+u+Fae,72,720)}function Uae(e,t,n,r=P6){if(e.length===0)return{startIndex:0,endIndex:0,topPadding:0,bottomPadding:0,totalHeight:0};const a=[0];for(const m of e)a.push(a[a.length-1]+Math.max(1,m));const i=a[a.length-1],s=F6(Number.isFinite(t)?t:0,0,i),l=Math.max(1,Number.isFinite(n)&&n>0?n:900),c=Math.max(0,zN(a,s)-1),u=Math.min(e.length,zN(a,s+l)),d=Math.max(0,c-r),p=Math.min(e.length,Math.max(d+1,u+r));return{startIndex:d,endIndex:p,topPadding:a[d],bottomPadding:Math.max(0,i-a[p]),totalHeight:i}}function zae({itemKey:e,message:t,isLast:n,compactBottomSpacing:r=!1,onHeightChange:a,children:i}){const s=h.useRef(null);return h.useLayoutEffect(()=>{const l=s.current;if(!l)return;const c=()=>{a(e,l.getBoundingClientRect().height)};if(c(),typeof ResizeObserver>"u")return;const u=new ResizeObserver(c);return u.observe(l),()=>u.disconnect()},[e,a]),o.jsx("div",{ref:s,className:`chat-message ${n?"":r?"pb-2":"pb-4"}`,"data-message-timestamp":t.timestamp?String(t.timestamp):void 0,children:i})}function qae({scrollContainerRef:e,onWheel:t,onTouchMove:n,isLoadingSessionMessages:r,sessionLoadError:a,onRetrySessionLoad:i,chatMessages:s,activityMessages:l=[],visibleMessages:c,visibleMessageCount:u,isLoadingMoreMessages:d,hasMoreMessages:p,totalMessages:m,loadEarlierMessages:f,loadAllMessages:g,allMessagesLoaded:b,isLoadingAllMessages:x,provider:k,selectedProject:y,selectedSession:v,createDiff:E,onFileOpen:N,onShowSettings:w,onGrantSessionToolPermission:T,autoExpandTools:j,showRawParameters:_,showThinking:C,setInput:O,isAssistantWorking:I=!1,workingStatus:z,runMode:M="agent"}){const{t:P}=Je("chat"),B=h.useRef(new WeakMap),$=h.useRef(0),U=h.useRef(new Map),q=h.useRef(null),[A,K]=h.useState(0),[V,L]=h.useState({scrollTop:0,height:0}),[le,re]=h.useState(()=>new Map),ne=h.useCallback((se,$e)=>{const Qe=B.current.get(se);if(Qe)return Qe;const ot=y$(se);if(ot)return B.current.set(se,ot),ot;$.current+=1;const ie=`message-generated-${$e}-${$.current}`;return B.current.set(se,ie),ie},[]),de=h.useCallback((se,$e=!1)=>le.get(se)??$e,[le]),Se=h.useCallback((se,$e)=>{re(Qe=>{if((Qe.get(se)??!1)===$e)return Qe;const ie=new Map(Qe);return $e?ie.set(se,!0):ie.delete(se),ie})},[]),he=[P("emptyChat.prompts.plan",{defaultValue:"Plan a refactor for this project"}),P("emptyChat.prompts.summary",{defaultValue:"Summarize recent changes"}),P("emptyChat.prompts.review",{defaultValue:"Review the most recent file I touched"})],tt=!r&&s.length===0,Me=!!(!r&&a&&s.length===0),Fe=tt&&!v,ge=tt&&!!v&&!Me,me=ri(v),xe=h.useMemo(()=>l.filter(se=>se.isAgentActivity),[l]),ce=h.useMemo(()=>c.filter(se=>!se.isAgentActivity),[c]),Ne=h.useMemo(()=>I?Tae(ce):[],[I,ce]),Te=h.useMemo(()=>I?j6(ce,{isAssistantWorking:I}).filter(se=>Aae(se,M)):[],[I,ce,M]),Ge=h.useMemo(()=>{const se=new Map;for(const $e of Te){const Qe=se.get($e.afterOriginalIndex)||[];Qe.push($e),se.set($e.afterOriginalIndex,Qe)}return se},[Te]),ee=h.useMemo(()=>Nae(ce,{isAssistantWorking:I}),[I,ce]),X=h.useMemo(()=>ee.map((se,$e)=>({...se,itemKey:ne(se.message,$e),renderIndex:$e,estimatedHeight:$ae(se)})),[ne,ee]),ae=h.useMemo(()=>X.map(se=>U.current.get(se.itemKey)??se.estimatedHeight),[A,X]),te=X.length>Pae,J=h.useMemo(()=>te?Uae(ae,V.scrollTop,V.height,P6):{startIndex:0,endIndex:X.length,topPadding:0,bottomPadding:0,totalHeight:ae.reduce((se,$e)=>se+$e,0)},[X.length,ae,V.height,V.scrollTop,te]),H=te?X.slice(J.startIndex,J.endIndex):X,G=h.useMemo(()=>{if(!I)return-1;for(let se=X.length-1;se>=0;se-=1)if(X[se].message.type==="user")return Math.min(se+1,X.length);return X.length>0?0:-1},[I,X]),Z=h.useMemo(()=>{if(!I||G<=0)return null;const se=X[G-1]?.message;if(se?.type!=="user"||se.timestamp==null)return null;const $e=Date.parse(String(se.timestamp));return Number.isFinite($e)?$e:null},[I,X,G]),ue=h.useMemo(()=>!I||G<0?!1:X.slice(G).some(se=>se.message.type==="assistant"&&!se.message.isThinking&&!se.message.isToolUse&&typeof se.message.content=="string"&&se.message.content.trim().length>0),[I,X,G]),be=h.useMemo(()=>Vae(xe,z,ue,P),[ue,xe,P,z]),Ae=Te.some(se=>se.isRunning),ze=I&&!Ae,Le=h.useCallback(()=>{q.current===null&&(q.current=requestAnimationFrame(()=>{q.current=null,K(se=>se+1)}))},[]),ke=h.useCallback((se,$e)=>{const Qe=Math.max(1,Math.ceil($e)),ot=U.current.get(se);ot!==void 0&&Math.abs(ot-Qe)<2||(U.current.set(se,Qe),Le())},[Le]);h.useEffect(()=>()=>{q.current!==null&&cancelAnimationFrame(q.current)},[]),h.useEffect(()=>{const se=new Set(X.map(Qe=>Qe.itemKey));let $e=!1;for(const Qe of U.current.keys())se.has(Qe)||(U.current.delete(Qe),$e=!0);$e&&Le()},[Le,X]),h.useLayoutEffect(()=>{const se=e.current;if(!se)return;let $e=0;const Qe=()=>{$e=0,L({scrollTop:se.scrollTop,height:se.clientHeight})},ot=()=>{$e||($e=requestAnimationFrame(Qe))};if(Qe(),se.addEventListener("scroll",ot,{passive:!0}),typeof ResizeObserver>"u")return()=>{$e&&cancelAnimationFrame($e),se.removeEventListener("scroll",ot)};const ie=new ResizeObserver(ot);return ie.observe(se),()=>{$e&&cancelAnimationFrame($e),se.removeEventListener("scroll",ot),ie.disconnect()}},[e]);const We=h.useCallback((se,$e)=>se.map((Qe,ot)=>o.jsx(UN,{message:Qe,prevMessage:ot>0?se[ot-1]:null,nextMessage:ot{const Qe=Te[Te.length-1]?.id===se.id,ot=Rae(se,P,se.isRunning&&Qe?be:null);return o.jsx(LN,{step:ot,compact:!0,expanded:de(se.id),onExpandedChange:ie=>Se(se.id,ie),children:se.detailMessages.length>0?We(se.detailMessages,se.id):null},se.id||`${se.afterOriginalIndex}-${$e}`)},[Se,de,Te,be,We,P]),st=h.useCallback(se=>{const $e=se.renderIndex>0?X[se.renderIndex-1].message:null,Qe=se.renderIndex0||et,onHeightChange:ke,children:[se.beforeRunAttachment?o.jsx(qN,{durationMs:se.beforeRunAttachment.durationMs,t:P}):null,o.jsx(UN,{message:se.message,prevMessage:$e,nextMessage:Qe,beforeProcessAttachments:se.beforeProcessAttachments,afterProcessAttachments:se.afterProcessAttachments,provider:k,selectedProject:y,createDiff:E,onFileOpen:N,onShowSettings:w,onGrantSessionToolPermission:T,autoExpandTools:j,showRawParameters:_,showThinking:C,isProcessExpanded:de,onProcessExpandedChange:Se}),et?o.jsx(fg,{activities:xe,startedAtMs:Z,t:P}):null,se.afterRunAttachment?o.jsx(qN,{durationMs:se.afterRunAttachment.durationMs,t:P}):null,ie.length>0?o.jsx("div",{className:"mt-2 flex min-w-0 flex-col gap-2",children:ie.map(Xe)}):null]})]},se.itemKey)},[j,E,ke,Se,de,I,X,xe,G,Z,Ge,N,T,w,k,Xe,y,_,C,P]);return o.jsx("div",{ref:e,onWheel:t,onTouchMove:n,className:"relative flex-1 overflow-y-auto overflow-x-hidden bg-white dark:bg-neutral-950",children:Me?o.jsxs("div",{className:"mx-auto flex h-full max-w-[720px] flex-col items-center justify-center gap-3 px-6 py-10 text-center",children:[o.jsx(ni,{className:"h-5 w-5 text-amber-600 dark:text-amber-400",strokeWidth:1.75}),o.jsx("div",{className:"text-[15px] font-medium text-neutral-900 dark:text-neutral-100",children:P("session.loadFailedTitle",{defaultValue:"Could not load this conversation"})}),o.jsx("div",{className:"max-w-[520px] text-[13px] leading-5 text-neutral-500 dark:text-neutral-400",children:a}),i?o.jsx("button",{type:"button",onClick:i,className:"inline-flex h-8 items-center rounded-md border border-neutral-200 px-3 text-[13px] font-medium text-neutral-700 transition hover:bg-neutral-50 dark:border-neutral-800 dark:text-neutral-300 dark:hover:bg-neutral-900",children:P("session.retryLoad",{defaultValue:"Retry"})}):null]}):r&&s.length===0?o.jsx("div",{className:"mx-auto flex h-full max-w-[720px] items-center justify-center px-6 py-10 text-[13px] text-neutral-500 dark:text-neutral-400",children:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("div",{className:"h-3.5 w-3.5 animate-spin rounded-full border-b-2 border-neutral-400"}),o.jsx("span",{children:P("loading",{defaultValue:"Loading..."})})]})}):Fe?o.jsxs("div",{className:"mx-auto flex h-full max-w-[720px] flex-col items-center justify-center gap-4 px-6 py-10 text-center",children:[o.jsx("div",{className:"text-[15px] font-medium text-neutral-900 dark:text-neutral-100",children:y?P("emptyChat.title",{defaultValue:"Start a new conversation"}):P("emptyChat.noProject",{defaultValue:"Pick a project from the sidebar"})}),y?o.jsx("div",{className:"flex flex-col gap-1.5",children:he.map(se=>o.jsx("button",{type:"button",onClick:()=>O(se),className:"rounded-lg border border-neutral-200 px-3 py-1.5 text-left text-[13px] text-neutral-700 transition hover:bg-neutral-50 dark:border-neutral-800 dark:text-neutral-300 dark:hover:bg-neutral-900",children:se},se))}):null]}):ge?o.jsxs("div",{className:"mx-auto flex h-full max-w-[720px] flex-col items-center justify-center gap-2 px-6 py-10 text-center",children:[o.jsx("div",{className:"text-[15px] font-medium text-neutral-900 dark:text-neutral-100",children:me?P("emptyChat.readonlyBackgroundTitle",{defaultValue:"No displayable messages in this task transcript"}):P("emptyChat.emptySessionTitle",{defaultValue:"No displayable messages in this conversation"})}),o.jsx("div",{className:"max-w-[520px] text-[13px] leading-5 text-neutral-500 dark:text-neutral-400",children:me?P("emptyChat.readonlyBackgroundDescription",{defaultValue:"This read-only background task transcript only contains records the chat view cannot display."}):P("emptyChat.emptySessionDescription",{defaultValue:"This conversation exists, but it does not contain messages that can be rendered here."})})]}):o.jsxs("div",{className:"mx-auto max-w-[860px] px-6 py-10","data-virtualized-messages":te?"true":void 0,"data-rendered-message-count":H.length,"data-total-message-count":X.length,children:[d&&!x&&!b?o.jsx("div",{className:"pb-3 text-center text-[12px] text-neutral-500 dark:text-neutral-400",children:P("messages.loadingOlder",{defaultValue:"Loading older messages..."})}):null,p&&!d&&!b?o.jsxs("div",{className:"mb-8 flex items-center justify-between border-b border-neutral-200 pb-3 text-[12px] text-neutral-500 dark:border-neutral-800 dark:text-neutral-400",children:[o.jsx("span",{children:P("messages.showingOf",{shown:s.length,total:m,defaultValue:`Showing ${s.length} of ${m}`})}),o.jsx("button",{type:"button",onClick:f,className:"text-[12px] text-neutral-700 underline-offset-2 hover:underline dark:text-neutral-300",children:P("messages.loadEarlier",{defaultValue:"Load earlier"})})]}):null,!p&&s.length>u?o.jsxs("div",{className:"mb-8 flex items-center justify-between border-b border-neutral-200 pb-3 text-[12px] text-neutral-500 dark:border-neutral-800 dark:text-neutral-400",children:[o.jsx("span",{children:P("messages.showingLast",{count:u,total:s.length,defaultValue:`Showing last ${u} of ${s.length}`})}),o.jsx("button",{type:"button",onClick:g,className:"text-[12px] text-neutral-700 underline-offset-2 hover:underline dark:text-neutral-300",children:P("messages.loadAll",{defaultValue:"Load all"})})]}):null,te&&J.topPadding>0?o.jsx("div",{"aria-hidden":"true",style:{height:J.topPadding}}):null,H.map(st),te&&J.bottomPadding>0?o.jsx("div",{"aria-hidden":"true",style:{height:J.bottomPadding}}):null,I&&G===X.length&&X[G-1]?.message.type!=="user"?o.jsx(fg,{activities:xe,startedAtMs:Z,t:P}):null,ze?o.jsx(LN,{step:be,children:Ne.length>0?We(Ne,"bottom-live-process"):null}):null]})})}function Hae(e){const t=new Map;for(const r of e){const a=r.activityId||r.id||`${r.runId}-${r.timestamp}`;t.set(a,r)}return[...Array.from(t.values())].reverse().find(r=>r.state==="running")||null}function Gae(e){return{id:e.activityId||e.id,title:e.title||e.content||e.toolName||"",detail:e.detail||"",state:e.state||"running",severity:e.severity,phase:e.phase,toolName:e.toolName}}function Vae(e,t,n,r){const a=Hae(e);if(a)return Gae(a);if(t?.compactProgress){const s=t.compactProgress;return{id:"live-compact",title:r("working.compacting",{defaultValue:"Compacting context..."}),detail:s.label||s.stage||"",phase:"compact",state:s.state||"running"}}const i=String(t?.text||"").toLowerCase();return i.includes("permission")?{id:"live-permission",title:r("working.waitingForPermission",{defaultValue:"Waiting for permission"}),phase:"permission",state:"running",severity:"warning"}:i.includes("compact")?{id:"live-compact",title:r("working.compacting",{defaultValue:"Compacting context..."}),phase:"compact",state:"running"}:n?{id:"live-generation",title:r("working.generating",{defaultValue:"Generating response"}),phase:"generation",state:"running"}:{id:"live-thinking",title:r("working.thinking",{defaultValue:"Thinking"}),phase:"thinking",state:"running"}}function Wae(e,t){if(e.length===0)return t;const r=e[e.length-1]?.runId,a=r?e.filter(s=>s.runId===r):e;let i=Number.POSITIVE_INFINITY;for(const s of a){const l=s.startedAt||s.timestamp,c=l?Date.parse(String(l)):NaN;Number.isFinite(c)&&cDate.now());h.useEffect(()=>{const u=window.setInterval(()=>i(Date.now()),1e3);return()=>window.clearInterval(u)},[]);const s=h.useMemo(()=>{const u=t??Wae(e,r.current);return Math.max(0,a-u)},[e,a,t]),l=Py(s),c=n("process.summary.processed",{duration:l,defaultValue:`Processed ${l}`});return o.jsx(S6,{label:c})}function qN({durationMs:e,t}){const n=Py(e),r=t("process.summary.processed",{duration:n,defaultValue:`Processed ${n}`});return o.jsx(S6,{label:r})}const B6={};function Fo(e,t){B6[e]=t}function HN(e){return B6[e]||null}Fo("AskUserQuestion",v6);Fo("ask_user_question",v6);Fo("ExitPlanMode",Oy);Fo("exit_plan_mode",Oy);Fo("ExitPlanModeV2",Oy);function Kae({pendingPermissionRequests:e,handlePermissionDecision:t,handleGrantToolPermission:n,onPlanExecutionApproved:r}){if(!e.length)return null;const a=[],i=new Map;for(const s of e){if(HN(s.toolName)){a.push(s);continue}const l=Hu(s.input),c=rb(s.toolName,l)??s.requestId,u=i.get(c);u?u.push(s):i.set(c,[s])}return o.jsxs("div",{className:"mb-3 space-y-2",children:[a.map(s=>{const l=HN(s.toolName);return o.jsx(l,{request:s,onDecision:t,onPlanExecutionApproved:r},s.requestId)}),Array.from(i.entries()).map(([s,l])=>{const c=l[0],u=l.map(b=>b.requestId),d=Hu(c.input),p=rb(c.toolName,d),m=Br(),f=p?m.allowedTools.includes(p):!1,g=f?"Allow (saved)":"Allow & remember";return o.jsxs("div",{className:"rounded-lg border border-amber-200 bg-amber-50 p-3 shadow-sm dark:border-amber-800 dark:bg-amber-900/20",children:[o.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[o.jsxs("div",{children:[o.jsxs("div",{className:"text-sm font-semibold text-amber-900 dark:text-amber-100",children:["Permission required",l.length>1?` (${l.length})`:""]}),o.jsxs("div",{className:"text-xs text-amber-800 dark:text-amber-200",children:["Tool: ",o.jsx("span",{className:"font-mono",children:c.toolName})]})]}),p&&o.jsxs("div",{className:"text-xs text-amber-700 dark:text-amber-300",children:["Allow rule: ",o.jsx("span",{className:"font-mono",children:p})]})]}),l.length<=1&&d&&o.jsxs("details",{className:"mt-2",children:[o.jsx("summary",{className:"cursor-pointer text-xs text-amber-800 hover:text-amber-900 dark:text-amber-200 dark:hover:text-amber-100",children:"View tool input"}),o.jsx("pre",{className:"mt-2 max-h-40 overflow-auto whitespace-pre-wrap rounded-md border border-amber-200/60 bg-white/80 p-2 text-xs text-amber-900 dark:border-amber-800/60 dark:bg-gray-900/60 dark:text-amber-100",children:d})]}),l.length>1&&o.jsxs("details",{className:"mt-2",children:[o.jsxs("summary",{className:"cursor-pointer text-xs text-amber-800 hover:text-amber-900 dark:text-amber-200 dark:hover:text-amber-100",children:["View ",l.length," tool inputs"]}),o.jsx("div",{className:"mt-2 space-y-1",children:l.map(b=>{const x=Hu(b.input);return x?o.jsx("pre",{className:"max-h-28 overflow-auto whitespace-pre-wrap rounded-md border border-amber-200/60 bg-white/80 p-2 text-xs text-amber-900 dark:border-amber-800/60 dark:bg-gray-900/60 dark:text-amber-100",children:x},b.requestId):null})})]}),o.jsxs("div",{className:"mt-3 flex flex-wrap gap-2",children:[o.jsx("button",{type:"button",onClick:()=>t(u,{allow:!0}),className:"inline-flex items-center gap-2 rounded-md bg-amber-600 px-3 py-1.5 text-xs font-medium text-white transition-colors hover:bg-amber-700",children:"Allow once"}),o.jsx("button",{type:"button",onClick:()=>{p&&!f&&n({entry:p,toolName:c.toolName}),t(u,{allow:!0,rememberEntry:p})},className:`inline-flex items-center gap-2 rounded-md border px-3 py-1.5 text-xs font-medium transition-colors ${p?"border-amber-300 text-amber-800 hover:bg-amber-100 dark:border-amber-700 dark:text-amber-100 dark:hover:bg-amber-900/30":"cursor-not-allowed border-gray-300 text-gray-400"}`,disabled:!p,children:g}),o.jsx("button",{type:"button",onClick:()=>t(u,{allow:!1,message:"User denied tool use"}),className:"inline-flex items-center gap-2 rounded-md border border-red-300 px-3 py-1.5 text-xs font-medium text-red-700 transition-colors hover:bg-red-50 dark:border-red-800 dark:text-red-200 dark:hover:bg-red-900/30",children:"Deny"})]})]},s)})]})}const Yae={"application/vnd.openxmlformats-officedocument.wordprocessingml.document":"DOCX","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"XLSX","application/vnd.openxmlformats-officedocument.presentationml.presentation":"PPTX","application/msword":"DOC","application/vnd.ms-excel":"XLS","application/vnd.ms-powerpoint":"PPT","application/pdf":"PDF","application/zip":"ZIP","application/x-tar":"TAR","application/gzip":"GZ","text/plain":"TXT","text/csv":"CSV","text/markdown":"MD","application/json":"JSON","application/xml":"XML"};function Xae(e){const t=e.name.includes(".")?e.name.split(".").pop()?.toUpperCase():void 0;if(t&&t!==e.name.toUpperCase())return t;const n=Yae[e.type.toLowerCase()];if(n)return n;if(e.type.includes("/")){const r=e.type.split("/").pop()||"";if(r.length<=10&&!r.includes("."))return r.toUpperCase()}return"FILE"}const Zae=({file:e,onRemove:t,uploadProgress:n,error:r})=>{const[a,i]=h.useState(void 0),s=e.type.startsWith("image/");return h.useEffect(()=>{if(!s){i(void 0);return}const l=URL.createObjectURL(e);return i(l),()=>URL.revokeObjectURL(l)},[e,s]),o.jsxs("div",{className:"group relative",children:[s?o.jsx("img",{src:a,alt:e.name,className:"h-20 w-20 rounded object-cover"}):o.jsxs("div",{className:"flex h-20 w-44 items-center gap-2 rounded border border-neutral-200 bg-white p-2 text-neutral-900 shadow-sm dark:border-neutral-700 dark:bg-neutral-900 dark:text-neutral-100",children:[o.jsx("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded bg-blue-100 text-blue-700 dark:bg-blue-950 dark:text-blue-300",children:o.jsxs("svg",{className:"h-5 w-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 3h7l5 5v13H7z"}),o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M14 3v5h5"})]})}),o.jsxs("div",{className:"min-w-0",children:[o.jsx("div",{className:"truncate text-xs font-medium",children:e.name}),o.jsx("div",{className:"mt-0.5 text-[11px] uppercase text-neutral-500",children:Xae(e)})]})]}),n!==void 0&&n<100&&o.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-black/50",children:o.jsxs("div",{className:"text-xs text-white",children:[n,"%"]})}),r&&o.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-red-500/50",children:o.jsx("svg",{className:"h-6 w-6 text-white",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})}),o.jsx("button",{type:"button",onClick:t,className:"absolute -right-2 -top-2 rounded-full bg-red-500 p-1 text-white opacity-100 transition-opacity focus:opacity-100 sm:opacity-0 sm:group-hover:opacity-100","aria-label":"Remove attachment",children:o.jsx("svg",{className:"h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]})},hg=[{mode:"default",Icon:G8,labelKey:"input.permissions.default",defaultLabel:"Default Permissions",descriptionKey:"input.permissions.defaultDescription",defaultDescription:"Ask before risky operations"},{mode:"bypassPermissions",Icon:MO,labelKey:"input.permissions.bypassPermissions",defaultLabel:"Full Access",descriptionKey:"input.permissions.bypassPermissionsDescription",defaultDescription:"Skip confirmations and allow full access"}],gg=[{mode:"agent",Icon:rx,labelKey:"input.runModes.agent",defaultLabel:"Agent"},{mode:"plan",Icon:ET,labelKey:"input.runModes.plan",defaultLabel:"Plan"}],Jae=new Set(["AskUserQuestion","ExitPlanMode","ExitPlanModeV2","exit_plan_mode"]);function GN(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"&&e.trim()){const t=Number(e);return Number.isFinite(t)?t:null}return null}function VN(e){return e>=1e6?`${(e/1e6).toFixed(e>=1e7?0:1)}M`:e>=1e3?`${(e/1e3).toFixed(e>=1e5?0:1)}k`:e.toLocaleString()}function Qae(e){const t=GN(e?.used)??0,n=GN(e?.total)??0;if(n<=0)return{known:!1,used:0,total:0,percent:0,usedLabel:"--",totalLabel:"--",tone:"unknown"};const r=Math.max(0,Math.min(999,Math.round(t/n*100))),a=typeof e?.state=="string"?e.state:null,i=a==="blocking"?"red":a==="warning"?"amber":r>=95?"red":r>=80?"amber":"normal";return{known:!0,used:t,total:n,percent:r,usedLabel:VN(t),totalLabel:VN(n),tone:i}}function eie({input:e,placeholder:t,textareaRef:n,inputHighlightRef:r,renderInputWithMentions:a,onInputChange:i,onTextareaClick:s,onTextareaKeyDown:l,onTextareaPaste:c,onTextareaScrollSync:u,onTextareaInput:d,onInputFocusChange:p,onSubmit:m,onAbortSession:f,openImagePicker:g,attachedImages:b,onRemoveImage:x,uploadingImages:k,imageErrors:y,showFileDropdown:v,filteredFiles:E,selectedFileIndex:N,onSelectFile:w,filteredCommands:T,selectedCommandIndex:j,onCommandSelect:_,onCloseCommandMenu:C,isCommandMenuOpen:O,frequentCommands:I,onToggleCommandMenu:z,onInsertMention:M,getRootProps:P,getInputProps:B,isDragActive:$,isLoading:U,canAbortSession:q,isAbortPending:A=!1,isSubmitPending:K=!1,tokenBudget:V,pendingPermissionRequests:L,handlePermissionDecision:le,handleGrantToolPermission:re,permissionMode:ne,onPermissionModeChange:de,runMode:Se,onRunModeChange:he,planModeAvailable:tt=!0,onPlanExecutionApproved:Me,chromeless:Fe=!1}){const{t:ge}=Je("chat"),[me,xe]=h.useState(!1),[ce,Ne]=h.useState(!1),[Te,Ge]=h.useState(!1),ee=Se==="plan";h.useEffect(()=>{ee&&Ge(!1)},[ee]);const X=L.some(ke=>Jae.has(ke.toolName)),ae=e.trim().length>0||b.length>0,te=k.size>0,J=!ae||U||K||te,H=Qae(V),G=hg.find(ke=>ke.mode===ne)||hg[0],Z=gg.find(ke=>ke.mode===Se)||gg[0],ue=Z.Icon,be=ge(Z.labelKey,{defaultValue:Z.defaultLabel}),Ae=G.Icon,ze=ge(G.labelKey,{defaultValue:G.defaultLabel}),Le=H.known?ge("input.contextStatus",{percent:H.percent,used:H.usedLabel,total:H.totalLabel,defaultValue:`${H.percent}% used. ${H.usedLabel} tokens used out of ${H.totalLabel}. Auto compact runs near the limit.`}):ge("input.contextStatusUnknown",{defaultValue:"Context usage unknown. It will appear after the next model response."});return o.jsx("div",{className:oe("shrink-0",Fe?"":"bg-white px-6 pb-6 pt-3 dark:bg-neutral-950"),children:o.jsxs("div",{className:oe(Fe?"":"mx-auto max-w-[720px]"),children:[L.length>0?o.jsx("div",{className:"mb-3",children:o.jsx(Kae,{pendingPermissionRequests:L,handlePermissionDecision:le,handleGrantToolPermission:re,onPlanExecutionApproved:Me})}):null,X?null:o.jsxs("form",{onSubmit:m,className:"relative",children:[b.length>0?o.jsx("div",{className:"mb-2 rounded-lg border border-neutral-200 bg-neutral-50 p-2 dark:border-neutral-800 dark:bg-neutral-900",children:o.jsx("div",{className:"flex flex-wrap gap-2",children:b.map((ke,We)=>o.jsx(Zae,{file:ke,onRemove:()=>x(We),uploadProgress:k.get(ke.name),error:y.get(ke.name)},We))})}):null,v&&E.length>0?o.jsx("div",{className:"absolute bottom-full left-0 right-0 z-50 mb-2 max-h-48 overflow-y-auto rounded-lg border border-neutral-200 bg-white shadow-lg dark:border-neutral-800 dark:bg-neutral-900",children:E.map((ke,We)=>o.jsxs("div",{className:oe("cursor-pointer border-b border-neutral-100 px-3 py-2 text-[13px] last:border-b-0 dark:border-neutral-800",We===N?"bg-neutral-100 dark:bg-neutral-800":"hover:bg-neutral-50 dark:hover:bg-neutral-800/60"),onMouseDown:Xe=>{Xe.preventDefault(),Xe.stopPropagation()},onClick:Xe=>{Xe.preventDefault(),Xe.stopPropagation(),w(ke)},children:[o.jsx("div",{className:"font-medium",children:ke.name}),o.jsx("div",{className:"font-mono text-[11px] text-neutral-500 dark:text-neutral-400",children:ke.path})]},ke.path))}):null,o.jsxs("div",{...P(),className:oe("group rounded-xl border bg-white p-2 shadow-sm transition-colors","border-neutral-200 focus-within:border-neutral-300","dark:border-neutral-800 dark:bg-neutral-900 dark:focus-within:border-neutral-700",$&&"border-dashed border-neutral-400 dark:border-neutral-500"),children:[o.jsx("input",{...B()}),o.jsxs("div",{className:"relative",children:[o.jsx("div",{ref:r,"aria-hidden":"true",className:"pointer-events-none absolute inset-0 overflow-hidden",children:o.jsx("div",{className:"block w-full whitespace-pre-wrap break-words px-2 pt-1.5 text-[14px] leading-6 text-transparent",children:a(e)})}),o.jsx("textarea",{ref:n,value:e,onChange:i,onClick:s,onKeyDown:l,onPaste:c,onScroll:ke=>u(ke.target),onFocus:()=>p?.(!0),onBlur:()=>p?.(!1),onInput:d,placeholder:t,rows:2,className:"relative z-10 block max-h-[40vh] min-h-[48px] w-full resize-none bg-transparent px-2 pt-1.5 text-[14px] leading-6 text-neutral-900 placeholder-neutral-400 outline-none dark:text-neutral-100 dark:placeholder-neutral-500"})]}),o.jsxs("div",{className:"flex items-center justify-between px-1 pt-1",children:[o.jsxs("div",{className:"flex min-w-0 items-center gap-0.5",children:[o.jsxs("div",{className:"relative mr-1",onBlur:ke=>{const We=ke.relatedTarget;(!We||!ke.currentTarget.contains(We))&&Ne(!1)},children:[o.jsxs("button",{type:"button",onClick:()=>Ne(ke=>!ke),className:oe("inline-flex h-7 max-w-[108px] items-center justify-center gap-1.5 rounded-md px-2 text-[12px] font-medium transition sm:max-w-[140px]",Se==="plan"?"text-blue-600 hover:bg-blue-50 dark:text-blue-300 dark:hover:bg-blue-950/30":"text-neutral-600 hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-800"),title:ge("input.runModes.change",{defaultValue:"Select run mode"}),"aria-haspopup":"menu","aria-expanded":ce,children:[o.jsx(ue,{className:"h-4 w-4 shrink-0",strokeWidth:1.9}),o.jsx("span",{className:"truncate",children:be}),o.jsx(Sn,{className:oe("h-3.5 w-3.5 shrink-0 transition-transform",ce&&"rotate-180"),strokeWidth:2})]}),ce?o.jsx("div",{role:"menu",className:"absolute bottom-full left-0 z-50 mb-2 w-56 rounded-xl border border-neutral-200 bg-white p-1.5 text-left shadow-lg dark:border-neutral-800 dark:bg-neutral-900",children:gg.map(ke=>{const We=ke.Icon,Xe=Se===ke.mode,st=ke.mode==="plan",se=st&&!tt,$e=ge(ke.labelKey,{defaultValue:ke.defaultLabel}),Qe=st?ge("input.runModes.planDescription",{defaultValue:"Generate a plan first, then execute after confirmation"}):ge("input.runModes.agentDescription",{defaultValue:"Directly process and execute the task"});return o.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":Xe,disabled:se,onMouseDown:ot=>ot.preventDefault(),onClick:()=>{se||(he(ke.mode),Ne(!1))},className:oe("flex w-full items-center gap-2 rounded-lg px-2.5 py-2 text-left transition",Xe?"bg-neutral-100 dark:bg-neutral-800":"hover:bg-neutral-50 dark:hover:bg-neutral-800/70",se&&"cursor-not-allowed opacity-45"),children:[o.jsx(We,{className:oe("h-4 w-4 shrink-0",st?"text-blue-600 dark:text-blue-300":"text-neutral-500 dark:text-neutral-400"),strokeWidth:1.9}),o.jsxs("span",{className:"min-w-0 flex-1",children:[o.jsx("span",{className:oe("block truncate text-[13px] font-medium",st?"text-blue-700 dark:text-blue-300":"text-neutral-900 dark:text-neutral-100"),children:$e}),o.jsx("span",{className:"block truncate text-[11px] text-neutral-500 dark:text-neutral-400",children:se?ge("input.runModes.planUnavailable",{defaultValue:"Plan mode is only available for Anthropic models."}):Qe})]}),Xe?o.jsx(Er,{className:"h-4 w-4 shrink-0 text-neutral-500 dark:text-neutral-300",strokeWidth:2}):null]},ke.mode)})}):null]}),o.jsx("button",{type:"button",onClick:g,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-500 transition hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",title:ge("input.attachFiles",{defaultValue:"Attach photos or files"}),children:o.jsx(xO,{className:"h-4 w-4",strokeWidth:1.75})}),o.jsx("button",{type:"button",onClick:M,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-500 transition hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",title:ge("input.mentionFile",{defaultValue:"Mention a file"}),children:o.jsx(kj,{className:"h-4 w-4",strokeWidth:1.75})}),o.jsxs("div",{className:"relative",onBlur:ke=>{const We=ke.relatedTarget;(!We||!ke.currentTarget.contains(We))&&Ge(!1)},children:[o.jsxs("button",{type:"button",disabled:ee,onClick:()=>{ee||Ge(ke=>!ke)},className:oe("inline-flex h-7 max-w-[132px] items-center justify-center gap-1.5 rounded-md px-2 text-[12px] font-medium transition sm:max-w-[190px]",ee?"cursor-not-allowed text-neutral-400 opacity-45 dark:text-neutral-500":ne==="bypassPermissions"?"text-amber-600 hover:bg-amber-50 dark:text-amber-400 dark:hover:bg-amber-950/30":"text-neutral-600 hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-800"),title:ge("input.permissions.change",{defaultValue:"Select permission mode"}),"aria-haspopup":"menu","aria-expanded":ee?!1:Te,children:[o.jsx(Ae,{className:"h-4 w-4 shrink-0",strokeWidth:1.9}),o.jsx("span",{className:"truncate",children:ze}),o.jsx(Sn,{className:oe("h-3.5 w-3.5 shrink-0 transition-transform",Te&&"rotate-180"),strokeWidth:2})]}),Te?o.jsx("div",{role:"menu",className:"absolute bottom-full left-0 z-50 mb-2 w-60 rounded-xl border border-neutral-200 bg-white p-1.5 text-left shadow-lg dark:border-neutral-800 dark:bg-neutral-900",children:hg.map(ke=>{const We=ke.Icon,Xe=ne===ke.mode,st=ke.mode==="bypassPermissions",se=ge(ke.labelKey,{defaultValue:ke.defaultLabel}),$e=ge(ke.descriptionKey,{defaultValue:ke.defaultDescription});return o.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":Xe,onMouseDown:Qe=>Qe.preventDefault(),onClick:()=>{de(ke.mode),Ge(!1)},className:oe("flex w-full items-center gap-2 rounded-lg px-2.5 py-2 text-left transition",Xe?"bg-neutral-100 dark:bg-neutral-800":"hover:bg-neutral-50 dark:hover:bg-neutral-800/70"),children:[o.jsx(We,{className:oe("h-4 w-4 shrink-0",st?"text-amber-600 dark:text-amber-400":"text-neutral-500 dark:text-neutral-400"),strokeWidth:1.9}),o.jsxs("span",{className:"min-w-0 flex-1",children:[o.jsx("span",{className:oe("block truncate text-[13px] font-medium",st?"text-amber-700 dark:text-amber-300":"text-neutral-900 dark:text-neutral-100"),children:se}),o.jsx("span",{className:"block truncate text-[11px] text-neutral-500 dark:text-neutral-400",children:$e})]}),Xe?o.jsx(Er,{className:"h-4 w-4 shrink-0 text-neutral-500 dark:text-neutral-300",strokeWidth:2}):null]},ke.mode)})}):null]})]}),o.jsxs("div",{className:"ml-2 flex shrink-0 items-center gap-1",children:[o.jsxs("div",{className:"relative",onBlur:ke=>{const We=ke.relatedTarget;(!We||!ke.currentTarget.contains(We))&&xe(!1)},children:[o.jsxs("button",{type:"button",onClick:()=>xe(ke=>!ke),className:oe("inline-flex h-7 min-w-[44px] items-center justify-center gap-1 rounded-md px-1.5 text-[11px] tabular-nums transition",H.tone==="red"?"text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/30":H.tone==="amber"?"text-amber-600 hover:bg-amber-50 dark:text-amber-400 dark:hover:bg-amber-950/30":H.tone==="normal"?"text-neutral-600 hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-800":"text-neutral-400 hover:bg-neutral-100 dark:text-neutral-500 dark:hover:bg-neutral-800"),title:Le,"aria-label":Le,"aria-expanded":me,children:[o.jsx(Wj,{className:"h-4 w-4",strokeWidth:1.75}),o.jsx("span",{children:H.known?`${H.percent}%`:"--"})]}),me?o.jsxs("div",{role:"status",className:"absolute bottom-full right-0 z-50 mb-2 w-64 rounded-lg border border-neutral-200 bg-white p-3 text-left text-[12px] leading-5 text-neutral-700 shadow-lg dark:border-neutral-800 dark:bg-neutral-900 dark:text-neutral-200",children:[o.jsxs("div",{className:"mb-1 flex items-center justify-between gap-2",children:[o.jsx("span",{className:"font-medium text-neutral-900 dark:text-neutral-100",children:ge("input.contextStatusTitle",{defaultValue:"Context window"})}),o.jsx("span",{className:oe("rounded-full px-2 py-0.5 text-[11px] font-medium tabular-nums",H.tone==="red"?"bg-red-50 text-red-700 dark:bg-red-950/30 dark:text-red-300":H.tone==="amber"?"bg-amber-50 text-amber-700 dark:bg-amber-950/30 dark:text-amber-300":H.tone==="normal"?"bg-emerald-50 text-emerald-700 dark:bg-emerald-950/30 dark:text-emerald-300":"bg-neutral-100 text-neutral-500 dark:bg-neutral-800 dark:text-neutral-400"),children:H.known?`${H.percent}%`:"--"})]}),H.known?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"text-neutral-500 dark:text-neutral-400",children:ge("input.contextStatusUsed",{used:H.used.toLocaleString(),total:H.total.toLocaleString(),defaultValue:`${H.used.toLocaleString()} tokens used out of ${H.total.toLocaleString()}.`})}),o.jsx("div",{className:"mt-2 text-neutral-500 dark:text-neutral-400",children:ge("input.contextStatusAutoCompact",{defaultValue:"Auto compact runs when the conversation approaches the configured limit."})})]}):o.jsx("div",{className:"text-neutral-500 dark:text-neutral-400",children:ge("input.contextStatusUnknownBody",{defaultValue:"No token budget has been reported yet. It will appear after the next model response."})})]}):null]}),U&&q?o.jsx("button",{type:"button",onClick:f,disabled:A,className:oe("inline-flex h-8 w-8 items-center justify-center rounded-lg bg-red-500 text-white transition hover:bg-red-600",A&&"cursor-wait opacity-70 hover:bg-red-500"),title:A?ge("input.stopping",{defaultValue:"Stopping..."}):ge("input.stop",{defaultValue:"Stop"}),children:A?o.jsx(pt,{className:"h-4 w-4 animate-spin",strokeWidth:2.25}):o.jsx(TT,{className:"h-3.5 w-3.5",strokeWidth:2.5,fill:"currentColor"})}):o.jsx("button",{type:"submit",disabled:J,"aria-busy":K||te,className:oe("inline-flex h-8 w-8 items-center justify-center rounded-lg bg-neutral-900 text-white transition hover:opacity-90 disabled:opacity-40 dark:bg-neutral-50 dark:text-neutral-900",(K||te)&&"cursor-wait"),title:K||te?ge("input.sending",{defaultValue:"Sending..."}):ge("input.send",{defaultValue:"Send"}),children:K||te?o.jsx(pt,{className:"h-4 w-4 animate-spin",strokeWidth:2.25}):o.jsx(gT,{className:"h-4 w-4",strokeWidth:2})})]})]})]})]})]})})}function tie({selectedProject:e,selectedSession:t,ws:n,sendMessage:r,onFileOpen:a,onInputFocusChange:i,onSessionActive:s,onSessionInactive:l,onSessionProcessing:c,onSessionNotProcessing:u,onSessionActivityBump:d,processingSessions:p,onReplaceTemporarySession:m,onNavigateToSession:f,onShowSettings:g,autoExpandTools:b,showRawParameters:x,showThinking:k,autoScrollToBottom:y,sendByCtrlEnter:v,externalMessageUpdate:E,forceWelcome:N,onExitWelcome:w}){const{t:T}=Je("chat"),{tasksEnabled:j,isTaskMasterInstalled:_}=DT(),C=ri(t),O=$n.useMemo(()=>px(t),[t]),I=b$(),z=h.useRef(""),M=h.useRef(null),P=h.useRef(""),B=h.useRef(null),[$,U]=h.useState(!1),[q,A]=h.useState("agent"),K=h.useCallback(()=>{M.current&&(clearTimeout(M.current),M.current=null),z.current="",P.current=""},[]),{model:V,permissionMode:L,setPermissionMode:le,pendingPermissionRequests:re,setPendingPermissionRequests:ne}=$P({selectedSession:t}),de=h.useCallback(()=>{A(Ln=>Ln==="plan"?"agent":"plan")},[]),Se=h.useCallback(Ln=>{le(Ln),localStorage.setItem("permissionMode-default",Ln),t?.id&&localStorage.setItem(`permissionMode-${t.id}`,Ln)},[le,t?.id]),he=q==="plan"?"plan":L,{chatMessages:tt,activityMessages:Me,addMessage:Fe,clearMessages:ge,rewindMessages:me,isLoading:xe,setIsLoading:ce,currentSessionId:Ne,setCurrentSessionId:Te,isLoadingSessionMessages:Ge,sessionLoadError:ee,isLoadingMoreMessages:X,hasMoreMessages:ae,totalMessages:te,canAbortSession:J,setCanAbortSession:H,setIsAborting:G,setIsUserScrolledUp:Z,tokenBudget:ue,setTokenBudget:be,visibleMessageCount:Ae,visibleMessages:ze,loadEarlierMessages:Le,loadAllMessages:ke,allMessagesLoaded:We,isLoadingAllMessages:Xe,claudeStatus:st,pilotDeckStatus:se,setClaudeStatus:$e,setPilotDeckStatus:Qe,createDiff:ot,scrollContainerRef:ie,scrollToBottom:et,handleScroll:at}=QP({selectedProject:e,selectedSession:t,ws:n,sendMessage:r,autoScrollToBottom:y,externalMessageUpdate:E,processingSessions:p,resetStreamingState:K,pendingViewSessionRef:B,sessionStore:I}),{input:Ct,setInput:zt,textareaRef:tn,inputHighlightRef:gn,filteredCommands:_t,frequentCommands:hr,commandQuery:Ke,showCommandMenu:Ue,selectedCommandIndex:ht,dismissCommandMenu:Pt,handleCommandSelect:cn,handleToggleCommandMenu:Ce,showFileDropdown:qe,filteredFiles:pe,selectedFileIndex:Pe,renderInputWithMentions:we,selectFile:Be,attachedImages:rt,setAttachedImages:it,uploadingImages:Tt,imageErrors:un,getRootProps:ja,getInputProps:Hr,isDragActive:Ar,openImagePicker:gr,handleSubmit:Vn,handleInputChange:Oa,insertAtCursor:mu,handleKeyDown:Ky,handlePaste:fu,handleTextareaClick:hu,handleTextareaInput:Mn,syncInputOverlayScroll:rr,handleAbortSession:ar,handlePermissionDecision:gu,handleGrantToolPermission:k7,handleGrantSessionToolPermission:w7,handleInputFocusChange:S7}=d$({selectedProject:e,selectedSession:t,currentSessionId:Ne,model:V,permissionMode:he,cycleRunMode:de,isLoading:xe,canAbortSession:J,tokenBudget:ue,sendMessage:r,sendByCtrlEnter:v,onSessionActive:s,onSessionProcessing:c,onSessionActivityBump:d,onInputFocusChange:i,onFileOpen:a,onShowSettings:g,pendingViewSessionRef:B,scrollToBottom:et,addMessage:Fe,clearMessages:ge,rewindMessages:me,setIsLoading:ce,setCanAbortSession:H,setIsAborting:G,setClaudeStatus:$e,setPilotDeckStatus:Qe,setIsUserScrolledUp:Z,pendingPermissionRequests:re,setPendingPermissionRequests:ne}),E7=h.useCallback(()=>{A("agent")},[]),Yy=h.useCallback(async()=>{!e||!t||(M.current&&(clearTimeout(M.current),M.current=null),P.current="",z.current="",await I.refreshFromServer(t.id,{provider:"pilotdeck",projectName:e.name,projectPath:e.fullPath||e.path||"",...O}),r({type:"check-session-status",sessionId:t.id,provider:"pilotdeck"}))},[e,t,O,I,M,P,z,r]);dF({provider:"pilotdeck",selectedSession:t,currentSessionId:Ne,setCurrentSessionId:Te,setIsLoading:ce,setCanAbortSession:H,setIsAborting:G,setClaudeStatus:$e,setPilotDeckStatus:Qe,setTokenBudget:be,setPendingPermissionRequests:ne,pendingViewSessionRef:B,onSessionInactive:l,onSessionProcessing:c,onSessionNotProcessing:u,onReplaceTemporarySession:m,onNavigateToSession:f,onWebSocketReconnect:Yy,sessionStore:I}),h.useEffect(()=>{(!xe||!J)&&U(!1)},[J,xe]),h.useEffect(()=>{U(!1)},[Ne,t?.id]);const bu=h.useCallback(()=>{!xe||!J||$||(ar(),U(!0))},[J,ar,$,xe]);h.useEffect(()=>{if(!xe||!J)return;const Ln=hi=>{hi.key!=="Escape"||hi.repeat||hi.defaultPrevented||(hi.preventDefault(),bu())};return document.addEventListener("keydown",Ln,{capture:!0}),()=>{document.removeEventListener("keydown",Ln,{capture:!0})}},[J,bu,xe]),h.useEffect(()=>()=>{K()},[K]);const Bo=!!N||!t&&!Ne&&!Ge&&tt.length===0,C7=h.useCallback((...Ln)=>(Bo&&w&&w(),Vn(...Ln)),[Vn,Bo,w]),Xy=C?o.jsx("div",{className:"mx-auto w-full max-w-[720px] px-6 pb-6 pt-3",children:o.jsx("div",{className:"rounded-xl border border-neutral-200 bg-neutral-50 px-4 py-3 text-[13px] text-neutral-600 dark:border-neutral-800 dark:bg-neutral-900 dark:text-neutral-400",children:T("session.readonlyBackground",{defaultValue:"This background task transcript is read-only."})})}):o.jsx(eie,{input:Ct,placeholder:T("composer.placeholder",{defaultValue:"Tell PilotDeck what you want to get done…"}),textareaRef:tn,inputHighlightRef:gn,renderInputWithMentions:we,onInputChange:Oa,onTextareaClick:hu,onTextareaKeyDown:Ky,onTextareaPaste:fu,onTextareaScrollSync:rr,onTextareaInput:Mn,onInputFocusChange:S7,onSubmit:C7,onAbortSession:bu,openImagePicker:gr,attachedImages:rt,onRemoveImage:Ln=>it(hi=>hi.filter((bme,N7)=>N7!==Ln)),uploadingImages:Tt,imageErrors:un,showFileDropdown:qe,filteredFiles:pe,selectedFileIndex:Pe,onSelectFile:Be,filteredCommands:_t,selectedCommandIndex:ht,onCommandSelect:cn,onCloseCommandMenu:Pt,isCommandMenuOpen:Ue,frequentCommands:Ke?[]:hr,onToggleCommandMenu:Ce,onInsertMention:()=>mu("@"),onInsertSlash:()=>mu("/"),getRootProps:ja,getInputProps:Hr,isDragActive:Ar,isLoading:xe,canAbortSession:J,isAbortPending:$,tokenBudget:ue,pendingPermissionRequests:re,handlePermissionDecision:gu,handleGrantToolPermission:k7,permissionMode:L,onPermissionModeChange:Se,runMode:q,onRunModeChange:A,planModeAvailable:!0,onPlanExecutionApproved:E7,sendByCtrlEnter:v,chromeless:Bo});if(Bo){const Ln=e?.displayName||e?.name||"";return o.jsx("div",{className:"flex h-full flex-col bg-white dark:bg-neutral-950",children:o.jsx("div",{className:"flex flex-1 flex-col items-center justify-center px-6",children:o.jsxs("div",{className:"w-full max-w-[720px]",children:[o.jsx("h1",{className:"mb-8 text-center text-[26px] font-medium tracking-tight text-neutral-900 dark:text-neutral-100",children:e?T("welcome.greetingWithProject",{project:Ln,defaultValue:"What's on the plan today?"}):T("welcome.noProject",{defaultValue:"Pick a project from the sidebar to get started"})}),Xy]})})})}return o.jsxs("div",{className:"flex h-full flex-col bg-white dark:bg-neutral-950",children:[o.jsx(qae,{scrollContainerRef:ie,onWheel:at,onTouchMove:at,isLoadingSessionMessages:Ge,sessionLoadError:ee,onRetrySessionLoad:Yy,chatMessages:tt,activityMessages:Me,visibleMessages:ze,visibleMessageCount:Ae,isLoadingMoreMessages:X,hasMoreMessages:ae,totalMessages:te,loadEarlierMessages:Le,loadAllMessages:ke,allMessagesLoaded:We,isLoadingAllMessages:Xe,provider:"pilotdeck",selectedProject:e,selectedSession:t,createDiff:ot,onFileOpen:a,onShowSettings:g,onGrantSessionToolPermission:w7,autoExpandTools:b,showRawParameters:x,showThinking:k,setInput:zt,isAssistantWorking:xe,workingStatus:st||se,runMode:q}),Xy]})}const nie=$n.memo(tie),rie={ready:"bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300",queued:"bg-amber-100 text-amber-700 dark:bg-amber-900/40 dark:text-amber-300",running:"bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300",completed:"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300",failed:"bg-red-100 text-red-700 dark:bg-red-900/40 dark:text-red-300",apply_failed:"bg-red-100 text-red-700 dark:bg-red-900/40 dark:text-red-300",applying:"bg-amber-100 text-amber-700 dark:bg-amber-900/40 dark:text-amber-300",applied:"bg-purple-100 text-purple-700 dark:bg-purple-900/40 dark:text-purple-300",archived:"bg-neutral-100 text-neutral-600 dark:bg-neutral-800 dark:text-neutral-400"};function aie(e){return e?e==="completed"||e==="applied"?"executed":e==="failed"||e==="apply_failed"?"failed":e==="archived"?"archived":"":""}function $6(e){const{runId:t,events:n=[],planId:r,projectName:a,projectDisplayName:i,projectKey:s,backLabel:l,onBack:c,onOpenExecutionSession:u}=e,{t:d}=Je("alwaysOn"),p=t||(r?r.replace(/^plan_/,""):""),m=h.useMemo(()=>p?n.filter(P=>P.runId===p):[],[n,p]),{planId:f,projectKey:g,projectName:b,projectDisplayName:x,outcome:k}=h.useMemo(()=>{if(r&&a){let A="";for(const K of m)if(K.outcome){A=K.outcome;break}return{planId:r,projectKey:s||"",projectName:a,projectDisplayName:i||"",outcome:A}}let P="",B="",$="",U="",q="";for(const A of m)A.planId&&!P&&(P=A.planId),A.projectKey&&!B&&(B=A.projectKey),A.projectName&&!$&&($=A.projectName),A.projectDisplayName&&!U&&(U=A.projectDisplayName),A.outcome&&!q&&(q=A.outcome);return{planId:P,projectKey:B,projectName:$,projectDisplayName:U,outcome:q}},[m,r,a,i,s]),[y,v]=h.useState(null),[E,N]=h.useState(""),[w,T]=h.useState(!1),[j,_]=h.useState(!1),[C,O]=h.useState(!1),[I,z]=h.useState(!1);h.useEffect(()=>{if(!b||!f)return;let P=!1;return T(!0),dt.projectDiscoveryPlans(b).then(B=>B.json()).then(B=>{if(P)return;const $=B.plans?.find(U=>U.id===f);$&&v({title:$.title||"Untitled",status:$.status||"ready",workspace:$.workspace,content:($.content||"").trim()})}).catch(()=>{}).finally(()=>{P||T(!1)}),()=>{P=!0}},[b,f]),h.useEffect(()=>{if(!b||!f)return;let P=!1;return _(!0),dt.discoveryPlanReport(b,f).then(B=>B.json()).then(B=>{P||N((B.content||"").trim())}).catch(()=>{}).finally(()=>{P||_(!1)}),()=>{P=!0}},[b,f]);const M=rie[y?.status??""]??"bg-neutral-100 text-neutral-600 dark:bg-neutral-800 dark:text-neutral-400";return o.jsxs("div",{className:"w-full space-y-5 px-8 py-5",children:[o.jsxs("button",{type:"button",onClick:c,className:"inline-flex items-center gap-1.5 text-[13px] text-neutral-500 transition hover:text-neutral-900 dark:text-neutral-400 dark:hover:text-neutral-100",children:[o.jsx(hT,{className:"h-3.5 w-3.5",strokeWidth:1.75}),l??d("dashboard.runDetail.back",{defaultValue:"Back to events"})]}),o.jsxs("div",{className:"rounded-xl border border-neutral-200 bg-white dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsx("div",{className:"border-b border-neutral-200 px-5 py-4 dark:border-neutral-800",children:w&&!y?o.jsxs("div",{className:"flex items-center gap-2 text-[13px] text-neutral-500",children:[o.jsx(pt,{className:"h-4 w-4 animate-spin",strokeWidth:1.75}),d("dashboard.runDetail.loading",{defaultValue:"Loading…"})]}):o.jsxs(o.Fragment,{children:[o.jsx("h2",{className:"text-[16px] font-semibold text-neutral-900 dark:text-neutral-100",children:y?.title||d("dashboard.runDetail.untitled",{defaultValue:"Untitled Plan"})}),o.jsxs("div",{className:"mt-1.5 flex flex-wrap items-center gap-2",children:[x&&o.jsx("span",{className:"inline-flex items-center rounded-full bg-blue-100 px-2 py-0.5 text-[11px] font-medium text-blue-700 dark:bg-blue-900/40 dark:text-blue-300",children:x}),y?.status&&o.jsx("span",{className:oe("inline-flex items-center rounded-full px-2 py-0.5 text-[11px] font-medium",M),children:d(`plansCron.status.${y.status}`,{defaultValue:y.status})})]})]})}),o.jsxs("div",{className:"grid grid-cols-3 divide-x divide-neutral-100 border-b border-neutral-200 dark:divide-neutral-800 dark:border-neutral-800",children:[o.jsxs("div",{className:"px-5 py-3",children:[o.jsx("div",{className:"text-xxs font-medium uppercase tracking-wide text-neutral-400 dark:text-neutral-500",children:d("dashboard.runDetail.workspaceStrategy",{defaultValue:"Workspace"})}),o.jsx("div",{className:"mt-1 text-[13px] font-medium text-neutral-700 dark:text-neutral-300",children:y?.workspace?.strategy||"—"})]}),o.jsxs("div",{className:"px-5 py-3",children:[o.jsx("div",{className:"text-xxs font-medium uppercase tracking-wide text-neutral-400 dark:text-neutral-500",children:d("dashboard.runDetail.executionSession",{defaultValue:"Execution Session"})}),o.jsx("div",{className:"mt-1",children:g&&p?o.jsxs("button",{type:"button",onClick:()=>u?.(g,p,b),className:"inline-flex items-center gap-1 text-[13px] font-medium text-blue-600 transition hover:text-blue-700 dark:text-blue-400 dark:hover:text-blue-300",children:[d("dashboard.runDetail.openSession",{defaultValue:"Open Session"}),o.jsx(x8,{className:"h-3 w-3",strokeWidth:1.75})]}):o.jsx("span",{className:"text-[13px] text-neutral-400 dark:text-neutral-500",children:"—"})})]}),o.jsxs("div",{className:"px-5 py-3",children:[o.jsx("div",{className:"text-xxs font-medium uppercase tracking-wide text-neutral-400 dark:text-neutral-500",children:d("dashboard.runDetail.outcome",{defaultValue:"Outcome"})}),o.jsx("div",{className:"mt-1 text-[13px] font-medium text-neutral-700 dark:text-neutral-300",children:k||aie(y?.status)||"—"})]})]}),o.jsxs("div",{className:"border-b border-neutral-200 dark:border-neutral-800",children:[o.jsxs("button",{type:"button",onClick:()=>O(P=>!P),className:"flex w-full items-center gap-2 px-5 py-3 text-left transition hover:bg-neutral-50 dark:hover:bg-neutral-900",children:[C?o.jsx(Sn,{className:"h-4 w-4 text-neutral-400",strokeWidth:1.75}):o.jsx(qn,{className:"h-4 w-4 text-neutral-400",strokeWidth:1.75}),o.jsx("span",{className:"text-[13px] font-semibold text-neutral-900 dark:text-neutral-100",children:d("dashboard.runDetail.plan",{defaultValue:"Plan"})})]}),C&&o.jsx("div",{className:"px-5 pb-4",children:w?o.jsxs("div",{className:"flex items-center gap-2 py-4 text-[13px] text-neutral-500",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),d("dashboard.runDetail.loading",{defaultValue:"Loading…"})]}):y?.content?o.jsx("div",{className:"prose prose-sm dark:prose-invert max-w-none",children:o.jsx(lr,{children:y.content})}):o.jsx("p",{className:"py-4 text-[13px] text-neutral-400 dark:text-neutral-500",children:d("dashboard.runDetail.noPlanContent",{defaultValue:"No plan content available."})})})]}),o.jsxs("div",{className:"border-b border-neutral-200 dark:border-neutral-800",children:[o.jsxs("button",{type:"button",onClick:()=>z(P=>!P),className:"flex w-full items-center gap-2 px-5 py-3 text-left transition hover:bg-neutral-50 dark:hover:bg-neutral-900",children:[I?o.jsx(Sn,{className:"h-4 w-4 text-neutral-400",strokeWidth:1.75}):o.jsx(qn,{className:"h-4 w-4 text-neutral-400",strokeWidth:1.75}),o.jsx("span",{className:"text-[13px] font-semibold text-neutral-900 dark:text-neutral-100",children:d("dashboard.runDetail.report",{defaultValue:"Report"})})]}),I&&o.jsx("div",{className:"px-5 pb-4",children:j?o.jsxs("div",{className:"flex items-center gap-2 py-4 text-[13px] text-neutral-500",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),d("dashboard.runDetail.loading",{defaultValue:"Loading…"})]}):E?o.jsx("div",{className:"prose prose-sm dark:prose-invert max-w-none",children:o.jsx(lr,{children:E})}):o.jsx("p",{className:"py-4 text-[13px] text-neutral-400 dark:text-neutral-500",children:d("dashboard.runDetail.noReportContent",{defaultValue:"No report available yet."})})})]})]})]})}const iie=15e3,sie=200,WN={discovery_started:{icon:Ic,color:"text-blue-500 dark:text-blue-400",labelKey:"dashboard.phase.discoveryStarted",defaultLabel:"Discovery Started"},plan_produced:{icon:yr,color:"text-emerald-600 dark:text-emerald-400",labelKey:"dashboard.phase.planProduced",defaultLabel:"Plan Produced"},no_plan:{icon:kT,color:"text-neutral-400 dark:text-neutral-500",labelKey:"dashboard.phase.noPlan",defaultLabel:"No Plan"},workspace_ready:{icon:ux,color:"text-amber-500 dark:text-amber-400",labelKey:"dashboard.phase.workspaceReady",defaultLabel:"Workspace Ready"},execution_started:{icon:Fg,color:"text-blue-600 dark:text-blue-400",labelKey:"dashboard.phase.executionStarted",defaultLabel:"Execution Started"},execution_completed:{icon:vr,color:"text-emerald-600 dark:text-emerald-400",labelKey:"dashboard.phase.executionCompleted",defaultLabel:"Execution Completed"},report_produced:{icon:So,color:"text-purple-600 dark:text-purple-400",labelKey:"dashboard.phase.reportProduced",defaultLabel:"Report Produced"},run_completed:{icon:vr,color:"text-emerald-600 dark:text-emerald-400",labelKey:"dashboard.phase.runCompleted",defaultLabel:"Run Completed"},run_failed:{icon:ni,color:"text-red-500 dark:text-red-400",labelKey:"dashboard.phase.runFailed",defaultLabel:"Run Failed"},cron_started:{icon:Fg,color:"text-indigo-500 dark:text-indigo-400",labelKey:"dashboard.phase.cronStarted",defaultLabel:"Cron Started"},cron_completed:{icon:vr,color:"text-emerald-600 dark:text-emerald-400",labelKey:"dashboard.phase.cronCompleted",defaultLabel:"Cron Completed"},cron_failed:{icon:ni,color:"text-red-500 dark:text-red-400",labelKey:"dashboard.phase.cronFailed",defaultLabel:"Cron Failed"}};function oie(e){const t=Date.now()-Date.parse(e),n=Math.round(t/1e3);if(n<60)return"just now";const r=Math.round(n/60);if(r<60)return`${r}m ago`;const a=Math.round(r/60);return a<24?`${a}h ago`:`${Math.round(a/24)}d ago`}function lie(e){const t=Date.parse(e);return Number.isNaN(t)?"":new Date(t).toLocaleString([],{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})}const KN=["bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300","bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300","bg-purple-100 text-purple-700 dark:bg-purple-900/40 dark:text-purple-300","bg-amber-100 text-amber-700 dark:bg-amber-900/40 dark:text-amber-300","bg-rose-100 text-rose-700 dark:bg-rose-900/40 dark:text-rose-300","bg-cyan-100 text-cyan-700 dark:bg-cyan-900/40 dark:text-cyan-300","bg-indigo-100 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-300","bg-orange-100 text-orange-700 dark:bg-orange-900/40 dark:text-orange-300"];function cie(e){return KN[e%KN.length]}function uie(e){return e==="run_completed"||e==="run_failed"||e==="no_plan"||e==="cron_completed"||e==="cron_failed"}function die(e){return e==="run_failed"||e==="cron_failed"}function YN(e){return e==="plan_produced"||e==="report_produced"?"detail":e==="execution_started"||e==="execution_completed"?"session":"none"}function pie({onOpenExecutionSession:e}){const{t}=Je("alwaysOn"),[n,r]=h.useState([]),[a,i]=h.useState(!1),[s,l]=h.useState(null),[c,u]=h.useState(null),d=h.useCallback(async()=>{i(!0),l(null);try{const g=await dt.alwaysOnDashboardEvents(sie);if(!g.ok){const x=await g.json().catch(()=>({}));throw new Error(x?.error||`HTTP ${g.status}`)}const b=await g.json();r(Array.isArray(b.events)?b.events:[])}catch(g){l(g instanceof Error?g.message:String(g))}finally{i(!1)}},[]);h.useEffect(()=>{d();const g=window.setInterval(()=>{d()},iie);return()=>window.clearInterval(g)},[d]);const p=h.useMemo(()=>{const g=new Map;let b=0;for(const x of n)g.has(x.projectName)||g.set(x.projectName,b++);return g},[n]),m=h.useMemo(()=>{const g=Date.now(),b=new Date(g);b.setHours(0,0,0,0);const x=b.getTime();let k=0;const y=new Set;let v=0;for(const E of n)Date.parse(E.timestamp)>=x&&k++,y.add(E.projectName),(E.phase==="discovery_started"||E.phase==="execution_started"||E.phase==="cron_started")&&(n.some(w=>w.runId===E.runId&&uie(w.phase))||v++);return{todayEvents:k,activeProjectCount:y.size,runningCount:v}},[n]),f=h.useCallback(g=>{const b=YN(g.phase);b==="detail"?u(g.runId):b==="session"&&e?.(g.projectKey,g.runId,g.projectName)},[e]);return c?o.jsx($6,{runId:c,events:n,onBack:()=>u(null),onOpenExecutionSession:e}):o.jsxs("div",{className:"w-full space-y-5 px-8 py-5",children:[o.jsxs("div",{className:"flex items-start justify-between",children:[o.jsxs("div",{children:[o.jsx("h2",{className:"text-[20px] font-semibold tracking-tight text-neutral-900 dark:text-neutral-100",children:t("dashboard.title",{defaultValue:"Always-On Dashboard"})}),o.jsx("p",{className:"mt-0.5 text-[13px] text-neutral-500 dark:text-neutral-400",children:t("dashboard.subtitle",{defaultValue:"Activity feed across all workspaces."})})]}),o.jsxs("button",{type:"button",onClick:()=>{d()},disabled:a,className:"inline-flex h-8 items-center gap-1.5 rounded-md border border-neutral-200 px-2.5 text-xxs text-neutral-600 transition hover:bg-neutral-50 disabled:opacity-50 dark:border-neutral-800 dark:text-neutral-300 dark:hover:bg-neutral-900",children:[o.jsx(Cr,{className:oe("h-3.5 w-3.5",a&&"animate-spin"),strokeWidth:1.75}),o.jsx("span",{children:t("actions.refresh",{defaultValue:"Refresh"})})]})]}),o.jsxs("div",{className:"grid grid-cols-3 gap-3",children:[o.jsxs("div",{className:"rounded-lg border border-neutral-200 p-3.5 dark:border-neutral-800",children:[o.jsx("div",{className:"text-xxs font-medium uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:t("dashboard.stats.todayEvents",{defaultValue:"Today's Events"})}),o.jsx("div",{className:"mt-1 text-xl font-semibold text-neutral-900 dark:text-neutral-100",children:m.todayEvents})]}),o.jsxs("div",{className:"rounded-lg border border-neutral-200 p-3.5 dark:border-neutral-800",children:[o.jsx("div",{className:"text-xxs font-medium uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:t("dashboard.stats.activeProjects",{defaultValue:"Active Projects"})}),o.jsx("div",{className:"mt-1 text-xl font-semibold text-neutral-900 dark:text-neutral-100",children:m.activeProjectCount})]}),o.jsxs("div",{className:"rounded-lg border border-neutral-200 p-3.5 dark:border-neutral-800",children:[o.jsx("div",{className:"text-xxs font-medium uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:t("dashboard.stats.running",{defaultValue:"Running Now"})}),o.jsx("div",{className:"mt-1 text-xl font-semibold text-neutral-900 dark:text-neutral-100",children:m.runningCount})]})]}),s?o.jsxs("div",{className:"flex items-center gap-2 text-xxs text-red-500",children:[o.jsx(ka,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:s})]}):null,o.jsxs("div",{className:"rounded-xl border border-neutral-200 bg-white dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsx("div",{className:"border-b border-neutral-200 px-5 py-3 dark:border-neutral-800",children:o.jsx("h3",{className:"text-[13px] font-semibold text-neutral-900 dark:text-neutral-100",children:t("dashboard.eventList.title",{defaultValue:"Recent Events"})})}),a&&n.length===0?o.jsxs("div",{className:"flex items-center gap-2 px-5 py-8 text-[13px] text-neutral-500 dark:text-neutral-400",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),o.jsx("span",{children:t("dashboard.loading",{defaultValue:"Loading events…"})})]}):n.length===0?o.jsxs("div",{className:"px-5 py-8 text-center text-[13px] text-neutral-500 dark:text-neutral-400",children:[o.jsx(nx,{className:"mx-auto mb-2 h-8 w-8 text-neutral-300 dark:text-neutral-600",strokeWidth:1.25}),t("dashboard.empty",{defaultValue:"No Always-On events recorded yet."})]}):o.jsx("div",{className:"divide-y divide-neutral-100 dark:divide-neutral-900",children:n.map(g=>{const b=WN[g.phase]||WN.discovery_started,x=b.icon,k=p.get(g.projectName)??0,v=YN(g.phase)!=="none";return o.jsxs("div",{role:v?"button":void 0,tabIndex:v?0:void 0,onClick:v?()=>f(g):void 0,onKeyDown:v?E=>{(E.key==="Enter"||E.key===" ")&&(E.preventDefault(),f(g))}:void 0,className:oe("flex items-start gap-3 px-5 py-3 transition-colors",die(g.phase)&&"bg-red-50/40 dark:bg-red-950/10",v&&"group cursor-pointer hover:bg-neutral-50 dark:hover:bg-neutral-900"),children:[o.jsx("div",{className:oe("mt-0.5 shrink-0",b.color),children:o.jsx(x,{className:"h-4 w-4",strokeWidth:1.75})}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsxs("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:[o.jsx("span",{className:oe("text-[13px] font-medium",b.color,v&&"group-hover:underline"),children:t(b.labelKey,{defaultValue:b.defaultLabel})}),o.jsx("span",{className:oe("inline-flex items-center rounded-full px-2 py-0.5 text-[11px] font-medium",cie(k)),title:g.projectKey,children:g.projectDisplayName})]}),g.title?o.jsx("p",{className:"mt-0.5 truncate text-[13px] text-neutral-700 dark:text-neutral-300",children:g.title}):null,g.error?o.jsxs("p",{className:"mt-0.5 truncate text-[12px] text-red-500 dark:text-red-400",children:[g.error.code,": ",g.error.message]}):null]}),o.jsx("div",{className:"shrink-0 self-center font-mono text-xxs text-neutral-400 dark:text-neutral-500",title:lie(g.timestamp),children:oie(g.timestamp)})]},g.eventId)})})]})]})}const mie=15e3;function fie(e){switch(e){case"ready":return"created";case"queued":return"preparingWorkspace";case"running":return"executing";case"completed":return"completedWaiting";case"failed":return"failed";case"archived":return"archived";default:return"created"}}const hie={created:"bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300",preparingWorkspace:"bg-amber-100 text-amber-700 dark:bg-amber-900/40 dark:text-amber-300",executing:"bg-indigo-100 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-300",completedWaiting:"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300",failed:"bg-red-100 text-red-700 dark:bg-red-900/40 dark:text-red-300",archived:"bg-neutral-100 text-neutral-500 dark:bg-neutral-800 dark:text-neutral-400"},gie={created:{key:"plansCron.status.created",defaultValue:"Created"},preparingWorkspace:{key:"plansCron.status.preparingWorkspace",defaultValue:"Preparing Workspace"},executing:{key:"plansCron.status.executing",defaultValue:"Executing"},completedWaiting:{key:"plansCron.status.completedWaiting",defaultValue:"Completed"},failed:{key:"plansCron.status.failed",defaultValue:"Failed"},archived:{key:"plansCron.status.archived",defaultValue:"Archived"}},bie={scheduled:"bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-300",running:"bg-indigo-100 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-300"},xie={scheduled:{key:"plansCron.status.scheduled",defaultValue:"Scheduled"},running:{key:"plansCron.status.running",defaultValue:"Running"}};function yie(e){const t=typeof e=="number"?e:Date.parse(e);return Number.isNaN(t)?"":new Date(t).toLocaleString([],{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hour12:!1})}const ya={title:"min-w-0 flex-1 max-w-[380px]",createdAt:"w-[150px] shrink-0",status:"w-[160px] shrink-0",actions:"w-[140px] shrink-0"};function vie({onApplyWorkCycle:e,onOpenPlanDetail:t}){const{t:n}=Je("alwaysOn"),[r,a]=h.useState(!1),[i,s]=h.useState(null),[l,c]=h.useState([]),[u,d]=h.useState(new Map),[p,m]=h.useState(new Map),[f,g]=h.useState([]),[b,x]=h.useState(new Set),[k,y]=h.useState(null),[v,E]=h.useState(null),[N,w]=h.useState(new Set),T=I=>{w(z=>{const M=new Set(z);return M.has(I)?M.delete(I):M.add(I),M})},j=h.useCallback(async()=>{a(!0),s(null);try{const I=await dt.projects();if(!I.ok)throw new Error(`Projects: HTTP ${I.status}`);const z=await I.json();c(z);const[M,...P]=await Promise.all([dt.allCronJobs(),...z.flatMap(U=>[dt.projectDiscoveryPlans(U.name),dt.projectWorkCycles(U.name)])]);if(M.ok){const U=await M.json();g(Array.isArray(U.jobs)?U.jobs:[])}else g([]);const B=new Map,$=new Map;for(let U=0;U0&&B.set(z[U].name,K.plans)}if(A&&A.ok){const K=await A.json();Array.isArray(K.cycles)&&K.cycles.length>0&&$.set(z[U].name,K.cycles)}}d(B),m($)}catch(I){s(I instanceof Error?I.message:String(I))}finally{a(!1)}},[]);h.useEffect(()=>{j();const I=window.setInterval(()=>{j()},mie);return()=>window.clearInterval(I)},[j]);const _=h.useMemo(()=>{const I=new Map;for(const B of l)I.set(B.name,B);const z=new Map;for(const[B,$]of u){const U=I.get(B),q=U?.displayName||B;z.has(B)||z.set(B,{displayName:q,items:[]});for(const A of $)z.get(B).items.push({kind:"plan",data:A,projectName:B,projectDisplayName:q,projectKey:U?.fullPath||""})}const M=f.filter(B=>B.status==="scheduled"||B.status==="running"),P=new Map;for(const B of l)P.set(B.name,B.name),B.fullPath&&P.set(B.fullPath,B.name);for(const B of M){const $=B.projectKey?P.get(B.projectKey)||B.projectKey:"__unassigned__",U=I.get($),q=U?.displayName||($==="__unassigned__"?"":$);z.has($)||z.set($,{displayName:q,items:[]}),z.get($).items.push({kind:"cron",data:B,projectName:$,projectDisplayName:q,projectKey:U?.fullPath||""})}for(const B of z.values())B.items.sort(($,U)=>{const q=Date.parse($.data.createdAt)||0;return(Date.parse(U.data.createdAt)||0)-q});return z},[l,u,f]),C=h.useMemo(()=>{let I=0;for(const z of _.values())I+=z.items.length;return I},[_]),O=I=>{x(z=>{const M=new Set(z);return M.has(I)?M.delete(I):M.add(I),M})};return o.jsxs("div",{className:"w-full space-y-5 px-8 py-5",children:[o.jsxs("div",{className:"flex items-start justify-between",children:[o.jsxs("div",{children:[o.jsx("h2",{className:"text-[20px] font-semibold tracking-tight text-neutral-900 dark:text-neutral-100",children:n("plansCron.title",{defaultValue:"Plans & Cron Jobs"})}),o.jsx("p",{className:"mt-0.5 text-[13px] text-neutral-500 dark:text-neutral-400",children:n("plansCron.subtitle",{defaultValue:"All plans and cron jobs across projects."})})]}),o.jsxs("button",{type:"button",onClick:()=>{j()},disabled:r,className:"inline-flex h-8 items-center gap-1.5 rounded-md border border-neutral-200 px-2.5 text-xxs text-neutral-600 transition hover:bg-neutral-50 disabled:opacity-50 dark:border-neutral-800 dark:text-neutral-300 dark:hover:bg-neutral-900",children:[o.jsx(Cr,{className:oe("h-3.5 w-3.5",r&&"animate-spin"),strokeWidth:1.75}),o.jsx("span",{children:n("actions.refresh",{defaultValue:"Refresh"})})]})]}),i?o.jsxs("div",{className:"flex items-center gap-2 text-xxs text-red-500",children:[o.jsx(ka,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:i})]}):null,r&&C===0?o.jsxs("div",{className:"flex items-center gap-2 py-8 text-[13px] text-neutral-500 dark:text-neutral-400",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),o.jsx("span",{children:n("plansCron.loading",{defaultValue:"Loading plans and cron jobs…"})})]}):C===0&&!r?o.jsxs("div",{className:"py-8 text-center text-[13px] text-neutral-500 dark:text-neutral-400",children:[o.jsx(yr,{className:"mx-auto mb-2 h-8 w-8 text-neutral-300 dark:text-neutral-600",strokeWidth:1.25}),n("plansCron.empty",{defaultValue:"No plans or cron jobs found."})]}):o.jsx("div",{className:"space-y-4",children:[..._.entries()].map(([I,{displayName:z,items:M}])=>{const P=b.has(I),B=I==="__unassigned__"?n("plansCron.unassigned",{defaultValue:"Unassigned"}):z;return o.jsxs("div",{className:"overflow-hidden rounded-xl border border-neutral-200 bg-white dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsxs("button",{type:"button",onClick:()=>O(I),className:"flex w-full items-center gap-2 px-5 py-3 text-left transition-colors hover:bg-neutral-50 dark:hover:bg-neutral-900",children:[P?o.jsx(qn,{className:"h-4 w-4 shrink-0 text-neutral-400",strokeWidth:1.75}):o.jsx(Sn,{className:"h-4 w-4 shrink-0 text-neutral-400",strokeWidth:1.75}),o.jsx("span",{className:"text-[13px] font-semibold text-neutral-900 dark:text-neutral-100",children:B}),o.jsx("span",{className:"ml-auto text-xxs tabular-nums text-neutral-400 dark:text-neutral-500",children:M.length})]}),!P&&(()=>{const $=M.filter(he=>he.kind==="plan"),U=M.filter(he=>he.kind==="cron"),A=(p.get(I)??[]).find(he=>he.status==="active"||he.status==="applying"),K=$.some(he=>he.data.status==="completed"),V=!!A&&A.status==="active"&&K,L=!!A&&A.status==="active",le=A?.status==="applying",re=!!A&&k===A.id,ne=async()=>{if(!(!A||re)){y(A.id);try{if(e)await e(I,A.id);else{const he=await dt.applyWorkCycle(I,A.id);if(!he.ok){const tt=await he.json().catch(()=>({}));throw new Error(tt?.error||`HTTP ${he.status}`)}}await j()}catch{}finally{y(null)}}},de=async()=>{if(!(!A||re)){y(A.id);try{const he=await dt.archiveWorkCycle(I,A.id);if(!he.ok){const tt=await he.json().catch(()=>({}));throw new Error(tt?.error||`HTTP ${he.status}`)}await j()}catch{}finally{y(null),E(null)}}},Se=!!A&&v===A.id;return o.jsxs(o.Fragment,{children:[$.length>0&&o.jsxs(XN,{sectionKey:`${I}::plans`,label:`${n("plansCron.type.plan",{defaultValue:"Plan"})} (${$.length})`,collapsedSections:N,toggleSection:T,actions:o.jsxs("div",{className:"flex items-center gap-1.5",children:[le&&o.jsxs("span",{className:"inline-flex items-center gap-1 text-xxs text-sky-600 dark:text-sky-400",children:[o.jsx(pt,{className:"h-3 w-3 animate-spin",strokeWidth:2}),n("plansCron.cycleStatus.applying",{defaultValue:"Applying…"})]}),V&&!le&&o.jsx("button",{type:"button",disabled:re,onClick:()=>{ne()},className:"inline-flex h-7 items-center rounded-md bg-emerald-600 px-2.5 text-[11px] font-medium text-white transition hover:bg-emerald-700 disabled:opacity-50 dark:bg-emerald-700 dark:hover:bg-emerald-600",children:re?o.jsx(pt,{className:"h-3 w-3 animate-spin",strokeWidth:2}):n("plansCron.actions.applyCycle",{defaultValue:"Apply All"})}),L&&!Se&&o.jsx("button",{type:"button",disabled:re,onClick:()=>E(A.id),className:"inline-flex h-7 items-center rounded-md border border-neutral-200 px-2 text-neutral-500 transition hover:border-red-300 hover:text-red-600 disabled:opacity-50 dark:border-neutral-700 dark:text-neutral-400 dark:hover:border-red-700 dark:hover:text-red-400",title:n("plansCron.actions.archiveCycle",{defaultValue:"Archive"}),children:o.jsx(za,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),Se&&o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx("button",{type:"button",disabled:re,onClick:()=>{de()},className:"inline-flex h-7 items-center rounded-md bg-red-600 px-2.5 text-[11px] font-medium text-white transition hover:bg-red-700 disabled:opacity-50",children:re?o.jsx(pt,{className:"h-3 w-3 animate-spin",strokeWidth:2}):n("plansCron.actions.archiveCycle",{defaultValue:"Archive"})}),o.jsx("button",{type:"button",onClick:()=>E(null),className:"inline-flex h-7 items-center rounded-md border border-neutral-200 px-2 text-[11px] text-neutral-500 transition hover:bg-neutral-100 dark:border-neutral-700 dark:text-neutral-400 dark:hover:bg-neutral-800",children:"✕"})]})]}),children:[o.jsx(ZN,{t:n}),o.jsx("div",{className:"divide-y divide-neutral-100 dark:divide-neutral-900",children:$.map(he=>o.jsx(JN,{item:he,t:n,onRefresh:j,onOpenPlanDetail:t},`plan-${he.data.id}`))})]}),U.length>0&&o.jsxs(XN,{sectionKey:`${I}::crons`,label:`${n("plansCron.type.cronJob",{defaultValue:"Cron Jobs"})} (${U.length})`,collapsedSections:N,toggleSection:T,children:[o.jsx(ZN,{t:n}),o.jsx("div",{className:"divide-y divide-neutral-100 dark:divide-neutral-900",children:U.map(he=>o.jsx(JN,{item:he,t:n,onRefresh:j,onOpenPlanDetail:t},`cron-${he.data.id}`))})]})]})})()]},I)})})]})}function XN({sectionKey:e,label:t,collapsedSections:n,toggleSection:r,actions:a,children:i}){const s=n.has(e);return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"flex items-center gap-2 border-t border-neutral-200 bg-neutral-50/80 px-5 py-2 dark:border-neutral-800 dark:bg-neutral-900/30",children:[o.jsxs("button",{type:"button",onClick:()=>r(e),className:"flex items-center gap-1.5 text-xxs font-semibold uppercase tracking-wider text-neutral-500 transition-colors hover:text-neutral-700 dark:text-neutral-400 dark:hover:text-neutral-200",children:[s?o.jsx(qn,{className:"h-3.5 w-3.5 shrink-0",strokeWidth:1.75}):o.jsx(Sn,{className:"h-3.5 w-3.5 shrink-0",strokeWidth:1.75}),t]}),!s&&a&&o.jsx("div",{className:"ml-auto",children:a})]}),!s&&i]})}function ZN({t:e}){return o.jsxs("div",{className:"flex items-center gap-4 border-b border-neutral-200 bg-neutral-50 px-5 py-2 dark:border-neutral-800 dark:bg-neutral-900/50",children:[o.jsx("div",{className:ya.title,children:o.jsx("span",{className:"text-xxs font-medium uppercase tracking-wider text-neutral-500 dark:text-neutral-400",children:e("plansCron.columns.title",{defaultValue:"Title"})})}),o.jsx("div",{className:ya.createdAt,children:o.jsx("span",{className:"text-xxs font-medium uppercase tracking-wider text-neutral-500 dark:text-neutral-400",children:e("plansCron.columns.createdAt",{defaultValue:"Created"})})}),o.jsx("div",{className:ya.status,children:o.jsx("span",{className:"text-xxs font-medium uppercase tracking-wider text-neutral-500 dark:text-neutral-400",children:e("plansCron.columns.status",{defaultValue:"Status"})})}),o.jsx("div",{className:ya.actions,children:o.jsx("span",{className:"text-xxs font-medium uppercase tracking-wider text-neutral-500 dark:text-neutral-400",children:e("plansCron.columns.actions",{defaultValue:"Actions"})})})]})}function JN({item:e,t,onRefresh:n,onOpenPlanDetail:r}){const[a,i]=h.useState(!1),s=e.kind==="plan",l=s?e.data:null,c=s?null:e.data,u=s?l.title||"—":c.prompt||"—",d=s?l.title||"":c.prompt||"",p=s?l.createdAt:c.createdAt;let m,f,g=null;if(s){g=fie(l.status);const N=gie[g];m=t(N.key,{defaultValue:N.defaultValue}),f=hie[g]}else{const N=c.status==="running"?"running":"scheduled",w=xie[N];m=t(w.key,{defaultValue:w.defaultValue}),f=bie[N]}const b=s&&g==="failed",x=async()=>{if(!(!l||a)){i(!0);try{const N=await dt.executeProjectDiscoveryPlan(e.projectName,l.id,{source:"manual"});if(!N.ok){const w=await N.json().catch(()=>({}));throw new Error(w?.error||`HTTP ${N.status}`)}await n()}catch{}finally{i(!1)}}},k=async()=>{if(!(!c||a)){i(!0);try{const N=await dt.cronDelete(c.id);if(!N.ok){const w=await N.json().catch(()=>({}));throw new Error(w?.error||`HTTP ${N.status}`)}await n()}catch{}finally{i(!1)}}},y=async()=>{if(!(!c||a)){i(!0);try{const N=await dt.cronRunNow(c.id);if(!N.ok){const w=await N.json().catch(()=>({}));throw new Error(w?.error||`HTTP ${N.status}`)}await n()}catch{}finally{i(!1)}}},v=async()=>{if(!(!c||a)){i(!0);try{const N=await dt.cronStop(c.id);if(!N.ok){const w=await N.json().catch(()=>({}));throw new Error(w?.error||`HTTP ${N.status}`)}await n()}catch{}finally{i(!1)}}},E=!s&&c?.status==="running";return o.jsxs("div",{className:"flex items-center gap-4 px-5 py-2.5 transition-colors hover:bg-neutral-50 dark:hover:bg-neutral-900/40",children:[o.jsx("div",{className:oe(ya.title,"truncate text-[13px] text-neutral-900 dark:text-neutral-100"),title:d,children:s&&r?o.jsx("button",{type:"button",onClick:()=>r(l.id,e.projectName,e.projectDisplayName,l.sourceRunId||l.sourceDiscoverySessionId||"",e.projectKey),className:"truncate text-left hover:underline",children:u}):u}),o.jsx("div",{className:oe(ya.createdAt,"font-mono text-xxs tabular-nums text-neutral-500 dark:text-neutral-400"),children:yie(p)}),o.jsx("div",{className:ya.status,children:o.jsx("span",{className:oe("inline-block rounded-full px-2 py-0.5 text-[11px] font-medium",f),children:m})}),o.jsx("div",{className:oe(ya.actions,"flex items-center gap-1.5"),children:s?o.jsx(o.Fragment,{children:b&&o.jsx("button",{type:"button",disabled:a,onClick:()=>{x()},className:"inline-flex h-7 items-center rounded-md bg-blue-600 px-2.5 text-[11px] font-medium text-white transition hover:bg-blue-700 disabled:opacity-50 dark:bg-blue-700 dark:hover:bg-blue-600",children:a?o.jsx(pt,{className:"h-3 w-3 animate-spin",strokeWidth:2}):t("plansCron.actions.retry",{defaultValue:"Retry"})})}):o.jsxs(o.Fragment,{children:[E?o.jsx("button",{type:"button",disabled:a,onClick:()=>{v()},className:"inline-flex h-7 items-center gap-1 rounded-md bg-red-600 px-2.5 text-[11px] font-medium text-white transition hover:bg-red-700 disabled:opacity-50 dark:bg-red-700 dark:hover:bg-red-600",children:a?o.jsx(pt,{className:"h-3 w-3 animate-spin",strokeWidth:2}):o.jsxs(o.Fragment,{children:[o.jsx(TT,{className:"h-3 w-3",strokeWidth:2}),t("plansCron.actions.stop",{defaultValue:"Stop"})]})}):o.jsx("button",{type:"button",disabled:a,onClick:()=>{y()},className:"inline-flex h-7 items-center gap-1 rounded-md bg-blue-600 px-2.5 text-[11px] font-medium text-white transition hover:bg-blue-700 disabled:opacity-50 dark:bg-blue-700 dark:hover:bg-blue-600",children:a?o.jsx(pt,{className:"h-3 w-3 animate-spin",strokeWidth:2}):o.jsxs(o.Fragment,{children:[o.jsx(Fg,{className:"h-3 w-3",strokeWidth:2}),t("plansCron.actions.runNow",{defaultValue:"Run Now"})]})}),o.jsx("button",{type:"button",disabled:a,onClick:()=>{k()},className:"inline-flex h-7 items-center rounded-md border border-neutral-200 px-2 text-neutral-500 transition hover:border-red-300 hover:text-red-600 disabled:opacity-50 dark:border-neutral-700 dark:text-neutral-400 dark:hover:border-red-700 dark:hover:text-red-400",title:t("plansCron.actions.delete",{defaultValue:"Delete"}),children:o.jsx(en,{className:"h-3.5 w-3.5",strokeWidth:1.75})})]})})]})}const kie=[{id:"dashboard",labelKey:"tabs.dashboard",defaultLabel:"Dashboard",icon:xT},{id:"plans-cron",labelKey:"tabs.plansCron",defaultLabel:"Plans & Cron Jobs",icon:ET}];function wie({selectedProject:e,onApplyWorkCycle:t,onOpenExecutionSession:n}){const{t:r}=Je("alwaysOn"),[a,i]=h.useState("dashboard"),[s,l]=h.useState(null),c=h.useCallback((u,d,p,m,f)=>{l({planId:u,projectName:d,projectDisplayName:p,sourceRunId:m,projectKey:f})},[]);return e?o.jsxs("div",{className:"flex h-full flex-col bg-white dark:bg-neutral-950",children:[o.jsx("div",{className:"flex shrink-0 gap-1 border-b border-neutral-200 px-8 pt-4 dark:border-neutral-800",children:kie.map(u=>{const d=u.icon,p=a===u.id;return o.jsxs("button",{type:"button",onClick:()=>i(u.id),className:oe("inline-flex items-center gap-1.5 border-b-2 px-3 pb-2 text-[13px] font-medium transition-colors",p?"border-blue-500 text-blue-600 dark:border-blue-400 dark:text-blue-400":"border-transparent text-neutral-500 hover:text-neutral-700 dark:text-neutral-400 dark:hover:text-neutral-200"),children:[o.jsx(d,{className:"h-3.5 w-3.5",strokeWidth:1.75}),r(u.labelKey,{defaultValue:u.defaultLabel})]},u.id)})}),o.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:s?o.jsx($6,{planId:s.planId,projectName:s.projectName,projectDisplayName:s.projectDisplayName,runId:s.sourceRunId,projectKey:s.projectKey,backLabel:r("dashboard.runDetail.backToPlans",{defaultValue:"Back to Plans & Cron Jobs"}),onBack:()=>l(null),onOpenExecutionSession:n}):a==="dashboard"?o.jsx(pie,{onOpenExecutionSession:n}):o.jsx(vie,{onApplyWorkCycle:t,onOpenPlanDetail:c})})]}):o.jsx("div",{className:"flex h-full items-center justify-center bg-white text-[13px] text-neutral-500 dark:bg-neutral-950 dark:text-neutral-400",children:r("emptyProject",{defaultValue:"Pick a project to view Always-On."})})}function Sie(e){const[t,n]=h.useState([]),[r,a]=h.useState(!1),[i,s]=h.useState(0),l=h.useRef(null),c=h.useCallback(()=>{s(u=>u+1)},[]);return h.useEffect(()=>{const u=e?.name;if(!u){n([]),a(!1);return}l.current&&l.current.abort(),l.current=new AbortController;let d=!0;return(async()=>{d&&a(!0);try{const m=await dt.getFiles(u,{signal:l.current.signal});if(!m.ok){const g=await m.text();console.error("File fetch failed:",m.status,g),d&&n([]);return}const f=await m.json();d&&n(f)}catch(m){if(m.name==="AbortError")return;console.error("Error fetching files:",m),d&&n([])}finally{d&&a(!1)}})(),()=>{d=!1,l.current?.abort()}},[e?.name,i]),{files:t,loading:r,refreshFiles:c}}const QN={js:{icon:Ns,color:"text-yellow-500"},jsx:{icon:Ns,color:"text-yellow-500"},mjs:{icon:Ns,color:"text-yellow-500"},cjs:{icon:Ns,color:"text-yellow-500"},ts:{icon:Cs,color:"text-blue-500"},tsx:{icon:Cs,color:"text-blue-500"},mts:{icon:Cs,color:"text-blue-500"},py:{icon:to,color:"text-emerald-500"},pyw:{icon:to,color:"text-emerald-500"},pyi:{icon:to,color:"text-emerald-400"},ipynb:{icon:dO,color:"text-orange-500"},rs:{icon:Gs,color:"text-orange-600"},toml:{icon:Zt,color:"text-gray-500"},go:{icon:Vs,color:"text-cyan-500"},rb:{icon:Pg,color:"text-red-500"},erb:{icon:Pg,color:"text-red-400"},php:{icon:Nj,color:"text-violet-500"},java:{icon:S1,color:"text-red-600"},jar:{icon:S1,color:"text-red-500"},kt:{icon:Vs,color:"text-violet-500"},kts:{icon:Vs,color:"text-violet-400"},c:{icon:Es,color:"text-blue-600"},h:{icon:Es,color:"text-blue-400"},cpp:{icon:Es,color:"text-blue-700"},hpp:{icon:Es,color:"text-blue-500"},cc:{icon:Es,color:"text-blue-700"},cs:{icon:Vs,color:"text-purple-600"},swift:{icon:Mg,color:"text-orange-500"},lua:{icon:qO,color:"text-blue-500"},r:{icon:O8,color:"text-blue-600"},html:{icon:Hl,color:"text-orange-600"},htm:{icon:Hl,color:"text-orange-600"},css:{icon:Ii,color:"text-blue-500"},scss:{icon:Ii,color:"text-pink-500"},sass:{icon:Ii,color:"text-pink-400"},less:{icon:Ii,color:"text-indigo-500"},vue:{icon:Cs,color:"text-emerald-500"},svelte:{icon:Cs,color:"text-orange-500"},json:{icon:Bi,color:"text-yellow-600"},jsonc:{icon:Bi,color:"text-yellow-500"},json5:{icon:Bi,color:"text-yellow-500"},yaml:{icon:Zt,color:"text-purple-400"},yml:{icon:Zt,color:"text-purple-400"},xml:{icon:Ns,color:"text-orange-500"},csv:{icon:E1,color:"text-green-600"},tsv:{icon:E1,color:"text-green-500"},sql:{icon:ax,color:"text-blue-500"},graphql:{icon:T1,color:"text-pink-500"},gql:{icon:T1,color:"text-pink-500"},proto:{icon:Hs,color:"text-green-500"},env:{icon:Xr,color:"text-yellow-600"},md:{icon:Og,color:"text-blue-500"},mdx:{icon:Og,color:"text-blue-400"},txt:{icon:yr,color:"text-gray-500"},doc:{icon:yr,color:"text-blue-600"},docx:{icon:yr,color:"text-blue-600"},pdf:{icon:Dg,color:"text-red-600"},rtf:{icon:yr,color:"text-gray-500"},tex:{icon:Bg,color:"text-teal-600"},rst:{icon:yr,color:"text-gray-400"},sh:{icon:Or,color:"text-green-500"},bash:{icon:Or,color:"text-green-500"},zsh:{icon:Or,color:"text-green-400"},fish:{icon:Or,color:"text-green-400"},ps1:{icon:Or,color:"text-blue-400"},bat:{icon:Or,color:"text-gray-500"},cmd:{icon:Or,color:"text-gray-500"},png:{icon:xr,color:"text-purple-500"},jpg:{icon:xr,color:"text-purple-500"},jpeg:{icon:xr,color:"text-purple-500"},gif:{icon:xr,color:"text-purple-400"},webp:{icon:xr,color:"text-purple-400"},ico:{icon:xr,color:"text-purple-400"},bmp:{icon:xr,color:"text-purple-400"},tiff:{icon:xr,color:"text-purple-400"},svg:{icon:NT,color:"text-amber-500"},mp3:{icon:bi,color:"text-pink-500"},wav:{icon:bi,color:"text-pink-500"},ogg:{icon:bi,color:"text-pink-400"},flac:{icon:bi,color:"text-pink-400"},aac:{icon:bi,color:"text-pink-400"},m4a:{icon:bi,color:"text-pink-400"},mp4:{icon:Is,color:"text-rose-500"},mov:{icon:Is,color:"text-rose-500"},avi:{icon:Is,color:"text-rose-500"},webm:{icon:Is,color:"text-rose-400"},mkv:{icon:Is,color:"text-rose-400"},ttf:{icon:As,color:"text-red-500"},otf:{icon:As,color:"text-red-500"},woff:{icon:As,color:"text-red-400"},woff2:{icon:As,color:"text-red-400"},eot:{icon:As,color:"text-red-400"},zip:{icon:za,color:"text-amber-600"},tar:{icon:za,color:"text-amber-600"},gz:{icon:za,color:"text-amber-600"},bz2:{icon:za,color:"text-amber-600"},rar:{icon:za,color:"text-amber-500"},"7z":{icon:za,color:"text-amber-500"},lock:{icon:fa,color:"text-gray-500"},exe:{icon:gi,color:"text-gray-500"},bin:{icon:gi,color:"text-gray-500"},dll:{icon:gi,color:"text-gray-400"},so:{icon:gi,color:"text-gray-400"},dylib:{icon:gi,color:"text-gray-400"},wasm:{icon:gi,color:"text-purple-500"},ini:{icon:Zt,color:"text-gray-500"},cfg:{icon:Zt,color:"text-gray-500"},conf:{icon:Zt,color:"text-gray-500"},log:{icon:Bg,color:"text-gray-400"},map:{icon:wT,color:"text-gray-400"}},e5={Dockerfile:{icon:Hs,color:"text-blue-500"},"docker-compose.yml":{icon:Hs,color:"text-blue-500"},"docker-compose.yaml":{icon:Hs,color:"text-blue-500"},".dockerignore":{icon:Hs,color:"text-gray-500"},".gitignore":{icon:Zt,color:"text-gray-500"},".gitmodules":{icon:Zt,color:"text-gray-500"},".gitattributes":{icon:Zt,color:"text-gray-500"},".editorconfig":{icon:Zt,color:"text-gray-500"},".prettierrc":{icon:Zt,color:"text-pink-400"},".prettierignore":{icon:Zt,color:"text-gray-500"},".eslintrc":{icon:Zt,color:"text-violet-500"},".eslintrc.js":{icon:Zt,color:"text-violet-500"},".eslintrc.json":{icon:Zt,color:"text-violet-500"},".eslintrc.cjs":{icon:Zt,color:"text-violet-500"},"eslint.config.js":{icon:Zt,color:"text-violet-500"},"eslint.config.mjs":{icon:Zt,color:"text-violet-500"},".env":{icon:Xr,color:"text-yellow-600"},".env.local":{icon:Xr,color:"text-yellow-600"},".env.development":{icon:Xr,color:"text-yellow-500"},".env.production":{icon:Xr,color:"text-yellow-600"},".env.example":{icon:Xr,color:"text-yellow-400"},"package.json":{icon:Bi,color:"text-green-500"},"package-lock.json":{icon:fa,color:"text-gray-500"},"yarn.lock":{icon:fa,color:"text-blue-400"},"pnpm-lock.yaml":{icon:fa,color:"text-orange-400"},"bun.lockb":{icon:fa,color:"text-gray-400"},"Cargo.toml":{icon:Gs,color:"text-orange-600"},"Cargo.lock":{icon:fa,color:"text-orange-400"},Gemfile:{icon:Pg,color:"text-red-500"},"Gemfile.lock":{icon:fa,color:"text-red-400"},Makefile:{icon:Or,color:"text-gray-500"},"CMakeLists.txt":{icon:Gs,color:"text-blue-500"},"tsconfig.json":{icon:Bi,color:"text-blue-500"},"jsconfig.json":{icon:Bi,color:"text-yellow-500"},"vite.config.ts":{icon:Mg,color:"text-purple-500"},"vite.config.js":{icon:Mg,color:"text-purple-500"},"webpack.config.js":{icon:Gs,color:"text-blue-500"},"tailwind.config.js":{icon:Ii,color:"text-cyan-500"},"tailwind.config.ts":{icon:Ii,color:"text-cyan-500"},"postcss.config.js":{icon:Gs,color:"text-red-400"},"babel.config.js":{icon:Zt,color:"text-yellow-500"},".babelrc":{icon:Zt,color:"text-yellow-500"},"README.md":{icon:Og,color:"text-blue-500"},LICENSE:{icon:Dg,color:"text-gray-500"},"LICENSE.md":{icon:Dg,color:"text-gray-500"},"CHANGELOG.md":{icon:Bg,color:"text-blue-400"},"requirements.txt":{icon:yr,color:"text-emerald-400"},"go.mod":{icon:Vs,color:"text-cyan-500"},"go.sum":{icon:fa,color:"text-cyan-400"}};function Eie(e){if(e5[e])return e5[e];if(e.startsWith(".env"))return{icon:Xr,color:"text-yellow-600"};const t=e.split(".").pop()?.toLowerCase();return t&&QN[t]?QN[t]:{icon:wT,color:"text-muted-foreground"}}const Cie=180,Nie=200,vl=8;function t5(e,t){const n=window.innerWidth-Cie-vl,r=window.innerHeight-Nie-vl;return{x:Math.max(vl,Math.min(e,n)),y:Math.max(vl,Math.min(t,r))}}function U6(e,t,n=0,r=""){const a=[];for(const i of e)a.push({node:i,depth:n,parentPath:r}),i.type==="directory"&&t.has(i.path)&&i.children&&a.push(...U6(i.children,t,n+1,i.path));return a}function Tie({selectedProject:e,onFileOpen:t,onClose:n}){const{t:r}=Je(),{files:a,loading:i,refreshFiles:s}=Sie(e),[l,c]=h.useState(new Set),[u,d]=h.useState(null),[p,m]=h.useState(null),[f,g]=h.useState(null),[b,x]=h.useState(!1),[k,y]=h.useState(!1),[v,E]=h.useState(!1),N=h.useRef(null),w=h.useRef(!1),T=h.useRef(null),j=h.useRef(null);h.useEffect(()=>{c(new Set),d(null),m(null),g(null),E(!1)},[e?.name]);const _=h.useCallback(ee=>{j.current=ee,ee&&(ee.setAttribute("webkitdirectory",""),ee.setAttribute("directory",""))},[]);h.useEffect(()=>{if(!v)return;const ee=()=>E(!1);return window.addEventListener("click",ee),()=>window.removeEventListener("click",ee)},[v]);const C=h.useMemo(()=>U6(a,l),[a,l]),O=e?.name??"",I=h.useCallback(ee=>{c(X=>{const ae=new Set(X);return ae.has(ee)?ae.delete(ee):ae.add(ee),ae})},[]),z=h.useCallback(()=>{c(new Set)},[]),M=h.useCallback(ee=>{if(d(ee.path),ee.type==="directory"){I(ee.path);return}t?.(ee.path)},[t,I]),P=h.useCallback(()=>m(null),[]),B=h.useCallback((ee,X)=>{ee.preventDefault(),ee.stopPropagation();const ae=t5(ee.clientX,ee.clientY);m({node:X,x:ae.x,y:ae.y})},[]),$=h.useCallback(ee=>{if(ee.target.closest("li"))return;ee.preventDefault();const X=t5(ee.clientX,ee.clientY);m({node:null,x:X.x,y:X.y})},[]);h.useEffect(()=>{if(!p)return;const ee=()=>P(),X=ae=>{ae.key==="Escape"&&ee()};return window.addEventListener("click",ee),window.addEventListener("resize",ee),window.addEventListener("scroll",ee,!0),window.addEventListener("keydown",X),()=>{window.removeEventListener("click",ee),window.removeEventListener("resize",ee),window.removeEventListener("scroll",ee,!0),window.removeEventListener("keydown",X)}},[p,P]),h.useEffect(()=>{if(f&&N.current)if(N.current.focus(),f.kind==="rename"){const ee=f.currentName.lastIndexOf("."),X=ee>0?ee:f.currentName.length;N.current.setSelectionRange(0,X)}else N.current.select()},[f]);const U=h.useCallback(async ee=>{if(!e||!f)return;const X=ee.trim();if(!X){g(null);return}try{if(f.kind==="rename"){if(X===f.currentName){g(null);return}await dt.renameFile(O,{oldPath:f.path,newName:X})}else{const ae=f.parentPath||"";await dt.createFile(O,{path:ae||void 0,type:f.type,name:X}),ae&&c(te=>{const J=new Set(te);return J.add(ae),J})}await s()}catch(ae){console.error("File operation failed:",ae)}g(null)},[f,O,s,e]),q=h.useCallback(ee=>{if(ee.key==="Enter"){if(En(ee))return;ee.preventDefault(),U(ee.currentTarget.value)}else ee.key==="Escape"&&(ee.preventDefault(),w.current=!0,g(null))},[U]),A=h.useCallback(ee=>{if(w.current){w.current=!1,g(null);return}U(ee.currentTarget.value)},[U]),K=h.useCallback((ee,X)=>{P(),ee&&c(ae=>{const te=new Set(ae);return te.add(ee),te}),g({kind:"create",parentPath:ee,type:"file",depth:X})},[P]),V=h.useCallback((ee,X)=>{P(),ee&&c(ae=>{const te=new Set(ae);return te.add(ee),te}),g({kind:"create",parentPath:ee,type:"directory",depth:X})},[P]),L=h.useCallback((ee,X)=>{P(),g({kind:"rename",path:ee.path,currentName:ee.name,depth:X})},[P]),le=h.useCallback(async ee=>{if(P(),!(!e||!window.confirm(`Delete "${ee.name}"?${ee.type==="directory"?" This will delete all contents.":""}`)))try{await dt.deleteFile(O,{path:ee.path,type:ee.type==="directory"?"directory":"file"}),await s()}catch(ae){console.error("Delete failed:",ae)}},[P,O,s,e]),re=h.useCallback(ee=>{P(),ta(ee.path)},[P]),ne=h.useCallback(ee=>{P(),t?.(ee.path)},[P,t]),de=e?.fullPath||e?.path||"",Se=h.useCallback(async ee=>{if(!e?.name||!ee||ee.length===0)return;const X=Array.from(ee),ae=X.map(J=>J.webkitRelativePath||J.name),te=new FormData;te.append("targetPath",""),te.append("relativePaths",JSON.stringify(ae));for(const J of X)te.append("files",J);try{x(!0),E(!1);const J=await dt.uploadFiles(e.name,te);if(!J.ok){const H=await J.text().catch(()=>"");throw new Error(H||`Upload failed: ${J.status}`)}await s()}catch(J){console.error("Failed to upload files:",J)}finally{x(!1)}},[s,e?.name]),he=h.useCallback(async()=>{if(!(!e?.name||k))try{y(!0);const ee=await dt.downloadProjectZip(e.name);if(!ee.ok)throw new Error(`Download failed: ${ee.status}`);const X=await ee.blob(),ae=URL.createObjectURL(X),te=document.createElement("a");te.href=ae,te.download=`${e.displayName||e.name}.zip`,document.body.appendChild(te),te.click(),document.body.removeChild(te),URL.revokeObjectURL(ae)}catch(ee){console.error("Failed to download project archive:",ee)}finally{y(!1)}},[k,e?.displayName,e?.name]),tt=h.useCallback((ee,X)=>{if(ee.stopPropagation(),!e?.name)return;const ae=dt.projectPreviewUrl(e.name,X.path,de);window.open(ae,"_blank","noopener")},[de,e?.name]),Me=h.useCallback((ee,X)=>{if(ee?.stopPropagation(),!e?.name||X.type==="directory")return;const ae=dt.fileDownloadUrl(e.name,X.path),te=document.createElement("a");te.href=ae,te.download=X.name,document.body.appendChild(te),te.click(),document.body.removeChild(te)},[e?.name]),Fe=h.useCallback(()=>{if(!u)return;const ee=C.find(X=>X.node.path===u);ee&&le(ee.node)},[u,C,le]),ge=h.useMemo(()=>{const ee=new Map;for(const{node:X,depth:ae}of C)ee.set(X.path,ae);return ee},[C]);if(!e)return o.jsx("div",{className:"flex h-full items-center justify-center bg-white text-[13px] text-neutral-500 dark:bg-neutral-950 dark:text-neutral-400",children:r("fileTree.selectProject",{defaultValue:"Pick a project to browse files."})});const me=e.fullPath||e.path||e.name,xe=l.size>0,ce=oe("flex w-full items-center gap-2 rounded-md px-2.5 py-1.5 text-left text-[12px] transition-colors","text-neutral-700 hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-800"),Ne="h-3.5 w-3.5 shrink-0 text-neutral-500 dark:text-neutral-400",Te=ee=>o.jsxs("li",{style:{marginLeft:`${ee*20}px`},className:"flex items-center gap-2 rounded-md px-1.5 py-0.5",children:[o.jsx("span",{className:"w-3.5"}),f?.kind==="create"&&f.type==="directory"?o.jsx(cr,{className:"h-3.5 w-3.5 shrink-0 text-neutral-500 dark:text-neutral-400",strokeWidth:1.75}):f?.kind==="create"?o.jsx(Ts,{className:"h-3.5 w-3.5 shrink-0 text-neutral-500 dark:text-neutral-400",strokeWidth:1.75}):null,o.jsx("input",{ref:N,defaultValue:f?.kind==="rename"?f.currentName:"",onKeyDown:q,onBlur:A,className:oe("min-w-0 flex-1 rounded border px-1.5 py-0.5 text-[13px] outline-none","border-blue-400 bg-white text-neutral-900 focus:ring-1 focus:ring-blue-400","dark:border-blue-500 dark:bg-neutral-900 dark:text-neutral-100 dark:focus:ring-blue-500")})]},"__inline_edit__"),Ge=ee=>{if(!ee)return C.length;const X=C.findIndex(J=>J.node.path===ee);if(X===-1)return C.length;const ae=C[X].depth;let te=X+1;for(;teae;)te++;return te};return o.jsxs("div",{className:"flex h-full flex-col bg-white dark:bg-neutral-950",children:[o.jsxs("div",{className:"shrink-0 border-b border-neutral-200 dark:border-neutral-800",children:[o.jsx("div",{className:"flex h-7 items-center px-3 pt-1",children:o.jsx("span",{className:"truncate font-mono text-xxs text-neutral-500 dark:text-neutral-400",children:me})}),o.jsxs("div",{className:"flex items-center gap-1 px-3 pb-1",children:[o.jsx("button",{type:"button",onClick:()=>K("",0),className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-900",title:r("fileTree.context.newFile",{defaultValue:"New File"}),"aria-label":r("fileTree.context.newFile",{defaultValue:"New File"}),children:o.jsx(Ts,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),o.jsx("button",{type:"button",onClick:()=>V("",0),className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-900",title:r("fileTree.context.newFolder",{defaultValue:"New Folder"}),"aria-label":r("fileTree.context.newFolder",{defaultValue:"New Folder"}),children:o.jsx($i,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),o.jsxs("div",{className:"relative",children:[o.jsx("button",{type:"button",onClick:ee=>{ee.stopPropagation(),E(X=>!X)},disabled:b,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 disabled:opacity-50 dark:text-neutral-300 dark:hover:bg-neutral-900",title:r("fileTree.upload",{defaultValue:"Upload files or folder"}),"aria-label":r("fileTree.upload",{defaultValue:"Upload files or folder"}),children:b?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):o.jsx(cx,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),v?o.jsxs("div",{className:"absolute left-0 top-8 z-20 w-36 rounded-md border border-neutral-200 bg-white py-1 text-[12px] shadow-lg dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsx("button",{type:"button",onClick:ee=>{ee.stopPropagation(),E(!1),T.current?.click()},className:"block w-full px-3 py-1.5 text-left text-neutral-700 hover:bg-neutral-100 dark:text-neutral-200 dark:hover:bg-neutral-900",children:r("fileTree.uploadFiles",{defaultValue:"Upload files"})}),o.jsx("button",{type:"button",onClick:ee=>{ee.stopPropagation(),E(!1),j.current?.click()},className:"block w-full px-3 py-1.5 text-left text-neutral-700 hover:bg-neutral-100 dark:text-neutral-200 dark:hover:bg-neutral-900",children:r("fileTree.uploadFolder",{defaultValue:"Upload folder"})})]}):null,o.jsx("input",{ref:T,type:"file",multiple:!0,className:"hidden",onChange:ee=>{Se(ee.currentTarget.files),ee.currentTarget.value=""}}),o.jsx("input",{ref:_,type:"file",multiple:!0,className:"hidden",onChange:ee=>{Se(ee.currentTarget.files),ee.currentTarget.value=""}})]}),o.jsx("button",{type:"button",onClick:he,disabled:k,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 disabled:opacity-50 dark:text-neutral-300 dark:hover:bg-neutral-900",title:r("fileTree.downloadProject",{defaultValue:"Download project as zip"}),"aria-label":r("fileTree.downloadProject",{defaultValue:"Download project as zip"}),children:k?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):o.jsx(Ja,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),o.jsx("button",{type:"button",onClick:Fe,disabled:!u,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 disabled:opacity-40 dark:text-neutral-300 dark:hover:bg-neutral-900",title:r("fileTree.deleteSelected",{defaultValue:"Delete selected"}),"aria-label":r("fileTree.deleteSelected",{defaultValue:"Delete selected"}),children:o.jsx(en,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),o.jsx("button",{type:"button",onClick:s,disabled:i,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 disabled:opacity-50 dark:text-neutral-300 dark:hover:bg-neutral-900",title:r("fileTree.refresh",{defaultValue:"Refresh"}),"aria-label":r("fileTree.refresh",{defaultValue:"Refresh"}),children:o.jsx(Cr,{className:oe("h-3.5 w-3.5",i&&"animate-spin"),strokeWidth:1.75})}),o.jsx("button",{type:"button",onClick:z,disabled:!xe,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 disabled:opacity-40 dark:text-neutral-300 dark:hover:bg-neutral-900",title:r("fileTree.collapseAll",{defaultValue:"Collapse all"}),"aria-label":r("fileTree.collapseAll",{defaultValue:"Collapse all"}),children:o.jsx(yT,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),n?o.jsx("button",{type:"button",onClick:n,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-900",title:r("fileTree.close",{defaultValue:"Close file tree"}),"aria-label":r("fileTree.close",{defaultValue:"Close file tree"}),children:o.jsx(Nr,{className:"h-3.5 w-3.5",strokeWidth:1.75})}):null]})]}),o.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto py-2 text-[13px]",onContextMenu:$,children:i&&a.length===0?o.jsxs("div",{className:"flex items-center justify-center gap-2 py-6 text-xxs text-neutral-500 dark:text-neutral-400",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),o.jsx("span",{children:r("loading",{defaultValue:"Loading…"})})]}):C.length===0?o.jsx("div",{className:"py-6 text-center text-xxs text-neutral-500 dark:text-neutral-400",children:r("fileTree.empty",{defaultValue:"This project is empty."})}):o.jsxs("ul",{className:"space-y-0.5 px-4",children:[C.map(({node:ee,depth:X},ae)=>{const te=ee.type==="directory",J=te&&l.has(ee.path),H=u===ee.path,G=f?.kind==="rename"&&f.path===ee.path,Z=!te&&/\.html?$/i.test(ee.name);let ue=cr,be="text-neutral-500 dark:text-neutral-400";if(te)ue=J?Ki:cr;else{const ze=Eie(ee.name);ue=ze.icon,be=ze.color}const Ae=f?.kind==="create"&&Ge(f.parentPath)===ae+1;return o.jsxs("li",{onContextMenu:ze=>B(ze,ee),children:[G?o.jsxs("div",{style:{marginLeft:`${X*20}px`},className:"flex items-center gap-2 rounded-md px-1.5 py-0.5",children:[te?o.jsx(qn,{className:"h-3.5 w-3.5 text-neutral-500 dark:text-neutral-400",strokeWidth:1.75}):o.jsx("span",{className:"w-3.5"}),o.jsx(ue,{className:oe("h-3.5 w-3.5 shrink-0",be),strokeWidth:1.75}),o.jsx("input",{ref:N,defaultValue:f.currentName,onKeyDown:q,onBlur:A,className:oe("min-w-0 flex-1 rounded border px-1.5 py-0.5 text-[13px] outline-none","border-blue-400 bg-white text-neutral-900 focus:ring-1 focus:ring-blue-400","dark:border-blue-500 dark:bg-neutral-900 dark:text-neutral-100 dark:focus:ring-blue-500")})]}):o.jsxs("div",{onClick:()=>M(ee),style:{marginLeft:`${X*20}px`},className:oe("group/row flex cursor-pointer items-center gap-2 rounded-md px-1.5 py-1 transition-colors",H?"bg-neutral-100 dark:bg-neutral-900":"hover:bg-neutral-50 dark:hover:bg-neutral-900/60"),children:[te?J?o.jsx(Sn,{className:"h-3.5 w-3.5 text-neutral-500 dark:text-neutral-400",strokeWidth:1.75}):o.jsx(qn,{className:"h-3.5 w-3.5 text-neutral-500 dark:text-neutral-400",strokeWidth:1.75}):o.jsx("span",{className:"w-3.5"}),o.jsx(ue,{className:oe("h-3.5 w-3.5 shrink-0",be),strokeWidth:1.75}),o.jsx("span",{className:oe("min-w-0 flex-1 truncate",H?"font-medium text-neutral-900 dark:text-neutral-100":"text-neutral-700 dark:text-neutral-300"),children:ee.name}),!te&&o.jsx("button",{type:"button",onClick:ze=>Me(ze,ee),className:"inline-flex h-6 w-6 shrink-0 items-center justify-center rounded-md text-neutral-500 opacity-0 transition group-hover/row:opacity-100 hover:bg-neutral-200 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",title:r("fileTree.downloadFile",{defaultValue:"Download file"}),"aria-label":r("fileTree.downloadFile",{defaultValue:"Download file"}),children:o.jsx(Ja,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),Z?o.jsx("button",{type:"button",onClick:ze=>tt(ze,ee),className:"inline-flex h-6 w-6 shrink-0 items-center justify-center rounded-md text-neutral-500 transition hover:bg-neutral-200 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",title:r("fileTree.openHtmlPreview",{defaultValue:"Open HTML preview in new tab"}),"aria-label":r("fileTree.openHtmlPreview",{defaultValue:"Open HTML preview in new tab"}),children:o.jsx(ix,{className:"h-3.5 w-3.5",strokeWidth:1.75})}):null]}),Ae?Te(f.depth):null]},ee.path)}),f?.kind==="create"&&C.length===0?Te(f.depth):null]})}),p?o.jsx("div",{role:"menu","aria-label":r("fileTree.context.menuLabel",{defaultValue:"File context menu"}),onClick:ee=>ee.stopPropagation(),onContextMenu:ee=>ee.preventDefault(),className:oe("fixed z-50 w-44 rounded-lg border bg-white p-1 shadow-lg","border-neutral-200 dark:border-neutral-700 dark:bg-neutral-900"),style:{left:p.x,top:p.y},children:p.node?o.jsxs(o.Fragment,{children:[p.node.type==="directory"?o.jsxs(o.Fragment,{children:[o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>K(p.node.path,(ge.get(p.node.path)??0)+1),className:ce,children:[o.jsx(Ts,{className:Ne,strokeWidth:1.75}),r("fileTree.context.newFile",{defaultValue:"New File"})]}),o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>V(p.node.path,(ge.get(p.node.path)??0)+1),className:ce,children:[o.jsx($i,{className:Ne,strokeWidth:1.75}),r("fileTree.context.newFolder",{defaultValue:"New Folder"})]}),o.jsx("div",{className:"my-1 border-t border-neutral-100 dark:border-neutral-800"})]}):o.jsxs(o.Fragment,{children:[o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>ne(p.node),className:ce,children:[o.jsx(Ts,{className:Ne,strokeWidth:1.75}),"Open"]}),o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>Me(null,p.node),className:ce,children:[o.jsx(Ja,{className:Ne,strokeWidth:1.75}),r("fileTree.context.download",{defaultValue:"Download"})]}),o.jsx("div",{className:"my-1 border-t border-neutral-100 dark:border-neutral-800"})]}),o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>L(p.node,ge.get(p.node.path)??0),className:ce,children:[o.jsx(ox,{className:Ne,strokeWidth:1.75}),r("fileTree.context.rename",{defaultValue:"Rename"})]}),o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>re(p.node),className:ce,children:[o.jsx(e8,{className:Ne,strokeWidth:1.75}),r("fileTree.context.copyPath",{defaultValue:"Copy Path"})]}),o.jsx("div",{className:"my-1 border-t border-neutral-100 dark:border-neutral-800"}),o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>le(p.node),className:oe(ce,"text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/30"),children:[o.jsx(en,{className:"h-3.5 w-3.5 shrink-0",strokeWidth:1.75}),r("fileTree.context.delete",{defaultValue:"Delete"})]})]}):o.jsxs(o.Fragment,{children:[o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>K("",0),className:ce,children:[o.jsx(Ts,{className:Ne,strokeWidth:1.75}),r("fileTree.context.newFile",{defaultValue:"New File"})]}),o.jsxs("button",{type:"button",role:"menuitem",onClick:()=>V("",0),className:ce,children:[o.jsx($i,{className:Ne,strokeWidth:1.75}),r("fileTree.context.newFolder",{defaultValue:"New Folder"})]})]})}):null]})}const z6="https://auth.openai.com/codex/device",Aie=200,q6=100,Iie=50,Rie=500,_ie=20,jie=15,Oie=5,Die=2,Mie={cursorBlink:!0,fontSize:14,fontFamily:'Menlo, Monaco, "Courier New", monospace',allowProposedApi:!0,allowTransparency:!1,convertEol:!0,scrollback:1e4,tabStopWidth:4,windowsMode:!1,macOptionIsMeta:!0,macOptionClickForcesSelection:!0,theme:{background:"#1e1e1e",foreground:"#d4d4d4",cursor:"#ffffff",cursorAccent:"#1e1e1e",selectionBackground:"#264f78",selectionForeground:"#ffffff",black:"#000000",red:"#cd3131",green:"#0dbc79",yellow:"#e5e510",blue:"#2472c8",magenta:"#bc3fbc",cyan:"#11a8cd",white:"#e5e5e5",brightBlack:"#666666",brightRed:"#f14c4c",brightGreen:"#23d18b",brightYellow:"#f5f543",brightBlue:"#3b8eea",brightMagenta:"#d670d6",brightCyan:"#29b8db",brightWhite:"#ffffff",extendedAnsi:["#000000","#800000","#008000","#808000","#000080","#800080","#008080","#c0c0c0","#808080","#ff0000","#00ff00","#ffff00","#0000ff","#ff00ff","#00ffff","#ffffff"]}};function Lie(){return`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/shell`}function Pie(e){try{return JSON.parse(e)}catch{return null}}function Xa(e,t){e&&e.readyState===WebSocket.OPEN&&e.send(JSON.stringify(t))}const Fie=/(?:\u001B\[[0-?]*[ -/]*[@-~]|\u009B[0-?]*[ -/]*[@-~]|\u001B\][^\u0007\u001B]*(?:\u0007|\u001B\\)|\u009D[^\u0007\u009C]*(?:\u0007|\u009C)|\u001B[PX^_][^\u001B]*\u001B\\|[\u0090\u0098\u009E\u009F][^\u009C]*\u009C|\u001B[@-Z\\-_])/g,Bie=/Process exited with code (\d+)/;function $ie({wsRef:e,terminalRef:t,fitAddonRef:n,selectedProjectRef:r,selectedSessionRef:a,initialCommandRef:i,isPlainShellRef:s,onProcessCompleteRef:l,isInitialized:c,autoConnect:u,closeSocket:d,clearTerminalScreen:p,setAuthUrl:m,onOutputRef:f}){const[g,b]=h.useState(!1),[x,k]=h.useState(!1),y=h.useRef(!1),v=h.useCallback(j=>{if(!s.current||!l.current)return;const C=j.replace(Fie,"");if(C.includes("Process exited with code 0")){l.current(0);return}const O=C.match(Bie);if(!O)return;const I=Number.parseInt(O[1],10);!Number.isNaN(I)&&I!==0&&l.current(I)},[s,l]),E=h.useCallback(j=>{const _=Pie(j);if(!_){console.error("[Shell] Error handling WebSocket message:",j);return}if(_.type==="output"){const C=typeof _.data=="string"?_.data:"";v(C),t.current?.write(C),f?.current?.();return}if(_.type==="auth_url"||_.type==="url_open"){const C=typeof _.url=="string"?_.url:"";C&&m(C)}},[v,f,m,t]),N=h.useCallback((j=!1)=>{if(!(y.current&&!j||x||g))try{const _=Lie();if(!_){y.current=!1,k(!1);return}y.current=!0;const C=new WebSocket(_);e.current=C,C.onopen=()=>{b(!0),k(!1),y.current=!1,m(""),window.setTimeout(()=>{const O=t.current,I=n.current,z=r.current;!O||!I||!z||(I.fit(),Xa(C,{type:"init",projectPath:z.fullPath||z.path||"",sessionId:s.current?null:a.current?.id||null,hasSession:s.current?!1:!!a.current,provider:s.current?"plain-shell":"pilotdeck",cols:O.cols,rows:O.rows,initialCommand:i.current,isPlainShell:s.current}))},q6)},C.onmessage=O=>{const I=typeof O.data=="string"?O.data:String(O.data??"");E(I)},C.onclose=()=>{b(!1),k(!1),y.current=!1,p()},C.onerror=()=>{b(!1),k(!1),y.current=!1}}catch{b(!1),k(!1),y.current=!1}},[p,n,E,i,g,x,s,r,a,m,t,e]),w=h.useCallback(()=>{!c||g||x||y.current||(y.current=!0,k(!0),N(!0))},[N,g,x,c]),T=h.useCallback(()=>{d(),p(),b(!1),k(!1),y.current=!1,m("")},[p,d,m]);return h.useEffect(()=>{!u||!c||x||g||w()},[u,w,g,x,c]),{isConnected:g,isConnecting:x,closeSocket:d,connectToShell:w,disconnectFromShell:T}}var bg={exports:{}},n5;function Uie(){return n5||(n5=1,(function(e,t){(function(n,r){e.exports=r()})(self,(()=>(()=>{var n={6:(s,l)=>{function c(d){try{const p=new URL(d),m=p.password&&p.username?`${p.protocol}//${p.username}:${p.password}@${p.host}`:p.username?`${p.protocol}//${p.username}@${p.host}`:`${p.protocol}//${p.host}`;return d.toLocaleLowerCase().startsWith(m.toLocaleLowerCase())}catch{return!1}}Object.defineProperty(l,"__esModule",{value:!0}),l.LinkComputer=l.WebLinkProvider=void 0,l.WebLinkProvider=class{constructor(d,p,m,f={}){this._terminal=d,this._regex=p,this._handler=m,this._options=f}provideLinks(d,p){const m=u.computeLink(d,this._regex,this._terminal,this._handler);p(this._addCallbacks(m))}_addCallbacks(d){return d.map((p=>(p.leave=this._options.leave,p.hover=(m,f)=>{if(this._options.hover){const{range:g}=p;this._options.hover(m,f,g)}},p)))}};class u{static computeLink(p,m,f,g){const b=new RegExp(m.source,(m.flags||"")+"g"),[x,k]=u._getWindowedLineStrings(p-1,f),y=x.join("");let v;const E=[];for(;v=b.exec(y);){const N=v[0];if(!c(N))continue;const[w,T]=u._mapStrIdx(f,k,0,v.index),[j,_]=u._mapStrIdx(f,w,T,N.length);if(w===-1||T===-1||j===-1||_===-1)continue;const C={start:{x:T+1,y:w+1},end:{x:_,y:j+1}};E.push({range:C,text:N,activate:g})}return E}static _getWindowedLineStrings(p,m){let f,g=p,b=p,x=0,k="";const y=[];if(f=m.buffer.active.getLine(p)){const v=f.translateToString(!0);if(f.isWrapped&&v[0]!==" "){for(x=0;(f=m.buffer.active.getLine(--g))&&x<2048&&(k=f.translateToString(!0),x+=k.length,y.push(k),f.isWrapped&&k.indexOf(" ")===-1););y.reverse()}for(y.push(v),x=0;(f=m.buffer.active.getLine(++b))&&f.isWrapped&&x<2048&&(k=f.translateToString(!0),x+=k.length,y.push(k),k.indexOf(" ")===-1););}return[y,g]}static _mapStrIdx(p,m,f,g){const b=p.buffer.active,x=b.getNullCell();let k=f;for(;g;){const y=b.getLine(m);if(!y)return[-1,-1];for(let v=k;v{var s=i;Object.defineProperty(s,"__esModule",{value:!0}),s.WebLinksAddon=void 0;const l=a(6),c=/(https?|HTTPS?):[/]{2}[^\s"'!*(){}|\\\^<>`]*[^\s"':,.!?{}|\\\^~\[\]`()<>]/;function u(d,p){const m=window.open();if(m){try{m.opener=null}catch{}m.location.href=p}else console.warn("Opening link blocked as opener could not be cleared")}s.WebLinksAddon=class{constructor(d=u,p={}){this._handler=d,this._options=p}activate(d){this._terminal=d;const p=this._options,m=p.urlRegex||c;this._linkProvider=this._terminal.registerLinkProvider(new l.WebLinkProvider(this._terminal,m,this._handler,p))}dispose(){this._linkProvider?.dispose()}}})(),i})()))})(bg)),bg.exports}var zie=Uie(),qie=Q7();function H6(e){return typeof e=="string"&&/\bcodex\s+login\b/i.test(e)}function Hie(e,t){return H6(e)?z6:t}function Gie(e){return e?e.summary||e.name||"New Session":null}const r5="shell-xterm-focus-style",Vie=` + .xterm .xterm-screen { + outline: none !important; + } + .xterm:focus .xterm-screen { + outline: none !important; + } + .xterm-screen:focus { + outline: none !important; + } +`;function Wie(){if(typeof document>"u"||document.getElementById(r5))return;const e=document.createElement("style");e.id=r5,e.type="text/css",e.innerText=Vie,document.head.appendChild(e)}function Kie({terminalContainerRef:e,terminalRef:t,fitAddonRef:n,wsRef:r,selectedProject:a,minimal:i,isRestarting:s,initialCommandRef:l,isPlainShellRef:c,authUrlRef:u,copyAuthUrlToClipboard:d,closeSocket:p}){const[m,f]=h.useState(!1),g=h.useRef(null),b=a?.fullPath||a?.path||"",x=!!a;h.useEffect(()=>{Wie()},[]);const k=h.useCallback(()=>{t.current&&(t.current.clear(),t.current.write("\x1B[2J\x1B[H"))},[t]),y=h.useCallback(()=>{t.current&&(t.current.dispose(),t.current=null),n.current=null,f(!1)},[n,t]);return h.useEffect(()=>{if(!e.current||!x||s||t.current)return;const v=new qie.Terminal(Mie);t.current=v;const E=new e_;n.current=E,v.loadAddon(E),i||v.loadAddon(new zie.WebLinksAddon);try{v.loadAddon(new t_)}catch{console.warn("[Shell] WebGL renderer unavailable, using Canvas fallback")}v.open(e.current);const N=async()=>{const _=v.getSelection();return _?ta(_):!1},w=_=>{if(!v.hasSelection())return;const C=v.getSelection();if(C){if(_.preventDefault(),_.clipboardData){_.clipboardData.setData("text/plain",C);return}ta(C)}};e.current.addEventListener("copy",w),v.attachCustomKeyEventHandler(_=>{const C=H6(l.current)?z6:u.current;return _.type==="keydown"&&i&&c.current&&C&&!_.ctrlKey&&!_.metaKey&&!_.altKey&&_.key?.toLowerCase()==="c"?(_.preventDefault(),_.stopPropagation(),d(C),!1):_.type==="keydown"&&(_.ctrlKey||_.metaKey)&&_.key?.toLowerCase()==="c"&&v.hasSelection()?(_.preventDefault(),_.stopPropagation(),N(),!1):_.type==="keydown"&&(_.ctrlKey||_.metaKey)&&_.key?.toLowerCase()==="v"?(_.preventDefault(),_.stopPropagation(),typeof navigator<"u"&&navigator.clipboard?.readText&&navigator.clipboard.readText().then(O=>{Xa(r.current,{type:"input",data:O})}).catch(()=>{}),!1):!0}),window.setTimeout(()=>{const _=n.current,C=t.current;!_||!C||(_.fit(),Xa(r.current,{type:"resize",cols:C.cols,rows:C.rows}))},q6),f(!0);const T=v.onData(_=>{Xa(r.current,{type:"input",data:_})}),j=new ResizeObserver(()=>{g.current!==null&&window.clearTimeout(g.current),g.current=window.setTimeout(()=>{const _=n.current,C=t.current;!_||!C||(_.fit(),Xa(r.current,{type:"resize",cols:C.cols,rows:C.rows}))},Iie)});return j.observe(e.current),()=>{e.current?.removeEventListener("copy",w),j.disconnect(),g.current!==null&&(window.clearTimeout(g.current),g.current=null),T.dispose(),p(),y()}},[u,p,d,y,n,l,c,s,i,x,b,e,t,r]),{isInitialized:m,clearTerminalScreen:k,disposeTerminal:y}}function Yie({selectedProject:e,selectedSession:t,initialCommand:n,isPlainShell:r,minimal:a,autoConnect:i,isRestarting:s,onProcessComplete:l,onOutputRef:c}){const u=h.useRef(null),d=h.useRef(null),p=h.useRef(null),m=h.useRef(null),[f,g]=h.useState(""),[b,x]=h.useState(0),k=h.useRef(e),y=h.useRef(t),v=h.useRef(n),E=h.useRef(r),N=h.useRef(l),w=h.useRef(""),T=h.useRef(t?.id??null);h.useEffect(()=>{k.current=e,y.current=t,v.current=n,E.current=r,N.current=l},[e,t,n,r,l]);const j=h.useCallback(q=>{w.current=q,g(q),x(A=>A+1)},[]),_=h.useCallback(()=>{const q=m.current;q&&((q.readyState===WebSocket.OPEN||q.readyState===WebSocket.CONNECTING)&&q.close(),m.current=null)},[]),C=h.useCallback((q=w.current)=>{if(!q)return!1;const A=window.open(q,"_blank");if(A){try{A.opener=null}catch{}return!0}return!1},[]),O=h.useCallback(async(q=w.current)=>q?ta(q):!1,[]),{isInitialized:I,clearTerminalScreen:z,disposeTerminal:M}=Kie({terminalContainerRef:u,terminalRef:d,fitAddonRef:p,wsRef:m,selectedProject:e,minimal:a,isRestarting:s,initialCommandRef:v,isPlainShellRef:E,authUrlRef:w,copyAuthUrlToClipboard:O,closeSocket:_}),{isConnected:P,isConnecting:B,connectToShell:$,disconnectFromShell:U}=$ie({wsRef:m,terminalRef:d,fitAddonRef:p,selectedProjectRef:k,selectedSessionRef:y,initialCommandRef:v,isPlainShellRef:E,onProcessCompleteRef:N,isInitialized:I,autoConnect:i,closeSocket:_,clearTerminalScreen:z,setAuthUrl:j,onOutputRef:c});return h.useEffect(()=>{s&&(U(),M())},[U,M,s]),h.useEffect(()=>{e||(U(),M())},[U,M,e]),h.useEffect(()=>{const q=t?.id??null;T.current!==q&&I&&U(),T.current=q},[U,I,t?.id]),{terminalContainerRef:u,terminalRef:d,wsRef:m,isConnected:P,isInitialized:I,isConnecting:B,authUrl:f,authUrlVersion:b,connectToShell:$,disconnectFromShell:U,openAuthUrlInBrowser:C,copyAuthUrlToClipboard:O}}function Xie({mode:e,description:t,loadingLabel:n,connectLabel:r,connectTitle:a,connectingLabel:i,onConnect:s}){return e==="loading"?o.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-gray-900 bg-opacity-90",children:o.jsx("div",{className:"text-white",children:n})}):e==="connect"?o.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-gray-900 bg-opacity-90 p-4",children:o.jsxs("div",{className:"w-full max-w-sm text-center",children:[o.jsxs("button",{onClick:s,className:"flex w-full items-center justify-center space-x-2 rounded-lg bg-green-600 px-6 py-3 text-base font-medium text-white transition-colors hover:bg-green-700 sm:w-auto",title:a,children:[o.jsx("svg",{className:"h-5 w-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 10V3L4 14h7v7l9-11h-7z"})}),o.jsx("span",{children:r})]}),o.jsx("p",{className:"mt-3 px-2 text-sm text-gray-400",children:t})]})}):o.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-gray-900 bg-opacity-90 p-4",children:o.jsxs("div",{className:"w-full max-w-sm text-center",children:[o.jsxs("div",{className:"flex items-center justify-center space-x-3 text-yellow-400",children:[o.jsx("div",{className:"h-6 w-6 animate-spin rounded-full border-2 border-yellow-400 border-t-transparent"}),o.jsx("span",{className:"text-base font-medium",children:i})]}),o.jsx("p",{className:"mt-3 px-2 text-sm text-gray-400",children:t})]})})}function Zie({title:e,description:t}){return o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsxs("div",{className:"text-center text-gray-500 dark:text-gray-400",children:[o.jsx("div",{className:"mx-auto mb-4 flex h-16 w-16 items-center justify-center rounded-full bg-gray-100 dark:bg-gray-800",children:o.jsx("svg",{className:"h-8 w-8 text-gray-400",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v14a2 2 0 002 2z"})})}),o.jsx("h3",{className:"mb-2 text-lg font-semibold",children:e}),o.jsx("p",{children:t})]})})}function Jie({isConnected:e,isInitialized:t,isRestarting:n,hasSession:r,sessionDisplayNameShort:a,onDisconnect:i,onRestart:s,statusNewSessionText:l,statusInitializingText:c,statusRestartingText:u,disconnectLabel:d,disconnectTitle:p,restartLabel:m,restartTitle:f,disableRestart:g}){return o.jsx("div",{className:"flex-shrink-0 border-b border-gray-700 bg-gray-800 px-4 py-2",children:o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{className:"flex items-center space-x-2",children:[o.jsx("div",{className:`h-2 w-2 rounded-full ${e?"bg-green-500":"bg-red-500"}`}),r&&a&&o.jsxs("span",{className:"text-xs text-blue-300",children:["(",a,"...)"]}),!r&&o.jsx("span",{className:"text-xs text-gray-400",children:l}),!t&&o.jsx("span",{className:"text-xs text-yellow-400",children:c}),n&&o.jsx("span",{className:"text-xs text-blue-400",children:u})]}),o.jsxs("div",{className:"flex items-center space-x-3",children:[e&&o.jsxs("button",{onClick:i,className:"flex items-center space-x-1 rounded bg-red-600 px-3 py-1 text-xs text-white hover:bg-red-700",title:p,children:[o.jsx("svg",{className:"h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})}),o.jsx("span",{children:d})]}),o.jsxs("button",{onClick:s,disabled:g,className:"flex items-center space-x-1 text-xs text-gray-400 hover:text-white disabled:cursor-not-allowed disabled:opacity-50",title:f,children:[o.jsx("svg",{className:"h-3 w-3",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})}),o.jsx("span",{children:m})]})]})]})})}function Qie({terminalContainerRef:e,authUrl:t,authUrlVersion:n,initialCommand:r,isConnected:a,openAuthUrlInBrowser:i,copyAuthUrlToClipboard:s}){const[l,c]=h.useState("idle"),[u,d]=h.useState(!1),p=h.useMemo(()=>Hie(r,t),[t,r]);h.useEffect(()=>{c("idle"),d(!1)},[n,p,a]);const m=!!p,f=m&&!u,g=m&&u;return o.jsxs("div",{className:"relative h-full w-full bg-gray-900",children:[o.jsx("div",{ref:e,className:"h-full w-full focus:outline-none",style:{outline:"none"}}),f&&o.jsx("div",{className:"absolute inset-x-0 bottom-14 z-20 border-t border-gray-700/80 bg-gray-900/95 p-3 backdrop-blur-sm md:hidden",children:o.jsxs("div",{className:"flex flex-col gap-2",children:[o.jsxs("div",{className:"flex items-center justify-between gap-2",children:[o.jsx("p",{className:"text-xs text-gray-300",children:"Open or copy the login URL:"}),o.jsx("button",{type:"button",onClick:()=>d(!0),className:"rounded bg-gray-700 px-2 py-1 text-[10px] font-medium uppercase tracking-wide text-gray-100 hover:bg-gray-600",children:"Hide"})]}),o.jsx("input",{type:"text",value:p,readOnly:!0,onClick:b=>b.currentTarget.select(),className:"w-full rounded border border-gray-600 bg-gray-800 px-2 py-1 text-xs text-gray-100 focus:outline-none focus:ring-1 focus:ring-blue-500","aria-label":"Authentication URL"}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("button",{type:"button",onClick:()=>{i(p)},className:"flex-1 rounded bg-blue-600 px-3 py-2 text-xs font-medium text-white hover:bg-blue-700",children:"Open URL"}),o.jsx("button",{type:"button",onClick:async()=>{const b=await s(p);c(b?"copied":"failed")},className:"flex-1 rounded bg-gray-700 px-3 py-2 text-xs font-medium text-white hover:bg-gray-600",children:l==="copied"?"Copied":"Copy URL"})]})]})}),g&&o.jsx("div",{className:"absolute bottom-14 right-3 z-20 md:hidden",children:o.jsx("button",{type:"button",onClick:()=>d(!1),className:"rounded bg-gray-800/95 px-3 py-2 text-xs font-medium text-gray-100 shadow-lg backdrop-blur-sm hover:bg-gray-700",children:"Show login URL"})})]})}const ese=[{type:"key",id:"esc",label:"Esc",sequence:"\x1B"},{type:"key",id:"tab",label:"Tab",sequence:" "},{type:"key",id:"shift-tab",label:"⇧Tab",sequence:"\x1B[Z"},{type:"modifier",id:"ctrl",label:"CTRL",modifier:"ctrl"},{type:"modifier",id:"alt",label:"ALT",modifier:"alt"},{type:"arrow",id:"arrow-up",sequence:"\x1B[A",icon:"up"},{type:"arrow",id:"arrow-down",sequence:"\x1B[B",icon:"down"},{type:"arrow",id:"arrow-left",sequence:"\x1B[D",icon:"left"},{type:"arrow",id:"arrow-right",sequence:"\x1B[C",icon:"right"}],tse={up:gT,down:dj,left:hT,right:gj},qs=e=>e.preventDefault(),a5="shrink-0 rounded-md border border-gray-600 bg-gray-700 px-2.5 py-1.5 text-xs font-medium text-gray-100 transition-colors select-none active:bg-blue-600 active:text-white active:border-blue-600 disabled:cursor-not-allowed disabled:opacity-40",nse="shrink-0 rounded-md border border-blue-500 bg-blue-600 px-2.5 py-1.5 text-xs font-medium text-white transition-colors select-none disabled:cursor-not-allowed disabled:opacity-40",xg="shrink-0 rounded-md border border-gray-600 bg-gray-700 p-1.5 text-gray-100 transition-colors select-none active:bg-blue-600 active:text-white active:border-blue-600 disabled:cursor-not-allowed disabled:opacity-40";function i5({wsRef:e,terminalRef:t,isConnected:n,bottomOffset:r="bottom-0"}){const{t:a}=Je("settings"),[i,s]=h.useState(!1),[l,c]=h.useState(!1),u=h.useCallback(f=>{Xa(e.current,{type:"input",data:f})},[e]),d=h.useCallback(()=>{t.current?.scrollToBottom()},[t]),p=h.useCallback(async()=>{if(!(typeof navigator>"u"||!navigator.clipboard?.readText))try{const f=await navigator.clipboard.readText();f.length>0&&u(f)}catch{}},[u]),m=h.useCallback(f=>{let g=f;if(i&&f.length===1){const b=f.toLowerCase().charCodeAt(0);b>=97&&b<=122&&(g=String.fromCharCode(b-96)),s(!1)}l&&f.length===1&&(g="\x1B"+g,c(!1)),u(g)},[i,l,u]);return o.jsx("div",{className:`pointer-events-none fixed inset-x-0 ${r} z-20 px-2 md:hidden`,children:o.jsxs("div",{className:"pointer-events-auto flex items-center gap-1 overflow-x-auto rounded-lg border border-gray-700/80 bg-gray-900/95 px-1.5 py-1.5 shadow-lg backdrop-blur-sm [-webkit-overflow-scrolling:touch] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",children:[o.jsx("button",{type:"button",onPointerDown:qs,onClick:()=>{p()},disabled:!n,className:xg,title:a("terminalShortcuts.paste",{defaultValue:"Paste"}),"aria-label":a("terminalShortcuts.paste",{defaultValue:"Paste"}),children:o.jsx(r8,{className:"h-4 w-4"})}),ese.map(f=>{if(f.type==="modifier"){const g=f.modifier==="ctrl"?i:l,b=f.modifier==="ctrl"?()=>s(x=>!x):()=>c(x=>!x);return o.jsx("button",{type:"button",onPointerDown:qs,onClick:b,disabled:!n,className:g?nse:a5,children:f.label},f.id)}if(f.type==="arrow"){const g=tse[f.icon];return o.jsx("button",{type:"button",onPointerDown:qs,onClick:()=>u(f.sequence),disabled:!n,className:xg,children:o.jsx(g,{className:"h-4 w-4"})},f.id)}return o.jsx("button",{type:"button",onPointerDown:qs,onClick:()=>m(f.sequence),disabled:!n,className:a5,children:f.label},f.id)}),o.jsx("button",{type:"button",onPointerDown:qs,onClick:d,disabled:!n,className:xg,title:a("terminalShortcuts.scrollDown"),"aria-label":a("terminalShortcuts.scrollDown"),children:o.jsx(cj,{className:"h-4 w-4"})})]})})}function rse({selectedProject:e=null,selectedSession:t=null,initialCommand:n=null,isPlainShell:r=!1,onProcessComplete:a=null,minimal:i=!1,autoConnect:s=!1,isActive:l=!0}){const{t:c}=Je("chat"),[u,d]=h.useState(!1),[p,m]=h.useState(null),f=h.useRef(null),g=h.useRef(null),{terminalContainerRef:b,terminalRef:x,wsRef:k,isConnected:y,isInitialized:v,isConnecting:E,authUrl:N,authUrlVersion:w,connectToShell:T,disconnectFromShell:j,openAuthUrlInBrowser:_,copyAuthUrlToClipboard:C}=Yie({selectedProject:e,selectedSession:t,initialCommand:n,isPlainShell:r,minimal:i,autoConnect:s,isRestarting:u,onProcessComplete:a,onOutputRef:g}),O=h.useCallback(()=>{const V=x.current;if(!V)return;const L=V.buffer.active,le=L.baseY+L.cursorY,re=Math.min(L.baseY+L.length-1,le+10),ne=Math.max(0,le-_ie),de=[];for(let Fe=ne;Fe<=re;Fe++){const ge=L.getLine(Fe);ge&&de.push(ge.translateToString().trimEnd())}let Se=-1;for(let Fe=de.length-1;Fe>=0;Fe--)if(/esc to cancel/i.test(de[Fe])||/enter to select/i.test(de[Fe])){Se=Fe;break}if(Se===-1){m(null);return}const he=new Map,tt=Math.max(0,Se-jie);for(let Fe=Se-1;Fe>=tt;Fe--){const ge=de[Fe].match(/^\s*[❯›>]?\s*(\d+)\.\s+(.+)/);if(ge){const me=ge[1],xe=ge[2].trim();parseInt(me,10)<=Oie&&xe.length>0&&!he.has(me)&&he.set(me,xe)}}const Me=[];for(let Fe=1;Fe<=he.size&&he.has(String(Fe));Fe++)Me.push({number:String(Fe),label:he.get(String(Fe))});m(Me.length>=Die?Me:null)},[x]),I=h.useCallback(()=>{f.current&&clearTimeout(f.current),f.current=setTimeout(O,Rie)},[O]);h.useEffect(()=>{g.current=I},[I]),h.useEffect(()=>()=>{f.current&&clearTimeout(f.current)},[]),h.useEffect(()=>{y||(f.current&&(clearTimeout(f.current),f.current=null),m(null))},[y]),h.useEffect(()=>{if(!l||!v||!y)return;const V=()=>{x.current?.focus()},L=window.requestAnimationFrame(V),le=window.setTimeout(V,0);return()=>{window.cancelAnimationFrame(L),window.clearTimeout(le)}},[l,y,v,x]);const z=h.useCallback(V=>{Xa(k.current,{type:"input",data:V})},[k]),M=h.useMemo(()=>Gie(t),[t]),P=h.useMemo(()=>M?M.slice(0,30):null,[M]),B=h.useMemo(()=>M?M.slice(0,50):null,[M]),$=h.useCallback(()=>{d(!0),window.setTimeout(()=>{d(!1)},Aie)},[]);if(!e)return o.jsx(Zie,{title:c("shell.selectProject.title"),description:c("shell.selectProject.description")});if(i)return o.jsxs(o.Fragment,{children:[o.jsx(Qie,{terminalContainerRef:b,authUrl:N,authUrlVersion:w,initialCommand:n,isConnected:y,openAuthUrlInBrowser:_,copyAuthUrlToClipboard:C}),o.jsx(i5,{wsRef:k,terminalRef:x,isConnected:y,bottomOffset:"bottom-0"})]});const U=r?c("shell.runCommand",{command:n||c("shell.defaultCommand"),projectName:e.displayName}):t?c("shell.resumeSession",{displayName:B}):c("shell.startSession"),q=r?c("shell.runCommand",{command:n||c("shell.defaultCommand"),projectName:e.displayName}):c("shell.startCli",{projectName:e.displayName}),A=v?E?"connecting":y?null:"connect":"loading",K=A==="connecting"?q:U;return o.jsxs("div",{className:"flex h-full w-full flex-col bg-gray-900",children:[o.jsx(Jie,{isConnected:y,isInitialized:v,isRestarting:u,hasSession:!!t,sessionDisplayNameShort:P,onDisconnect:j,onRestart:$,statusNewSessionText:c("shell.status.newSession"),statusInitializingText:c("shell.status.initializing"),statusRestartingText:c("shell.status.restarting"),disconnectLabel:c("shell.actions.disconnect"),disconnectTitle:c("shell.actions.disconnectTitle"),restartLabel:c("shell.actions.restart"),restartTitle:c("shell.actions.restartTitle"),disableRestart:u||y}),o.jsxs("div",{className:"relative flex-1 overflow-hidden p-2",children:[o.jsx("div",{ref:b,className:"h-full w-full focus:outline-none",style:{outline:"none"}}),A&&o.jsx(Xie,{mode:A,description:K,loadingLabel:c("shell.loading"),connectLabel:c("shell.actions.connect"),connectTitle:c("shell.actions.connectTitle"),connectingLabel:c("shell.connecting"),onConnect:T}),p&&y&&o.jsx("div",{className:"absolute inset-x-0 bottom-0 z-10 border-t border-gray-700/80 bg-gray-800/95 px-3 py-2 backdrop-blur-sm",onMouseDown:V=>V.preventDefault(),children:o.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[p.map(V=>o.jsxs("button",{type:"button",onClick:()=>{z(V.number),m(null)},className:"max-w-36 truncate rounded bg-blue-600 px-3 py-1.5 text-xs font-medium text-white transition-colors hover:bg-blue-700",title:`${V.number}. ${V.label}`,children:[V.number,". ",V.label]},V.number)),o.jsx("button",{type:"button",onClick:()=>{z("\x1B"),m(null)},className:"rounded bg-gray-700 px-3 py-1.5 text-xs font-medium text-gray-200 transition-colors hover:bg-gray-600",children:"Esc"})]})})]}),o.jsx(i5,{wsRef:k,terminalRef:x,isConnected:y})]})}function ase({selectedProject:e,selectedSession:t,isActive:n}){if(!e)return o.jsx("div",{className:"flex h-full items-center justify-center bg-neutral-950 text-[13px] text-neutral-500",children:"Pick a project to open a shell."});const r=e.fullPath||e.path||e.name;return o.jsxs("div",{className:"flex h-full w-full flex-col",style:{background:"#0a0a0a",color:"#e5e5e5"},children:[o.jsxs("div",{className:"text-xxs flex h-10 shrink-0 items-center gap-2 border-b px-5",style:{borderColor:"#27272a",color:"#a1a1aa"},children:[o.jsx(Or,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsxs("span",{className:"font-mono",children:["zsh · ",r]})]}),o.jsx("div",{className:"min-h-0 w-full flex-1",children:o.jsx(rse,{selectedProject:e,selectedSession:t,isActive:n,autoConnect:!0})})]})}const ise="main",sse=10,ose=[{key:"modified",status:"M"},{key:"added",status:"A"},{key:"deleted",status:"D"},{key:"untracked",status:"U"}];function lse(e){return e?ose.flatMap(({key:t})=>e[t]||[]):[]}function cse(){return"pilotdeck"}const bn=Oe;function s5(e){return e instanceof DOMException&&e.name==="AbortError"}async function pn(e,t){if(t?.aborted)throw new DOMException("Request aborted","AbortError");const n=await e.json();if(t?.aborted)throw new DOMException("Request aborted","AbortError");return n}function use({selectedProject:e,activeView:t,onFileOpen:n}){const[r,a]=h.useState(null),[i,s]=h.useState({}),[l,c]=h.useState(!1),[u,d]=h.useState(""),[p,m]=h.useState([]),[f,g]=h.useState([]),[b,x]=h.useState({}),[k,y]=h.useState(null),[v,E]=h.useState([]),[N,w]=h.useState([]),[T,j]=h.useState(!1),[_,C]=h.useState(!1),[O,I]=h.useState(!1),[z,M]=h.useState(!1),[P,B]=h.useState(!1),[$,U]=h.useState(!1),[q,A]=h.useState(null),K=h.useCallback(()=>A(null),[]),V=h.useRef(e?.name??null);h.useEffect(()=>{V.current=e?.name??null},[e]);const L=cse(),le=h.useCallback(async(J,H)=>{if(!e)return;const G=e.name;try{const Z=await bn(`/api/git/diff?project=${encodeURIComponent(G)}&file=${encodeURIComponent(J)}`,{signal:H}),ue=await pn(Z,H);if(H?.aborted||V.current!==G)return;!ue.error&&ue.diff&&s(be=>({...be,[J]:ue.diff}))}catch(Z){if(H?.aborted||s5(Z))return;console.error("Error fetching file diff:",Z)}},[e]),re=h.useCallback(async J=>{if(!e)return;const H=e.name;c(!0);try{const G=await bn(`/api/git/status?project=${encodeURIComponent(H)}`,{signal:J}),Z=await pn(G,J);if(J?.aborted||V.current!==H)return;if(Z.error){console.error("Git status error:",Z.error),a({error:Z.error,details:Z.details}),d("");return}a(Z),d(Z.branch||ise),lse(Z).forEach(be=>{le(be,J)})}catch(G){if(J?.aborted||s5(G)||V.current!==H)return;console.error("Error fetching git status:",G),a({error:"Git operation failed",details:String(G)}),d("")}finally{c(!1)}},[le,e]),ne=h.useCallback(async()=>{if(e)try{const J=await bn(`/api/git/branches?project=${encodeURIComponent(e.name)}`),H=await pn(J);if(!H.error&&H.branches){m(H.branches),E(H.localBranches??H.branches),w(H.remoteBranches??[]);return}m([]),E([]),w([])}catch(J){console.error("Error fetching branches:",J),m([]),E([]),w([])}},[e]),de=h.useCallback(async()=>{if(e)try{const J=await bn(`/api/git/remote-status?project=${encodeURIComponent(e.name)}`),H=await pn(J);if(!H.error){y(H);return}y(null)}catch(J){console.error("Error fetching remote status:",J),y(null)}},[e]),Se=h.useCallback(async J=>{if(!e)return!1;try{const H=await bn("/api/git/checkout",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name,branch:J})}),G=await pn(H);return G.success?(d(J),re(),!0):(console.error("Failed to switch branch:",G.error),!1)}catch(H){return console.error("Error switching branch:",H),!1}},[re,e]),he=h.useCallback(async J=>{const H=J.trim();if(!e||!H)return!1;j(!0);try{const G=await bn("/api/git/create-branch",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name,branch:H})}),Z=await pn(G);return Z.success?(d(H),ne(),re(),!0):(console.error("Failed to create branch:",Z.error),!1)}catch(G){return console.error("Error creating branch:",G),!1}finally{j(!1)}},[ne,re,e]),tt=h.useCallback(async J=>{if(!e)return!1;try{const H=await bn("/api/git/delete-branch",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name,branch:J})}),G=await pn(H);return G.success?(ne(),!0):(A(G.error??"Delete branch failed"),!1)}catch(H){return A(H instanceof Error?H.message:"Delete branch failed"),!1}},[ne,e]),Me=h.useCallback(async()=>{if(e){C(!0);try{const J=await bn("/api/git/fetch",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name})}),H=await pn(J);if(H.success){re(),de(),ne();return}A(H.error??"Fetch failed")}catch(J){A(J instanceof Error?J.message:"Fetch failed")}finally{C(!1)}}},[ne,re,de,e]),Fe=h.useCallback(async()=>{if(e){I(!0);try{const J=await bn("/api/git/pull",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name})}),H=await pn(J);if(H.success){re(),de();return}A(H.error??"Pull failed")}catch(J){A(J instanceof Error?J.message:"Pull failed")}finally{I(!1)}}},[re,de,e]),ge=h.useCallback(async()=>{if(e){M(!0);try{const J=await bn("/api/git/push",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name})}),H=await pn(J);if(H.success){re(),de();return}A(H.error??"Push failed")}catch(J){A(J instanceof Error?J.message:"Push failed")}finally{M(!1)}}},[re,de,e]),me=h.useCallback(async()=>{if(e){B(!0);try{const J=await bn("/api/git/publish",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name,branch:u})}),H=await pn(J);if(H.success){re(),de();return}console.error("Publish failed:",H.error)}catch(J){console.error("Error publishing branch:",J)}finally{B(!1)}}},[u,re,de,e]),xe=h.useCallback(async J=>{if(e)try{const H=await bn("/api/git/discard",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name,file:J})}),G=await pn(H);if(G.success){re();return}console.error("Discard failed:",G.error)}catch(H){console.error("Error discarding changes:",H)}},[re,e]),ce=h.useCallback(async J=>{if(e)try{const H=await bn("/api/git/delete-untracked",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name,file:J})}),G=await pn(H);if(G.success){re();return}console.error("Delete failed:",G.error)}catch(H){console.error("Error deleting untracked file:",H)}},[re,e]),Ne=h.useCallback(async()=>{if(e)try{const J=await bn(`/api/git/commits?project=${encodeURIComponent(e.name)}&limit=${sse}`),H=await pn(J);!H.error&&H.commits&&g(H.commits)}catch(J){console.error("Error fetching commits:",J)}},[e]),Te=h.useCallback(async J=>{if(e)try{const H=await bn(`/api/git/commit-diff?project=${encodeURIComponent(e.name)}&commit=${J}`),G=await pn(H);!G.error&&G.diff&&x(Z=>({...Z,[J]:G.diff}))}catch(H){console.error("Error fetching commit diff:",H)}},[e]),Ge=h.useCallback(async J=>{if(!e||J.length===0)return null;try{const H=await Oe("/api/git/generate-commit-message",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name,files:J,provider:L})}),G=await pn(H);return G.message?G.message:(console.error("Failed to generate commit message:",G.error),null)}catch(H){return console.error("Error generating commit message:",H),null}},[L,e]),ee=h.useCallback(async(J,H)=>{if(!e||!J.trim()||H.length===0)return!1;try{const G=await bn("/api/git/commit",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name,message:J,files:H})}),Z=await pn(G);return Z.success?(re(),de(),!0):(console.error("Commit failed:",Z.error),!1)}catch(G){return console.error("Error committing changes:",G),!1}},[re,de,e]),X=h.useCallback(async()=>{if(!e)throw new Error("No project selected");U(!0);try{const J=await bn("/api/git/initial-commit",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:e.name})}),H=await pn(J);if(H.success)return re(),de(),!0;throw new Error(H.error||"Failed to create initial commit")}catch(J){throw console.error("Error creating initial commit:",J),J}finally{U(!1)}},[re,de,e]),ae=h.useCallback(async J=>{if(n){if(!e){n(J);return}try{const H=await bn(`/api/git/file-with-diff?project=${encodeURIComponent(e.name)}&file=${encodeURIComponent(J)}`),G=await pn(H);if(G.error){console.error("Error fetching file with diff:",G.error),n(J);return}n(J,{old_string:G.oldContent||"",new_string:G.currentContent||""})}catch(H){console.error("Error opening file:",H),n(J)}}},[n,e]),te=h.useCallback(()=>{re(),ne(),de()},[ne,re,de]);return h.useEffect(()=>{const J=new AbortController;return d(""),m([]),E([]),w([]),a(null),y(null),s({}),g([]),x({}),c(!1),A(null),e?(re(J.signal),ne(),de(),()=>{J.abort()}):()=>{J.abort()}},[ne,re,de,e]),h.useEffect(()=>{},[t,Ne,e]),{gitStatus:r,gitDiff:i,isLoading:l,currentBranch:u,branches:p,localBranches:v,remoteBranches:N,recentCommits:f,commitDiffs:b,remoteStatus:k,isCreatingBranch:T,isFetching:_,isPulling:O,isPushing:z,isPublishing:P,isCreatingInitialCommit:$,operationError:q,clearOperationError:K,refreshAll:te,switchBranch:Se,createBranch:he,deleteBranch:tt,handleFetch:Me,handlePull:Fe,handlePush:ge,handlePublish:me,discardChanges:xe,deleteUntrackedFile:ce,fetchCommitDiff:Te,generateCommitMessage:Ge,commitChanges:ee,createInitialCommit:X,openFile:ae}}const dse={M:"text-amber-500",A:"text-emerald-600",D:"text-red-500",U:"text-blue-500"};function pse({selectedProject:e,onFileOpen:t}){const n=use({selectedProject:e,activeView:"changes",onFileOpen:t}),[r,a]=h.useState(""),[i,s]=h.useState(!1),[l,c]=h.useState(!1),{stagedRows:u,changeRows:d}=h.useMemo(()=>{const v=n.gitStatus;if(!v)return{stagedRows:[],changeRows:[]};const E=(v.modified??[]).map(j=>({path:j,status:"M",group:"modified"})),N=(v.added??[]).map(j=>({path:j,status:"A",group:"added"})),w=(v.deleted??[]).map(j=>({path:j,status:"D",group:"deleted"})),T=(v.untracked??[]).map(j=>({path:j,status:"U",group:"untracked"}));return{stagedRows:N,changeRows:[...E,...w,...T]}},[n.gitStatus]),p=h.useMemo(()=>[...u,...d].map(v=>v.path),[d,u]);if(!e)return o.jsx("div",{className:"flex h-full items-center justify-center bg-white text-[13px] text-neutral-500 dark:bg-neutral-950 dark:text-neutral-400",children:"Pick a project to view source control."});const m=n.isLoading,f=!!n.gitStatus?.error,g=n.remoteStatus,b=g?.ahead??0,x=g?.behind??0,k=async()=>{if(p.length!==0){c(!0);try{const v=await n.generateCommitMessage(p);v&&a(v)}finally{c(!1)}}},y=async()=>{if(!(!r.trim()||p.length===0)){s(!0);try{await n.commitChanges(r.trim(),p)&&a("")}finally{s(!1)}}};return o.jsxs("div",{className:"flex h-full flex-col bg-white dark:bg-neutral-950",children:[o.jsxs("div",{className:"text-xxs flex h-10 shrink-0 items-center border-b border-neutral-200 px-6 dark:border-neutral-800",children:[o.jsx(ST,{className:"mr-2 h-3.5 w-3.5 text-neutral-500 dark:text-neutral-400",strokeWidth:1.75}),o.jsx("span",{className:"font-medium text-neutral-900 dark:text-neutral-100",children:n.currentBranch||"main"}),o.jsxs("span",{className:"ml-2 text-neutral-500 dark:text-neutral-400",children:["↑",b," ↓",x]}),o.jsxs("button",{type:"button",onClick:()=>{n.handleFetch()},disabled:n.isFetching,className:"text-xxs ml-auto inline-flex h-7 items-center gap-1.5 rounded-md px-2 text-neutral-600 transition hover:bg-neutral-100 disabled:opacity-50 dark:text-neutral-300 dark:hover:bg-neutral-900",children:[o.jsx(Cr,{className:oe("h-3.5 w-3.5",n.isFetching&&"animate-spin"),strokeWidth:1.75}),o.jsx("span",{children:"Fetch"})]})]}),o.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto px-6 py-4 text-[13px]",children:m&&!n.gitStatus?o.jsxs("div",{className:"flex items-center justify-center gap-2 py-10 text-[13px] text-neutral-500 dark:text-neutral-400",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),o.jsx("span",{children:"Loading git status…"})]}):f?o.jsxs("div",{className:"flex items-start gap-2 rounded-xl border border-red-200 bg-red-50 p-4 text-[13px] text-red-700 dark:border-red-900/60 dark:bg-red-950/30 dark:text-red-400",children:[o.jsx(ka,{className:"mt-0.5 h-4 w-4",strokeWidth:1.75}),o.jsxs("div",{children:[o.jsx("div",{className:"font-medium",children:n.gitStatus?.error}),n.gitStatus?.details?o.jsx("div",{className:"text-xxs mt-1 opacity-80",children:n.gitStatus.details}):null]})]}):u.length===0&&d.length===0?o.jsx("div",{className:"py-10 text-center text-[13px] text-neutral-500 dark:text-neutral-400",children:"Working tree clean."}):o.jsxs("div",{className:"space-y-5",children:[u.length>0?o.jsx(o5,{title:"Staged",rows:u,onFileOpen:t}):null,d.length>0?o.jsx(o5,{title:"Changes",rows:d,onFileOpen:t}):null]})}),o.jsxs("div",{className:"shrink-0 border-t border-neutral-200 p-4 dark:border-neutral-800",children:[o.jsx("textarea",{value:r,onChange:v=>a(v.target.value),placeholder:"Commit message",rows:2,disabled:i||p.length===0,className:"w-full resize-none rounded-lg border border-neutral-200 bg-transparent p-2.5 text-[13px] outline-none placeholder:text-neutral-400 focus:border-neutral-300 disabled:opacity-50 dark:border-neutral-800 dark:placeholder:text-neutral-500 dark:focus:border-neutral-700"}),o.jsxs("div",{className:"mt-2 flex gap-2",children:[o.jsxs("button",{type:"button",onClick:()=>{y()},disabled:i||!r.trim()||p.length===0,className:"inline-flex flex-1 items-center justify-center gap-1.5 rounded-md bg-neutral-900 px-3 py-2 text-[13px] text-white transition hover:opacity-90 disabled:opacity-40 dark:bg-neutral-50 dark:text-neutral-900",children:[i?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:2}):o.jsx(Er,{className:"h-3.5 w-3.5",strokeWidth:2}),o.jsx("span",{children:"Commit"})]}),o.jsx("button",{type:"button",onClick:()=>{k()},disabled:l||p.length===0,className:"inline-flex items-center justify-center gap-1.5 rounded-md border border-neutral-200 px-3 py-2 text-[13px] text-neutral-700 transition hover:bg-neutral-50 disabled:opacity-40 dark:border-neutral-800 dark:text-neutral-300 dark:hover:bg-neutral-900",title:"AI suggest commit message",children:l?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:2}):o.jsx(JO,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),o.jsxs("button",{type:"button",onClick:()=>{n.handlePush()},disabled:n.isPushing,className:"inline-flex flex-1 items-center justify-center gap-1.5 rounded-md border border-neutral-200 px-3 py-2 text-[13px] text-neutral-700 transition hover:bg-neutral-50 disabled:opacity-50 dark:border-neutral-800 dark:text-neutral-300 dark:hover:bg-neutral-900",children:[n.isPushing?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:2}):o.jsx(cx,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:"Push"})]})]}),n.operationError?o.jsxs("div",{className:"text-xxs mt-2 flex items-start gap-1.5 text-red-600 dark:text-red-400",children:[o.jsx(ka,{className:"mt-0.5 h-3 w-3",strokeWidth:1.75}),o.jsx("span",{children:n.operationError}),o.jsx("button",{type:"button",onClick:n.clearOperationError,className:"ml-auto opacity-70 hover:opacity-100",children:"Dismiss"})]}):null]})]})}function o5({title:e,rows:t,onFileOpen:n}){return o.jsxs("div",{children:[o.jsxs("div",{className:"text-xxs mb-2 uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:[e," · ",t.length]}),o.jsx("div",{className:"space-y-1",children:t.map(r=>o.jsxs("button",{type:"button",onClick:()=>n?.(r.path),className:"flex w-full items-center gap-3 rounded-md px-2 py-1.5 text-left transition-colors hover:bg-neutral-100 dark:hover:bg-neutral-900",children:[o.jsx("span",{className:oe("w-4 font-mono text-xxs",dse[r.status]),children:r.status}),o.jsx("span",{className:"flex-1 truncate text-[13px] text-neutral-800 dark:text-neutral-200",children:r.path})]},`${r.group}:${r.path}`))})]})}function l5(e,t,n){return{theme:e?"dark":"light",project:t?{name:t.name,path:t.fullPath||t.path||""}:null,session:n?{id:n.id,title:n.title||n.name||n.id}:null}}function mse({pluginName:e,selectedProject:t,selectedSession:n}){const r=h.useRef(null),{isDarkMode:a}=li(),{plugins:i}=ND(),s=h.useRef(l5(a,t,n)),l=h.useRef(new Set),c=h.useRef(null),u=i.find(d=>d.name===e);return h.useEffect(()=>{const d=l5(a,t,n);s.current=d;for(const p of l.current)try{p(d)}catch{}},[a,t,n]),h.useEffect(()=>{if(!r.current||!u?.enabled)return;let d=!0;const p=r.current,m=u?.entry??"index.js",f=l.current;return(async()=>{try{const g=`/api/plugins/${encodeURIComponent(e)}/assets/${encodeURIComponent(m)}`,b=await Oe(g);if(!b.ok)throw new Error(`Failed to fetch plugin (HTTP ${b.status})`);const x=await b.text(),k=new Blob([x],{type:"application/javascript"}),y=URL.createObjectURL(k),v=await import(y).finally(()=>URL.revokeObjectURL(y));if(!d||!r.current)return;c.current=v;const E={get context(){return s.current},onContextChange(N){return f.add(N),()=>f.delete(N)},async rpc(N,w,T){const j=String(w).replace(/^\//,""),_=await Oe(`/api/plugins/${encodeURIComponent(e)}/rpc/${j}`,{method:N||"GET",...T!==void 0?{body:JSON.stringify(T)}:{}});if(!_.ok)throw new Error(`RPC error ${_.status}`);return _.json()}};if(await v.mount?.(p,E),!d){try{v.unmount?.(p)}catch{}c.current=null;return}}catch(g){if(!d)return;if(console.error(`[Plugin:${e}] Failed to load:`,g),r.current){const b=document.createElement("div");b.style.cssText="padding:16px;font-size:13px;color:#dc2626",b.textContent=`Plugin failed to load: ${String(g)}`,r.current.replaceChildren(b)}}})(),()=>{d=!1;try{c.current?.unmount?.(p)}catch{}f.clear(),c.current=null}},[e,u?.entry,u?.enabled]),o.jsx("div",{ref:r,className:"h-full w-full overflow-auto"})}const fse=3e4;function hse(){const[e,t]=h.useState(null),[n,r]=h.useState(!0),[a,i]=h.useState(null),s=h.useRef(null),l=h.useRef(!1),c=h.useCallback(async()=>{const u=!l.current;u&&r(!0);try{const d=await Oe("/api/ccr/dashboard");if(d.ok)t(await d.json()),i(null);else{const p=await d.json().catch(()=>({}));i(p.error||`HTTP ${d.status}`)}}catch(d){i(d.message||"Failed to fetch dashboard")}finally{l.current=!0,u&&r(!1)}},[]);return h.useEffect(()=>(c(),s.current=setInterval(c,fse),()=>{s.current&&clearInterval(s.current)}),[c]),{data:e,loading:n,error:a,refresh:c}}function xn(e){return!Number.isFinite(e)||e<=0?"0":e>=1e6?`${(e/1e6).toFixed(2)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(Math.round(e))}function Bt(e){const t=e<0?"-":"",n=Math.abs(e);return n?n<.01?`${t}$${n.toFixed(4)}`:`${t}$${n.toFixed(2)}`:"$0.00"}function G6(e,t){let n=null;if(typeof e=="string"&&e){const a=Date.parse(e);Number.isNaN(a)||(n=a)}return n===null&&typeof t=="number"&&t>0&&(n=t),n===null?"—":new Date(n).toLocaleTimeString([],{hour12:!1})}const Kb=["SIMPLE","MEDIUM","COMPLEX","REASONING","HARD","RECORDED"],c5=new Map(Kb.map((e,t)=>[e,t]));function gse(e){return Object.entries(e||{}).sort(([t],[n])=>{const r=c5.get(t.toUpperCase())??Kb.length,a=c5.get(n.toUpperCase())??Kb.length;return r!==a?r-a:t.localeCompare(n)})}function V6({baseline:e,saved:t}){const{t:n}=Je("routing");if(!e||e<=0)return null;const r=t??0,a=Math.round(Math.abs(r/e)*100),i=r>=0;return o.jsxs("span",{className:oe("text-xxs inline-flex items-center gap-1",i?"text-emerald-600 dark:text-emerald-400":"text-amber-600 dark:text-amber-400"),children:[o.jsx(AT,{className:"h-3 w-3",strokeWidth:1.75}),i?`${n("dashboard.price.saved",{defaultValue:"Saved"})} ${Bt(r)} (${a}%)`:`${n("dashboard.price.extraShort",{defaultValue:"Over"})} ${Bt(Math.abs(r))}`]})}function bse(e,t){const n=[];for(const a of e)for(const i of a.sessions)i.routing&&n.push({project:a,session:i});if(t){const a={name:"unmatched",displayName:"General",fullPath:"",sessions:[],aggregated:{}};for(const i of t)n.push({project:a,session:{sessionId:i.sessionId,title:i.sessionId,provider:Object.keys(i.byScenario||{})[0]||"routed",lastActivity:new Date(i.lastActiveAt).toISOString(),routing:{total:i.total,byTier:i.byTier,byScenario:i.byScenario,byRole:i.byRole,byModel:i.byModel,firstSeenAt:i.firstSeenAt,lastActiveAt:i.lastActiveAt}}})}n.sort((a,i)=>{const s=a.session.routing?.lastActiveAt??0;return(i.session.routing?.lastActiveAt??0)-s});const r=[];for(const{project:a,session:i}of n.slice(0,10)){const s=i.routing,l=Object.entries(s.byModel||{});if(l.length!==0){l.sort((c,u)=>(u[1]?.totalTokens??0)-(c[1]?.totalTokens??0));for(const[c,u]of l)if(r.push({key:`${i.sessionId}:${c}`,timeLabel:G6(i.lastActivity,s.lastActiveAt),provider:i.provider||"—",model:c,tokens:u?.totalTokens??0,projectName:a.displayName||a.name}),r.length>=10)return r}}return r}function xse(e){const t=[];for(const a of e.projects){const i=[...a.sessions].sort((s,l)=>{const c=s.routing?1:0,u=l.routing?1:0;if(c!==u)return u-c;const d=s.routing?.lastActiveAt??(s.lastActivity?new Date(s.lastActivity).getTime():0);return(l.routing?.lastActiveAt??(l.lastActivity?new Date(l.lastActivity).getTime():0))-d});t.push({name:a.name,displayName:a.displayName||a.name,fullPath:a.fullPath,aggregated:a.aggregated,allSessions:i})}let n=null;const r=e.unmatchedSessions||[];if(r.length>0){const a={inputTokens:0,outputTokens:0,cacheReadTokens:0,totalTokens:0,requestCount:0,estimatedCost:0,baselineCost:0,savedCost:0},i={},s={},l=[];for(const c of r){a.inputTokens+=c.total?.inputTokens||0,a.outputTokens+=c.total?.outputTokens||0,a.cacheReadTokens+=c.total?.cacheReadTokens||0,a.totalTokens+=c.total?.totalTokens||0,a.requestCount+=c.total?.requestCount||0,a.estimatedCost+=c.total?.estimatedCost||0,a.baselineCost+=c.total?.baselineCost||0,a.savedCost+=c.total?.savedCost||0;for(const[u,d]of Object.entries(c.byTier||{}))i[u]||(i[u]={inputTokens:0,outputTokens:0,cacheReadTokens:0,totalTokens:0,requestCount:0,estimatedCost:0,baselineCost:0,savedCost:0}),i[u].totalTokens+=d?.totalTokens||0,i[u].requestCount+=d?.requestCount||0,i[u].estimatedCost+=d?.estimatedCost||0,i[u].baselineCost+=d?.baselineCost||0,i[u].savedCost+=d?.savedCost||0;l.push({sessionId:c.sessionId,title:c.sessionId,provider:Object.keys(c.byScenario||{})[0]||"routed",lastActivity:c.lastActiveAt?new Date(c.lastActiveAt).toISOString():null,routing:{total:c.total,byTier:c.byTier,byScenario:c.byScenario,byRole:c.byRole,byModel:c.byModel,firstSeenAt:c.firstSeenAt,lastActiveAt:c.lastActiveAt}})}n={name:"__general__",displayName:"General / Other",fullPath:"",aggregated:{total:a,byTier:i,byRole:s,sessionCount:l.length,routedSessionCount:l.length},allSessions:l}}return{groups:t,generalGroup:n}}function yse(e,t){return[...e.flatMap(n=>n.allSessions),...t?.allSessions??[]].filter(n=>n.routing)}function vse({projectFilter:e,projectFullPath:t,onSelectProject:n}={}){const{t:r}=Je("routing"),{data:a,loading:i,error:s,refresh:l}=hse(),[c,u]=h.useState(()=>e?"project":"total"),d=!!e,p=d?c:"total",m=p==="project"?e:null,f=p==="project"?t:null;h.useEffect(()=>{u(e?"project":"total")},[e,t]);const{groups:g,generalGroup:b,recent:x,filteredOverall:k}=h.useMemo(()=>{if(!a)return{groups:[],generalGroup:null,recent:[],filteredOverall:null};const{groups:P,generalGroup:B}=xse(a);let $=P,U=B,q=a.overall;if(m){const V=L=>L.name===m||L.displayName===m||f&&L.fullPath===f;if($=P.filter(V),U=null,$.length>0){const L=$[0].aggregated;q={total:L.total,byTier:L.byTier,byRole:L.byRole,projectCount:1,sessionCount:L.sessionCount}}}const A=m?a.projects.filter(V=>V.name===m||V.displayName===m||f&&V.fullPath===f):a.projects,K=m?void 0:a.unmatchedSessions;return{groups:$,generalGroup:U,recent:bse(A,K),filteredOverall:q}},[a,m,f]);if(i&&!a)return o.jsxs("div",{className:"flex h-full items-center justify-center bg-white text-neutral-500 dark:bg-neutral-950 dark:text-neutral-400",children:[o.jsx(pt,{className:"h-4 w-4 animate-spin",strokeWidth:1.75}),o.jsx("span",{className:"ml-2 text-[13px]",children:r("dashboard.loading",{defaultValue:"Loading dashboard…"})})]});if(s&&!a)return o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 bg-white text-center dark:bg-neutral-950",children:[o.jsx(ka,{className:"h-8 w-8 text-red-500",strokeWidth:1.75}),o.jsx("p",{className:"text-[13px] text-neutral-600 dark:text-neutral-400",children:s}),o.jsx("button",{onClick:l,className:"text-xxs rounded-md bg-neutral-900 px-3 py-1.5 text-white transition hover:opacity-90 dark:bg-neutral-50 dark:text-neutral-900",children:r("dashboard.retry",{defaultValue:"Retry"})})]});if(!a||!k)return null;const y=k,v=y.total.requestCount||0,E=y.total.totalTokens||0,N=y.total.inputTokens||0,w=y.total.outputTokens||0,T=y.total.estimatedCost||0,j=y.total.baselineCost||0,_=y.total.savedCost||0,C=j>0,O=g.reduce((P,B)=>P+B.aggregated.routedSessionCount,0)+(b?.aggregated.routedSessionCount??0),I=yse(g,b),z=m&&g.length>0?g[0].displayName:m,M=m?r("dashboard.projectSubtitle",{project:z,defaultValue:`Routing stats for ${z}.`}):r("dashboard.subtitle",{defaultValue:"Usage across all projects and sessions."});return o.jsx("div",{className:"h-full overflow-y-auto bg-white dark:bg-neutral-950",children:o.jsxs("div",{className:"mx-auto w-full max-w-[960px] px-8 py-8",children:[o.jsxs("div",{className:"flex items-start justify-between gap-4",children:[o.jsxs("div",{children:[o.jsx("h2",{className:"text-[20px] font-semibold tracking-tight text-neutral-900 dark:text-neutral-100",children:r("dashboard.title",{defaultValue:"Dashboard"})}),o.jsx("p",{className:"mt-0.5 text-[13px] text-neutral-500 dark:text-neutral-400",children:M})]}),o.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[d?o.jsx("div",{role:"tablist","aria-label":r("dashboard.scope.label",{defaultValue:"Dashboard scope"}),className:"flex h-8 rounded-md bg-neutral-100 p-0.5 dark:bg-neutral-900",children:["project","total"].map(P=>o.jsx("button",{type:"button",role:"tab","aria-selected":p===P,onClick:()=>u(P),className:oe("rounded px-2.5 text-[12px] font-medium transition-colors",p===P?"bg-white text-neutral-900 shadow-sm dark:bg-neutral-700 dark:text-neutral-100":"text-neutral-500 hover:text-neutral-700 dark:text-neutral-400 dark:hover:text-neutral-200"),children:P==="project"?r("dashboard.scope.project",{defaultValue:"Project"}):r("dashboard.scope.total",{defaultValue:"Total"})},P))}):null,o.jsxs("button",{type:"button",onClick:l,disabled:i,className:"text-xxs inline-flex h-8 items-center gap-1.5 rounded-md border border-neutral-200 px-2.5 text-neutral-600 transition hover:bg-neutral-50 disabled:opacity-50 dark:border-neutral-800 dark:text-neutral-300 dark:hover:bg-neutral-900",children:[o.jsx(Cr,{className:oe("h-3.5 w-3.5",i&&"animate-spin"),strokeWidth:1.75}),o.jsx("span",{children:r("dashboard.refresh",{defaultValue:"Refresh"})})]})]})]}),o.jsxs("div",{className:"mt-6 grid grid-cols-1 gap-3 md:grid-cols-3",children:[o.jsx(kg,{icon:o.jsx(nx,{className:"h-3.5 w-3.5",strokeWidth:1.75}),label:r("dashboard.stats.requests",{defaultValue:"Requests"}),value:v.toLocaleString(),sub:O>0?r("dashboard.stats.routedSessions",{count:O,defaultValue:`${O} routed sessions`}):void 0,hint:!m&&y.projectCount?o.jsxs("span",{className:"inline-flex items-center gap-1 text-emerald-600 dark:text-emerald-400",children:[o.jsx(AT,{className:"h-3 w-3",strokeWidth:1.75}),o.jsx("span",{children:r("dashboard.stats.activeProjects",{count:y.projectCount,defaultValue:`${y.projectCount} active projects`})})]}):void 0}),o.jsx(kg,{icon:o.jsx($O,{className:"h-3.5 w-3.5",strokeWidth:1.75}),label:r("dashboard.stats.tokens",{defaultValue:"Tokens"}),value:xn(E),sub:r("dashboard.stats.inOut",{in:xn(N),out:xn(w),defaultValue:`${xn(N)} in · ${xn(w)} out`})}),o.jsx(kg,{icon:o.jsx(m8,{className:"h-3.5 w-3.5",strokeWidth:1.75}),label:r("dashboard.stats.cost",{defaultValue:"Cost"}),value:Bt(T),sub:C?r("dashboard.stats.noRouterCost",{value:Bt(j),defaultValue:`No-router ${Bt(j)}`}):v>0?r("dashboard.stats.perRequest",{value:Bt(T/v),defaultValue:`≈ ${Bt(T/v)} / request`}):void 0,hint:C?o.jsx(V6,{baseline:j,saved:_}):void 0})]}),m&&o.jsxs("div",{className:"mt-6 space-y-2",children:[o.jsx("div",{className:"text-xxs uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:r("dashboard.sessions.title",{defaultValue:"Sessions"})}),g.length>0&&g[0].allSessions.length>0?o.jsx("div",{className:"rounded-xl border border-neutral-200 bg-white dark:border-neutral-800 dark:bg-neutral-950",children:o.jsx("div",{className:"divide-y divide-neutral-100 dark:divide-neutral-800/50",children:g[0].allSessions.map(P=>o.jsx(Nse,{session:P},P.sessionId))})}):o.jsx("p",{className:"py-6 text-center text-[13px] text-neutral-400 dark:text-neutral-500",children:r("dashboard.sessions.empty",{defaultValue:"No sessions yet."})})]}),I.length>0&&o.jsx(wse,{sessions:I}),!m&&o.jsxs(o.Fragment,{children:[(g.length>0||b)&&o.jsxs("div",{className:"mt-6 space-y-3",children:[o.jsx("div",{className:"text-xxs uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:r("dashboard.projects.title",{defaultValue:"By project"})}),o.jsxs("div",{className:"grid grid-cols-1 gap-3 md:grid-cols-2",children:[g.map(P=>o.jsx(d5,{group:P,onClick:n?()=>n(P.name):void 0},P.name)),b&&o.jsx(d5,{group:b})]})]}),o.jsxs("div",{className:"mt-6 rounded-xl border border-neutral-200 bg-white p-5 dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsx("div",{className:"text-xxs mb-4 uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:r("dashboard.recent.title",{defaultValue:"Recent routes"})}),x.length===0?o.jsx("p",{className:"py-6 text-center text-[13px] text-neutral-500 dark:text-neutral-400",children:r("dashboard.recent.empty",{defaultValue:"No routing activity yet. Start a conversation to see stats here."})}):o.jsxs("table",{className:"w-full text-[13px]",children:[o.jsx("thead",{className:"text-xxs text-neutral-500 dark:text-neutral-400",children:o.jsxs("tr",{className:"text-left",children:[o.jsx("th",{className:"pb-2 font-normal",children:r("dashboard.recent.columns.time",{defaultValue:"Time"})}),o.jsx("th",{className:"pb-2 font-normal",children:r("dashboard.recent.columns.project",{defaultValue:"Project"})}),o.jsx("th",{className:"pb-2 font-normal",children:r("dashboard.recent.columns.model",{defaultValue:"Model"})}),o.jsx("th",{className:"pb-2 text-right font-normal",children:r("dashboard.recent.columns.tokens",{defaultValue:"Tokens"})})]})}),o.jsx("tbody",{className:"divide-y divide-neutral-200 dark:divide-neutral-800",children:x.map(P=>o.jsxs("tr",{children:[o.jsx("td",{className:"text-xxs py-2 font-mono text-neutral-500 dark:text-neutral-400",children:P.timeLabel}),o.jsx("td",{className:"py-2 text-neutral-600 dark:text-neutral-400",children:P.projectName||"—"}),o.jsx("td",{className:"py-2 text-neutral-700 dark:text-neutral-300",children:P.model}),o.jsx("td",{className:"py-2 text-right font-mono text-neutral-800 dark:text-neutral-200",children:P.tokens.toLocaleString()})]},P.key))})]})]})]})]})})}const u5={SIMPLE:"bg-emerald-400 dark:bg-emerald-500",MEDIUM:"bg-blue-400 dark:bg-blue-500",COMPLEX:"bg-amber-400 dark:bg-amber-500",REASONING:"bg-purple-400 dark:bg-purple-500",HARD:"bg-red-400 dark:bg-red-500"};function kse({byTier:e}){const t=gse(e).filter(([,r])=>(r?.requestCount??0)>0);if(t.length===0)return null;const n=t.reduce((r,[,a])=>r+(a?.estimatedCost??0),0)||1;return o.jsxs("div",{className:"mt-2.5 space-y-1.5",children:[o.jsx("div",{className:"flex h-1.5 w-full overflow-hidden rounded-full bg-neutral-100 dark:bg-neutral-800",children:t.map(([r,a])=>{const i=(a?.estimatedCost??0)/n*100;return i<.5?null:o.jsx("div",{className:oe("h-full",u5[r.toUpperCase()]||"bg-neutral-400"),style:{width:`${i}%`},title:`${r}: ${Bt(a?.estimatedCost??0)}`},r)})}),o.jsx("div",{className:"flex flex-wrap gap-x-3 gap-y-0.5",children:t.map(([r,a])=>o.jsxs("span",{className:"inline-flex items-center gap-1 text-[10px] text-neutral-500 dark:text-neutral-400",children:[o.jsx("span",{className:oe("inline-block h-1.5 w-1.5 rounded-full",u5[r.toUpperCase()]||"bg-neutral-400")}),o.jsx("span",{children:r}),o.jsx("span",{className:"tabular-nums",children:Bt(a?.estimatedCost??0)})]},r))})]})}function d5({group:e,onClick:t}){const{t:n}=Je("routing"),r=e.aggregated,a=r.total.estimatedCost||0,i=r.total.requestCount||0,s=r.total.totalTokens||0,l=r.total.baselineCost||0,c=r.total.savedCost||0,u=t?"button":"div";return o.jsxs(u,{type:t?"button":void 0,onClick:t,className:oe("flex flex-col rounded-xl border border-neutral-200 bg-white p-4 text-left dark:border-neutral-800 dark:bg-neutral-950",t&&"cursor-pointer transition hover:border-neutral-300 hover:shadow-sm dark:hover:border-neutral-700"),children:[o.jsxs("div",{className:"flex items-start justify-between gap-3",children:[o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(Ki,{className:"h-3.5 w-3.5 shrink-0 text-neutral-400 dark:text-neutral-500",strokeWidth:1.75}),o.jsx("span",{className:"truncate text-[13px] font-medium text-neutral-800 dark:text-neutral-200",children:e.displayName})]}),o.jsx("div",{className:"text-xxs mt-1 text-neutral-500 dark:text-neutral-400",children:n("dashboard.projectCard.summary",{requests:i,tokens:xn(s),sessions:r.sessionCount,defaultValue:`${i} requests · ${xn(s)} tokens · ${r.sessionCount} sessions`})})]}),o.jsxs("div",{className:"shrink-0 text-right",children:[o.jsx("div",{className:"text-[18px] font-semibold tabular-nums text-neutral-900 dark:text-neutral-100",children:Bt(a)}),l>0&&o.jsx("div",{className:"mt-0.5",children:o.jsx(V6,{baseline:l,saved:c})})]})]}),o.jsx(kse,{byTier:r.byTier||{}})]})}function wse({sessions:e}){const{t}=Je("routing"),n=e.filter(s=>s.routing),r=n.reduce((s,l)=>{const c=l.routing?.total;return c&&(s.actual+=c.estimatedCost||0,s.baseline+=c.baselineCost||0,s.saved+=c.savedCost||0,s.requests+=c.requestCount||0,s.tokens+=c.totalTokens||0),s},{actual:0,baseline:0,saved:0,requests:0,tokens:0}),a=r.baseline>0,i=r.saved>=0;return o.jsxs("div",{className:"mt-6 space-y-2",children:[o.jsx("div",{className:"text-xxs uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:t("dashboard.price.title",{defaultValue:"Price"})}),o.jsx("div",{className:oe("rounded-xl border",a?i?"border-emerald-200 bg-emerald-50/70 dark:border-emerald-900/60 dark:bg-emerald-950/20":"border-amber-200 bg-amber-50/70 dark:border-amber-900/60 dark:bg-amber-950/20":"border-neutral-200 bg-white dark:border-neutral-800 dark:bg-neutral-950"),children:n.length===0?o.jsx("p",{className:"px-5 py-6 text-center text-[13px] text-neutral-400 dark:text-neutral-500",children:t("dashboard.price.empty",{defaultValue:"No priced sessions yet."})}):o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:oe("grid grid-cols-1 divide-y md:grid-cols-3 md:divide-x md:divide-y-0",a?i?"divide-emerald-100 dark:divide-emerald-900/40":"divide-amber-100 dark:divide-amber-900/40":"divide-neutral-100 dark:divide-neutral-800"),children:[o.jsx(yg,{label:t("dashboard.price.actual",{defaultValue:"Actual cost"}),value:Bt(r.actual),sub:t("dashboard.price.summary",{sessions:n.length,requests:r.requests,tokens:xn(r.tokens),defaultValue:`${n.length} sessions · ${r.requests} req · ${xn(r.tokens)} tokens`})}),o.jsx(yg,{label:t("dashboard.price.baseline",{defaultValue:"No-router cost"}),value:a?Bt(r.baseline):"—",sub:t("dashboard.price.baselineHint",{defaultValue:"Baseline assumes the main model handles all routed tokens."})}),o.jsx(yg,{label:i?t("dashboard.price.saved",{defaultValue:"Saved"}):t("dashboard.price.extra",{defaultValue:"Extra spent"}),value:a?Bt(Math.abs(r.saved)):"—",sub:a?t("dashboard.price.savedHint",{rate:Math.round(Math.abs(r.saved/r.baseline)*100),defaultValue:`${Math.round(Math.abs(r.saved/r.baseline)*100)}% vs baseline`}):t("dashboard.price.missingBaseline",{defaultValue:"No baseline configured for these sessions."}),tone:a?i?"positive":"warning":"neutral"})]}),o.jsxs("div",{className:oe("border-t",a?i?"border-emerald-100 dark:border-emerald-900/40":"border-amber-100 dark:border-amber-900/40":"border-neutral-100 dark:border-neutral-800"),children:[o.jsxs("div",{className:"hidden grid-cols-[minmax(0,1fr)_112px_112px_112px] gap-4 px-5 py-2 text-[11px] leading-[14px] text-neutral-500 dark:text-neutral-400 md:grid",children:[o.jsx("span",{children:t("dashboard.price.session",{defaultValue:"Session"})}),o.jsx("span",{className:"text-right",children:t("dashboard.price.actualShort",{defaultValue:"Actual"})}),o.jsx("span",{className:"text-right",children:t("dashboard.price.baselineShort",{defaultValue:"No router"})}),o.jsx("span",{className:"text-right",children:t("dashboard.price.savedShort",{defaultValue:"Saved"})})]}),o.jsx("div",{className:oe("divide-y",a?i?"divide-emerald-100/80 dark:divide-emerald-900/30":"divide-amber-100/80 dark:divide-amber-900/30":"divide-neutral-100 dark:divide-neutral-800/50"),children:n.map(s=>{const l=s.routing.total,c=l.estimatedCost||0,u=l.baselineCost||0,d=l.savedCost||0,p=u>0,m=d>=0;return o.jsxs("div",{className:"grid grid-cols-1 gap-2 px-5 py-3 text-[13px] md:grid-cols-[minmax(0,1fr)_112px_112px_112px] md:items-center md:gap-4",children:[o.jsxs("div",{className:"min-w-0",children:[o.jsx("div",{className:"truncate font-medium text-neutral-800 dark:text-neutral-200",children:s.title||s.sessionId}),o.jsxs("div",{className:"mt-0.5 flex flex-wrap gap-x-2 gap-y-0.5 text-xxs text-neutral-500 dark:text-neutral-400",children:[o.jsx("span",{children:t("dashboard.units.requestsShort",{count:l.requestCount||0,defaultValue:`${l.requestCount||0} req`})}),o.jsx("span",{children:t("dashboard.units.tokens",{value:xn(l.totalTokens||0),defaultValue:`${xn(l.totalTokens||0)} tokens`})}),o.jsx("span",{children:G6(s.lastActivity,s.routing?.lastActiveAt)})]})]}),o.jsx(vg,{label:t("dashboard.price.actualShort",{defaultValue:"Actual"}),value:Bt(c)}),o.jsx(vg,{label:t("dashboard.price.baselineShort",{defaultValue:"No router"}),value:p?Bt(u):"—"}),o.jsx(vg,{label:m?t("dashboard.price.savedShort",{defaultValue:"Saved"}):t("dashboard.price.extraShort",{defaultValue:"Extra"}),value:p?Bt(Math.abs(d)):"—",tone:p?m?"positive":"warning":"neutral"})]},s.sessionId)})})]})]})})]})}function yg({label:e,value:t,sub:n,tone:r="neutral"}){return o.jsxs("div",{className:"px-5 py-4",children:[o.jsx("div",{className:"text-xxs text-neutral-500 dark:text-neutral-400",children:e}),o.jsx("div",{className:oe("mt-1 text-[22px] font-semibold tabular-nums text-neutral-900 dark:text-neutral-100",r==="positive"&&"text-emerald-700 dark:text-emerald-300",r==="warning"&&"text-amber-700 dark:text-amber-300"),children:t}),n&&o.jsx("div",{className:"mt-1 text-xxs text-neutral-500 dark:text-neutral-400",children:n})]})}function vg({label:e,value:t,tone:n="neutral"}){return o.jsxs("div",{className:"flex items-center justify-between gap-3 md:block md:text-right",children:[o.jsx("span",{className:"text-xxs text-neutral-500 dark:text-neutral-400 md:hidden",children:e}),o.jsx("span",{className:oe("tabular-nums text-neutral-700 dark:text-neutral-300",n==="positive"&&"font-medium text-emerald-700 dark:text-emerald-300",n==="warning"&&"font-medium text-amber-700 dark:text-amber-300"),children:t})]})}function Sse(e,t){if(!t)return e.map(()=>"");const n=Object.entries(t.byTier||{}).sort((a,i)=>(i[1]?.requestCount??0)-(a[1]?.requestCount??0));if(n.length===0)return e.map(()=>"");if(n.length===1)return e.map(()=>n[0][0]);const r=[];for(const[a,i]of n){const s=i?.requestCount??0;for(let l=0;lr[i]||r[r.length-1]||"")}const Ese=[/^\[Request interrupted/i,/^Base directory for this skill/i,/^!t||t.length<2?!1:!Ese.some(n=>n.test(t)))}function p5({entry:e,variant:t}){const{t:n}=Je("routing"),r=t==="sub",a=t==="tool",i=e.savedCost??0,s=a?"bg-amber-50/40 dark:bg-amber-900/10":r?"bg-violet-50/40 dark:bg-violet-900/10":"bg-neutral-50 dark:bg-neutral-900/30",l=a?"bg-amber-100 text-amber-600 dark:bg-amber-800/40 dark:text-amber-400":r?"bg-violet-100 text-violet-600 dark:bg-violet-800/40 dark:text-violet-400":"bg-neutral-200/70 text-neutral-600 dark:bg-neutral-700 dark:text-neutral-400",c=a?"bg-amber-50 text-amber-500 dark:bg-amber-900/20 dark:text-amber-400":r?"bg-violet-50 text-violet-500 dark:bg-violet-900/20 dark:text-violet-400":"bg-neutral-100 text-neutral-500 dark:bg-neutral-800 dark:text-neutral-500",u=a?n("dashboard.session.toolShort",{defaultValue:"tool"}):r?n("dashboard.session.subShort",{defaultValue:"sub"}):n("dashboard.session.mainShort",{defaultValue:"main"});return o.jsxs("div",{className:oe("flex items-start gap-2 rounded-md px-2.5 py-1.5 text-[12px]",s),children:[o.jsx("span",{className:oe("text-xxs mt-0.5 shrink-0 rounded px-1.5 py-0.5 font-medium",l),children:e.tier||"—"}),o.jsx("span",{className:oe("text-xxs mt-0.5 shrink-0 rounded px-1 py-0.5",c),children:u}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:"truncate text-neutral-700 dark:text-neutral-300",children:e.query||o.jsx("span",{className:"italic text-neutral-400",children:n("dashboard.session.noContent",{defaultValue:"(no content)"})})}),o.jsxs("div",{className:"mt-0.5 flex items-center gap-2 text-xxs text-neutral-400 dark:text-neutral-500",children:[o.jsx("span",{className:"truncate",children:e.model}),o.jsx("span",{className:"tabular-nums",children:xn(e.tokens)}),o.jsx("span",{className:"tabular-nums",children:Bt(e.cost)}),typeof e.savedCost=="number"&&Math.abs(i)>1e-6&&o.jsxs("span",{className:oe("tabular-nums",i>=0?"text-emerald-600 dark:text-emerald-400":"text-amber-600 dark:text-amber-400"),children:[i>=0?n("dashboard.price.savedLower",{defaultValue:"saved"}):n("dashboard.price.extraLower",{defaultValue:"over"})," ",Bt(Math.abs(i))]})]})]})]})}function Nse({session:e}){const{t}=Je("routing"),[n,r]=h.useState(!1),a=e.routing,i=e.userQueries||[],s=Cse(i),l=s.length,c=Sse(s,a),u=a?.byRole?.main,d=a?.byRole?.sub,p=!!(d&&d.requestCount>0),m=a?.requestLog||[],f=m.length>0,g=[];if(f){let b=null;for(const x of m)x.role==="main"?(b={main:x,subs:[]},g.push(b)):b?b.subs.push(x):g.push({main:{...x,role:"main",query:x.query||"(orchestrator)"},subs:[]})}return o.jsxs("div",{children:[o.jsxs("button",{type:"button",onClick:()=>r(!n),className:"flex w-full items-center gap-3 px-5 py-2.5 text-left transition hover:bg-neutral-50 dark:hover:bg-neutral-900/50",children:[n?o.jsx(Sn,{className:"h-3 w-3 shrink-0 text-neutral-400",strokeWidth:1.75}):o.jsx(qn,{className:"h-3 w-3 shrink-0 text-neutral-400",strokeWidth:1.75}),o.jsx("div",{className:"min-w-0 flex-1 truncate text-[13px] text-neutral-700 dark:text-neutral-300",children:e.title||e.sessionId}),a?o.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[p&&o.jsx("span",{className:"text-xxs rounded bg-violet-100 px-1.5 py-0.5 font-medium text-violet-600 dark:bg-violet-900/40 dark:text-violet-400",children:t("dashboard.session.orchestrated",{defaultValue:"orchestrated"})}),Object.keys(a.byTier||{}).map(b=>o.jsx("span",{className:"text-xxs rounded bg-blue-100 px-1.5 py-0.5 font-medium text-blue-600 dark:bg-blue-900/40 dark:text-blue-400",children:b},b)),o.jsxs("div",{className:"ml-1 grid grid-cols-[56px_62px_58px_86px] items-center gap-2 text-[11px] leading-[14px] tabular-nums",children:[o.jsx("span",{className:"text-right text-neutral-500 dark:text-neutral-400",children:t("dashboard.units.requestsShort",{count:a.total.requestCount,defaultValue:`${a.total.requestCount} req`})}),o.jsx("span",{className:"text-right text-neutral-600 dark:text-neutral-400",children:xn(a.total.totalTokens||0)}),o.jsx("span",{className:"text-right text-neutral-500 dark:text-neutral-400",children:Bt(a.total.estimatedCost||0)}),o.jsxs("span",{className:oe("text-right font-medium",!a.total.baselineCost&&"invisible",(a.total.savedCost||0)>=0?"text-emerald-600 dark:text-emerald-400":"text-amber-600 dark:text-amber-400"),children:[(a.total.savedCost||0)>=0?t("dashboard.price.savedLower",{defaultValue:"saved"}):t("dashboard.price.extraLower",{defaultValue:"over"})," ",Bt(Math.abs(a.total.savedCost||0))]})]})]}):o.jsx("span",{className:"text-xxs shrink-0 text-neutral-300 dark:text-neutral-700",children:l>0?t("dashboard.units.queries",{count:l,defaultValue:`${l} queries`}):"—"})]}),n&&o.jsxs("div",{className:"border-t border-neutral-100 bg-neutral-50/50 px-5 pb-3 pt-2 dark:border-neutral-800/50 dark:bg-neutral-900/30",children:[f?o.jsxs(o.Fragment,{children:[p&&o.jsxs("div",{className:"mb-2.5 grid grid-cols-2 gap-2",children:[u&&o.jsxs("div",{className:"rounded-lg border border-neutral-200 px-3 py-2 dark:border-neutral-700/60",children:[o.jsx("div",{className:"text-xxs font-medium text-neutral-700 dark:text-neutral-300",children:t("dashboard.session.mainAgent",{defaultValue:"Main Agent"})}),o.jsxs("div",{className:"mt-0.5 text-xxs tabular-nums text-neutral-500 dark:text-neutral-400",children:[t("dashboard.units.requestsShort",{count:u.requestCount,defaultValue:`${u.requestCount} req`})," · ",xn(u.totalTokens||0)," · ",Bt(u.estimatedCost||0)]})]}),d&&o.jsxs("div",{className:"rounded-lg border border-violet-200/60 bg-violet-50/30 px-3 py-2 dark:border-violet-700/30 dark:bg-violet-900/10",children:[o.jsx("div",{className:"text-xxs font-medium text-violet-700 dark:text-violet-300",children:t("dashboard.session.subagents",{defaultValue:"Sub-agents"})}),o.jsxs("div",{className:"mt-0.5 text-xxs tabular-nums text-violet-600 dark:text-violet-400",children:[t("dashboard.units.requestsShort",{count:d.requestCount,defaultValue:`${d.requestCount} req`})," · ",xn(d.totalTokens||0)," · ",Bt(d.estimatedCost||0)]})]})]}),o.jsx("div",{className:"space-y-2",children:g.map((b,x)=>o.jsxs("div",{children:[o.jsx(p5,{entry:b.main,variant:"main"}),b.subs.length>0&&o.jsx("div",{className:"ml-5 mt-1 space-y-1 border-l-2 border-amber-200/60 pl-3 dark:border-amber-700/30",children:b.subs.map((k,y)=>o.jsx(p5,{entry:k,variant:k.tier||k.isSubagentDispatch?"sub":"tool"},y))})]},x))})]}):o.jsxs(o.Fragment,{children:[p&&a&&o.jsxs("div",{className:"mb-2.5 grid grid-cols-2 gap-2",children:[u&&o.jsxs("div",{className:"rounded-lg border border-neutral-200 px-3 py-2 dark:border-neutral-700/60",children:[o.jsx("div",{className:"text-xxs font-medium text-neutral-700 dark:text-neutral-300",children:t("dashboard.session.mainAgent",{defaultValue:"Main Agent"})}),o.jsxs("div",{className:"mt-0.5 text-xxs tabular-nums text-neutral-500 dark:text-neutral-400",children:[t("dashboard.units.requestsShort",{count:u.requestCount,defaultValue:`${u.requestCount} req`})," · ",xn(u.totalTokens||0)," · ",Bt(u.estimatedCost||0)]})]}),d&&o.jsxs("div",{className:"rounded-lg border border-violet-200/60 bg-violet-50/30 px-3 py-2 dark:border-violet-700/30 dark:bg-violet-900/10",children:[o.jsx("div",{className:"text-xxs font-medium text-violet-700 dark:text-violet-300",children:t("dashboard.session.subagents",{defaultValue:"Sub-agents"})}),o.jsxs("div",{className:"mt-0.5 text-xxs tabular-nums text-violet-600 dark:text-violet-400",children:[t("dashboard.units.requestsShort",{count:d.requestCount,defaultValue:`${d.requestCount} req`})," · ",xn(d.totalTokens||0)," · ",Bt(d.estimatedCost||0)]})]})]}),s.length>0?o.jsx("div",{className:"space-y-1.5",children:s.map((b,x)=>o.jsxs("div",{className:"flex items-center gap-2 text-[12px]",children:[c[x]?o.jsx("span",{className:"text-xxs shrink-0 rounded bg-neutral-200/70 px-1.5 py-0.5 font-medium text-neutral-600 dark:bg-neutral-700 dark:text-neutral-400",children:c[x]}):o.jsx("span",{className:"text-xxs shrink-0 rounded bg-neutral-100 px-1.5 py-0.5 text-neutral-400 dark:bg-neutral-800 dark:text-neutral-600",children:"—"}),o.jsx("span",{className:"min-w-0 flex-1 truncate text-neutral-600 dark:text-neutral-400",children:b})]},x))}):o.jsx("p",{className:"text-xxs text-neutral-400 dark:text-neutral-600",children:t("dashboard.session.noUserQueries",{defaultValue:"No user queries recorded."})})]}),a&&Object.keys(a.byModel||{}).length>0&&o.jsxs("div",{className:"mt-2.5 flex flex-wrap items-center gap-1.5",children:[o.jsx("span",{className:"text-xxs text-neutral-400 dark:text-neutral-500",children:t("dashboard.session.models",{defaultValue:"Models:"})}),Object.entries(a.byModel||{}).map(([b,x])=>o.jsxs("span",{className:"text-xxs rounded-full bg-neutral-100 px-2 py-0.5 text-neutral-500 dark:bg-neutral-800 dark:text-neutral-400",children:[b," ",o.jsxs("span",{className:"tabular-nums text-neutral-400 dark:text-neutral-500",children:["×",x?.requestCount??0]})]},b))]})]})]})}function kg({icon:e,label:t,value:n,sub:r,hint:a}){return o.jsxs("div",{className:"rounded-xl border border-neutral-200 bg-white p-5 dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsxs("div",{className:"text-xxs flex items-center gap-2 uppercase tracking-wide text-neutral-500 dark:text-neutral-400",children:[e,o.jsx("span",{children:t})]}),o.jsx("div",{className:"mt-2 text-[28px] font-semibold tracking-tight text-neutral-900 dark:text-neutral-100",children:n}),o.jsx("div",{className:"text-xxs mt-1 text-neutral-500 dark:text-neutral-400",children:r??" "}),a?o.jsx("div",{className:"text-xxs mt-1",children:a}):null]})}function Tse(e){const t=[],n=r=>{for(const a of r)t.push(a),Array.isArray(a.subtasks)&&a.subtasks.length&&n(a.subtasks)};return n(e),t}const m5={pending:"Not started","in-progress":"In progress",done:"Done",review:"In review",blocked:"Blocked",deferred:"Deferred",cancelled:"Cancelled"},Ase={pending:"bg-neutral-100 text-neutral-600 dark:bg-neutral-900 dark:text-neutral-400","in-progress":"bg-amber-100 text-amber-700 dark:bg-amber-500/10 dark:text-amber-400",review:"bg-blue-100 text-blue-700 dark:bg-blue-500/10 dark:text-blue-400",blocked:"bg-red-100 text-red-700 dark:bg-red-500/10 dark:text-red-400",deferred:"bg-neutral-100 text-neutral-500 dark:bg-neutral-900 dark:text-neutral-500",cancelled:"bg-neutral-100 text-neutral-500 dark:bg-neutral-900 dark:text-neutral-500"};function Ise({isVisible:e}){const{t}=Je(),{tasks:n,currentProject:r,refreshTasks:a,isLoadingTasks:i}=jT(),[s,l]=h.useState(null),c=h.useMemo(()=>Tse(n??[]),[n]),u=c.filter(p=>p.status==="in-progress").length,d=h.useCallback(async p=>{const m=r?.name;if(!m)return;const f=p.status==="done"?"pending":"done";l({id:String(p.id),nextStatus:f});try{(await Oe(`/api/taskmaster/update-task/${encodeURIComponent(m)}/${encodeURIComponent(String(p.id))}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:f})})).ok&&a()}catch(g){console.error("Failed to update task status",g)}finally{l(null)}},[r?.name,a]);return e?o.jsx("div",{className:"h-full overflow-y-auto bg-white dark:bg-neutral-950",children:o.jsxs("div",{className:"mx-auto w-full max-w-[880px] space-y-4 px-8 py-8",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{children:[o.jsx("h2",{className:"text-[20px] font-semibold tracking-tight text-neutral-900 dark:text-neutral-100",children:"Tasks"}),o.jsxs("p",{className:"mt-0.5 text-[13px] text-neutral-500 dark:text-neutral-400",children:[c.length," tasks · ",u," in progress"]})]}),o.jsxs("button",{type:"button",onClick:()=>{a()},className:"text-xxs inline-flex h-8 items-center gap-1.5 rounded-md bg-neutral-900 px-2.5 text-white transition hover:opacity-90 dark:bg-neutral-50 dark:text-neutral-900",children:[o.jsx(Qt,{className:"h-3.5 w-3.5",strokeWidth:2}),o.jsx("span",{children:"Refresh"})]})]}),i&&c.length===0?o.jsxs("div",{className:"flex items-center justify-center gap-2 rounded-xl border border-neutral-200 py-10 text-[13px] text-neutral-500 dark:border-neutral-800 dark:text-neutral-400",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),o.jsx("span",{children:t("loading",{defaultValue:"Loading…"})})]}):c.length===0?o.jsx("div",{className:"rounded-xl border border-neutral-200 p-10 text-center text-[13px] text-neutral-500 dark:border-neutral-800 dark:text-neutral-400",children:"No tasks yet. Initialize Task Master from the legacy tasks panel to get started."}):o.jsx("div",{className:"divide-y divide-neutral-200 rounded-xl border border-neutral-200 dark:divide-neutral-800 dark:border-neutral-800",children:c.map(p=>{const m=p.status==="done",f=String(p.status??"pending"),g=s?.id===String(p.id);return o.jsxs("label",{className:"flex cursor-pointer items-start gap-3 p-4 transition-colors hover:bg-neutral-50 dark:hover:bg-neutral-900/60",children:[o.jsx("input",{type:"checkbox",checked:m,disabled:g,onChange:()=>{d(p)},className:"mt-0.5 h-4 w-4 accent-neutral-900 dark:accent-neutral-50"}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("div",{className:oe("text-[13.5px]",m?"text-neutral-400 line-through dark:text-neutral-500":"text-neutral-900 dark:text-neutral-100"),children:p.title}),o.jsxs("div",{className:"text-xxs mt-0.5 text-neutral-500 dark:text-neutral-400",children:[m5[f]??f,p.priority?` · ${p.priority}`:""]})]}),f!=="pending"&&f!=="done"?o.jsx("span",{className:oe("rounded-md px-2 py-0.5 text-xxs",Ase[f]??"bg-neutral-100 text-neutral-600 dark:bg-neutral-900 dark:text-neutral-400"),children:m5[f]??f}):null]},String(p.id))})})]})}):null}const Rse=({selectedProject:e,isMobile:t,initialWidth:n=600})=>{const[r,a]=h.useState(null),[i,s]=h.useState(n),[l,c]=h.useState(!1),[u,d]=h.useState(!1),[p,m]=h.useState(!1),f=h.useRef(null),g=h.useCallback((y,v=null)=>{const N=y.replace(/\\/g,"/").split("/").pop()||y;a({name:N,path:y,projectName:e?.name,diffInfo:v})},[e?.name]),b=h.useCallback(()=>{a(null),c(!1)},[]);h.useEffect(()=>{a(null),c(!1)},[e?.name]);const x=h.useCallback(()=>{c(y=>!y)},[]),k=h.useCallback(y=>{t||(m(!0),d(!0),y.preventDefault())},[t]);return h.useEffect(()=>{const y=E=>{if(!u)return;const w=f.current?.parentElement?.parentElement;if(!w)return;const T=w.getBoundingClientRect(),j=T.right-E.clientX,_=300,C=T.width*.8;j>=_&&j<=C&&s(j)},v=()=>{d(!1)};return u&&(document.addEventListener("mousemove",y),document.addEventListener("mouseup",v),document.body.style.cursor="col-resize",document.body.style.userSelect="none"),()=>{document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",v),document.body.style.cursor="",document.body.style.userSelect=""}},[u]),{editingFile:r,editorWidth:i,editorExpanded:l,hasManualWidth:p,resizeHandleRef:f,handleFileOpen:g,handleCloseEditor:b,handleToggleEditorExpand:x,handleResizeStart:k}};class an{constructor(t,n,r,a){this.fromA=t,this.toA=n,this.fromB=r,this.toB=a}offset(t,n=t){return new an(this.fromA+t,this.toA+t,this.fromB+n,this.toB+n)}}function oi(e,t,n,r,a,i){if(e==r)return[];let s=Uy(e,t,n,r,a,i),l=zy(e,t+s,n,r,a+s,i);t+=s,n-=l,a+=s,i-=l;let c=n-t,u=i-a;if(!c||!u)return[new an(t,n,a,i)];if(c>u){let p=e.slice(t,n).indexOf(r.slice(a,i));if(p>-1)return[new an(t,t+p,a,a),new an(t+p+u,n,i,i)]}else if(u>c){let p=r.slice(a,i).indexOf(e.slice(t,n));if(p>-1)return[new an(t,t,a,a+p),new an(n,n,a+p+c,i)]}if(c==1||u==1)return[new an(t,n,a,i)];let d=Y6(e,t,n,r,a,i);if(d){let[p,m,f]=d;return oi(e,t,p,r,a,m).concat(oi(e,p+f,n,r,m+f,i))}return _se(e,t,n,r,a,i)}let Ys=1e9,Xs=0,$y=!1;function _se(e,t,n,r,a,i){let s=n-t,l=i-a;if(Ys<1e9&&Math.min(s,l)>Ys*16||Xs>0&&Date.now()>Xs)return Math.min(s,l)>Ys*64?[new an(t,n,a,i)]:f5(e,t,n,r,a,i);let c=Math.ceil((s+l)/2);wg.reset(c),Sg.reset(c);let u=(f,g)=>e.charCodeAt(t+f)==r.charCodeAt(a+g),d=(f,g)=>e.charCodeAt(n-f-1)==r.charCodeAt(i-g-1),p=(s-l)%2!=0?Sg:null,m=p?null:wg;for(let f=0;fYs||Xs>0&&!(f&63)&&Date.now()>Xs)return f5(e,t,n,r,a,i);let g=wg.advance(f,s,l,c,p,!1,u)||Sg.advance(f,s,l,c,m,!0,d);if(g)return jse(e,t,n,t+g[0],r,a,i,a+g[1])}return[new an(t,n,a,i)]}class W6{constructor(){this.vec=[]}reset(t){this.len=t<<1;for(let n=0;nn)this.end+=2;else if(p>r)this.start+=2;else if(i){let m=a+(n-r)-c;if(m>=0&&m=n-d)return[f,a+f-m]}else{let f=n-i.vec[m];if(d>=f)return[d,p]}}}return null}}const wg=new W6,Sg=new W6;function jse(e,t,n,r,a,i,s,l){let c=!1;return!as(e,r)&&++r==n&&(c=!0),!as(a,l)&&++l==s&&(c=!0),c?[new an(t,n,i,s)]:oi(e,t,r,a,i,l).concat(oi(e,r,n,a,l,s))}function K6(e,t){let n=1,r=Math.min(e,t);for(;nn||d>i||e.slice(l,u)!=r.slice(c,d)){if(s==1)return l-t-(as(e,l)?0:1);s=s>>1}else{if(u==n||d==i)return u-t;l=u,c=d}}}function zy(e,t,n,r,a,i){if(t==n||a==i||e.charCodeAt(n-1)!=r.charCodeAt(i-1))return 0;let s=K6(n-t,i-a);for(let l=n,c=i;;){let u=l-s,d=c-s;if(u>1}else{if(u==t||d==a)return n-u;l=u,c=d}}}function Yb(e,t,n,r,a,i,s,l){let c=r.slice(a,i),u=null;for(;;){if(u||s=n)break;let m=e.slice(d,p),f=-1;for(;(f=c.indexOf(m,f+1))!=-1;){let g=Uy(e,p,n,r,a+f+m.length,i),b=zy(e,t,d,r,a,a+f),x=m.length+g+b;(!u||u[2]>1}}function Y6(e,t,n,r,a,i){let s=n-t,l=i-a;if(sa.fromA-t&&r.toB>a.fromB-t&&(e[n-1]=new an(r.fromA,a.toA,r.fromB,a.toB),e.splice(n--,1))}}function Ose(e,t,n){for(;;){X6(n,1);let r=!1;for(let a=0;a3||l>3){let c=a==e.length-1?t.length:e[a+1].fromA,u=i.fromA-r,d=c-i.toA,p=g5(t,i.fromA,u),m=h5(t,i.toA,d),f=i.fromA-p,g=m-i.toA;if((!s||!l)&&f&&g){let b=Math.max(s,l),[x,k,y]=s?[t,i.fromA,i.toA]:[n,i.fromB,i.toB];b>f&&t.slice(p,i.fromA)==x.slice(y-f,y)?(i=e[a]=new an(p,p+s,i.fromB-f,i.toB-f),p=i.fromA,m=h5(t,i.toA,c-i.toA)):b>g&&t.slice(i.toA,m)==x.slice(k,k+g)&&(i=e[a]=new an(m-s,m,i.fromB+g,i.toB+g),m=i.toA,p=g5(t,i.fromA,i.fromA-r)),f=i.fromA-p,g=m-i.toA}if(f||g)i=e[a]=new an(i.fromA-f,i.toA+g,i.fromB-f,i.toB+g);else if(s){if(!l){let b=x5(t,i.fromA,i.toA),x,k=b<0?-1:b5(t,i.toA,i.fromA);b>-1&&(x=b-i.fromA)<=d&&t.slice(i.fromA,b)==t.slice(i.toA,i.toA+x)?i=e[a]=i.offset(x):k>-1&&(x=i.toA-k)<=u&&t.slice(i.fromA-x,i.fromA)==t.slice(k,i.toA)&&(i=e[a]=i.offset(-x))}}else{let b=x5(n,i.fromB,i.toB),x,k=b<0?-1:b5(n,i.toB,i.fromB);b>-1&&(x=b-i.fromB)<=d&&n.slice(i.fromB,b)==n.slice(i.toB,i.toB+x)?i=e[a]=i.offset(x):k>-1&&(x=i.toB-k)<=u&&n.slice(i.fromB-x,i.fromB)==n.slice(k,i.toB)&&(i=e[a]=i.offset(-x))}}r=i.toA}return X6(e,3),e}let ei;try{ei=new RegExp("[\\p{Alphabetic}\\p{Number}]","u")}catch{}function Z6(e){return e>48&&e<58||e>64&&e<91||e>96&&e<123}function J6(e,t){if(t==e.length)return 0;let n=e.charCodeAt(t);return n<192?Z6(n)?1:0:ei?!t7(n)||t==e.length-1?ei.test(String.fromCharCode(n))?1:0:ei.test(e.slice(t,t+2))?2:0:0}function Q6(e,t){if(!t)return 0;let n=e.charCodeAt(t-1);return n<192?Z6(n)?1:0:ei?!n7(n)||t==1?ei.test(String.fromCharCode(n))?1:0:ei.test(e.slice(t-2,t))?2:0:0}const e7=8;function h5(e,t,n){if(t==e.length||!Q6(e,t))return t;for(let r=t,a=t+n,i=0;ia)return r;r+=s}return t}function g5(e,t,n){if(!t||!J6(e,t))return t;for(let r=t,a=t-n,i=0;ie>=55296&&e<=56319,n7=e=>e>=56320&&e<=57343;function as(e,t){return!t||t==e.length||!t7(e.charCodeAt(t-1))||!n7(e.charCodeAt(t))}function Mse(e,t,n){var r;let a=n?.override;return a?a(e,t):(Ys=((r=n?.scanLimit)!==null&&r!==void 0?r:1e9)>>1,Xs=n?.timeout?Date.now()+n.timeout:0,$y=!1,Ose(e,t,oi(e,0,e.length,t,0,t.length)))}function r7(){return!$y}function a7(e,t,n){return Dse(Mse(e,t,n),e,t)}const ra=Sc.define({combine:e=>e[0]}),Lse=Jb.define(),i7=Sc.define(),fr=wo.define({create(e){return null},update(e,t){for(let n of t.effects)n.is(Lse)&&(e=n.value);for(let n of t.state.facet(i7))e=n(e,t);return e}});function qy(e){let t=e.field(fr,!1);if(!t)return null;let n=e.facet(ra);return{chunks:t,side:n?n.side:null}}class Vi{constructor(t,n,r,a,i,s=!0){this.changes=t,this.fromA=n,this.toA=r,this.fromB=a,this.toB=i,this.precise=s}offset(t,n){return t||n?new Vi(this.changes,this.fromA+t,this.toA+t,this.fromB+n,this.toB+n,this.precise):this}get endA(){return Math.max(this.fromA,this.toA-1)}get endB(){return Math.max(this.fromB,this.toB-1)}static build(t,n,r){let a=a7(t.toString(),n.toString(),r);return s7(a,t,n,0,0,r7())}static updateA(t,n,r,a,i){return S5(w5(t,a,!0,r.length),t,n,r,i)}static updateB(t,n,r,a,i){return S5(w5(t,a,!1,n.length),t,n,r,i)}}function y5(e,t,n,r){let a=n.lineAt(e),i=r.lineAt(t);return a.to==e&&i.to==t&&ep+1&&x>m+1)break;f.push(g.offset(-u+r,-d+a)),[p,m]=v5(g.toA+r,g.toB+a,t,n),l++}s.push(new Vi(f,u,Math.max(u,p),d,Math.max(d,m),i))}return s}const kl=1e3;function k5(e,t,n,r){let a=0,i=e.length;for(;;){if(a==i){let d=0,p=0;a&&({toA:d,toB:p}=e[a-1]);let m=t-(n?d:p);return[d+m,p+m]}let s=a+i>>1,l=e[s],[c,u]=n?[l.fromA,l.toA]:[l.fromB,l.toB];if(c>t)i=s;else if(u<=t)a=s+1;else return r?[l.fromA,l.fromB]:[l.toA,l.toB]}}function w5(e,t,n,r){let a=[];return t.iterChangedRanges((i,s,l,c)=>{let u=0,d=n?t.length:r,p=0,m=n?r:t.length;i>kl&&([u,p]=k5(e,i-kl,n,!0)),s=u?a[a.length-1]={fromA:g.fromA,fromB:g.fromB,toA:d,toB:m,diffA:g.diffA+b,diffB:g.diffB+x}:a.push({fromA:u,toA:d,fromB:p,toB:m,diffA:b,diffB:x})}),a}function S5(e,t,n,r,a){if(!e.length)return t;let i=[];for(let s=0,l=0,c=0,u=0;;s++){let d=s==e.length?null:e[s],p=d?d.fromA+l:n.length,m=d?d.fromB+c:r.length;for(;up||x.toB+c>m))break;i.push(x.offset(l,c)),u++}if(!d)break;let f=d.toA+l+d.diffA,g=d.toB+c+d.diffB,b=a7(n.sliceString(p,f),r.sliceString(m,g),a);for(let x of s7(b,n,r,p,m,r7()))i.push(x);for(l+=d.diffA,c+=d.diffB;uf&&x.fromB+c>g)break;u++}}return i}const Pse={scanLimit:500},o7=wc.fromClass(class{constructor(e){({deco:this.deco,gutter:this.gutter}=N5(e))}update(e){(e.docChanged||e.viewportChanged||Fse(e.startState,e.state)||Bse(e.startState,e.state))&&({deco:this.deco,gutter:this.gutter}=N5(e.view))}},{decorations:e=>e.deco});function Fse(e,t){return e.field(fr,!1)!=t.field(fr,!1)}function Bse(e,t){return e.facet(ra)!=t.facet(ra)}const E5=aa.line({class:"cm-changedLine"}),l7=aa.mark({class:"cm-changedText"}),$se=aa.mark({tagName:"ins",class:"cm-insertedLine"}),Use=aa.mark({tagName:"del",class:"cm-deletedLine"}),C5=new class extends Qb{constructor(){super(...arguments),this.elementClass="cm-changedLineGutter"}};function zse(e,t,n,r,a,i){let s=n?e.fromA:e.fromB,l=n?e.toA:e.toB,c=0;if(s!=l){a.add(s,s,E5),a.add(s,l,n?Use:$se),i&&i.add(s,s,C5);for(let u=t.iterRange(s,l-1),d=s;!u.next().done;){if(u.lineBreak){d++,a.add(d,d,E5),i&&i.add(d,d,C5);continue}let p=d+u.value.length;if(r)for(;c=d)break;(s?p.toA:p.toB)>u&&(!i||!i(e.state,p,l,c))&&zse(p,e.state.doc,s,r,l,c)}return{deco:l.finish(),gutter:c&&c.finish()}}const Xb=Jb.define({map:(e,t)=>t.mapPos(e)});class qse extends ex{constructor(t){super(),this.lines=t}eq(t){return this.lines==t.lines}toDOM(t){let n=document.createElement("div");return n.className="cm-collapsedLines",n.textContent=t.state.phrase("$ unchanged lines",this.lines),n.addEventListener("click",r=>{let a=t.posAtDOM(r.target);t.dispatch({effects:Xb.of(a)});let{side:i,sibling:s}=t.state.facet(ra);s&&s().dispatch({effects:Xb.of(Hse(a,t.state.field(fr),i=="a"))})}),n}ignoreEvent(t){return t instanceof MouseEvent}get estimatedHeight(){return 27}get type(){return"collapsed-unchanged-code"}}function Hse(e,t,n){let r=0,a=0;for(let i=0;;i++){let s=i=e)return a+(e-r);[r,a]=n?[s.toA,s.toB]:[s.toB,s.toA]}}const Gse=wo.define({create(e){return aa.none},update(e,t){e=e.map(t.changes);for(let n of t.effects)n.is(Xb)&&(e=e.update({filter:r=>r!=n.value}));return e},provide:e=>zn.decorations.from(e)});function Vse({margin:e=3,minSize:t=4}){return Gse.init(n=>Wse(n,e,t))}function Wse(e,t,n){let r=new Bl,a=e.facet(ra).side=="a",i=e.field(fr),s=1;for(let l=0;;l++){let c=l=n&&r.add(e.doc.line(u).from,e.doc.line(d).to,aa.replace({widget:new qse(p),block:!0})),!c)break;s=e.doc.lineAt(Math.min(e.doc.length,a?c.toA:c.toB)).number}return r.finish()}const Kse=zn.baseTheme({".cm-mergeView & .cm-scroller, .cm-mergeView &":{height:"auto !important",overflowY:"visible !important"},"&.cm-merge-a .cm-changedLine, .cm-deletedChunk":{backgroundColor:"rgba(160, 128, 100, .08)"},"&.cm-merge-b .cm-changedLine, .cm-inlineChangedLine":{backgroundColor:"rgba(100, 160, 128, .08)"},"&light.cm-merge-a .cm-changedText, &light .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ee443366, #ee443366) bottom/100% 2px no-repeat"},"&dark.cm-merge-a .cm-changedText, &dark .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ffaa9966, #ffaa9966) bottom/100% 2px no-repeat"},"&light.cm-merge-b .cm-changedText":{background:"linear-gradient(#22bb22aa, #22bb22aa) bottom/100% 2px no-repeat"},"&dark.cm-merge-b .cm-changedText":{background:"linear-gradient(#88ff88aa, #88ff88aa) bottom/100% 2px no-repeat"},"&.cm-merge-b .cm-deletedText":{background:"#ff000033"},".cm-insertedLine, .cm-deletedLine, .cm-deletedLine del":{textDecoration:"none"},".cm-deletedChunk":{paddingLeft:"6px","& .cm-chunkButtons":{position:"absolute",insetInlineEnd:"5px"},"& button":{border:"none",cursor:"pointer",color:"white",margin:"0 2px",borderRadius:"3px","&[name=accept]":{background:"#2a2"},"&[name=reject]":{background:"#d43"}}},".cm-collapsedLines":{padding:"5px 5px 5px 10px",cursor:"pointer","&:before":{content:'"⦚"',marginInlineEnd:"7px"},"&:after":{content:'"⦚"',marginInlineStart:"7px"}},"&light .cm-collapsedLines":{color:"#444",background:"linear-gradient(to bottom, transparent 0, #f3f3f3 30%, #f3f3f3 70%, transparent 100%)"},"&dark .cm-collapsedLines":{color:"#ddd",background:"linear-gradient(to bottom, transparent 0, #222 30%, #222 70%, transparent 100%)"},".cm-changeGutter":{width:"3px",paddingLeft:"1px"},"&light.cm-merge-a .cm-changedLineGutter, &light .cm-deletedLineGutter":{background:"#e43"},"&dark.cm-merge-a .cm-changedLineGutter, &dark .cm-deletedLineGutter":{background:"#fa9"},"&light.cm-merge-b .cm-changedLineGutter":{background:"#2b2"},"&dark.cm-merge-b .cm-changedLineGutter":{background:"#8f8"},".cm-inlineChangedLineGutter":{background:"#75d"}}),Yse=new class extends Qb{constructor(){super(...arguments),this.elementClass="cm-deletedLineGutter"}},Xse=Z5.low(I7({class:"cm-changeGutter",markers:e=>{var t;return((t=e.plugin(o7))===null||t===void 0?void 0:t.gutter)||R7.empty},widgetMarker:(e,t)=>t instanceof c7?Yse:null}));function Zse(e){var t;let n=typeof e.original=="string"?X5.of(e.original.split(/\r?\n/)):e.original,r=e.diffConfig||Pse;return[Z5.low(o7),toe,Kse,zn.editorAttributes.of({class:"cm-merge-b"}),i7.of((a,i)=>{let s=i.effects.find(l=>l.is(Hy));return s&&(a=Vi.updateA(a,s.value.doc,i.startState.doc,s.value.changes,r)),i.docChanged&&(a=Vi.updateB(a,i.state.field(is),i.newDoc,i.changes,r)),a}),ra.of({highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1,syntaxHighlightDeletions:e.syntaxHighlightDeletions!==!1,syntaxHighlightDeletionsMaxLength:3e3,mergeControls:(t=e.mergeControls)!==null&&t!==void 0?t:!0,overrideChunk:e.allowInlineDiffs?ioe:void 0,side:"b"}),is.init(()=>n),e.gutter!==!1?Xse:[],e.collapseUnchanged?Vse(e.collapseUnchanged):[],fr.init(a=>Vi.build(n,a.doc,r))]}const Hy=Jb.define(),is=wo.define({create:()=>X5.empty,update(e,t){for(let n of t.effects)n.is(Hy)&&(e=n.value.doc);return e}}),T5=new WeakMap;class c7 extends ex{constructor(t){super(),this.buildDOM=t,this.dom=null}eq(t){return this.dom==t.dom}toDOM(t){return this.dom||(this.dom=this.buildDOM(t))}}function Jse(e,t,n){let r=T5.get(t.changes);if(r)return r;let a=s=>{let{highlightChanges:l,syntaxHighlightDeletions:c,syntaxHighlightDeletionsMaxLength:u,mergeControls:d}=e.facet(ra),p=document.createElement("div");if(p.className="cm-deletedChunk",d){let E=p.appendChild(document.createElement("div"));E.className="cm-chunkButtons";let N=T=>{T.preventDefault(),Qse(s,s.posAtDOM(p))},w=T=>{T.preventDefault(),eoe(s,s.posAtDOM(p))};if(typeof d=="function")E.appendChild(d("accept",N)),E.appendChild(d("reject",w));else{let T=E.appendChild(document.createElement("button"));T.name="accept",T.textContent=e.phrase("Accept"),T.onmousedown=N;let j=E.appendChild(document.createElement("button"));j.name="reject",j.textContent=e.phrase("Reject"),j.onmousedown=w}}if(n||t.fromA>=t.toA)return p;let m=s.state.field(is).sliceString(t.fromA,t.endA),f=c&&e.facet(J5),g=y(),b=t.changes,x=0,k=!1;function y(){let E=p.appendChild(document.createElement("div"));return E.className="cm-deletedLine",E.appendChild(document.createElement("del"))}function v(E,N,w){for(let T=E;T-1&&OT){let I=document.createTextNode(m.slice(T,j));if(_){let z=g.appendChild(document.createElement("span"));z.className=_,z.appendChild(I)}else g.appendChild(I);T=j}C&&(k=!k)}}if(f&&t.toA-t.fromA<=u){let E=f.parser.parse(m),N=0;Tg(E,{style:w=>Q5(e,w)},(w,T,j)=>{w>N&&v(N,w,""),v(w,T,j),N=T}),v(N,m.length,"")}else v(0,m.length,"");return g.firstChild||g.appendChild(document.createElement("br")),p},i=aa.widget({block:!0,side:-1,widget:new c7(a)});return T5.set(t.changes,i),i}function Qse(e,t){let{state:n}=e,r=t??n.selection.main.head,a=e.state.field(fr).find(c=>c.fromB<=r&&c.endB>=r);if(!a)return!1;let i=e.state.sliceDoc(a.fromB,Math.max(a.fromB,a.toB-1)),s=e.state.field(is);a.fromB!=a.toB&&a.toA<=s.length&&(i+=e.state.lineBreak);let l=_7.of({from:a.fromA,to:Math.min(s.length,a.toA),insert:i},s.length);return e.dispatch({effects:Hy.of({doc:l.apply(s),changes:l}),userEvent:"accept"}),!0}function eoe(e,t){let{state:n}=e,r=t??n.selection.main.head,a=n.field(fr).find(l=>l.fromB<=r&&l.endB>=r);if(!a)return!1;let s=n.field(is).sliceString(a.fromA,Math.max(a.fromA,a.toA-1));return a.fromA!=a.toA&&a.toB<=n.doc.length&&(s+=n.lineBreak),e.dispatch({changes:{from:a.fromB,to:Math.min(n.doc.length,a.toB),insert:s},userEvent:"revert"}),!0}function A5(e){let t=new Bl;for(let n of e.field(fr)){let r=e.facet(ra).overrideChunk&&u7(e,n);t.add(n.fromB,n.fromB,Jse(e,n,!!r))}return t.finish()}const toe=wo.define({create:e=>A5(e),update(e,t){return t.state.field(fr,!1)!=t.startState.field(fr,!1)?A5(t.state):e},provide:e=>zn.decorations.from(e)}),I5=new WeakMap;function u7(e,t){let n=I5.get(t);if(n!==void 0)return n;n=null;let r=e.field(is),a=e.doc,i=r.lineAt(t.endA).number-r.lineAt(t.fromA).number+1,s=a.lineAt(t.endB).number-a.lineAt(t.fromB).number+1;e:if(i==s&&i<10){let l=[],c=0,u=t.fromA,d=t.fromB;for(let p of t.changes){if(p.fromA=t.endB)break;s=e.doc.lineAt(s.to+1)}return!0}const d7=["png","jpg","jpeg","gif","webp","svg","bmp","ico","tiff","tif","avif"],p7=["pdf"],soe=[...d7,"zip","tar","gz","rar","7z","bz2","xz","exe","dll","so","dylib","app","dmg","msi","mp3","mp4","wav","avi","mov","mkv","flv","wmv","m4a","ogg",...p7,"doc","docx","xls","xlsx","ppt","pptx","odt","ods","odp","ttf","otf","woff","woff2","eot","db","sqlite","sqlite3","bin","dat","iso","img","class","jar","war","pyc","pyo"],Gy=e=>e.split(".").pop()?.toLowerCase()??"",ooe=e=>soe.includes(Gy(e)),loe=e=>d7.includes(Gy(e)),coe=e=>p7.includes(Gy(e)),R5=e=>e instanceof Error?e.message:String(e),uoe=({file:e,projectPath:t})=>{const[n,r]=h.useState(""),[a,i]=h.useState(!0),[s,l]=h.useState(null),[c,u]=h.useState(0),[d,p]=h.useState(!1),[m,f]=h.useState(!1),[g,b]=h.useState(null),[x,k]=h.useState(!1),y=e.projectName??t,v=e.path,E=e.diffInfo?.new_string,N=e.diffInfo?.old_string;h.useEffect(()=>{let _=!1;return(async()=>{try{if(i(!0),l(null),k(!1),ooe(e.name)){if(_)return;k(!0),i(!1);return}if(e.diffInfo&&E!==void 0&&N!==void 0){if(_)return;r(E),i(!1);return}if(!y)throw new Error("Missing project identifier");const O=await dt.readFile(y,v);if(!O.ok)throw new Error(`Failed to load file: ${O.status} ${O.statusText}`);const I=await O.json();if(_)return;r(I.content??"")}catch(O){if(_)return;const I=R5(O);console.error("Error loading file:",O),l(I)}finally{_||i(!1)}})(),()=>{_=!0}},[e.diffInfo,e.name,E,N,v,y,c]);const w=h.useCallback(()=>{u(_=>_+1)},[]),T=h.useCallback(async()=>{if(a){b("File is still loading");return}if(s){b("Cannot save: file failed to load. Reload first.");return}p(!0),b(null);try{if(!y)throw new Error("Missing project identifier");const _=await dt.saveFile(y,v,n);if(!_.ok){if(_.headers.get("content-type")?.includes("application/json")){const I=await _.json();throw new Error(I.error||`Save failed: ${_.status}`)}const O=await _.text();throw console.error("Non-JSON error response:",O),new Error(`Save failed: ${_.status} ${_.statusText}`)}await _.json(),f(!0),setTimeout(()=>f(!1),2e3)}catch(_){const C=R5(_);console.error("Error saving file:",_),b(C)}finally{p(!1)}},[n,v,y,s,a]),j=h.useCallback(()=>{const _=new Blob([n],{type:"text/plain"}),C=URL.createObjectURL(_),O=document.createElement("a");O.href=C,O.download=e.name,document.body.appendChild(O),O.click(),document.body.removeChild(O),URL.revokeObjectURL(C)},[n,e.name]);return{content:n,setContent:r,loading:a,loadError:s,reload:w,saving:d,saveSuccess:m,saveError:g,isBinary:x,projectName:y,handleSave:T,handleDownload:j}},ga={theme:"codeEditorTheme",wordWrap:"codeEditorWordWrap",showMinimap:"codeEditorShowMinimap",lineNumbers:"codeEditorLineNumbers",fontSize:"codeEditorFontSize"},Zs={minimapEnabled:!0,showLineNumbers:!0,fontSize:"12"},_5="codeEditorSettingsChanged",wl=(e,t,n="false")=>{const r=localStorage.getItem(e);return r===null?t:r!==n},j5=()=>localStorage.getItem(ga.wordWrap)==="true",O5=()=>{const e=localStorage.getItem(ga.fontSize);return Number(e??Zs.fontSize)},doe=()=>{const{isDarkMode:e,toggleDarkMode:t}=li(),[n,r]=h.useState(j5),[a,i]=h.useState(()=>wl(ga.showMinimap,Zs.minimapEnabled)),[s,l]=h.useState(()=>wl(ga.lineNumbers,Zs.showLineNumbers)),[c,u]=h.useState(O5);h.useEffect(()=>{localStorage.setItem(ga.theme,e?"dark":"light")},[e]),h.useEffect(()=>{localStorage.setItem(ga.wordWrap,String(n))},[n]),h.useEffect(()=>{const p=()=>{r(j5()),i(wl(ga.showMinimap,Zs.minimapEnabled)),l(wl(ga.lineNumbers,Zs.showLineNumbers)),u(O5())};return window.addEventListener("storage",p),window.addEventListener(_5,p),()=>{window.removeEventListener("storage",p),window.removeEventListener(_5,p)}},[]);const d=h.useCallback(p=>{p!==e&&t()},[e,t]);return{isDarkMode:e,setIsDarkMode:d,wordWrap:n,setWordWrap:r,minimapEnabled:a,setMinimapEnabled:i,showLineNumbers:s,setShowLineNumbers:l,fontSize:c,setFontSize:u}},poe=({onSave:e,onClose:t,dependency:n})=>{h.useEffect(()=>{const r=a=>{if(a.key==="Escape"){a.preventDefault(),t();return}(a.ctrlKey||a.metaKey)&&a.key.toLowerCase()==="s"&&(a.preventDefault(),e())};return document.addEventListener("keydown",r),()=>{document.removeEventListener("keydown",r)}},[n,t,e])};var moe=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,r=Object.getOwnPropertySymbols(e);a{const t=[];for(let n of e){if(!n)continue;const{create:r,gutters:a}=n,i=moe(n,["create","gutters"]);t.push(Object.assign(Object.assign({},i),{enabled:!0,gutters:a?a.filter(s=>Object.keys(s).length>0):void 0}))}return j7(t,{enabled:t.length>0,displayText:"characters",eventHandlers:{},showOverlay:"always",gutters:[]})}}),Yn={PixelMultiplier:2,SizeRatio:4,MaxWidth:120},foe=zn.theme({".cm-minimap-overlay-container":{position:"absolute",top:0,height:"100%",width:"100%","&.cm-minimap-overlay-mouse-over":{opacity:0,transition:"visibility 0s linear 300ms, opacity 300ms"},"&.cm-minimap-overlay-mouse-over:hover":{opacity:1,transition:"visibility 0s linear 0ms, opacity 300ms"},"&.cm-minimap-overlay-off":{display:"none"},"& .cm-minimap-overlay":{background:"rgb(121, 121, 121)",opacity:"0.2",position:"absolute",right:0,top:0,width:"100%",transition:"top 0s ease-in 0ms","&:hover":{opacity:"0.3"}},"&.cm-minimap-overlay-active":{opacity:1,visibility:"visible",transition:"visibility 0s linear 0ms, opacity 300ms","& .cm-minimap-overlay":{opacity:"0.4"}}}}),ma=Yn.PixelMultiplier*Yn.SizeRatio,hoe=wc.fromClass(class{constructor(e){this.view=e,this._isDragging=!1,e.state.facet(jn).enabled&&this.create(e)}create(e){this.container=Wi("div",{class:"cm-minimap-overlay-container"}),this.dom=Wi("div",{class:"cm-minimap-overlay"}),this.container.appendChild(this.dom),this.container.addEventListener("mousedown",this.onMouseDown.bind(this)),window.addEventListener("mouseup",this.onMouseUp.bind(this)),window.addEventListener("mousemove",this.onMouseMove.bind(this));const t=e.dom.querySelector(".cm-minimap-inner");t&&t.appendChild(this.container),this.computeShowOverlay(),this.computeHeight(),this.computeTop()}remove(){this.container&&(this.container.removeEventListener("mousedown",this.onMouseDown),window.removeEventListener("mouseup",this.onMouseUp),window.removeEventListener("mousemove",this.onMouseMove),this.container.remove())}update(e){const t=e.startState.facet(jn).enabled,n=e.state.facet(jn).enabled;if(t&&!n){this.remove();return}!t&&n&&this.create(e.view),n&&(this.computeShowOverlay(),e.geometryChanged&&(this.computeHeight(),this.computeTop()))}computeHeight(){if(!this.dom)return;const e=this.view.dom.clientHeight/ma;this.dom.style.height=e+"px"}computeTop(){if(!this._isDragging&&this.dom){const{clientHeight:e,scrollHeight:t,scrollTop:n}=this.view.scrollDOM,r=t-e,a=n/ma,i=e/ma,s=e-i;let l=n/r;isNaN(l)&&(l=0);const c=s*l,u=Math.min(c,a);this.dom.style.top=u+"px"}}computeShowOverlay(){if(!this.container)return;const{showOverlay:e}=this.view.state.facet(jn);e==="mouse-over"?this.container.classList.add("cm-minimap-overlay-mouse-over"):this.container.classList.remove("cm-minimap-overlay-mouse-over");const{clientHeight:t,scrollHeight:n}=this.view.scrollDOM;t===n?this.container.classList.add("cm-minimap-overlay-off"):this.container.classList.remove("cm-minimap-overlay-off")}onMouseDown(e){if(!this.container||e.button===2)return;const{clientY:t,target:n}=e;if(n===this.dom){this._dragStartY=e.clientY,this._isDragging=!0,this.container.classList.add("cm-minimap-overlay-active");return}const{clientHeight:r,scrollHeight:a,scrollTop:i}=this.view.scrollDOM,s=n.getBoundingClientRect().top,l=(t-s)*ma,c=i/(a-r),d=(r*ma-r)*c,p=Math.max(0,i-d);this.view.scrollDOM.scrollTop=p+l-r/2}onMouseUp(e){this._isDragging&&this.container&&(this._dragStartY=void 0,this._isDragging=!1,this.container.classList.remove("cm-minimap-overlay-active"))}onMouseMove(e){if(!this._isDragging||!this.dom)return;if(e.preventDefault(),e.stopPropagation(),!this._dragStartY){this._dragStartY=e.clientY;return}const t=e.clientY-this._dragStartY,n=t<0,r=t>0;this._dragStartY=e.clientY;const a=this.dom.getBoundingClientRect().height,i=this.dom.getBoundingClientRect().y,s=i+a,l=parseFloat(this.dom.style.top),c=this.view.scrollDOM.scrollTop,u=this.view.scrollDOM.clientHeight,d=this.view.scrollDOM.scrollHeight,p=c===0,m=Math.round(c)>=Math.round(d-u);if(p&&n||p&&e.clientYs)return;const f=this.view.scrollDOM.scrollHeight,g=this.view.scrollDOM.clientHeight,b=(f-g)/ma,x=g-g/ma,k=l+t,y=k/x,v=(f-g)*y,E=k*ma;this.view.scrollDOM.scrollTop=Math.max(v,E);const N=Math.min(Math.max(0,k),Math.min(x,b));this.dom.style.top=N+"px"}destroy(){this.remove()}},{eventHandlers:{scroll(){requestAnimationFrame(()=>this.computeTop())}}}),goe=[foe,hoe];class Vy{constructor(t){this.map=new Map,this.view=t}get(t){return this.map.get(t)}set(t,n){this.map.set(t,n)}}function D5(e){var t;if(!e.facet(jn).enabled)return[];const n=[],r=e.doc.iterLines(),a=M7(e).iter();let i=0;for(r.next();!r.done;){const s=r.value;let l=i,c=l+s.length;for(;a.value&&a.to=u&&lu&&c<=d;if(p){let f=(t=n.pop())!==null&&t!==void 0?t:[],g=f.pop();g&&g.folded&&(g.to=d),g&&f.push(g),(!g||!g.folded)&&f.push({from:u,to:d,folded:!0}),m||f.push({from:d,to:c,folded:!1}),n.push(f)}else m?n.push([{from:l,to:u,folded:!1},{from:u,to:d,folded:!0}]):n.push([{from:l,to:c,folded:!1}]);i=c+1,r.next()}return n}const ss=wo.define({create:e=>D5(e),update:(e,t)=>pu([t])||t.docChanged?D5(t.state):e});function pu(e){return e.find(t=>t.effects.find(n=>n.is(O7)||n.is(D7)))}class boe extends Vy{constructor(t){super(t),this.count=void 0}shouldUpdate(t){if(!t.state.facet(jn).enabled)return!1;if(t.docChanged)return!0;for(const n of t.transactions)for(const r of n.effects)if(r.is(L7))return!0;return!!(pu(t.transactions)||this.count===void 0)}update(t){if(!this.shouldUpdate(t))return;this.map.clear();const n=t.state.field(ss);this.count=P7(t.state),F7(t.state,(r,a,i)=>{const s=this.findLine(a,n),l=this.findLine(i,n);let c=r.severity;for(let u=s;u<=l;u++){const d=this.get(u);d&&(c=[c,d].sort(this.sort.bind(this)).slice(0,1)[0]),this.set(u,c)}})}drawLine(t,n){const{context:r,lineHeight:a,offsetX:i,offsetY:s}=t,l=this.get(n);l&&(r.globalAlpha=.65,r.beginPath(),r.rect(i,s,r.canvas.width-i,a),r.fillStyle=this.color(l),r.fill())}findLine(t,n){return n.findIndex(a=>{const i=a.slice(0,1)[0],s=a.slice(-1)[0];return!i||!s?!1:i.from<=t&&t<=s.to})+1}color(t){return t==="error"?"#d11":t==="warning"?"orange":"#999"}sort(t,n){return this.score(n)-this.score(t)}score(t){switch(t){case"error":return 3;case"warning":return 2;default:return 1}}}function xoe(e){return new boe(e)}class yoe extends Vy{constructor(t){super(t),this.getDrawInfo(),this._themeClasses=t.dom.classList.value}shouldUpdate(t){return t.state.facet(jn).enabled?!!(t.docChanged||t.selectionSet||this._themeClasses!==this.view.dom.classList.value||pu(t.transactions)):!1}update(t){if(!this.shouldUpdate(t))return;this.map.clear(),this._themeClasses!==this.view.dom.classList.value&&(this._drawInfo=void 0,this._themeClasses=this.view.dom.classList.value);const{ranges:n}=t.state.selection;let r=0;for(const[a,i]of t.state.field(ss).entries()){const s=[];let l=0;for(const u of i){do{if(r>=n.length||u.tou.to},m=s.slice(-1)[0];if(m&&m.to===p.from){let{to:f}=p;u.folded&&p.extends?f=p.from+1:u.folded&&!p.extends&&(f=m.to),s[s.length-1]=Object.assign(Object.assign({},m),{to:f,extends:p.extends})}else u.folded||s.push(p);if(p.extends)break;r++}while(r=n[r].from);l+=u.folded?1:u.to-u.from}if(s.length===0)continue;const c=a+1;this.map.set(c,s)}}drawLine(t,n){let{context:r,lineHeight:a,charWidth:i,offsetX:s,offsetY:l}=t;const c=this.get(n);if(c)for(const u of c){const d=s+u.from*i,p=(u.to-u.from)*i,m=r.canvas.width-d;u.extends&&(r.globalAlpha=.65,r.beginPath(),r.rect(d,l,m,a),r.fillStyle=this.getDrawInfo().backgroundColor,r.fill()),r.globalAlpha=1,r.beginPath(),r.rect(d,l,p,a),r.fillStyle=this.getDrawInfo().backgroundColor,r.fill()}}getDrawInfo(){if(this._drawInfo)return this._drawInfo;const t=document.createElement("span");t.setAttribute("class","cm-selectionBackground"),this.view.dom.appendChild(t);const r={backgroundColor:window.getComputedStyle(t).backgroundColor};return this._drawInfo=r,this.view.dom.removeChild(t),r}}function voe(e){return new yoe(e)}class koe extends Vy{constructor(t){super(t),this._fontInfoMap=new Map,this._themeClasses=new Set(t.dom.classList.values()),t.state.facet(jn).enabled&&this.updateImpl(t.state)}shouldUpdate(t){return!!(t.docChanged||t.state.facet(jn)!==t.startState.facet(jn)||this.themeChanged()||pu(t.transactions))}update(t){this.shouldUpdate(t)&&(this._highlightingCallbackId&&(typeof window.requestIdleCallback<"u"?cancelIdleCallback(this._highlightingCallbackId):clearTimeout(this._highlightingCallbackId)),this.updateImpl(t.state,t.changes))}updateImpl(t,n){var r;this.map.clear(),this._displayText=t.facet(jn).displayText,this.themeChanged()&&this._fontInfoMap.clear();let a;if(this._previousTree&&n){const p=Zy.addTree(this._previousTree),m=[];n.iterChangedRanges((f,g,b,x)=>m.push({fromA:f,toA:g,fromB:b,toB:x})),a=Zy.applyChanges(p,m)}const i=t.doc.toString(),s=(r=t.facet(J5))===null||r===void 0?void 0:r.parser,l=s?s.parse(i,a):void 0;this._previousTree=l;const c={style:p=>Q5(t,p)};let u=[];if(l){const p=t.doc.lineAt(this.view.viewport.from).number,m=t.doc.lineAt(this.view.viewport.to).number,f=m-p,g=p/(t.doc.lines-f),{SizeRatio:b,PixelMultiplier:x}=Yn,k=f*b*x,y=g*k,v=Math.max(1,Math.floor(p-y)),E=Math.min(m+Math.floor(k-y),t.doc.lines);Tg(l,c,(N,w,T)=>{u.push({from:N,to:w,tags:T})},t.doc.line(v).from,t.doc.line(E).to)}this.updateMapImpl(t,u),u=[];const d=()=>{l&&(Tg(l,c,(p,m,f)=>{u.push({from:p,to:m,tags:f})}),this.updateMapImpl(t,u),this._highlightingCallbackId=void 0)};this._highlightingCallbackId=typeof window.requestIdleCallback<"u"?requestIdleCallback(d):setTimeout(d)}updateMapImpl(t,n){this.map.clear();const r=t.doc.toString(),a=n.values();let i=a.next();for(const[s,l]of t.field(ss).entries()){const c=[];for(const d of l){if(d.from===d.to)continue;if(d.folded){c.push({text:"…",tags:""});continue}let p=d.from;for(;!i.done&&i.value.fromp&&c.push({text:r.slice(p,m),tags:""});const b=Math.max(m,d.from),x=Math.min(f,d.to);if(c.push({text:r.slice(b,x),tags:g}),p=x,f>x)break;i=a.next()}p!==d.to&&c.push({text:r.slice(p,d.to),tags:""})}const u=s+1;this.map.set(u,c)}}measure(t){const{color:n,font:r,lineHeight:a}=this.getFontInfo("");return t.textBaseline="ideographic",t.fillStyle=n,t.font=r,{charWidth:t.measureText("_").width,lineHeight:a}}beforeDraw(){this._fontInfoMap.clear()}drawLine(t,n){const r=this.get(n);if(!r)return;let{context:a,charWidth:i,lineHeight:s,offsetX:l,offsetY:c}=t,u;a.textBaseline="ideographic";for(const d of r){const p=this.getFontInfo(d.tags);switch((!u||u.color!==p.color)&&(a.fillStyle=p.color),(!u||u.font!==p.font)&&(a.font=p.font),u=p,s=Math.max(s,p.lineHeight),this._displayText){case"characters":{a.fillText(d.text,l,c+s),l+=d.text.length*i;break}case"blocks":{const m=/\S+/g;let f;for(;(f=m.exec(d.text))!==null;){const g=l+f.index*i;let b=(m.lastIndex-f.index)*i;if(g>a.canvas.width)break;g+b>a.canvas.width&&(b=a.canvas.width-g);const x=2/Yn.SizeRatio,k=s-x;a.fillStyle=p.color,a.globalAlpha=.65,a.beginPath(),a.rect(g,c,b,k),a.fill()}l+=d.text.length*i;break}}}}getFontInfo(t){const n=this._fontInfoMap.get(t);if(n)return n;const r=Wi("span",{class:t}),a=Wi("div",{class:"cm-line",style:"display: none"},r);this.view.contentDOM.appendChild(a);const i=window.getComputedStyle(r),s=parseFloat(i.lineHeight)/Yn.SizeRatio,l={color:i.color,font:`${i.fontStyle} ${i.fontWeight} ${s}px ${i.fontFamily}`,lineHeight:s};return this._fontInfoMap.set(t,l),this.view.contentDOM.removeChild(a),l}themeChanged(){const t=this._themeClasses,n=new Set(this.view.dom.classList.values());if(this._themeClasses=n,!t||(t.delete("cm-focused"),n.delete("cm-focused"),t.size!==n.size))return!0;let r=!0;return t.forEach(a=>{n.has(a)||(r=!1)}),!r}}function woe(e){return new koe(e)}const m7=4;function Soe(e,t,n){const r=e[n];r&&(t.context.fillStyle=r,t.context.globalAlpha=1,t.context.beginPath(),t.context.rect(t.offsetX,t.offsetY,m7,t.lineHeight),t.context.fill())}const Eoe=zn.theme({"&":{height:"100%",overflowY:"auto"},"& .cm-minimap-gutter":{borderRight:0,flexShrink:0,left:"unset",position:"sticky",right:0,top:0},"& .cm-minimap-inner":{height:"100%",position:"absolute",right:0,top:0,overflowY:"hidden","& canvas":{display:"block"}},"& .cm-minimap-box-shadow":{boxShadow:"12px 0px 20px 5px #6c6c6c"}}),M5=6,Coe=wc.fromClass(class{constructor(e){this.view=e,this.text=woe(e),this.selection=voe(e),this.diagnostic=xoe(e),e.state.facet(Js)&&this.create(e)}create(e){const t=e.state.facet(Js);if(!t)throw Error("Expected nonnull");this.inner=Wi("div",{class:"cm-minimap-inner"}),this.canvas=Wi("canvas"),this.dom=t.create(e).dom,this.dom.classList.add("cm-gutters"),this.dom.classList.add("cm-minimap-gutter"),this.inner.appendChild(this.canvas),this.dom.appendChild(this.inner),this.view.scrollDOM.insertBefore(this.dom,this.view.contentDOM.nextSibling);for(const n in this.view.state.facet(jn).eventHandlers){const r=this.view.state.facet(jn).eventHandlers[n];r&&this.dom.addEventListener(n,a=>r(a,this.view))}}remove(){this.dom&&this.dom.remove()}update(e){const t=e.startState.facet(Js),n=e.state.facet(Js);if(t&&!n){this.remove();return}!t&&n&&this.create(e.view),n&&(this.text.update(e),this.selection.update(e),this.diagnostic.update(e),this.render())}getWidth(){const e=this.view.dom.clientWidth;if(e<=Yn.MaxWidth*M5){const t=e/(Yn.MaxWidth*M5);return Yn.MaxWidth*t}return Yn.MaxWidth}render(){if(!this.dom||!this.canvas||!this.inner)return;this.text.beforeDraw(),this.updateBoxShadow(),this.dom.style.width=this.getWidth()+"px",this.canvas.style.maxWidth=this.getWidth()+"px",this.canvas.width=this.getWidth()*Yn.PixelMultiplier;const e=this.view.dom.getBoundingClientRect().height;this.inner.style.minHeight=e+"px",this.canvas.height=e*Yn.PixelMultiplier,this.canvas.style.height=e+"px";const t=this.canvas.getContext("2d");if(!t)return;t.clearRect(0,0,this.canvas.width,this.canvas.height);const{charWidth:n,lineHeight:r}=this.text.measure(t);let{startIndex:a,endIndex:i,offsetY:s}=this.canvasStartAndEndIndex(t,r);const l=this.view.state.facet(jn).gutters;for(let c=a;c=u.length)break;const d={offsetX:0,offsetY:s,context:t,lineHeight:r,charWidth:n};if(l.length){d.offsetX+=2;for(let p of l)Soe(p,d,c+1),d.offsetX+=m7;d.offsetX+=2}this.text.drawLine(d,c+1),this.selection.drawLine(d,c+1),this.diagnostic.drawLine(d,c+1),s+=r}t.restore()}canvasStartAndEndIndex(e,t){let{top:n,bottom:r}=this.view.documentPadding;n/=Yn.SizeRatio,r/=Yn.SizeRatio;const a=e.canvas.height,{clientHeight:i,scrollHeight:s,scrollTop:l}=this.view.scrollDOM;let c=l/(s-i);isNaN(c)&&(c=0);const u=this.view.state.field(ss).length,d=n+r+u*t,p=Math.max(0,c*(d-a)),m=Math.max(0,n-p),f=Math.round(Math.max(0,p-n)/t),g=Math.round((a-m)/t);return{startIndex:f,endIndex:f+g,offsetY:m}}updateBoxShadow(){if(!this.canvas)return;const{clientWidth:e,scrollWidth:t,scrollLeft:n}=this.view.scrollDOM;e+nthis.render())}},provide:e=>zn.scrollMargins.of(t=>{var n;const r=(n=t.plugin(e))===null||n===void 0?void 0:n.getWidth();return r?{right:r}:null})}),Js=Sc.define({combine:e=>{var t;return(t=e.find(n=>n!==null))!==null&&t!==void 0?t:null},enables:e=>[[jn.compute([e],t=>t.facet(e)),Eoe,ss,Coe,goe]]}),L5=B7.define({token(e){return e.match(/^#.*/)?"comment":e.sol()&&e.match(/^[A-Za-z_][A-Za-z0-9_.]*(?==)/)?"variableName.definition":e.match(/^=/)?"operator":e.match(/^"(?:[^"\\]|\\.)*"?/)||e.match(/^'(?:[^'\\]|\\.)*'?/)?"string":e.match(/^\$\{[^}]*\}?/)||e.match(/^\$[A-Za-z_][A-Za-z0-9_]*/)?"variableName.special":e.match(/^\d+/)?"number":(e.next(),null)}}),Noe=e=>{const t=e.toLowerCase();if(t===".env"||t.startsWith(".env."))return[L5];const n=e.split(".").pop()?.toLowerCase();switch(n){case"js":case"jsx":case"ts":case"tsx":return[H7({jsx:!0,typescript:n.includes("ts")})];case"py":return[q7()];case"html":case"htm":return[z7()];case"css":case"scss":case"less":return[U7()];case"json":return[$7()];case"md":case"markdown":return[eT()];case"env":return[L5];default:return[]}},Toe=({file:e,showDiff:t,minimapEnabled:n,isDarkMode:r})=>{if(!e.diffInfo||!t||!n)return[];const a={};return[Js.compute(["doc"],i=>{const l=qy(i)?.chunks||[];return Object.keys(a).forEach(c=>{delete a[Number(c)]}),l.forEach(c=>{const u=i.doc.lineAt(c.fromB).number,d=i.doc.lineAt(Math.min(c.toB,i.doc.length)).number;for(let p=u;p<=d;p+=1)a[p]=r?"rgba(34, 197, 94, 0.8)":"rgba(34, 197, 94, 1)"}),{create:()=>({dom:document.createElement("div")}),displayText:"blocks",showOverlay:"always",gutters:[a]}})]},Aoe=({file:e,showDiff:t})=>!e.diffInfo||!t?[]:[wc.fromClass(class{constructor(n){setTimeout(()=>{const a=qy(n.state)?.chunks?.[0];a&&n.dispatch({effects:zn.scrollIntoView(a.fromB,{y:"center"})})},100)}update(){}destroy(){}})],Ioe=e=>` + .code-editor-loading { + background-color: ${e?"#0a0a0a":"#ffffff"} !important; + } + + .code-editor-loading:hover { + background-color: ${e?"#0a0a0a":"#ffffff"} !important; + } + `,Roe=e=>` + .cm-deletedChunk { + background-color: ${e?"rgba(239, 68, 68, 0.15)":"rgba(255, 235, 235, 1)"} !important; + border-left: 3px solid ${e?"rgba(239, 68, 68, 0.6)":"rgb(239, 68, 68)"} !important; + padding-left: 4px !important; + } + + .cm-insertedChunk { + background-color: ${e?"rgba(34, 197, 94, 0.15)":"rgba(230, 255, 237, 1)"} !important; + border-left: 3px solid ${e?"rgba(34, 197, 94, 0.6)":"rgb(34, 197, 94)"} !important; + padding-left: 4px !important; + } + + .cm-editor.cm-merge-b .cm-changedText { + background: ${e?"rgba(34, 197, 94, 0.4)":"rgba(34, 197, 94, 0.3)"} !important; + padding-top: 2px !important; + padding-bottom: 2px !important; + margin-top: -2px !important; + margin-bottom: -2px !important; + } + + .cm-editor .cm-deletedChunk .cm-changedText { + background: ${e?"rgba(239, 68, 68, 0.4)":"rgba(239, 68, 68, 0.3)"} !important; + padding-top: 2px !important; + padding-bottom: 2px !important; + margin-top: -2px !important; + margin-bottom: -2px !important; + } + + .cm-gutter.cm-gutter-minimap { + background-color: ${e?"#0a0a0a":"#fafafa"}; + } + + .cm-editor-toolbar-panel { + padding: 6px 14px; + background-color: ${e?"#0a0a0a":"#ffffff"}; + border-bottom: 1px solid ${e?"#262626":"#e5e5e5"}; + color: ${e?"#a3a3a3":"#525252"}; + font-size: 11px; + } + + .cm-diff-nav-btn, + .cm-toolbar-btn { + padding: 4px; + background: transparent; + border: none; + cursor: pointer; + border-radius: 6px; + display: inline-flex; + align-items: center; + justify-content: center; + color: inherit; + transition: background-color 0.15s, color 0.15s; + } + + .cm-diff-nav-btn:hover, + .cm-toolbar-btn:hover { + background-color: ${e?"#262626":"#f5f5f5"}; + color: ${e?"#fafafa":"#171717"}; + } + + .cm-diff-nav-btn:disabled { + opacity: 0.4; + cursor: not-allowed; + } + `,_oe=e=>e?'':'',joe=e=>e?'':'',Ua=e=>e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"),Ooe=({file:e,showDiff:t,isSidebar:n,isExpanded:r,onToggleDiff:a,onPopOut:i,onToggleExpand:s,labels:l})=>{if(!!!(e.diffInfo||n&&i||n&&s))return[];const u=d=>{const p=document.createElement("div");p.className="cm-editor-toolbar-panel";let m=0;const f=()=>{const g=!!(e.diffInfo&&t),x=(g?qy(d.state):null)?.chunks||[],k=x.length,y=Math.max(0,k-1);m=Math.max(0,Math.min(m,y));const v={changes:Ua(l.changes),previousChange:Ua(l.previousChange),nextChange:Ua(l.nextChange),hideDiff:Ua(l.hideDiff),showDiff:Ua(l.showDiff),collapse:Ua(l.collapse),expand:Ua(l.expand)},E=_oe(t),N=joe(r);let w='
';if(w+='
',g&&(w+=` + ${k>0?`${m+1}/${k}`:"0"} ${v.changes} + + + `),w+="
",w+='
',e.diffInfo&&(w+=` + + `),n&&i&&(w+=` + + `),n&&s&&(w+=` + + `),w+="
",w+="
",p.innerHTML=w,g){const C=p.querySelector(".cm-diff-nav-prev"),O=p.querySelector(".cm-diff-nav-next");C?.addEventListener("click",()=>{if(x.length===0)return;m=m>0?m-1:x.length-1;const I=x[m];I&&d.dispatch({effects:zn.scrollIntoView(I.fromB,{y:"center"})}),f()}),O?.addEventListener("click",()=>{if(x.length===0)return;m=m{i?.()}),p.querySelector(".cm-expand-btn")?.addEventListener("click",()=>{s?.()})};return f(),{top:!0,dom:p,update:f}};return[G7.of(u)]};function f7(e,t,n){const[r,a]=h.useState(null),[i,s]=h.useState(!1),[l,c]=h.useState(n);return h.useEffect(()=>{if(!e){c(!1);return}let u=null,d=!1;return c(!0),s(!1),dt.readFileBlob(e,t).then(p=>{if(!p.ok)throw new Error(`HTTP ${p.status}`);return p.blob()}).then(p=>{d||(u=URL.createObjectURL(p),a(u))}).catch(()=>{d||s(!0)}).finally(()=>{d||c(!1)}),()=>{d=!0,u&&URL.revokeObjectURL(u)}},[n,e,t]),{blobUrl:r,error:i,loading:l}}function h7(){return o.jsx("div",{className:"flex h-full w-full items-center justify-center",children:o.jsx("div",{className:"h-6 w-6 animate-spin rounded-full border-2 border-neutral-300 border-t-neutral-600 dark:border-neutral-600 dark:border-t-neutral-300"})})}function Wy({title:e,message:t,onClose:n}){return o.jsx("div",{className:"flex h-full w-full flex-col items-center justify-center bg-white p-8 dark:bg-neutral-950",children:o.jsxs("div",{className:"flex max-w-md flex-col items-center gap-4 text-center",children:[o.jsx("div",{className:"flex h-14 w-14 items-center justify-center rounded-full bg-neutral-100 dark:bg-neutral-900",children:o.jsx("svg",{className:"h-7 w-7 text-neutral-500 dark:text-neutral-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})})}),o.jsxs("div",{children:[o.jsx("h3",{className:"mb-1 text-[14px] font-medium text-neutral-900 dark:text-neutral-100",children:e}),o.jsx("p",{className:"text-[13px] text-neutral-500 dark:text-neutral-400",children:t})]}),o.jsx("button",{onClick:n,className:"mt-2 rounded-md bg-neutral-900 px-4 py-1.5 text-[13px] text-white transition-colors hover:opacity-90 dark:bg-neutral-100 dark:text-neutral-900",children:"Close"})]})})}function Doe({projectName:e,file:t,title:n,message:r,onClose:a}){const{blobUrl:i,error:s,loading:l}=f7(e,t.path,!0),[c,u]=h.useState(!1);return l?o.jsx(h7,{}):s||c||!i?o.jsx(Wy,{title:n,message:r,onClose:a}):o.jsx("div",{className:"flex h-full w-full items-center justify-center overflow-auto bg-neutral-50 p-4 dark:bg-neutral-900",children:o.jsx("img",{src:i,alt:t.name,className:"max-h-full max-w-full rounded object-contain",onError:()=>u(!0)})})}function Moe({projectName:e,file:t,title:n,message:r,onClose:a}){const{blobUrl:i,error:s,loading:l}=f7(e,t.path,!0);return l?o.jsx(h7,{}):s||!i?o.jsx(Wy,{title:n,message:r,onClose:a}):o.jsx("div",{className:"h-full w-full bg-white dark:bg-neutral-950",children:o.jsx("iframe",{src:i,className:"h-full w-full border-0",title:`PDF: ${t.name}`})})}function Loe({file:e,projectName:t,isSidebar:n,isFullscreen:r,onClose:a,onToggleFullscreen:i,title:s,message:l}){const c="flex h-7 w-7 items-center justify-center rounded-md text-neutral-500 transition-colors hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",u=loe(e.name),d=coe(e.name),p=u||d,m=u?o.jsx(Doe,{projectName:t,file:e,title:s,message:l,onClose:a}):d?o.jsx(Moe,{projectName:t,file:e,title:s,message:l,onClose:a}):o.jsx(Wy,{title:s,message:l,onClose:a}),f=o.jsxs("div",{className:"flex flex-shrink-0 items-center justify-between border-b border-neutral-200 bg-white px-4 py-2 dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsx("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:o.jsx("h3",{className:"truncate text-[13px] font-medium text-neutral-900 dark:text-neutral-100",children:e.name})}),o.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[!n&&o.jsx("button",{type:"button",onClick:i,className:c,title:r?"Exit fullscreen":"Fullscreen",children:r?o.jsx("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.75,d:"M9 9V4.5M9 9H4.5M9 9L3.5 3.5M9 15v4.5M9 15H4.5M9 15l-5.5 5.5M15 9h4.5M15 9V4.5M15 9l5.5-5.5M15 15h4.5M15 15v4.5m0-4.5l5.5 5.5"})}):o.jsx("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.75,d:"M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4"})})}),o.jsx("button",{type:"button",onClick:a,className:c,title:"Close",children:o.jsx("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.75,d:"M6 18L18 6M6 6l12 12"})})})]})]});if(n)return o.jsxs("div",{className:"flex h-full w-full flex-col bg-white dark:bg-neutral-950",children:[f,m]});const g=r?"fixed inset-0 z-[9999] bg-white dark:bg-neutral-950 flex flex-col":"fixed inset-0 z-[9999] md:bg-black/40 md:backdrop-blur-sm md:flex md:items-center md:justify-center md:p-4",b=r?"bg-white dark:bg-neutral-950 flex flex-col w-full h-full":`bg-white dark:bg-neutral-950 flex flex-col w-full h-full md:rounded-xl md:border md:border-neutral-200 dark:md:border-neutral-800 md:shadow-xl ${p?"md:w-full md:max-w-5xl md:h-[85vh] md:max-h-[85vh]":"md:w-full md:max-w-2xl md:h-auto md:max-h-[60vh]"}`;return o.jsx("div",{className:g,children:o.jsxs("div",{className:b,children:[f,m]})})}function Poe({content:e,linesLabel:t,charactersLabel:n,shortcutsLabel:r}){return o.jsxs("div",{className:"text-xxs flex flex-shrink-0 items-center justify-between border-t border-neutral-200 bg-neutral-50 px-4 py-1.5 dark:border-neutral-800 dark:bg-neutral-900",children:[o.jsxs("div",{className:"flex items-center gap-3 text-neutral-500 dark:text-neutral-400",children:[o.jsxs("span",{children:[t," ",e.split(` +`).length]}),o.jsxs("span",{children:[n," ",e.length]})]}),o.jsx("div",{className:"text-neutral-500 dark:text-neutral-400",children:r})]})}function Foe({file:e,isSidebar:t,isFullscreen:n,isMarkdownFile:r,markdownPreview:a,saving:i,saveSuccess:s,isExpanded:l=!1,onToggleExpand:c=null,onToggleMarkdownPreview:u,onDownload:d,onSave:p,onToggleFullscreen:m,onClose:f,labels:g}){const b=s?g.saved:i?g.saving:g.save,x="flex h-7 w-7 items-center justify-center rounded-md text-neutral-500 transition-colors hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100";return o.jsxs("div",{className:"flex min-w-0 flex-shrink-0 items-center justify-between gap-2 border-b border-neutral-200 bg-white px-4 py-2 dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsx("div",{className:"flex min-w-0 flex-1 shrink items-center gap-2",children:o.jsxs("div",{className:"min-w-0 shrink",children:[o.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[o.jsx("h3",{className:"truncate text-[13px] font-medium text-neutral-900 dark:text-neutral-100",children:e.name}),e.diffInfo&&o.jsx("span",{className:"shrink-0 whitespace-nowrap rounded border border-neutral-200 bg-neutral-50 px-1.5 py-0.5 text-xxs text-neutral-600 dark:border-neutral-800 dark:bg-neutral-900 dark:text-neutral-300",children:g.showingChanges})]}),o.jsx("p",{className:"truncate font-mono text-xxs text-neutral-500 dark:text-neutral-400",children:e.path})]})}),o.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[r&&o.jsx("button",{type:"button",onClick:u,className:a?"flex h-7 w-7 items-center justify-center rounded-md bg-neutral-100 text-neutral-900 dark:bg-neutral-800 dark:text-neutral-100":x,title:a?g.editMarkdown:g.previewMarkdown,children:a?o.jsx(to,{className:"h-3.5 w-3.5",strokeWidth:1.75}):o.jsx(ix,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),o.jsx("button",{type:"button",onClick:d,className:x,title:g.download,children:o.jsx(Ja,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),o.jsx("button",{type:"button",onClick:p,disabled:i,className:s?"flex h-7 w-7 items-center justify-center rounded-md bg-neutral-100 text-neutral-900 dark:bg-neutral-800 dark:text-neutral-100":`${x} disabled:opacity-50`,title:b,children:s?o.jsx("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",strokeWidth:2,viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 13l4 4L19 7"})}):o.jsx(Ac,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),!t&&o.jsx("button",{type:"button",onClick:m,className:x,title:n?g.exitFullscreen:g.fullscreen,children:n?o.jsx(lO,{className:"h-3.5 w-3.5",strokeWidth:1.75}):o.jsx(nO,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),t&&c?o.jsx("button",{type:"button",onClick:c,className:x,title:l?g.collapse:g.expand,"aria-label":l?g.collapse:g.expand,children:l?o.jsx(Uj,{className:"h-3.5 w-3.5",strokeWidth:1.75}):o.jsx(Bj,{className:"h-3.5 w-3.5",strokeWidth:1.75})}):null,o.jsx("button",{type:"button",onClick:f,className:x,title:g.close,children:o.jsx(Nr,{className:"h-3.5 w-3.5",strokeWidth:1.75})})]})]})}function Boe({file:e,isSidebar:t,errorMessage:n,onRetry:r,onClose:a,labels:i}){const s=o.jsxs("div",{className:"flex max-w-md flex-col items-center gap-4 p-8 text-center",children:[o.jsx("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-300",children:o.jsx(co,{className:"h-5 w-5",strokeWidth:1.75})}),o.jsxs("div",{className:"space-y-1",children:[o.jsx("h3",{className:"text-sm font-semibold text-neutral-900 dark:text-neutral-100",children:i.title}),o.jsx("p",{className:"text-xs text-neutral-600 dark:text-neutral-400",children:i.description}),o.jsx("p",{className:"truncate font-mono text-xxs text-neutral-500 dark:text-neutral-400",children:e.path})]}),o.jsx("pre",{className:"max-h-32 w-full overflow-auto whitespace-pre-wrap rounded-md border border-neutral-200 bg-neutral-50 px-3 py-2 text-left font-mono text-xxs text-neutral-700 dark:border-neutral-800 dark:bg-neutral-900 dark:text-neutral-300",children:n}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs("button",{type:"button",onClick:r,className:"inline-flex items-center gap-1.5 rounded-md bg-neutral-900 px-3 py-1.5 text-xs font-medium text-white transition-colors hover:bg-neutral-700 dark:bg-neutral-100 dark:text-neutral-900 dark:hover:bg-neutral-300",children:[o.jsx(Cr,{className:"h-3.5 w-3.5",strokeWidth:1.75}),i.retry]}),o.jsxs("button",{type:"button",onClick:a,className:"inline-flex items-center gap-1.5 rounded-md border border-neutral-200 bg-white px-3 py-1.5 text-xs font-medium text-neutral-700 transition-colors hover:bg-neutral-50 dark:border-neutral-800 dark:bg-neutral-950 dark:text-neutral-300 dark:hover:bg-neutral-900",children:[o.jsx(Nr,{className:"h-3.5 w-3.5",strokeWidth:1.75}),i.close]})]})]});return t?o.jsx("div",{className:"flex h-full w-full items-center justify-center bg-white dark:bg-neutral-950",children:s}):o.jsx("div",{className:"fixed inset-0 z-[9999] md:flex md:items-center md:justify-center md:bg-black/40 md:backdrop-blur-sm",children:o.jsx("div",{className:"flex h-full w-full items-center justify-center bg-white dark:bg-neutral-950 md:h-auto md:w-auto md:rounded-xl md:border md:border-neutral-200 dark:md:border-neutral-800",children:s})})}function $oe({isDarkMode:e,isSidebar:t,loadingText:n}){const r=o.jsxs("div",{className:"flex items-center gap-3 text-[13px] text-neutral-600 dark:text-neutral-300",children:[o.jsx("div",{className:"h-4 w-4 animate-spin rounded-full border-2 border-neutral-300 border-t-neutral-900 dark:border-neutral-700 dark:border-t-neutral-100"}),o.jsx("span",{children:n})]});return o.jsxs(o.Fragment,{children:[o.jsx("style",{children:Ioe(e)}),t?o.jsx("div",{className:"flex h-full w-full items-center justify-center bg-white dark:bg-neutral-950",children:r}):o.jsx("div",{className:"fixed inset-0 z-[9999] md:flex md:items-center md:justify-center md:bg-black/40 md:backdrop-blur-sm",children:o.jsx("div",{className:"code-editor-loading flex h-full w-full items-center justify-center bg-white p-8 dark:bg-neutral-950 md:h-auto md:w-auto md:rounded-xl md:border md:border-neutral-200 dark:md:border-neutral-800",children:r})})]})}const gt={bg:"#0a0a0a",panel:"#0a0a0a",gutterBg:"#0a0a0a",gutterFg:"#525252",gutterActiveFg:"#e5e5e5",fg:"#e5e5e5",fgMuted:"#a3a3a3",caret:"#fafafa",selection:"#262626",selectionMatch:"#262626",lineHighlight:"rgba(64,64,64,0.35)",border:"#262626",tooltipBg:"#171717",tooltipBorder:"#262626",string:"#a3e635",keyword:"#c4b5fd",number:"#fde68a",comment:"#737373",function:"#7dd3fc",variable:"#f5f5f5",property:"#d4d4d4",typeName:"#fcd34d",tag:"#f87171",attribute:"#fbbf24",punctuation:"#a3a3a3"},g7=[zn.theme({"&":{color:gt.fg,backgroundColor:gt.bg},"&.cm-focused":{outline:"none"},".cm-content":{caretColor:gt.caret,fontFamily:"ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Monaco, 'Cascadia Mono', Consolas, monospace"},".cm-cursor, .cm-dropCursor":{borderLeftColor:gt.caret},"&.cm-focused .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:gt.selection},".cm-selectionMatch":{backgroundColor:gt.selectionMatch},".cm-activeLine":{backgroundColor:gt.lineHighlight},".cm-activeLineGutter":{backgroundColor:gt.lineHighlight,color:gt.gutterActiveFg},".cm-gutters":{backgroundColor:gt.gutterBg,color:gt.gutterFg,border:"none",borderRight:`1px solid ${gt.border}`},".cm-lineNumbers .cm-gutterElement":{color:gt.gutterFg},".cm-foldPlaceholder":{backgroundColor:gt.panel,color:gt.fgMuted,border:`1px solid ${gt.border}`},".cm-tooltip":{backgroundColor:gt.tooltipBg,color:gt.fg,border:`1px solid ${gt.tooltipBorder}`,borderRadius:"6px"},".cm-tooltip.cm-tooltip-autocomplete > ul > li[aria-selected]":{backgroundColor:gt.selection,color:gt.fg},".cm-panels":{backgroundColor:gt.panel,color:gt.fg},".cm-panels.cm-panels-top":{borderBottom:`1px solid ${gt.border}`},".cm-panels.cm-panels-bottom":{borderTop:`1px solid ${gt.border}`},".cm-searchMatch":{backgroundColor:"rgba(234,179,8,0.2)",outline:"1px solid rgba(234,179,8,0.4)"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"rgba(234,179,8,0.35)"},".cm-matchingBracket, .cm-nonmatchingBracket":{backgroundColor:gt.selection,outline:`1px solid ${gt.border}`},".cm-scroller":{fontFamily:"ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Monaco, 'Cascadia Mono', Consolas, monospace"}},{dark:!0}),tT(nT.define([{tag:ve.keyword,color:gt.keyword},{tag:[ve.name,ve.deleted,ve.character,ve.propertyName,ve.macroName],color:gt.property},{tag:[ve.function(ve.variableName),ve.labelName],color:gt.function},{tag:[ve.color,ve.constant(ve.name),ve.standard(ve.name)],color:gt.typeName},{tag:[ve.definition(ve.name),ve.separator],color:gt.variable},{tag:[ve.typeName,ve.className,ve.number,ve.changed,ve.annotation,ve.modifier,ve.self,ve.namespace],color:gt.typeName},{tag:[ve.operator,ve.operatorKeyword,ve.url,ve.escape,ve.regexp,ve.link,ve.special(ve.string)],color:gt.keyword},{tag:[ve.meta,ve.comment],color:gt.comment,fontStyle:"italic"},{tag:ve.strong,fontWeight:"bold"},{tag:ve.emphasis,fontStyle:"italic"},{tag:ve.strikethrough,textDecoration:"line-through"},{tag:ve.link,color:gt.function,textDecoration:"underline"},{tag:ve.heading,fontWeight:"bold",color:gt.tag},{tag:[ve.atom,ve.bool,ve.special(ve.variableName)],color:gt.number},{tag:[ve.processingInstruction,ve.string,ve.inserted],color:gt.string},{tag:ve.invalid,color:gt.tag},{tag:ve.punctuation,color:gt.punctuation},{tag:ve.tagName,color:gt.tag},{tag:ve.attributeName,color:gt.attribute}]))],xt={bg:"#ffffff",gutterBg:"#ffffff",gutterFg:"#a3a3a3",gutterActiveFg:"#171717",fg:"#171717",fgMuted:"#525252",caret:"#171717",selection:"#e5e5e5",selectionMatch:"#e5e5e5",lineHighlight:"rgba(229,229,229,0.45)",border:"#e5e5e5",panel:"#ffffff",tooltipBg:"#ffffff",tooltipBorder:"#e5e5e5",keyword:"#9333ea",function:"#0369a1",number:"#b45309",string:"#15803d",comment:"#737373",variable:"#171717",property:"#262626",typeName:"#b45309",tag:"#be123c",attribute:"#92400e",punctuation:"#525252"},b7=[zn.theme({"&":{color:xt.fg,backgroundColor:xt.bg},"&.cm-focused":{outline:"none"},".cm-content":{caretColor:xt.caret,fontFamily:"ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Monaco, 'Cascadia Mono', Consolas, monospace"},"&.cm-focused .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:xt.selection},".cm-selectionMatch":{backgroundColor:xt.selectionMatch},".cm-activeLine":{backgroundColor:xt.lineHighlight},".cm-activeLineGutter":{backgroundColor:xt.lineHighlight,color:xt.gutterActiveFg},".cm-gutters":{backgroundColor:xt.gutterBg,color:xt.gutterFg,border:"none",borderRight:`1px solid ${xt.border}`},".cm-lineNumbers .cm-gutterElement":{color:xt.gutterFg},".cm-foldPlaceholder":{backgroundColor:xt.panel,color:xt.fgMuted,border:`1px solid ${xt.border}`},".cm-tooltip":{backgroundColor:xt.tooltipBg,color:xt.fg,border:`1px solid ${xt.tooltipBorder}`,borderRadius:"6px"},".cm-tooltip.cm-tooltip-autocomplete > ul > li[aria-selected]":{backgroundColor:xt.selection,color:xt.fg},".cm-panels":{backgroundColor:xt.panel,color:xt.fg},".cm-panels.cm-panels-top":{borderBottom:`1px solid ${xt.border}`},".cm-panels.cm-panels-bottom":{borderTop:`1px solid ${xt.border}`},".cm-searchMatch":{backgroundColor:"rgba(234,179,8,0.25)",outline:"1px solid rgba(234,179,8,0.5)"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"rgba(234,179,8,0.4)"},".cm-matchingBracket, .cm-nonmatchingBracket":{backgroundColor:xt.selection,outline:`1px solid ${xt.border}`},".cm-scroller":{fontFamily:"ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Monaco, 'Cascadia Mono', Consolas, monospace"}},{dark:!1}),tT(nT.define([{tag:ve.keyword,color:xt.keyword},{tag:[ve.name,ve.deleted,ve.character,ve.propertyName,ve.macroName],color:xt.property},{tag:[ve.function(ve.variableName),ve.labelName],color:xt.function},{tag:[ve.color,ve.constant(ve.name),ve.standard(ve.name)],color:xt.typeName},{tag:[ve.definition(ve.name),ve.separator],color:xt.variable},{tag:[ve.typeName,ve.className,ve.number,ve.changed,ve.annotation,ve.modifier,ve.self,ve.namespace],color:xt.typeName},{tag:[ve.operator,ve.operatorKeyword,ve.url,ve.escape,ve.regexp,ve.link,ve.special(ve.string)],color:xt.keyword},{tag:[ve.meta,ve.comment],color:xt.comment,fontStyle:"italic"},{tag:ve.strong,fontWeight:"bold"},{tag:ve.emphasis,fontStyle:"italic"},{tag:ve.strikethrough,textDecoration:"line-through"},{tag:ve.link,color:xt.function,textDecoration:"underline"},{tag:ve.heading,fontWeight:"bold",color:xt.tag},{tag:[ve.atom,ve.bool,ve.special(ve.variableName)],color:xt.number},{tag:[ve.processingInstruction,ve.string,ve.inserted],color:xt.string},{tag:ve.invalid,color:xt.tag},{tag:ve.punctuation,color:xt.punctuation},{tag:ve.tagName,color:xt.tag},{tag:ve.attributeName,color:xt.attribute}]))];function Uoe({inline:e,className:t,children:n,node:r,...a}){const[i,s]=h.useState(!1),l=Array.isArray(n)?n.join(""):String(n??""),c=/[\r\n]/.test(l);if(e||!c)return o.jsx("code",{className:`whitespace-pre-wrap break-words rounded-md border border-gray-200 bg-gray-100 px-1.5 py-0.5 font-mono text-[0.9em] text-gray-900 dark:border-gray-700 dark:bg-gray-800/60 dark:text-gray-100 ${t||""}`,...a,children:n});const d=/language-(\w+)/.exec(t||""),p=d?d[1]:"text";return o.jsxs("div",{className:"group relative my-2",children:[p!=="text"&&o.jsx("div",{className:"absolute left-3 top-2 z-10 text-xs font-medium uppercase text-gray-400",children:p}),o.jsx("button",{type:"button",onClick:()=>ta(l).then(m=>{m&&(s(!0),setTimeout(()=>s(!1),2e3))}),className:"absolute right-2 top-2 z-10 rounded-md border border-gray-600 bg-gray-700/80 px-2 py-1 text-xs text-white opacity-0 transition-opacity hover:bg-gray-700 group-hover:opacity-100",children:i?"Copied!":"Copy"}),o.jsx(jy,{language:p,style:f6,customStyle:{margin:0,borderRadius:"0.5rem",fontSize:"0.875rem",padding:p!=="text"?"2rem 1rem 1rem 1rem":"1rem"},children:l})]})}const zoe={code:Uoe,blockquote:({children:e})=>o.jsx("blockquote",{className:"my-2 border-l-4 border-gray-300 pl-4 italic text-gray-600 dark:border-gray-600 dark:text-gray-400",children:e}),a:({href:e,children:t})=>o.jsx("a",{href:e,className:"text-blue-600 hover:underline dark:text-blue-400",target:"_blank",rel:"noopener noreferrer",children:t}),table:({children:e})=>o.jsx("div",{className:"my-2 overflow-x-auto",children:o.jsx("table",{className:"min-w-full border-collapse border border-gray-200 dark:border-gray-700",children:e})}),thead:({children:e})=>o.jsx("thead",{className:"bg-gray-50 dark:bg-gray-800",children:e}),th:({children:e})=>o.jsx("th",{className:"border border-gray-200 px-3 py-2 text-left text-sm font-semibold dark:border-gray-700",children:e}),td:({children:e})=>o.jsx("td",{className:"border border-gray-200 px-3 py-2 align-top text-sm dark:border-gray-700",children:e})};function qoe({content:e}){const t=h.useMemo(()=>[HI,UR],[]),n=h.useMemo(()=>[YR],[]);return o.jsx(yI,{remarkPlugins:t,rehypePlugins:n,components:zoe,children:e})}function Hoe({content:e,onChange:t,markdownPreview:n,isMarkdownFile:r,isDarkMode:a,fontSize:i,showLineNumbers:s,extensions:l}){return n&&r?o.jsx("div",{className:"h-full overflow-y-auto bg-white dark:bg-neutral-950",children:o.jsx("div",{className:"prose prose-sm prose-neutral mx-auto max-w-none px-8 py-6 dark:prose-invert prose-headings:font-semibold prose-a:text-neutral-900 prose-a:underline prose-code:text-[13px] prose-pre:bg-neutral-900 prose-img:rounded-lg dark:prose-a:text-neutral-100",children:o.jsx(qoe,{content:e})})}):o.jsx(rT,{value:e,onChange:t,extensions:l,theme:a?g7:b7,height:"100%",style:{fontSize:`${i}px`,height:"100%"},basicSetup:{lineNumbers:s,foldGutter:!0,dropCursor:!1,allowMultipleSelections:!1,indentOnInput:!0,bracketMatching:!0,closeBrackets:!0,autocompletion:!0,highlightSelectionMatches:!0,searchKeymap:!0}})}function P5({file:e,onClose:t,projectPath:n,isSidebar:r=!1,isExpanded:a=!1,onToggleExpand:i=null,onPopOut:s=null}){const{t:l}=Je("codeEditor"),[c,u]=h.useState(!1),[d,p]=h.useState(!!e.diffInfo),[m,f]=h.useState(!1),{isDarkMode:g,wordWrap:b,minimapEnabled:x,showLineNumbers:k,fontSize:y}=doe(),{content:v,setContent:E,loading:N,loadError:w,reload:T,saving:j,saveSuccess:_,saveError:C,isBinary:O,projectName:I,handleSave:z,handleDownload:M}=uoe({file:e,projectPath:n}),P=h.useMemo(()=>{const V=e.name.split(".").pop()?.toLowerCase();return V==="md"||V==="markdown"},[e.name]),B=h.useMemo(()=>Toe({file:e,showDiff:d,minimapEnabled:x,isDarkMode:g}),[e,g,x,d]),$=h.useMemo(()=>Aoe({file:e,showDiff:d}),[e,d]),U=h.useMemo(()=>Ooe({file:e,showDiff:d,isSidebar:r,isExpanded:a,onToggleDiff:()=>p(V=>!V),onPopOut:s,onToggleExpand:i,labels:{changes:l("toolbar.changes"),previousChange:l("toolbar.previousChange"),nextChange:l("toolbar.nextChange"),hideDiff:l("toolbar.hideDiff"),showDiff:l("toolbar.showDiff"),collapse:l("toolbar.collapse"),expand:l("toolbar.expand")}}),[e,a,r,s,i,d,l]),q=h.useMemo(()=>{const V=[...Noe(e.name),...U];return e.diffInfo&&d&&e.diffInfo.old_string!==void 0&&(V.push(Zse({original:e.diffInfo.old_string,mergeControls:!1,highlightChanges:!0,syntaxHighlightDeletions:!1,gutter:!0})),V.push(...B),V.push(...$)),b&&V.push(zn.lineWrapping),V},[e.diffInfo,e.name,B,$,d,U,b]);if(poe({onSave:z,onClose:t,dependency:v}),N)return o.jsx($oe,{isDarkMode:g,isSidebar:r,loadingText:l("loading",{fileName:e.name})});if(w)return o.jsx(Boe,{file:e,isDarkMode:g,isSidebar:r,errorMessage:w,onRetry:T,onClose:t,labels:{title:l("loadError.title"),description:l("loadError.description",{fileName:e.name}),retry:l("loadError.retry"),close:l("actions.close")}});if(O)return o.jsx(Loe,{file:e,projectName:I,isSidebar:r,isFullscreen:c,onClose:t,onToggleFullscreen:()=>u(V=>!V),title:l("binaryFile.title","Binary File"),message:l("binaryFile.message",'The file "{{fileName}}" cannot be displayed in the text editor because it is a binary file.',{fileName:e.name})});const A=r?"w-full h-full flex flex-col":`fixed inset-0 z-[9999] md:bg-black/40 md:backdrop-blur-sm md:flex md:items-center md:justify-center md:p-4 ${c?"md:p-0":""}`,K=r?"bg-white dark:bg-neutral-950 flex flex-col w-full h-full":`bg-white dark:bg-neutral-950 flex flex-col w-full h-full md:rounded-xl md:border md:border-neutral-200 dark:md:border-neutral-800${c?" md:w-full md:h-full md:rounded-none md:border-0":" md:w-full md:max-w-6xl md:h-[80vh] md:max-h-[80vh] md:shadow-xl"}`;return o.jsxs(o.Fragment,{children:[o.jsx("style",{children:Roe(g)}),o.jsx("div",{className:A,children:o.jsxs("div",{className:K,children:[o.jsx(Foe,{file:e,isSidebar:r,isFullscreen:c,isMarkdownFile:P,markdownPreview:m,saving:j,saveSuccess:_,isExpanded:a,onToggleExpand:i,onToggleMarkdownPreview:()=>f(V=>!V),onDownload:M,onSave:z,onToggleFullscreen:()=>u(V=>!V),onClose:t,labels:{showingChanges:l("header.showingChanges"),editMarkdown:l("actions.editMarkdown"),previewMarkdown:l("actions.previewMarkdown"),download:l("actions.download"),save:l("actions.save"),saving:l("actions.saving"),saved:l("actions.saved"),fullscreen:l("actions.fullscreen"),exitFullscreen:l("actions.exitFullscreen"),expand:l("actions.expand",{defaultValue:"Expand to full width"}),collapse:l("actions.collapse",{defaultValue:"Collapse to split view"}),close:l("actions.close")}}),C&&o.jsx("div",{className:"border-b border-red-200/60 bg-red-50 px-4 py-1.5 text-xxs text-red-700 dark:border-red-900/40 dark:bg-red-900/10 dark:text-red-300",children:C}),o.jsx("div",{className:"flex-1 overflow-hidden",children:o.jsx(Hoe,{content:v,onChange:E,markdownPreview:m,isMarkdownFile:P,isDarkMode:g,fontSize:y,showLineNumbers:k,extensions:q})}),o.jsx(Poe,{content:v,linesLabel:l("footer.lines"),charactersLabel:l("footer.characters"),shortcutsLabel:l("footer.shortcuts")})]})})]})}const F5=420,B5=280,$5=.5;function Goe({editingFile:e,isMobile:t,editorExpanded:n,editorWidth:r,hasManualWidth:a,resizeHandleRef:i,onResizeStart:s,onCloseEditor:l,onToggleEditorExpand:c,projectPath:u,fillSpace:d}){const[p,m]=h.useState(!1),f=h.useRef(null),[g,b]=h.useState(r);if(h.useEffect(()=>{if(!e||t||p)return;const v=()=>{if(!f.current)return;const w=f.current.parentElement;if(!w)return;const T=w.clientWidth,j=T-F5;if(j{window.removeEventListener("resize",v),E.disconnect()}},[e,d,a,t,p,n,r]),!e)return null;if(t||p)return o.jsx(P5,{file:e,onClose:()=>{m(!1),l()},projectPath:u,isSidebar:!1});const x=d&&!a&&!n,k=n?"flex h-full min-w-0 flex-1 basis-0":"flex h-full min-w-0 flex-shrink-0",y=n?void 0:{width:x?`min(${r}px, ${$5*100}%, calc(100% - ${F5}px))`:`${g}px`,minWidth:`${B5}px`};return o.jsxs("div",{ref:f,className:k,style:y,children:[!n&&o.jsxs("div",{ref:i,onMouseDown:s,className:"group relative z-10 w-px flex-shrink-0 cursor-col-resize bg-neutral-200 transition-colors hover:bg-neutral-400 dark:bg-neutral-800 dark:hover:bg-neutral-600",title:"Drag to resize",children:[o.jsx("div",{className:"absolute inset-y-0 left-1/2 w-3 -translate-x-1/2"}),o.jsx("div",{className:"absolute inset-y-0 left-1/2 w-0.5 -translate-x-1/2 bg-neutral-400 opacity-0 transition-opacity group-hover:opacity-100 dark:bg-neutral-600"})]}),o.jsx("div",{className:"h-full min-w-0 flex-1 overflow-hidden border-l border-neutral-200 dark:border-neutral-800",children:o.jsx(P5,{file:e,onClose:l,projectPath:u,isSidebar:!0,isExpanded:n,onToggleExpand:c,onPopOut:()=>m(!0)})})]})}function Voe(e,t){e({type:"always-on-presence",...t})}function Woe(e){e({type:"always-on-presence-clear"})}function U5({mode:e}){const{t}=Je(),n=e==="loading";return o.jsx("div",{className:"flex h-full flex-col bg-white text-neutral-900 dark:bg-neutral-950 dark:text-neutral-100",children:n?o.jsx("div",{className:"flex flex-1 items-center justify-center",children:o.jsxs("div",{className:"flex items-center gap-2 text-[13px] text-neutral-500 dark:text-neutral-400",children:[o.jsx("div",{className:"h-3.5 w-3.5 animate-spin rounded-full border-b-2 border-neutral-400"}),o.jsx("span",{children:t("mainContent.loading",{defaultValue:"Loading…"})})]})}):o.jsx("div",{className:"flex flex-1 items-center justify-center",children:o.jsxs("div",{className:"mx-auto max-w-[440px] px-6 text-center",children:[o.jsx("div",{className:"mx-auto mb-4 flex h-10 w-10 items-center justify-center rounded-full bg-neutral-100 dark:bg-neutral-900",children:o.jsx(cr,{className:"h-4.5 w-4.5 text-neutral-500",strokeWidth:1.75})}),o.jsx("h2",{className:"mb-1 text-[15px] font-medium text-neutral-900 dark:text-neutral-100",children:t("mainContent.chooseProject",{defaultValue:"Pick a project to start"})}),o.jsx("p",{className:"text-[13px] leading-relaxed text-neutral-500 dark:text-neutral-400",children:t("mainContent.selectProjectDescription",{defaultValue:"Choose a project from the sidebar, or open a new one."})})]})})})}const Koe=h.createContext(null),Eg={didCatch:!1,error:null};let Yoe=class extends h.Component{constructor(t){super(t),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=Eg}static getDerivedStateFromError(t){return{didCatch:!0,error:t}}resetErrorBoundary(){const{error:t}=this.state;if(t!==null){for(var n,r,a=arguments.length,i=new Array(a),s=0;s0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return e.length!==t.length||e.some((n,r)=>!Object.is(n,t[r]))}function Zoe(e){return e instanceof Error?`${e.name}: ${e.message}`:String(e)}function Joe({error:e,resetErrorBoundary:t,showDetails:n,componentStack:r}){return o.jsx("div",{className:"flex flex-col items-center justify-center p-8 text-center",children:o.jsxs("div",{className:"max-w-md rounded-lg border border-red-200 bg-red-50 p-6",children:[o.jsxs("div",{className:"mb-4 flex items-center",children:[o.jsx("div",{className:"flex-shrink-0",children:o.jsx("svg",{className:"h-5 w-5 text-red-400",viewBox:"0 0 20 20",fill:"currentColor",children:o.jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"})})}),o.jsx("h3",{className:"ml-3 text-sm font-medium text-red-800",children:"Something went wrong"})]}),o.jsxs("div",{className:"text-sm text-red-700",children:[o.jsx("p",{className:"mb-2",children:"An error occurred while loading the chat interface."}),n&&o.jsxs("details",{className:"mt-4",children:[o.jsx("summary",{className:"cursor-pointer font-mono text-xs",children:"Error Details"}),o.jsxs("pre",{className:"mt-2 max-h-40 overflow-auto rounded bg-red-100 p-2 text-xs",children:[Zoe(e),r]})]})]}),o.jsx("div",{className:"mt-4",children:o.jsx("button",{onClick:t,className:"rounded bg-red-600 px-4 py-2 text-sm text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-red-500",children:"Try Again"})})]})})}function Qoe({children:e,showDetails:t=!1,onRetry:n=void 0,resetKeys:r=void 0}){const[a,i]=h.useState(null),s=h.useCallback((u,d)=>{console.error("ErrorBoundary caught an error:",u,d),i(d?.componentStack??null)},[]),l=h.useCallback(()=>{i(null),n?.()},[n]),c=h.useCallback(({error:u,resetErrorBoundary:d})=>o.jsx(Joe,{error:u,resetErrorBoundary:d,showDetails:t,componentStack:a}),[t,a]);return o.jsx(Yoe,{fallbackRender:c,onError:s,onReset:l,resetKeys:r,children:e})}function ele(e){return e==="zh-CN"?"zh":"en"}function tle(e){return e?"dark":"light"}const nle={zh:{emptyProject:"请选择一个项目查看 Memory。",unavailable:"身份验证和项目上下文准备完成后,Memory 面板才可用。",title:"Memory 面板"},en:{emptyProject:"Select a project to inspect memory.",unavailable:"Memory dashboard is unavailable until auth and project context are ready.",title:"Memory Dashboard"}};function rle(e,t,n){const r=localStorage.getItem(Cc),a=e.fullPath||e.path;if(!a)return null;const i=new URLSearchParams({projectPath:a,locale:t,theme:n});return r&&i.set("token",r),`/memory-dashboard/index.html?${i.toString()}`}function ale({selectedProject:e}){const{i18n:t}=Je(),{isDarkMode:n}=li(),r=ele(t.language),a=tle(n),i=nle[r];if(!e)return o.jsx("div",{className:"flex h-full items-center justify-center bg-white text-[13px] text-neutral-500 dark:bg-neutral-950 dark:text-neutral-400",children:i.emptyProject});const s=rle(e,r,a);return s?o.jsx("div",{className:"h-full w-full bg-white dark:bg-neutral-950",children:o.jsx("iframe",{title:i.title,src:s,className:"block h-full w-full border-0 bg-white dark:bg-neutral-950"},`${e.fullPath||e.path||"memory"}:${r}:${a}`)}):o.jsx("div",{className:"flex h-full items-center justify-center bg-white text-[13px] text-neutral-500 dark:bg-neutral-950 dark:text-neutral-400",children:i.unavailable})}function ile(e){return e&&(e.fullPath||e.path)||null}function sle(e){return e?e.name==="general"||e.displayName==="general":!1}async function Un(e,t){const n=await Oe(e,{method:"POST",body:JSON.stringify(t??{})}),r=await n.json().catch(()=>({}));if(!n.ok){const a=r.error||r.message||`Request failed (${n.status})`;throw new Error(a)}return r}function ole({selectedProject:e,projects:t}){const{t:n}=Je(),{isDarkMode:r}=li(),a=ile(e),i=sle(e),[s,l]=h.useState(null),[c,u]=h.useState(null),[d,p]=h.useState(!1),[m,f]=h.useState(null),[g,b]=h.useState(null),[x,k]=h.useState(""),[y,v]=h.useState(""),[E,N]=h.useState(!1),[w,T]=h.useState(!1),[j,_]=h.useState(!1),[C,O]=h.useState(null),z=i||!!(a&&c===a),M=z?null:a,P=h.useCallback((V,L=2400)=>{O(V),V&&window.setTimeout(()=>O(null),L)},[]),B=h.useCallback(async()=>{p(!0);try{const V=await Un("/api/skills/list",{projectPath:M});l(V),u(L=>a?V.isGeneralCwd?a:M===null&&(i||L===a)?L:L===a?null:L:null)}catch(V){P({kind:"error",text:V.message})}finally{p(!1)}},[a,M,P,i]);h.useEffect(()=>{B()},[B]),h.useEffect(()=>{z&&g==="project"&&(b(null),f(null))},[g,z]);const $=h.useMemo(()=>!s||!m?null:(g==="project"?s.project:s.user).find(L=>L.slug===m)??null,[s,m,g]);h.useEffect(()=>{if(!$){k(""),v("");return}let V=!1;return N(!0),Un("/api/skills/read",{skillPath:$.skillDir,projectPath:M}).then(L=>{V||(k(L.content),v(L.content))}).catch(L=>{V||(P({kind:"error",text:L.message}),k(""),v(""))}).finally(()=>{V||N(!1)}),()=>{V=!0}},[$,M,P]);const U=x!==y,q=h.useCallback(async()=>{if($){T(!0);try{const V=await Un("/api/skills/write",{skillPath:$.skillDir,projectPath:M,content:x});v(x),l(L=>{if(!L)return L;const le=re=>re.map(ne=>ne.slug===$.slug&&ne.scope===$.scope?{...ne,...V.skill,scope:$.scope}:ne);return{...L,user:le(L.user),project:le(L.project)}}),P({kind:"success",text:n("skillsTab.savedSuccess",{defaultValue:"Saved"})})}catch(V){P({kind:"error",text:V.message})}finally{T(!1)}}},[$,x,M,P,n]),A=h.useCallback(async()=>{if($&&window.confirm(n("skillsTab.confirmDelete",{defaultValue:"Delete this skill? This will remove the entire folder.",name:$.name})))try{await Un("/api/skills/delete",{skillPath:$.skillDir,projectPath:M}),f(null),b(null),await B(),P({kind:"success",text:n("skillsTab.deletedSuccess",{defaultValue:"Deleted"})})}catch(V){P({kind:"error",text:V.message})}},[$,M,B,P,n]),K=h.useCallback(V=>{U&&!window.confirm(n("skillsTab.discardUnsaved",{defaultValue:"Discard unsaved changes?"}))||(f(V.slug),b(V.scope))},[U,n]);return e?o.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-white dark:bg-neutral-950",children:[o.jsx(lle,{cwd:a,generalCwd:z,loading:d,onRefresh:B,onNew:()=>_(!0),t:n}),o.jsxs("div",{className:"flex min-h-0 flex-1",children:[o.jsx(cle,{skills:s,loading:d,activeSlug:m,activeScope:g,generalCwd:z,onSelect:K,selectedSkill:$,effectiveProjectPath:M,projects:t,refresh:B,flashToast:P,setActiveSlug:f,setActiveScope:b,t:n}),o.jsx("div",{className:"flex min-h-0 flex-1 flex-col border-l border-neutral-200 dark:border-neutral-800",children:$?o.jsx(dle,{skill:$,content:x,onChange:k,isDirty:U,loading:E,saving:w,isDarkMode:r,onSave:q,onDelete:A,onRevert:()=>k(y),t:n}):o.jsx(ule,{t:n})})]}),j?o.jsx(ple,{onClose:()=>_(!1),onCreated:async V=>{await B(),f(V.slug),b(V.scope),_(!1),P({kind:"success",text:n("skillsTab.installedSuccess",{defaultValue:"Installed",name:V.name})})},projectAvailable:!!M,projectPath:M,t:n}):null,C?o.jsx("div",{className:oe("pointer-events-none absolute bottom-4 left-1/2 z-50 -translate-x-1/2 rounded-md px-3 py-1.5 text-[12px] shadow-lg",C.kind==="success"&&"bg-emerald-600 text-white",C.kind==="error"&&"bg-red-600 text-white",C.kind==="info"&&"bg-neutral-800 text-white"),children:C.text}):null]}):o.jsx("div",{className:"flex h-full items-center justify-center bg-white text-[13px] text-neutral-500 dark:bg-neutral-950 dark:text-neutral-400",children:n("skillsTab.pickProject",{defaultValue:"Open a project to manage its skills."})})}function lle({cwd:e,generalCwd:t,loading:n,onRefresh:r,onNew:a,t:i}){return o.jsxs("div",{className:"flex h-10 shrink-0 items-center justify-between border-b border-neutral-200 px-6 dark:border-neutral-800",children:[o.jsxs("div",{className:"flex min-w-0 items-center gap-2 truncate font-mono text-xxs text-neutral-500 dark:text-neutral-400",children:[o.jsx(So,{className:"h-3.5 w-3.5 text-amber-500",strokeWidth:1.75}),t?o.jsx("span",{children:i("skillsTab.generalChat",{defaultValue:"General chat — user-scope skills only"})}):o.jsx("span",{className:"truncate",children:e})]}),o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx("button",{type:"button",onClick:r,disabled:n,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-600 transition hover:bg-neutral-100 disabled:opacity-50 dark:text-neutral-300 dark:hover:bg-neutral-900",title:i("skillsTab.refresh",{defaultValue:"Refresh"}),"aria-label":i("skillsTab.refresh",{defaultValue:"Refresh"}),children:o.jsx(Cr,{className:oe("h-3.5 w-3.5",n&&"animate-spin"),strokeWidth:1.75})}),o.jsxs("button",{type:"button",onClick:a,className:"inline-flex h-7 items-center gap-1.5 rounded-md bg-neutral-900 px-2.5 text-[12px] font-medium text-white transition hover:bg-neutral-700 dark:bg-neutral-100 dark:text-neutral-900 dark:hover:bg-neutral-300",children:[o.jsx(Qt,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:i("skillsTab.newSkill",{defaultValue:"New"})})]})]})]})}function cle({skills:e,loading:t,activeSlug:n,activeScope:r,generalCwd:a,onSelect:i,selectedSkill:s,effectiveProjectPath:l,projects:c,refresh:u,flashToast:d,setActiveSlug:p,setActiveScope:m,t:f}){const g=h.useCallback(async k=>{if(window.confirm(f("skillsTab.confirmUninstall",{defaultValue:'Uninstall "{{name}}"? This will remove the entire skill folder.',name:k.name})))try{await Un("/api/skills/delete",{skillPath:k.skillDir,projectPath:l}),s?.slug===k.slug&&s?.scope===k.scope&&(p(null),m(null)),await u(),d({kind:"success",text:f("skillsTab.uninstallSuccess",{defaultValue:'Uninstalled "{{name}}"',name:k.name})})}catch(y){d({kind:"error",text:y.message})}},[l,s,u,d,p,m,f]),b=h.useCallback(async(k,y)=>{try{await Un("/api/skills/import",{sourcePath:k.skillDir,slug:k.slug,scope:y.scope,projectPath:y.projectPath,mode:"copy",force:!1}),await Un("/api/skills/delete",{skillPath:k.skillDir,projectPath:l}),s?.slug===k.slug&&s?.scope===k.scope&&m(y.scope),await u();const v=y.scope==="user"?"User":y.projectPath.split("/").pop()||"Project";d({kind:"success",text:f("skillsTab.moveSuccess",{defaultValue:'Moved "{{name}}" to {{scope}}',name:k.name,scope:v})})}catch(v){d({kind:"error",text:v.message})}},[l,s,u,d,m,f]),x=h.useMemo(()=>{const k=[];k.push({label:"User (global)",target:{scope:"user",projectPath:null}});for(const y of c){const v=y.fullPath||y.path||null;v&&(y.name==="general"||y.displayName==="general"||k.push({label:y.displayName||y.name,target:{scope:"project",projectPath:v}}))}return k},[c]);return o.jsx("div",{className:"flex w-72 shrink-0 flex-col border-r border-neutral-200 dark:border-neutral-800",children:o.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto py-2 text-[13px]",children:t&&!e?o.jsxs("div",{className:"flex items-center justify-center gap-2 py-6 text-xxs text-neutral-500 dark:text-neutral-400",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),o.jsx("span",{children:f("skillsTab.loading",{defaultValue:"Loading…"})})]}):o.jsxs(o.Fragment,{children:[!a&&e?.project&&e.project.length>0?o.jsx(z5,{title:f("skillsTab.projectScope",{defaultValue:"Project Skills"}),items:e.project,activeSlug:r==="project"?n:null,onSelect:i,onDelete:g,onMove:b,moveTargets:x,currentProjectPath:l,t:f}):null,e?.user&&e.user.length>0?o.jsx(z5,{title:f("skillsTab.userScope",{defaultValue:"User Skills"}),items:e.user,activeSlug:r==="user"?n:null,onSelect:i,onDelete:g,onMove:b,moveTargets:x,currentProjectPath:l,t:f}):null,e&&e.user.length===0&&(a||e.project.length===0)?o.jsx("div",{className:"px-4 py-6 text-center text-xxs text-neutral-500 dark:text-neutral-400",children:f("skillsTab.empty",{defaultValue:'No skills yet. Click "New" to install or create one.'})}):null]})})})}function z5({title:e,items:t,activeSlug:n,onSelect:r,onDelete:a,onMove:i,moveTargets:s,currentProjectPath:l,t:c}){const[u,d]=h.useState(null),[p,m]=h.useState(!1),f=h.useRef(null);h.useEffect(()=>{if(!u)return;const x=k=>{if(k instanceof KeyboardEvent&&k.key==="Escape"){d(null),m(!1);return}k instanceof MouseEvent&&f.current&&!f.current.contains(k.target)&&(d(null),m(!1))};return document.addEventListener("mousedown",x),document.addEventListener("keydown",x),()=>{document.removeEventListener("mousedown",x),document.removeEventListener("keydown",x)}},[u]);const g=h.useCallback((x,k)=>{x.preventDefault(),x.stopPropagation(),d({skill:k,x:x.clientX,y:x.clientY}),m(!1)},[]),b=h.useMemo(()=>{if(!u)return[];const x=u.skill;return s.filter(k=>!(x.scope==="user"&&k.target.scope==="user"||x.scope==="project"&&k.target.scope==="project"&&k.target.projectPath===l))},[u,s,l]);return o.jsxs("div",{className:"mb-2",children:[o.jsxs("div",{className:"px-4 py-1 text-xxs uppercase tracking-wider text-neutral-400 dark:text-neutral-500",children:[e," ",o.jsxs("span",{className:"text-neutral-300 dark:text-neutral-600",children:["· ",t.length]})]}),o.jsx("ul",{className:"space-y-0.5 px-2",children:t.map(x=>{const k=n===x.slug;return o.jsxs("li",{className:"group relative",children:[o.jsxs("button",{type:"button",onClick:()=>r(x),onContextMenu:y=>g(y,x),className:oe("block w-full truncate rounded-md px-2 py-1.5 pr-8 text-left text-[13px] transition-colors",k?"bg-neutral-100 text-neutral-900 dark:bg-neutral-800 dark:text-neutral-100":"text-neutral-700 hover:bg-neutral-50 dark:text-neutral-300 dark:hover:bg-neutral-900/60"),title:x.description||x.name,children:[o.jsxs("div",{className:"flex items-center gap-1.5 truncate font-medium",children:[o.jsx("span",{className:"truncate",children:x.name}),x.version?o.jsxs("span",{className:"shrink-0 rounded bg-neutral-200 px-1 py-px text-[10px] text-neutral-600 dark:bg-neutral-800 dark:text-neutral-400",children:["v",x.version]}):null]}),x.description?o.jsx("div",{className:"mt-0.5 line-clamp-1 text-xxs text-neutral-500 dark:text-neutral-400",children:x.description}):null]}),o.jsx("button",{type:"button",onClick:y=>{y.stopPropagation(),a(x)},className:"absolute right-1.5 top-1/2 hidden h-6 w-6 -translate-y-1/2 items-center justify-center rounded text-neutral-400 hover:bg-red-50 hover:text-red-600 group-hover:inline-flex dark:text-neutral-500 dark:hover:bg-red-950/40 dark:hover:text-red-400",title:c("skillsTab.delete",{defaultValue:"Delete"}),children:o.jsx(en,{className:"h-3.5 w-3.5",strokeWidth:1.75})})]},`${x.scope}:${x.slug}`)})}),u?o.jsxs("div",{ref:f,className:"fixed z-[100] min-w-[180px] rounded-lg border border-neutral-200 bg-white py-1 shadow-xl dark:border-neutral-700 dark:bg-neutral-900",style:{left:u.x,top:u.y},children:[b.length>0?o.jsxs("div",{className:"relative",children:[o.jsxs("button",{type:"button",onMouseEnter:()=>m(!0),onClick:()=>m(!p),className:"flex w-full items-center justify-between gap-2 px-3 py-1.5 text-left text-[12px] text-neutral-700 hover:bg-neutral-100 dark:text-neutral-200 dark:hover:bg-neutral-800",children:[o.jsxs("span",{className:"flex items-center gap-2",children:[o.jsx(fj,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:c("skillsTab.moveTo",{defaultValue:"Move to…"})})]}),o.jsx("span",{className:"text-neutral-400",children:"›"})]}),p?o.jsx("div",{className:"absolute left-full top-0 z-[101] ml-1 min-w-[160px] max-h-[240px] overflow-y-auto rounded-lg border border-neutral-200 bg-white py-1 shadow-xl dark:border-neutral-700 dark:bg-neutral-900",children:b.map(x=>o.jsxs("button",{type:"button",onClick:()=>{const k=u.skill;d(null),m(!1),i(k,x.target)},className:"flex w-full items-center gap-2 px-3 py-1.5 text-left text-[12px] text-neutral-700 hover:bg-neutral-100 dark:text-neutral-200 dark:hover:bg-neutral-800",children:[x.target.scope==="user"?o.jsx(Hl,{className:"h-3.5 w-3.5 shrink-0 text-amber-500",strokeWidth:1.75}):o.jsx(cr,{className:"h-3.5 w-3.5 shrink-0 text-blue-500",strokeWidth:1.75}),o.jsx("span",{className:"truncate",children:x.label})]},x.target.scope+":"+(x.target.projectPath||"user")))}):null]}):null,o.jsxs("button",{type:"button",onClick:()=>{const x=u.skill;d(null),m(!1),a(x)},className:"flex w-full items-center gap-2 px-3 py-1.5 text-left text-[12px] text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/40",children:[o.jsx(en,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:c("skillsTab.delete",{defaultValue:"Delete"})})]})]}):null]})}function ule({t:e}){return o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 text-center text-[13px] text-neutral-500 dark:text-neutral-400",children:[o.jsx(So,{className:"h-8 w-8 text-neutral-300 dark:text-neutral-700",strokeWidth:1.5}),o.jsx("div",{children:e("skillsTab.selectHint",{defaultValue:"Pick a skill on the left to view or edit its SKILL.md."})})]})}function dle({skill:e,content:t,onChange:n,isDirty:r,loading:a,saving:i,isDarkMode:s,onSave:l,onDelete:c,onRevert:u,t:d}){return o.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[o.jsxs("div",{className:"shrink-0 border-b border-neutral-200 px-6 py-3 dark:border-neutral-800",children:[o.jsxs("div",{className:"flex items-baseline gap-2",children:[o.jsx("h2",{className:"text-sm font-semibold text-neutral-900 dark:text-neutral-100",children:e.name}),o.jsx("span",{className:oe("rounded px-1.5 py-0.5 text-[10px] uppercase tracking-wider",e.scope==="project"?"bg-blue-100 text-blue-700 dark:bg-blue-950/60 dark:text-blue-300":"bg-amber-100 text-amber-800 dark:bg-amber-950/60 dark:text-amber-300"),children:e.scope}),e.version?o.jsxs("span",{className:"text-xxs text-neutral-500 dark:text-neutral-400",children:["v",e.version]}):null]}),e.description?o.jsx("p",{className:"mt-1 text-xxs text-neutral-500 dark:text-neutral-400",children:e.description}):null,o.jsx("div",{className:"mt-1 truncate font-mono text-[10px] text-neutral-400 dark:text-neutral-500",children:e.skillDir})]}),o.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:a?o.jsxs("div",{className:"flex h-full items-center justify-center gap-2 text-xxs text-neutral-500 dark:text-neutral-400",children:[o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}),o.jsx("span",{children:d("skillsTab.loading",{defaultValue:"Loading…"})})]}):o.jsx(rT,{value:t,onChange:n,extensions:[eT(),zn.lineWrapping],theme:s?g7:b7,height:"100%",style:{height:"100%",fontSize:"13px"},basicSetup:{lineNumbers:!1,foldGutter:!1,highlightActiveLine:!1,indentOnInput:!0,autocompletion:!1,searchKeymap:!0}})}),o.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-t border-neutral-200 px-6 py-2 dark:border-neutral-800",children:[o.jsxs("button",{type:"button",onClick:c,className:"inline-flex h-7 items-center gap-1.5 rounded-md px-2.5 text-[12px] text-red-600 hover:bg-red-50 dark:text-red-400 dark:hover:bg-red-950/40",children:[o.jsx(en,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:d("skillsTab.delete",{defaultValue:"Delete"})})]}),o.jsxs("div",{className:"flex items-center gap-1.5",children:[r?o.jsx("button",{type:"button",onClick:u,className:"inline-flex h-7 items-center rounded-md px-2.5 text-[12px] text-neutral-600 hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-900",children:d("skillsTab.revert",{defaultValue:"Revert"})}):null,o.jsxs("button",{type:"button",onClick:l,disabled:!r||i,className:"inline-flex h-7 items-center gap-1.5 rounded-md bg-neutral-900 px-2.5 text-[12px] font-medium text-white transition hover:bg-neutral-700 disabled:opacity-40 dark:bg-neutral-100 dark:text-neutral-900 dark:hover:bg-neutral-300",children:[i?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):o.jsx(Ac,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:i?d("skillsTab.saving",{defaultValue:"Saving…"}):d("skillsTab.save",{defaultValue:"Save"})})]})]})]})]})}function ple({onClose:e,onCreated:t,projectAvailable:n,projectPath:r,t:a}){const[i,s]=h.useState("install");return o.jsx("div",{className:"absolute inset-0 z-40 flex items-center justify-center bg-black/40 p-4",children:o.jsxs("div",{className:"flex h-[560px] w-full max-w-2xl flex-col overflow-hidden rounded-xl border border-neutral-200 bg-white shadow-2xl dark:border-neutral-800 dark:bg-neutral-950",children:[o.jsxs("div",{className:"flex shrink-0 items-center justify-between border-b border-neutral-200 px-5 py-3 dark:border-neutral-800",children:[o.jsx("h3",{className:"text-sm font-semibold",children:a("skillsTab.newTitle",{defaultValue:"New Skill"})}),o.jsx("button",{type:"button",onClick:e,className:"inline-flex h-7 w-7 items-center justify-center rounded-md text-neutral-500 hover:bg-neutral-100 dark:text-neutral-400 dark:hover:bg-neutral-900","aria-label":a("skillsTab.close",{defaultValue:"Close"}),children:o.jsx(Nr,{className:"h-3.5 w-3.5",strokeWidth:1.75})})]}),o.jsxs("div",{className:"flex shrink-0 gap-1 border-b border-neutral-200 px-5 dark:border-neutral-800",children:[o.jsx(Cg,{active:i==="install",onClick:()=>s("install"),icon:Ja,children:a("skillsTab.tabInstall",{defaultValue:"Install from ClawHub"})}),o.jsx(Cg,{active:i==="import",onClick:()=>s("import"),icon:Lg,children:a("skillsTab.tabImport",{defaultValue:"Import folder"})}),o.jsx(Cg,{active:i==="create",onClick:()=>s("create"),icon:vO,children:a("skillsTab.tabCreate",{defaultValue:"Write my own"})})]}),o.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:i==="install"?o.jsx(mle,{projectAvailable:n,projectPath:r,onInstalled:t,t:a}):i==="import"?o.jsx(hle,{projectAvailable:n,projectPath:r,onImported:t,t:a}):o.jsx(ble,{projectAvailable:n,projectPath:r,onCreated:t,t:a})})]})})}function Cg({active:e,onClick:t,children:n,icon:r}){return o.jsxs("button",{type:"button",onClick:t,className:oe("inline-flex items-center gap-1.5 border-b-2 px-3 py-2 text-[12px] transition-colors",e?"border-neutral-900 font-medium text-neutral-900 dark:border-neutral-100 dark:text-neutral-100":"border-transparent text-neutral-500 hover:text-neutral-800 dark:text-neutral-400 dark:hover:text-neutral-200"),children:[o.jsx(r,{className:"h-3.5 w-3.5",strokeWidth:1.75}),n]})}function kc({scope:e,onChange:t,projectAvailable:n,t:r}){return o.jsxs("div",{className:"flex items-center gap-2 text-[12px]",children:[o.jsxs("span",{className:"text-neutral-500 dark:text-neutral-400",children:[r("skillsTab.scope",{defaultValue:"Scope"}),":"]}),o.jsxs("div",{className:"inline-flex overflow-hidden rounded-md border border-neutral-200 dark:border-neutral-800",children:[o.jsx("button",{type:"button",onClick:()=>t("user"),className:oe("px-2.5 py-1 transition-colors",e==="user"?"bg-neutral-900 text-white dark:bg-neutral-100 dark:text-neutral-900":"text-neutral-600 hover:bg-neutral-50 dark:text-neutral-400 dark:hover:bg-neutral-900"),children:o.jsxs("span",{className:"inline-flex items-center gap-1",children:[o.jsx(Hl,{className:"h-3 w-3",strokeWidth:1.75}),r("skillsTab.scopeUser",{defaultValue:"User"})]})}),o.jsx("button",{type:"button",disabled:!n,onClick:()=>t("project"),className:oe("px-2.5 py-1 transition-colors",e==="project"?"bg-neutral-900 text-white dark:bg-neutral-100 dark:text-neutral-900":"text-neutral-600 hover:bg-neutral-50 disabled:opacity-40 disabled:hover:bg-transparent dark:text-neutral-400 dark:hover:bg-neutral-900"),children:r("skillsTab.scopeProject",{defaultValue:"Project"})})]})]})}function mle({projectAvailable:e,projectPath:t,onInstalled:n,t:r}){const[a,i]=h.useState(""),[s,l]=h.useState([]),[c,u]=h.useState(!1),[d,p]=h.useState(e?"project":"user"),[m,f]=h.useState(null),[g,b]=h.useState(null),[x,k]=h.useState(null),y=h.useRef(void 0);h.useEffect(()=>{!e&&d==="project"&&p("user")},[e,d]),h.useEffect(()=>{if(y.current&&window.clearTimeout(y.current),!a.trim()){l([]);return}return u(!0),y.current=window.setTimeout(async()=>{try{const E=await Un("/api/skills/clawhub/search",{query:a});l(E.results)}catch(E){b(E.message),l([])}finally{u(!1)}},350),()=>{y.current&&window.clearTimeout(y.current)}},[a]);const v=h.useCallback(async(E,N=!1)=>{f(E),b(null);try{const w=e?d:"user",T=await Un("/api/skills/clawhub/install",{slug:E,scope:w,projectPath:w==="project"?t:null,force:N});if(T.installed){n({slug:T.slug,name:T.skill?.name||T.slug,scope:T.scope});return}if(T.needsForce){k(E),b(r("skillsTab.flaggedSuspicious",{defaultValue:'"{{slug}}" is flagged as suspicious by VirusTotal. Re-confirm to install with --force.',slug:E}));return}b(T.stderr||T.stdout||`Install failed (exit ${T.exitCode})`)}catch(w){b(w.message)}finally{f(null)}},[e,d,t,n,r]);return o.jsxs("div",{className:"flex h-full flex-col",children:[o.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-3 border-b border-neutral-200 px-5 py-3 dark:border-neutral-800",children:[o.jsxs("div",{className:"relative flex flex-1 items-center",children:[o.jsx(Ic,{className:"absolute left-2.5 h-3.5 w-3.5 text-neutral-400",strokeWidth:1.75}),o.jsx("input",{type:"text",value:a,onChange:E=>i(E.target.value),placeholder:r("skillsTab.searchPlaceholder",{defaultValue:"Search clawhub.com…"}),className:"h-8 w-full rounded-md border border-neutral-200 bg-white pl-8 pr-2 text-[13px] outline-none focus:border-neutral-400 dark:border-neutral-800 dark:bg-neutral-950 dark:focus:border-neutral-600"}),c?o.jsx(pt,{className:"absolute right-2.5 h-3.5 w-3.5 animate-spin text-neutral-400",strokeWidth:1.75}):null]}),o.jsx(kc,{scope:d,onChange:p,projectAvailable:e,t:r})]}),g?o.jsx("div",{className:"shrink-0 border-b border-red-200 bg-red-50 px-5 py-2 text-[12px] text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:g}):null,o.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:s.length===0&&!c?o.jsx("div",{className:"flex h-full items-center justify-center text-xxs text-neutral-500 dark:text-neutral-400",children:a.trim()?r("skillsTab.noResults",{defaultValue:"No results."}):r("skillsTab.searchHint",{defaultValue:"Type to search clawhub.com."})}):o.jsx("ul",{className:"divide-y divide-neutral-100 dark:divide-neutral-900",children:s.map(E=>{const N=x===E.slug,w=m===E.slug;return o.jsxs("li",{className:"flex items-center justify-between gap-3 px-5 py-2.5",children:[o.jsx("div",{className:"min-w-0",children:o.jsxs("div",{className:"flex items-baseline gap-2",children:[o.jsx("span",{className:"truncate font-medium text-[13px]",children:E.name}),o.jsx("span",{className:"font-mono text-[11px] text-neutral-500 dark:text-neutral-400",children:E.slug}),E.score?o.jsxs("span",{className:"text-[10px] text-neutral-400 dark:text-neutral-600",children:["· ",E.score.toFixed(2)]}):null]})}),o.jsxs("button",{type:"button",disabled:w,onClick:()=>v(E.slug,N),className:oe("inline-flex h-7 shrink-0 items-center gap-1.5 rounded-md px-2.5 text-[12px] font-medium text-white transition disabled:opacity-50",N?"bg-amber-600 hover:bg-amber-500":"bg-neutral-900 hover:bg-neutral-700 dark:bg-neutral-100 dark:text-neutral-900 dark:hover:bg-neutral-300"),children:[w?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):o.jsx(Ja,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:w?r("skillsTab.installing",{defaultValue:"Installing…"}):N?r("skillsTab.installForce",{defaultValue:"Install (force)"}):r("skillsTab.install",{defaultValue:"Install"})})]})]},E.slug)})})})]})}function fle(e){const t=e.match(/^---\s*\n([\s\S]*?)\n---/);if(!t)return{name:null,description:null};const n=t[1],r=n.match(/^name:\s*(.+)$/m),a=n.match(/^description:\s*(.+)$/m);return{name:r?r[1].trim().replace(/^["']|["']$/g,""):null,description:a?a[1].trim().replace(/^["']|["']$/g,""):null}}function hle({projectAvailable:e,projectPath:t,onImported:n,t:r}){const[a,i]=h.useState(""),[s,l]=h.useState(null),[c,u]=h.useState(""),[d,p]=h.useState(!1),[m,f]=h.useState(e?"project":"user"),[g,b]=h.useState("copy"),[x,k]=h.useState(!1),[y,v]=h.useState(!1),[E,N]=h.useState(null),[w,T]=h.useState(null),[j,_]=h.useState(!1),C=h.useRef(null),O=h.useRef(void 0),[I,z]=h.useState(null),[M,P]=h.useState(""),[B,$]=h.useState(new Set),[U,q]=h.useState(!1),[A,K]=h.useState(new Map),[V,L]=h.useState(!1),[le,re]=h.useState(!1),ne=I!==null;h.useEffect(()=>{!e&&m==="project"&&f("user")},[e,m]);const de=I?.filter(X=>X.hasSkillMd)??[],Se=B.size;h.useEffect(()=>{if(d)return;if(s){u(s.rootName);return}const X=a.trim().replace(/\/+$/,"");u(X&&X.split("/").filter(Boolean).pop()||"")},[s,a,d]),h.useEffect(()=>{s&&g==="symlink"&&b("copy")},[s,g]),h.useEffect(()=>{if(O.current&&window.clearTimeout(O.current),N(null),!s&&!a.trim()){T(null);return}return _(!0),O.current=window.setTimeout(async()=>{try{const X=s?{skillMdContent:s.skillMd??"",files:s.manifest}:{sourcePath:a},ae=await Un("/api/skills/validate",X);T(ae)}catch(X){T(null),N(X.message)}finally{_(!1)}},s?50:400),()=>{O.current&&window.clearTimeout(O.current)}},[s,a]);const he=!c||/^[a-zA-Z0-9][a-zA-Z0-9._-]{0,99}$/.test(c),Me=(s!==null||a.trim().length>0)&&he&&!y&&!j&&w?.ok===!0,Fe=h.useCallback(()=>{C.current?.click()},[]),ge=h.useCallback(async X=>{const ae=X.target.files;if(!ae||ae.length===0)return;const te=Array.from(ae),H=(te[0]?.webkitRelativePath||"").split("/")[0]||"",G=te.find(Ae=>{const ze=Ae.webkitRelativePath||Ae.name;return(H&&ze.startsWith(H+"/")?ze.slice(H.length+1):ze)==="SKILL.md"});if(G){const Ae=te.map(Le=>{const ke=Le.webkitRelativePath||Le.name;return{relativePath:H&&ke.startsWith(H+"/")?ke.slice(H.length+1):ke,size:Le.size}}),ze=await G.text();l({rootName:H,files:te,manifest:Ae,skillMd:ze}),i(""),p(!1),X.target&&(X.target.value="");return}const Z=new Map;for(const Ae of te){const ze=Ae.webkitRelativePath||Ae.name,Le=H&&ze.startsWith(H+"/")?ze.slice(H.length+1):ze,ke=Le.split("/")[0];!ke||!Le.includes("/")||(Z.has(ke)||Z.set(ke,[]),Z.get(ke).push(Ae))}const ue=[];for(const[Ae,ze]of Z){const Le=ze.find(Xe=>{const st=Xe.webkitRelativePath||Xe.name,se=H?H+"/"+Ae+"/":Ae+"/";return(st.startsWith(se)?st.slice(se.length):st)==="SKILL.md"});let ke=null,We=null;if(Le){const Xe=await Le.text(),st=fle(Xe);ke=st.name,We=st.description}ue.push({folderName:Ae,hasSkillMd:!!Le,name:ke,description:We,fileCount:ze.length,totalSize:ze.reduce((Xe,st)=>Xe+st.size,0),files:ze})}ue.sort((Ae,ze)=>Ae.hasSkillMd!==ze.hasSkillMd?Ae.hasSkillMd?-1:1:Ae.folderName.localeCompare(ze.folderName)),z(ue),P(H);const be=ue.filter(Ae=>Ae.hasSkillMd).map(Ae=>Ae.folderName);$(new Set(be)),K(new Map),L(!1),q(!1),i(""),l(null),X.target&&(X.target.value="")},[]),me=h.useCallback(()=>{l(null),T(null),p(!1)},[]),xe=h.useCallback(()=>{z(null),P(""),$(new Set),K(new Map),L(!1),q(!1)},[]),ce=h.useCallback(async()=>{if(a.trim()){re(!0);try{const ae=(await Un("/api/skills/scan",{parentPath:a.trim()})).folders.map(J=>({...J,files:[]}));z(ae),P(a.trim().split("/").filter(Boolean).pop()||a.trim());const te=ae.filter(J=>J.hasSkillMd).map(J=>J.folderName);$(new Set(te)),K(new Map),L(!1),q(!1),l(null)}catch(X){N(X.message)}finally{re(!1)}}},[a]),Ne=h.useCallback(X=>{$(ae=>{const te=new Set(ae);return te.has(X)?te.delete(X):te.add(X),te})},[]),Te=h.useCallback(()=>{if(!I)return;const X=I.filter(te=>te.hasSkillMd),ae=X.every(te=>B.has(te.folderName));$(ae?new Set:new Set(X.map(te=>te.folderName)))},[I,B]),Ge=h.useCallback(async()=>{if(!I||Se===0)return;q(!0),L(!1);const X=I.filter(J=>J.hasSkillMd&&B.has(J.folderName)),ae=new Map;for(const J of X)ae.set(J.folderName,{folderName:J.folderName,status:"pending"});K(new Map(ae));let te=0;for(const J of X){ae.set(J.folderName,{folderName:J.folderName,status:"importing"}),K(new Map(ae));try{const H=e?m:"user";if(J.sourcePath)await Un("/api/skills/import",{sourcePath:J.sourcePath,slug:J.folderName,scope:H,projectPath:H==="project"?t:null,mode:g,force:x});else{const G=M,Z=new FormData,ue=[];for(const Ae of J.files){Z.append("files",Ae);const ze=Ae.webkitRelativePath||Ae.name,Le=G+"/"+J.folderName+"/",ke=ze.startsWith(Le)?ze.slice(Le.length):ze;ue.push(ke)}Z.append("paths",JSON.stringify(ue)),Z.append("slug",J.folderName),Z.append("scope",H),H==="project"&&t&&Z.append("projectPath",t),x&&Z.append("force","true");const be=await Oe("/api/skills/import-upload",{method:"POST",body:Z});if(!be.ok){const Ae=await be.json().catch(()=>({}));throw new Error(Ae.error||`Upload failed (${be.status})`)}}ae.set(J.folderName,{folderName:J.folderName,status:"success"}),te++}catch(H){ae.set(J.folderName,{folderName:J.folderName,status:"error",error:H.message})}K(new Map(ae))}q(!1),L(!0),te>0&&n({slug:X[0].folderName,name:X[0].name||X[0].folderName,scope:e?m:"user"})},[I,Se,B,e,m,t,g,x,M,n]),ee=h.useCallback(async()=>{if(Me){v(!0),N(null);try{const X=e?m:"user";if(s){const ae=new FormData;for(let G=0;GG.relativePath))),c&&ae.append("slug",c),ae.append("scope",X),X==="project"&&t&&ae.append("projectPath",t),x&&ae.append("force","true");const te=await Oe("/api/skills/import-upload",{method:"POST",body:ae}),J=await te.json().catch(()=>({}));if(!te.ok)throw J.validation&&T(J.validation),new Error(J.error||`Upload failed (${te.status})`);const H=J;n({slug:H.slug,name:H.skill?.name||H.slug,scope:H.scope})}else{const ae=await Un("/api/skills/import",{sourcePath:a,slug:c||void 0,scope:X,projectPath:X==="project"?t:null,mode:g,force:x});n({slug:ae.slug,name:ae.skill?.name||ae.slug,scope:ae.scope})}}catch(X){const ae=X.message;/already exists/i.test(ae)&&!x?N(ae+" "+r("skillsTab.importEnableForce",{defaultValue:'Enable "Overwrite" to replace it.'})):N(ae)}finally{v(!1)}}},[Me,s,a,c,e,m,t,g,x,n,r]);return o.jsxs("div",{className:"flex h-full flex-col",children:[o.jsxs("div",{className:"min-h-0 flex-1 overflow-y-auto px-5 py-4",children:[o.jsxs(Za,{label:r("skillsTab.importSource",{defaultValue:"Source folder"}),hint:ne?void 0:r("skillsTab.importSourceHintBoth",{defaultValue:"Pick a folder via the native dialog, or paste an absolute path. ~ is expanded server-side."}),children:[o.jsxs("div",{className:"flex items-stretch gap-2",children:[o.jsxs("button",{type:"button",onClick:Fe,disabled:ne,className:oe("inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md border px-2.5 text-[12px] font-medium transition",ne?"cursor-not-allowed border-neutral-100 text-neutral-400 dark:border-neutral-900 dark:text-neutral-600":"border-neutral-200 bg-white text-neutral-700 hover:bg-neutral-50 dark:border-neutral-800 dark:bg-neutral-950 dark:text-neutral-200 dark:hover:bg-neutral-900"),children:[o.jsx(cr,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:r("skillsTab.pickFolder",{defaultValue:"Pick folder…"})})]}),o.jsxs("button",{type:"button",onClick:ce,disabled:!a.trim()||le||ne,className:oe("inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md border px-2.5 text-[12px] font-medium transition",!a.trim()||le||ne?"cursor-not-allowed border-neutral-100 text-neutral-400 dark:border-neutral-900 dark:text-neutral-600":"border-neutral-200 bg-white text-neutral-700 hover:bg-neutral-50 dark:border-neutral-800 dark:bg-neutral-950 dark:text-neutral-200 dark:hover:bg-neutral-900"),children:[le?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):o.jsx(F8,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:le?r("skillsTab.scanning",{defaultValue:"Scanning…"}):r("skillsTab.scan",{defaultValue:"Scan"})})]}),o.jsx("input",{ref:C,type:"file",webkitdirectory:"",directory:"",multiple:!0,onChange:ge,className:"hidden"}),o.jsx("input",{type:"text",value:a,onChange:X=>{i(X.target.value),s&&l(null),ne&&xe()},placeholder:"~/code/my-skill",spellCheck:!1,autoCapitalize:"off",autoCorrect:"off",disabled:s!==null||ne,className:oe("h-8 flex-1 rounded-md border bg-white px-2 font-mono text-[12px] outline-none focus:border-neutral-400 dark:bg-neutral-950 dark:focus:border-neutral-600",s||ne?"cursor-not-allowed border-neutral-100 text-neutral-400 dark:border-neutral-900 dark:text-neutral-600":"border-neutral-200 dark:border-neutral-800")})]}),s?o.jsxs("div",{className:"mt-2 flex items-center gap-2 rounded-md bg-neutral-100 px-2.5 py-1.5 text-[12px] dark:bg-neutral-900",children:[o.jsx(cr,{className:"h-3.5 w-3.5 shrink-0 text-amber-500",strokeWidth:1.75}),o.jsxs("div",{className:"min-w-0 flex-1 truncate",children:[o.jsx("span",{className:"font-medium",children:s.rootName}),o.jsxs("span",{className:"ml-2 text-neutral-500 dark:text-neutral-400",children:[s.files.length," ",r("skillsTab.files",{defaultValue:"files"})," ·"," ",Zb(s.manifest.reduce((X,ae)=>X+ae.size,0))]})]}),o.jsx("button",{type:"button",onClick:me,className:"inline-flex h-5 w-5 shrink-0 items-center justify-center rounded text-neutral-500 hover:bg-neutral-200 dark:text-neutral-400 dark:hover:bg-neutral-800",children:o.jsx(Nr,{className:"h-3 w-3",strokeWidth:1.75})})]}):null]}),ne?o.jsxs("div",{className:"mt-3 rounded-md border border-neutral-200 dark:border-neutral-800",children:[o.jsxs("div",{className:"flex items-center gap-2 border-b border-neutral-200 px-3 py-2 dark:border-neutral-800",children:[o.jsx(cr,{className:"h-3.5 w-3.5 shrink-0 text-amber-500",strokeWidth:1.75}),o.jsx("span",{className:"min-w-0 flex-1 truncate text-[12px] font-medium",children:M}),o.jsx("span",{className:"text-[11px] text-neutral-500 dark:text-neutral-400",children:r("skillsTab.foundSkills",{defaultValue:"Found {{count}} skills in {{total}} subfolders",count:de.length,total:I.length})}),o.jsx("button",{type:"button",onClick:xe,disabled:U,className:"inline-flex h-5 w-5 shrink-0 items-center justify-center rounded text-neutral-500 hover:bg-neutral-200 dark:text-neutral-400 dark:hover:bg-neutral-800 disabled:opacity-40",children:o.jsx(Nr,{className:"h-3 w-3",strokeWidth:1.75})})]}),de.length===0?o.jsx("div",{className:"px-3 py-4 text-center text-[12px] text-neutral-500 dark:text-neutral-400",children:r("skillsTab.noSkillsFound",{defaultValue:"No skills found in this folder."})}):o.jsxs(o.Fragment,{children:[!V&&o.jsx("div",{className:"border-b border-neutral-100 px-3 py-1.5 dark:border-neutral-900",children:o.jsxs("label",{className:"flex cursor-pointer items-center gap-2 text-[12px]",children:[o.jsx("input",{type:"checkbox",checked:de.every(X=>B.has(X.folderName)),onChange:Te,disabled:U}),o.jsx("span",{className:"font-medium",children:r("skillsTab.selectAll",{defaultValue:"Select All ({{count}})",count:de.length})})]})}),U&&o.jsx("div",{className:"border-b border-neutral-100 px-3 py-1.5 text-[11px] text-neutral-500 dark:border-neutral-900 dark:text-neutral-400",children:r("skillsTab.batchProgress",{defaultValue:"Importing {{current}}/{{total}}…",current:Array.from(A.values()).filter(X=>X.status==="success"||X.status==="error").length,total:Se})}),V&&o.jsx("div",{className:"border-b border-neutral-100 px-3 py-1.5 text-[11px] font-medium dark:border-neutral-900",children:r("skillsTab.batchComplete",{defaultValue:"Batch import complete: {{success}} succeeded, {{failed}} failed",success:Array.from(A.values()).filter(X=>X.status==="success").length,failed:Array.from(A.values()).filter(X=>X.status==="error").length})}),o.jsx("div",{className:"max-h-[240px] overflow-y-auto",children:I.map(X=>{const ae=A.get(X.folderName),te=X.hasSkillMd,J=B.has(X.folderName);return o.jsxs("div",{className:oe("flex items-start gap-2 border-b border-neutral-50 px-3 py-2 last:border-b-0 dark:border-neutral-900/50",!te&&"opacity-40"),children:[te&&!V?o.jsx("input",{type:"checkbox",checked:J,onChange:()=>Ne(X.folderName),disabled:U,className:"mt-0.5 shrink-0"}):ae?o.jsxs("span",{className:"mt-0.5 shrink-0",children:[ae.status==="success"&&o.jsx(vr,{className:"h-3.5 w-3.5 text-emerald-600 dark:text-emerald-500",strokeWidth:1.75}),ae.status==="error"&&o.jsx(ni,{className:"h-3.5 w-3.5 text-red-600 dark:text-red-500",strokeWidth:1.75}),ae.status==="importing"&&o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin text-neutral-400",strokeWidth:1.75}),ae.status==="pending"&&o.jsx("div",{className:"h-3.5 w-3.5"})]}):te?null:o.jsx("div",{className:"mt-0.5 h-3.5 w-3.5 shrink-0"}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsxs("div",{className:"flex items-center gap-1.5",children:[o.jsx(cr,{className:oe("h-3 w-3 shrink-0",te?"text-amber-500":"text-neutral-300 dark:text-neutral-700"),strokeWidth:1.75}),o.jsx("span",{className:oe("truncate text-[12px]",te?"font-medium":"text-neutral-400 dark:text-neutral-600"),children:X.folderName}),!te&&o.jsxs("span",{className:"shrink-0 text-[11px] text-neutral-400 dark:text-neutral-600",children:["(",r("skillsTab.noSkillMd",{defaultValue:"No SKILL.md"}),")"]})]}),te&&(X.name||X.description)&&o.jsxs("div",{className:"mt-0.5 truncate text-[11px] text-neutral-500 dark:text-neutral-400",children:[X.name&&o.jsx("span",{className:"font-medium",children:X.name}),X.name&&X.description&&o.jsx("span",{children:" — "}),X.description&&o.jsx("span",{children:X.description})]}),te&&o.jsxs("div",{className:"mt-0.5 text-[11px] text-neutral-400 dark:text-neutral-500",children:[X.fileCount," ",r("skillsTab.files",{defaultValue:"files"})," · ",Zb(X.totalSize)]}),ae?.status==="error"&&ae.error&&o.jsx("div",{className:"mt-0.5 truncate text-[11px] text-red-600 dark:text-red-400",children:ae.error})]})]},X.folderName)})})]}),de.length>0&&!V&&o.jsx("div",{className:"border-t border-neutral-200 px-3 py-2 dark:border-neutral-800",children:o.jsxs("div",{className:"flex items-center justify-between gap-3",children:[o.jsx(kc,{scope:m,onChange:f,projectAvailable:e,t:r}),o.jsxs("label",{className:"flex cursor-pointer items-center gap-2 text-[12px]",children:[o.jsx("input",{type:"checkbox",checked:x,onChange:X=>k(X.target.checked),disabled:U}),o.jsx("span",{children:r("skillsTab.importForce",{defaultValue:"Overwrite if exists"})})]})]})})]}):o.jsxs(o.Fragment,{children:[o.jsx(Za,{label:r("skillsTab.importSlug",{defaultValue:"Slug (target folder name)"}),hint:r("skillsTab.importSlugHint",{defaultValue:"Defaults to the source folder name. Edit to override."}),children:o.jsx("input",{type:"text",value:c,onChange:X=>{u(X.target.value),p(!0)},placeholder:"my-skill",className:oe("h-8 w-full rounded-md border bg-white px-2 font-mono text-[12px] outline-none dark:bg-neutral-950",he?"border-neutral-200 focus:border-neutral-400 dark:border-neutral-800 dark:focus:border-neutral-600":"border-red-300 dark:border-red-800")})}),o.jsx(Za,{label:r("skillsTab.importMode",{defaultValue:"Import mode"}),children:o.jsxs("div",{className:"flex flex-col gap-1.5 text-[12px]",children:[o.jsxs("label",{className:"flex cursor-pointer items-start gap-2",children:[o.jsx("input",{type:"radio",name:"import-mode",checked:g==="copy",onChange:()=>b("copy"),className:"mt-0.5"}),o.jsxs("span",{children:[o.jsx("span",{className:"font-medium",children:r("skillsTab.importModeCopy",{defaultValue:"Copy"})}),o.jsx("span",{className:"ml-1 text-neutral-500 dark:text-neutral-400",children:r("skillsTab.importModeCopyHint",{defaultValue:"— independent copy, edits live in the skills folder."})})]})]}),o.jsxs("label",{className:oe("flex items-start gap-2",s?"cursor-not-allowed opacity-50":"cursor-pointer"),children:[o.jsx("input",{type:"radio",name:"import-mode",checked:g==="symlink",disabled:s!==null,onChange:()=>b("symlink"),className:"mt-0.5"}),o.jsxs("span",{children:[o.jsx("span",{className:"font-medium",children:r("skillsTab.importModeSymlink",{defaultValue:"Symlink"})}),o.jsx("span",{className:"ml-1 text-neutral-500 dark:text-neutral-400",children:s?r("skillsTab.symlinkUnavailable",{defaultValue:"— unavailable for picker uploads (no source path on disk)."}):r("skillsTab.importModeSymlinkHint",{defaultValue:"— edits in the source folder propagate live; deleting the source breaks the skill."})})]})]})]})}),o.jsx(gle,{result:w,validating:j,t:r}),o.jsxs("div",{className:"mt-4 flex items-center justify-between gap-3",children:[o.jsx(kc,{scope:m,onChange:f,projectAvailable:e,t:r}),o.jsxs("label",{className:"flex cursor-pointer items-center gap-2 text-[12px]",children:[o.jsx("input",{type:"checkbox",checked:x,onChange:X=>k(X.target.checked)}),o.jsx("span",{children:r("skillsTab.importForce",{defaultValue:"Overwrite if exists"})})]})]})]}),E?o.jsx("div",{className:"mt-3 rounded-md border border-red-200 bg-red-50 px-3 py-2 text-[12px] text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:E}):null]}),o.jsx("div",{className:"flex shrink-0 items-center justify-end gap-2 border-t border-neutral-200 px-5 py-3 dark:border-neutral-800",children:ne?V?o.jsxs("button",{type:"button",onClick:()=>{xe(),n({slug:"",name:"",scope:m})},className:"inline-flex h-8 items-center gap-1.5 rounded-md bg-neutral-900 px-3 text-[12px] font-medium text-white transition hover:bg-neutral-700 dark:bg-neutral-100 dark:text-neutral-900 dark:hover:bg-neutral-300",children:[o.jsx(vr,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:r("skillsTab.batchDone",{defaultValue:"Done"})})]}):o.jsxs("button",{type:"button",onClick:Ge,disabled:Se===0||U,className:"inline-flex h-8 items-center gap-1.5 rounded-md bg-neutral-900 px-3 text-[12px] font-medium text-white transition hover:bg-neutral-700 disabled:opacity-40 dark:bg-neutral-100 dark:text-neutral-900 dark:hover:bg-neutral-300",children:[U?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):o.jsx(Lg,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:U?r("skillsTab.importing",{defaultValue:"Importing…"}):r("skillsTab.importNSkills",{defaultValue:"Import {{count}} skills",count:Se})})]}):o.jsxs("button",{type:"button",onClick:ee,disabled:!Me,className:"inline-flex h-8 items-center gap-1.5 rounded-md bg-neutral-900 px-3 text-[12px] font-medium text-white transition hover:bg-neutral-700 disabled:opacity-40 dark:bg-neutral-100 dark:text-neutral-900 dark:hover:bg-neutral-300",children:[y?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):o.jsx(Lg,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:y?r("skillsTab.importing",{defaultValue:"Importing…"}):r("skillsTab.importAction",{defaultValue:"Import skill"})})]})})]})}function gle({result:e,validating:t,t:n}){return!e&&!t?null:o.jsxs("div",{className:"mt-4 rounded-md border border-neutral-200 dark:border-neutral-800",children:[o.jsxs("div",{className:"flex items-center gap-2 border-b border-neutral-200 px-3 py-2 text-[12px] font-medium dark:border-neutral-800",children:[o.jsx(PO,{className:"h-3.5 w-3.5 text-neutral-500",strokeWidth:1.75}),o.jsx("span",{children:n("skillsTab.complianceCheck",{defaultValue:"Compliance check"})}),t?o.jsx(pt,{className:"ml-auto h-3.5 w-3.5 animate-spin text-neutral-400",strokeWidth:1.75}):e?.ok?o.jsx(vr,{className:"ml-auto h-3.5 w-3.5 text-emerald-600 dark:text-emerald-500",strokeWidth:1.75}):o.jsx(ni,{className:"ml-auto h-3.5 w-3.5 text-red-600 dark:text-red-500",strokeWidth:1.75})]}),o.jsxs("div",{className:"space-y-1.5 px-3 py-2 text-[12px]",children:[e?.stats?o.jsxs("div",{className:"flex items-center gap-3 text-neutral-500 dark:text-neutral-400",children:[o.jsxs("span",{children:[e.stats.fileCount," ",n("skillsTab.files",{defaultValue:"files"})]}),o.jsx("span",{children:"·"}),o.jsx("span",{children:Zb(e.stats.totalBytes)}),e.frontmatter&&e.frontmatter.name?o.jsxs(o.Fragment,{children:[o.jsx("span",{children:"·"}),o.jsxs("span",{className:"truncate",children:["name: ",o.jsx("span",{className:"font-mono",children:e.frontmatter.name})]})]}):null]}):null,e?.hardFails&&e.hardFails.length>0?o.jsx("ul",{className:"space-y-1",children:e.hardFails.map((r,a)=>o.jsxs("li",{className:"flex items-start gap-1.5 text-red-700 dark:text-red-400",children:[o.jsx(ni,{className:"mt-0.5 h-3 w-3 shrink-0",strokeWidth:2}),o.jsx("span",{children:r.message})]},`f${a}`))}):null,e?.warnings&&e.warnings.length>0?o.jsx("ul",{className:"space-y-1",children:e.warnings.map((r,a)=>o.jsxs("li",{className:"flex items-start gap-1.5 text-amber-700 dark:text-amber-400",children:[o.jsx(co,{className:"mt-0.5 h-3 w-3 shrink-0",strokeWidth:2}),o.jsx("span",{children:r.message})]},`w${a}`))}):null,e?.ok&&(!e.warnings||e.warnings.length===0)?o.jsxs("div",{className:"flex items-center gap-1.5 text-emerald-700 dark:text-emerald-400",children:[o.jsx(vr,{className:"h-3 w-3",strokeWidth:2}),o.jsx("span",{children:n("skillsTab.complianceClean",{defaultValue:"All checks passed."})})]}):null]})]})}function Zb(e){return!Number.isFinite(e)||e<=0?"0 B":e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`}function ble({projectAvailable:e,projectPath:t,onCreated:n,t:r}){const[a,i]=h.useState(""),[s,l]=h.useState(""),[c,u]=h.useState(""),[d,p]=h.useState(""),[m,f]=h.useState(e?"project":"user"),[g,b]=h.useState(!1),[x,k]=h.useState(null);h.useEffect(()=>{!e&&m==="project"&&f("user")},[e,m]);const y=/^[a-zA-Z0-9][a-zA-Z0-9._-]{0,99}$/.test(a),v=y&&(c.trim().length>0||d.trim().length>0),E=h.useCallback(async()=>{if(v){b(!0),k(null);try{const N=e?m:"user",w=await Un("/api/skills/create",{slug:a,name:s.trim()||a,description:c,body:d,scope:N,projectPath:N==="project"?t:null});n({slug:w.slug,name:w.skill?.name||w.slug,scope:w.scope})}catch(N){k(N.message)}finally{b(!1)}}},[v,a,s,c,d,e,m,t,n]);return o.jsxs("div",{className:"flex h-full flex-col",children:[o.jsxs("div",{className:"min-h-0 flex-1 overflow-y-auto px-5 py-4",children:[o.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[o.jsx(Za,{label:r("skillsTab.fieldSlug",{defaultValue:"Slug"}),hint:r("skillsTab.slugHint",{defaultValue:"Folder name, e.g. my-skill"}),children:o.jsx("input",{type:"text",value:a,onChange:N=>i(N.target.value),placeholder:"my-skill",className:oe("h-8 w-full rounded-md border bg-white px-2 font-mono text-[13px] outline-none dark:bg-neutral-950",y||!a?"border-neutral-200 focus:border-neutral-400 dark:border-neutral-800 dark:focus:border-neutral-600":"border-red-300 dark:border-red-800")})}),o.jsx(Za,{label:r("skillsTab.fieldName",{defaultValue:"Display name"}),children:o.jsx("input",{type:"text",value:s,onChange:N=>l(N.target.value),placeholder:a||r("skillsTab.fieldNamePlaceholder",{defaultValue:"Optional, defaults to slug"}),className:"h-8 w-full rounded-md border border-neutral-200 bg-white px-2 text-[13px] outline-none focus:border-neutral-400 dark:border-neutral-800 dark:bg-neutral-950 dark:focus:border-neutral-600"})})]}),o.jsx(Za,{label:r("skillsTab.fieldDescription",{defaultValue:"Description"}),hint:r("skillsTab.descHint",{defaultValue:"Shown in the slash menu — describe what this skill does and when to invoke it."}),children:o.jsx("textarea",{value:c,onChange:N=>u(N.target.value),rows:2,className:"w-full rounded-md border border-neutral-200 bg-white px-2 py-1.5 text-[13px] outline-none focus:border-neutral-400 dark:border-neutral-800 dark:bg-neutral-950 dark:focus:border-neutral-600"})}),o.jsx(Za,{label:r("skillsTab.fieldBody",{defaultValue:"Initial body (Markdown)"}),hint:r("skillsTab.bodyHint",{defaultValue:"Optional. Edit in detail later from the main view."}),children:o.jsx("textarea",{value:d,onChange:N=>p(N.target.value),rows:8,className:"w-full rounded-md border border-neutral-200 bg-white px-2 py-1.5 font-mono text-[12px] outline-none focus:border-neutral-400 dark:border-neutral-800 dark:bg-neutral-950 dark:focus:border-neutral-600",placeholder:`# My Skill + +Describe what this skill does...`})}),o.jsx("div",{className:"mt-3",children:o.jsx(kc,{scope:m,onChange:f,projectAvailable:e,t:r})}),x?o.jsx("div",{className:"mt-3 rounded-md border border-red-200 bg-red-50 px-3 py-2 text-[12px] text-red-700 dark:border-red-900 dark:bg-red-950/30 dark:text-red-300",children:x}):null]}),o.jsx("div",{className:"flex shrink-0 items-center justify-end gap-2 border-t border-neutral-200 px-5 py-3 dark:border-neutral-800",children:o.jsxs("button",{type:"button",onClick:E,disabled:!v||g,className:"inline-flex h-8 items-center gap-1.5 rounded-md bg-neutral-900 px-3 text-[12px] font-medium text-white transition hover:bg-neutral-700 disabled:opacity-40 dark:bg-neutral-100 dark:text-neutral-900 dark:hover:bg-neutral-300",children:[g?o.jsx(pt,{className:"h-3.5 w-3.5 animate-spin",strokeWidth:1.75}):o.jsx(Qt,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:g?r("skillsTab.creating",{defaultValue:"Creating…"}):r("skillsTab.create",{defaultValue:"Create skill"})})]})})]})}function Za({label:e,hint:t,children:n}){return o.jsxs("div",{className:"mt-3",children:[o.jsx("label",{className:"mb-1 block text-[12px] font-medium text-neutral-700 dark:text-neutral-300",children:e}),n,t?o.jsx("p",{className:"mt-1 text-xxs text-neutral-500 dark:text-neutral-400",children:t}):null]})}const q5=460,Sl=320,Ng=280,xle=300;async function H5(e){try{return await e.json()}catch{return null}}function yle({projects:e,selectedProject:t,selectedSession:n,activeTab:r,setActiveTab:a,ws:i,sendMessage:s,latestMessage:l,isMobile:c,onMenuClick:u,isLoading:d,onInputFocusChange:p,onSessionActive:m,onSessionInactive:f,onSessionProcessing:g,onSessionNotProcessing:b,onSessionActivityBump:x,processingSessions:k,onReplaceTemporarySession:y,onNavigateToSession:v,onStartNewSession:E,onSelectSession:N,onShowSettings:w,onSelectProjectByName:T,externalMessageUpdate:j}){const{i18n:_}=Je(),{preferences:C}=JT(),{autoExpandTools:O,showRawParameters:I,showThinking:z,autoScrollToBottom:M,sendByCtrlEnter:P}=C,{currentProject:B,setCurrentProject:$}=jT(),{tasksEnabled:U,isTaskMasterInstalled:q}=DT(),A=h.useRef(null),[K,V]=h.useState(null),L=!!(U&&q),{editingFile:le,editorWidth:re,editorExpanded:ne,hasManualWidth:de,resizeHandleRef:Se,handleFileOpen:he,handleCloseEditor:tt,handleToggleEditorExpand:Me,handleResizeStart:Fe}=Rse({selectedProject:t,isMobile:c});h.useEffect(()=>{const te=t?.name,J=B?.name;t&&te!==J&&$?.(t)},[t,B?.name,$]),h.useEffect(()=>{!L&&r==="tasks"&&a("chat")},[L,r,a]);const ge=h.useCallback(()=>{window.refreshProjects&&window.refreshProjects()},[]),me=h.useCallback(te=>{te&&typeof te=="object"&&"type"in te&&["claude-command","cursor-command","codex-command","gemini-command","pilotdeck-command"].includes(String(te.type))&&(A.current=new Date().toISOString()),s(te)},[s]),xe=h.useCallback(()=>{const te=e.filter(J=>J.alwaysOn?.discovery?.triggerEnabled===!0);!t&&te.length===0||Voe(s,{selectedProject:t,alwaysOnProjects:te,processingSessionIds:Array.from(k),lastUserMsgAt:A.current})},[k,e,t,s]);h.useEffect(()=>{const te=e.some(H=>H.alwaysOn?.discovery?.triggerEnabled===!0);if(!i||!t&&!te)return;xe();const J=window.setInterval(xe,3e4);return()=>{window.clearInterval(J),Woe(s)}},[e,xe,t,s,i]);const ce=h.useCallback(async(te,J)=>{const H=await dt.applyWorkCycle(te,J),G=await H5(H);if(!H.ok||!G){const Z=typeof G?.error=="string"?G.error:G?.error?.message;throw new Error(Z||"Failed to queue discovery plan apply")}if(G.error){const Z=typeof G.error=="string"?G.error:G.error.message;throw new Error(Z)}ge()},[ge]),Ne=h.useCallback((te,J=2400)=>{V(te),te&&window.setTimeout(()=>V(null),J)},[]),Te=h.useCallback(te=>te.sessions??[],[]),Ge=h.useCallback((te,J)=>Te(te).find(H=>H.id===J),[Te]),ee=h.useCallback(async(te,J)=>{const H=await dt.sessions(te,Number.MAX_SAFE_INTEGER,0);return H.ok?(await H5(H))?.sessions?.find(Z=>Z.id===J)??null:null},[]),X=h.useCallback(async te=>{if(!t)return;const J=_.t("alwaysOn:sessionMissing",{defaultValue:"This chat record no longer exists."});if(te.kind==="origin"){const Z=te.projectName||t.name,ue=te.projectName&&te.projectName!==t.name?e.find(ze=>ze.name===te.projectName)??t:t,be=Ge(ue,te.sessionId)??await ee(Z,te.sessionId);if(!be){Ne({kind:"error",text:J});return}const Ae={...be,__projectName:Z};if(a("chat"),N){N(ue,te.sessionId,Ae);return}v(te.sessionId);return}const H=Ge(t,te.sessionId)??await ee(t.name,te.sessionId);if(!H){Ne({kind:"error",text:J});return}const G={...H,id:te.sessionId,title:te.title||H.title||H.summary||te.summary,summary:te.summary||H.summary||H.title||te.title,lastActivity:te.lastActivity||H.lastActivity,sessionKind:"background_task",parentSessionId:te.parentSessionId,relativeTranscriptPath:te.relativeTranscriptPath,transcriptKey:te.transcriptKey||H.transcriptKey,taskId:te.taskId||H.taskId,taskStatus:te.taskStatus||H.taskStatus,outputFile:te.outputFile||H.outputFile,isReadOnly:!0,__projectName:t.name};if(a("chat"),N){N(t,te.sessionId,G);return}v(te.sessionId)},[Ge,Ne,_,ee,v,N,e,t,a]),ae=h.useCallback((te,J,H)=>{const Z=`always-on/execute:project=${te}:run=${J}`.replace(/[\\/]+/g,"-").replace(/^-+|-+$/g,"")||"session";X({kind:"origin",sessionId:Z,projectName:H})},[X]);return d?o.jsx(U5,{mode:"loading",isMobile:c,onMenuClick:u}):!t&&r!=="dashboard"?o.jsx(U5,{mode:"empty",isMobile:c,onMenuClick:u}):o.jsxs("div",{className:"relative flex h-full flex-col bg-white text-neutral-900 dark:bg-neutral-950 dark:text-neutral-100",children:[o.jsxs("div",{className:"flex min-h-0 flex-1 overflow-hidden",children:[o.jsx(vle,{projects:e,selectedProject:t,selectedSession:n,activeTab:r,shouldShowTasksTab:L,tasksEnabled:U,setActiveTab:a,ws:i,sendMessage:me,latestMessage:l,handleFileOpen:he,onInputFocusChange:p,onSessionActive:m,onSessionInactive:f,onSessionProcessing:g,onSessionNotProcessing:b,onSessionActivityBump:x,processingSessions:k,onReplaceTemporarySession:y,onNavigateToSession:v,onShowSettings:w,externalMessageUpdate:j,autoExpandTools:O,showRawParameters:I,showThinking:z,autoScrollToBottom:M,sendByCtrlEnter:P,applyAndLaunchCycle:ce,handleOpenExecutionSession:ae,editorExpanded:ne,hasEditor:le!==null,onSelectProjectByName:T}),t&&o.jsx(Goe,{editingFile:le,isMobile:c,editorExpanded:ne,editorWidth:re,hasManualWidth:de,resizeHandleRef:Se,onResizeStart:Fe,onCloseEditor:tt,onToggleEditorExpand:Me,projectPath:t.path,fillSpace:r==="files"})]}),K?o.jsx("div",{className:oe("pointer-events-none absolute bottom-4 left-1/2 z-50 -translate-x-1/2 rounded-md px-3 py-1.5 text-[12px] shadow-lg",K.kind==="error"&&"bg-red-600 text-white",K.kind==="info"&&"bg-neutral-800 text-white"),children:K.text}):null]})}function vle(e){const{projects:t,selectedProject:n,selectedSession:r,activeTab:a,shouldShowTasksTab:i,tasksEnabled:s,setActiveTab:l,ws:c,sendMessage:u,latestMessage:d,handleFileOpen:p,onInputFocusChange:m,onSessionActive:f,onSessionInactive:g,onSessionProcessing:b,onSessionNotProcessing:x,onSessionActivityBump:k,processingSessions:y,onReplaceTemporarySession:v,onNavigateToSession:E,onShowSettings:N,externalMessageUpdate:w,autoExpandTools:T,showRawParameters:j,showThinking:_,autoScrollToBottom:C,sendByCtrlEnter:O,applyAndLaunchCycle:I,handleOpenExecutionSession:z,editorExpanded:M,hasEditor:P,onSelectProjectByName:B}=e,$=typeof a=="string"&&a.startsWith("plugin:"),q=new Set(["shell","git","always-on","dashboard","memory","skills","tasks"]).has(a)||$,A=a==="tasks"&&i,K=a==="files",V=h.useRef(null),[L,le]=h.useState(q5),[re,ne]=h.useState(!1),de=h.useCallback((Fe,ge)=>{const me=Math.max(Sl,ge-Ng);return Math.min(Math.max(Fe,Sl),me)},[]);h.useEffect(()=>{if(!K)return;const Fe=V.current;if(!Fe)return;const ge=Fe.getBoundingClientRect().width;le(P?q5:Math.max(Sl,ge-xle))},[P,K]);const Se=h.useCallback(Fe=>{K&&(ne(!0),Fe.preventDefault())},[K]);h.useEffect(()=>{if(!re)return;const Fe=me=>{const xe=V.current;if(!xe)return;const ce=xe.getBoundingClientRect();le(de(me.clientX-ce.left,ce.width))},ge=()=>{ne(!1)};return document.addEventListener("mousemove",Fe),document.addEventListener("mouseup",ge),document.body.style.cursor="col-resize",document.body.style.userSelect="none",()=>{document.removeEventListener("mousemove",Fe),document.removeEventListener("mouseup",ge),document.body.style.cursor="",document.body.style.userSelect=""}},[de,re]);const he=()=>a==="shell"?o.jsx(ase,{selectedProject:n,selectedSession:r,isActive:!0}):a==="git"?o.jsx(pse,{selectedProject:n,onFileOpen:p}):a==="always-on"?o.jsx(wie,{selectedProject:n,onApplyWorkCycle:I,onOpenExecutionSession:z}):a==="dashboard"?o.jsx(vse,{projectFilter:n?.name,projectFullPath:n?.fullPath,onSelectProject:B}):a==="memory"?o.jsx(ale,{selectedProject:n}):a==="skills"?o.jsx(ole,{selectedProject:n,projects:t}):A?o.jsx(Ise,{isVisible:!0}):$?o.jsx(mse,{pluginName:a.replace("plugin:",""),selectedProject:n,selectedSession:r}):null,tt=q&&(a!=="tasks"||i),Me=!tt;return o.jsxs("div",{ref:K&&Me?V:void 0,className:oe("flex min-h-0 min-w-0 flex-1 overflow-hidden",M&&"hidden"),children:[tt&&o.jsx("div",{className:"flex h-full w-full min-w-0 flex-col overflow-hidden",children:he()}),o.jsx("div",{className:oe("flex min-h-0 min-w-0 flex-col",Me?K?"flex-shrink-0":"flex-1":"invisible absolute h-0 w-0 overflow-hidden"),style:Me&&K?{minWidth:`${Sl}px`,width:`min(${L}px, calc(100% - ${Ng}px))`}:void 0,"aria-hidden":!Me,children:o.jsx(Qoe,{showDetails:!0,children:o.jsx(nie,{selectedProject:n,selectedSession:r,ws:c,sendMessage:u,latestMessage:d,onFileOpen:p,onInputFocusChange:m,onSessionActive:f,onSessionInactive:g,onSessionProcessing:b,onSessionNotProcessing:x,onSessionActivityBump:k,processingSessions:y,onReplaceTemporarySession:v,onNavigateToSession:E,onShowSettings:N,autoExpandTools:T,showRawParameters:j,showThinking:_,autoScrollToBottom:C,sendByCtrlEnter:O,externalMessageUpdate:w,onShowAllTasks:s?()=>l("tasks"):null,forceWelcome:!1,onExitWelcome:()=>l("chat")})})}),K&&Me?o.jsxs(o.Fragment,{children:[o.jsxs("div",{onMouseDown:Se,className:"group relative z-10 w-px flex-shrink-0 cursor-col-resize bg-neutral-200 transition-colors hover:bg-neutral-400 dark:bg-neutral-800 dark:hover:bg-neutral-600",title:"Drag to resize",children:[o.jsx("div",{className:"absolute inset-y-0 left-1/2 w-3 -translate-x-1/2"}),o.jsx("div",{className:"absolute inset-y-0 left-1/2 w-0.5 -translate-x-1/2 bg-neutral-400 opacity-0 transition-opacity group-hover:opacity-100 dark:bg-neutral-600"})]}),o.jsx("div",{className:"flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden",style:{minWidth:`${Ng}px`},children:o.jsx(Tie,{selectedProject:n,onFileOpen:p,onClose:()=>l("chat")},n?.name??"")})]}):null]})}const kle=$n.memo(yle),G5=[{id:"chat",labelKey:"tabs.chat",icon:rx},{id:"files",labelKey:"tabs.files",icon:cr},{id:"skills",labelKey:"tabs.skills",icon:So},{id:"dashboard",labelKey:"tabs.dashboard",icon:xT},{id:"memory",labelKey:"tabs.memory",icon:ax},{id:"always-on",labelKey:"tabs.alwaysOn",icon:CO}],wle=15e3;function Sle(e){const{t}=Je(),{selectedProject:n,selectedSession:r,activeTab:a,setActiveTab:i,isSidebarCollapsed:s,onOpenSidebar:l}=e,c=n?.name??null,[u,d]=h.useState(null),[p,m]=h.useState(null);h.useEffect(()=>{a==="home"&&i("chat")},[a,i]),h.useEffect(()=>{if(!c){d(null),m(null);return}let y=!1;const v=async()=>{try{const N=await dt.projectDiscoveryPlans(c);if(!N.ok)return;const w=await N.json(),T=Array.isArray(w.plans)?w.plans.filter(j=>j.status==="ready").sort((j,_)=>_.updatedAt.localeCompare(j.updatedAt))[0]:null;y||d(T?`${T.updatedAt}:${T.id}`:null)}catch{}};v();const E=window.setInterval(()=>{v()},wle);return()=>{y=!0,window.clearInterval(E)}},[c]),h.useEffect(()=>{a==="always-on"&&u&&m(u)},[a,u]),sA();const f=a==="home"?"chat":a,g=G5.find(y=>y.id===f)?.labelKey,b=g?t(g):f.startsWith("plugin:")?f.replace("plugin:",""):f,x=r?nc(r):"",k=!!(u&&a!=="always-on"&&u!==p);return o.jsxs("div",{className:"flex h-full min-w-0 flex-col bg-white text-neutral-900 dark:bg-neutral-950 dark:text-neutral-100",children:[o.jsxs("header",{className:"flex h-12 shrink-0 items-center px-6",children:[s?o.jsx("button",{type:"button",onClick:l,"aria-label":t("sidebar:tooltips.showSidebar",{defaultValue:"Show sidebar"}),title:t("sidebar:tooltips.showSidebar",{defaultValue:"Show sidebar"}),className:"mr-4 inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-neutral-500 hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100",children:o.jsx(gO,{className:"h-4 w-4",strokeWidth:1.75})}):null,o.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2 text-[13px]",children:[o.jsx("span",{className:"shrink-0 text-neutral-500 dark:text-neutral-400",children:n?qa(n):t("home",{defaultValue:"Home"})}),o.jsx("span",{className:"shrink-0 text-neutral-400/60 dark:text-neutral-500/60",children:"/"}),o.jsx("span",{className:"shrink-0 font-medium",children:b}),x?o.jsx("span",{className:"ml-2 min-w-0 max-w-[28rem] truncate font-mono text-[11px] text-neutral-500 dark:text-neutral-400",title:x,children:x}):null]}),o.jsx("div",{role:"tablist","aria-label":"Tools",className:"scrollbar-thin ml-4 flex h-9 max-w-[70%] shrink-0 items-center gap-1 overflow-x-auto",children:G5.map(y=>{const v=y.icon,E=f===y.id;return o.jsxs("button",{type:"button",role:"tab","aria-selected":E,onClick:()=>i(y.id),className:oe("relative inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md px-2.5 text-[13px] transition-colors",E?"bg-neutral-100 font-medium text-neutral-900 dark:bg-neutral-800 dark:text-neutral-100":"text-neutral-500 hover:bg-neutral-100 hover:text-neutral-900 dark:text-neutral-400 dark:hover:bg-neutral-800 dark:hover:text-neutral-100"),children:[o.jsx(v,{className:"h-3.5 w-3.5",strokeWidth:1.75}),o.jsx("span",{children:t(y.labelKey)}),y.id==="always-on"&&k?o.jsx("span",{"aria-hidden":"true",className:"absolute right-1 top-1 h-2 w-2 rounded-full bg-blue-500 ring-2 ring-white dark:ring-neutral-950"}):null]},y.id)})})]}),o.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:o.jsx(kle,{...e})})]})}const Ele=tP,Cle=new Set(["websocket-reconnected","pending-permissions-response","session-status"]),Nle=new Set(["session_created","status","stream_end"]),Tle=e=>{if(!e||typeof e!="object")return null;const t=e,n=t.sessionId??t.session_id??t.actualSessionId??t.newSessionId;return typeof n=="string"&&n.trim()?n:null},Ale=e=>{if(!e||typeof e!="object")return!1;const t=e;return typeof t.kind=="string"?!Nle.has(t.kind):typeof t.type=="string"?!Cle.has(t.type):!1};function Ile(){const e=aT(),t=xu("/p/:projectName/c/:sessionId"),n=xu("/p/:projectName"),r=xu("/session/:sessionId"),a=t?.params.projectName??n?.params.projectName??void 0,i=t?.params.sessionId??r?.params.sessionId??void 0;Je("common");const{isMobile:s}=AD({trackPWA:!1}),[l,c]=h.useState(!0),{ws:u,sendMessage:d,latestMessage:p,isConnected:m,subscribe:f}=Rc(),g=h.useRef(!1),[b,x]=h.useState(()=>new Set),{activeSessions:k,processingSessions:y,markSessionAsActive:v,markSessionAsInactive:E,markSessionAsProcessing:N,markSessionAsNotProcessing:w,replaceTemporarySession:T}=ID(),{selectedProject:j,selectedSession:_,activeTab:C,sidebarOpen:O,isLoadingProjects:I,externalMessageUpdate:z,setActiveTab:M,setSelectedSession:P,setSidebarOpen:B,setIsInputFocused:$,setShowSettings:U,openSettings:q,refreshProjectsSilently:A,sidebarSharedProps:K,handleProjectSelect:V,handleSessionSelect:L,handleNewSession:le,handleDeselectProject:re,handleResetProjectSessionPreview:ne,setSelectedProject:de,loadMoreSessions:Se,loadingMoreProjectIds:he,bumpSessionActivity:tt,replaceOptimisticInProjects:Me,dropOptimisticInProjects:Fe}=PD({sessionId:i,navigate:e,latestMessage:p,isMobile:s,activeSessions:k});h.useEffect(()=>{if(!a||i||j?.name===a)return;const Ke=K.projects.find(Ue=>Ue.name===a);Ke&&(V(Ke),e(`/p/${encodeURIComponent(a)}`,{replace:!0}))},[a,i,j?.name,K.projects,V,e]);const ge=h.useRef(!1);h.useEffect(()=>{if(ge.current||I)return;if(j){ge.current=!0;return}if(a||i){ge.current=!0;return}if(K.projects.length===0)return;const Ue=K.projects.find(ht=>ht.name==="general"||ht.displayName==="general")??K.projects[0];V(Ue),e(`/p/${encodeURIComponent(Ue.name)}`,{replace:!0}),ge.current=!0},[I,j,a,i,K.projects,V,e]),h.useEffect(()=>(window.refreshProjects=A,()=>{window.refreshProjects===A&&delete window.refreshProjects}),[A]),h.useEffect(()=>(window.openSettings=q,()=>{window.openSettings===q&&delete window.openSettings}),[q]);const me=h.useCallback(Ke=>{const Ue=(Ke??"").trim();if(!Ue)return!1;const ht=K.projects,qe=ht.find(pe=>pe.name===Ue)??ht.find(pe=>pe.name.toLowerCase()===Ue.toLowerCase()||(pe.displayName??"").toLowerCase()===Ue.toLowerCase())??ht.find(pe=>pe.name.toLowerCase().includes(Ue.toLowerCase())||(pe.displayName??"").toLowerCase().includes(Ue.toLowerCase()));return qe?(V(qe),e(`/p/${encodeURIComponent(qe.name)}`),!0):!1},[V,e,K.projects]);h.useEffect(()=>(window.switchProject=me,()=>{window.switchProject===me&&delete window.switchProject}),[me]),h.useEffect(()=>{const Ke=_?.id;Ke&&x(Ue=>{if(!Ue.has(Ke))return Ue;const ht=new Set(Ue);return ht.delete(Ke),ht})},[_?.id]),h.useEffect(()=>f(Ke=>{if(!Ale(Ke))return;const Ue=Tle(Ke);!Ue||Ue===_?.id||x(ht=>{if(ht.has(Ue))return ht;const Pt=new Set(ht);return Pt.add(Ue),Pt})}),[_?.id,f]),h.useEffect(()=>{if(typeof navigator>"u"||!("serviceWorker"in navigator))return;const Ke=Ue=>{const ht=Ue.data;if(!(!ht||ht.type!=="notification:navigate")){if(M("chat"),B(!1),A(),typeof ht.sessionId=="string"&&ht.sessionId){e(`/session/${ht.sessionId}`);return}e("/")}};return navigator.serviceWorker.addEventListener("message",Ke),()=>{navigator.serviceWorker.removeEventListener("message",Ke)}},[e,A,M,B]),h.useEffect(()=>{m&&!g.current?g.current=!0:m||(g.current=!1),m&&_?.id&&d({type:"get-pending-permissions",sessionId:_.id})},[m,_?.id,d]);const xe=h.useCallback(()=>U(!0),[U]),ce=h.useCallback(()=>U(!1),[U]),Ne=h.useCallback(()=>B(!0),[B]),Te=h.useCallback(()=>{s?B(!1):c(!1)},[s,B]),Ge=h.useCallback(()=>c(!0),[]),[ee,X]=h.useState(!1),ae=h.useCallback(()=>X(!0),[]),te=h.useCallback(()=>X(!1),[]),J=h.useCallback(Ke=>{X(!1),A();const Ue=typeof Ke?.name=="string"?Ke.name:"";if(!Ue)return;le(Ke),e(`/p/${encodeURIComponent(Ue)}`),M("chat")},[le,e,A,M]),[H,G]=h.useState(null),[Z,ue]=h.useState(!1),[be,Ae]=h.useState(null),ze=h.useCallback(Ke=>{Ae(null),G(Ke)},[]),Le=h.useCallback(()=>{Z||(G(null),Ae(null))},[Z]),ke=h.useCallback(async()=>{if(!H)return;const Ke=H;ue(!0),Ae(null);try{const Ue=await dt.deleteProject(Ke.name,!0);if(!Ue.ok){const ht=await Ue.json().catch(()=>({}));throw new Error(ht.error||`Failed (HTTP ${Ue.status})`)}K.onProjectDelete?.(Ke.name),await A(),G(null)}catch(Ue){Ae(Ue instanceof Error?Ue.message:"Failed to delete project")}finally{ue(!1)}},[H,A,K]),[We,Xe]=h.useState(null),[st,se]=h.useState(!1),[$e,Qe]=h.useState(null),ot=h.useCallback((Ke,Ue)=>{Qe(null),Xe({project:Ke,session:Ue})},[]),ie=h.useCallback(()=>{st||(Xe(null),Qe(null))},[st]),et=h.useCallback(async()=>{if(!We)return;const{project:Ke,session:Ue}=We;se(!0),Qe(null);try{const ht=ri(Ue)?await dt.deleteSession(Ke.name,Ue.id,px(Ue)):await dt.deleteSession(Ke.name,Ue.id);if(!ht.ok){const Pt=await ht.json().catch(()=>({}));throw new Error(Pt.error||`Failed (HTTP ${ht.status})`)}K.onSessionDelete?.(Ue.id),x(Pt=>{if(!Pt.has(Ue.id))return Pt;const cn=new Set(Pt);return cn.delete(Ue.id),cn}),iA(Ue.id,null),await A(),Xe(null)}catch(ht){Qe(ht instanceof Error?ht.message:"Failed to delete conversation")}finally{se(!1)}},[We,A,K]),at=h.useCallback(Ke=>{V(Ke),e(`/p/${encodeURIComponent(Ke.name)}`)},[V,e]),Ct=h.useCallback((Ke,Ue,ht)=>{x(cn=>{if(!cn.has(Ue))return cn;const Ce=new Set(cn);return Ce.delete(Ue),Ce}),Ke.name!==j?.name&&V(Ke);const Pt=(Ke.sessions??[]).find(cn=>cn.id===Ue);Pt?L(Pt):ht?L(ht):e(`/session/${Ue}`),M("chat")},[V,L,e,j?.name,M]),zt=h.useCallback(Ke=>{if(Ke==="home"){P(null);const Ue=j?`/p/${encodeURIComponent(j.name)}`:"/";window.location.pathname!==Ue&&e(Ue),M("chat");return}M(Ke)},[e,j,M,P]),tn=h.useCallback(Ke=>{Ke?(le(Ke),e(`/p/${encodeURIComponent(Ke.name)}`),M("chat")):j?(le(j),M("chat")):e("/")},[le,e,j,M]),gn=h.useCallback(Ke=>{T(Ke),Ke&&Me(Ke)},[T,Me]),_t=h.useCallback(Ke=>{E(Ke),Ke&&Fe(Ke)},[E,Fe]),hr=o.jsx(BP,{projects:K.projects,selectedProject:j,selectedSession:_,activeTab:C,isLoading:I,processingSessions:y,unreadSessionIds:b,onSelectProject:at,onSelectSession:Ct,onStartNewSession:tn,onCreateProject:ae,onRequestDeleteProject:ze,onRequestDeleteSession:ot,onShowSettings:xe,onDeselectProject:re,onResetProjectSessionPreview:ne,onCollapse:Te,onLoadMoreSessions:Se,loadingMoreProjectIds:he});return o.jsxs("div",{className:"ui-v2 fixed inset-0 flex bg-white font-sans text-neutral-900 dark:bg-neutral-950 dark:text-neutral-100",children:[s?o.jsxs("div",{className:`fixed inset-0 z-50 flex transition-opacity duration-150 ease-out ${O?"visible opacity-100":"invisible opacity-0"}`,children:[o.jsx("button",{type:"button",className:"fixed inset-0 bg-black/40 backdrop-blur-sm",onClick:()=>B(!1),"aria-label":"Close sidebar"}),o.jsx("div",{className:`relative h-full w-[85vw] max-w-sm transform transition-transform duration-150 ${O?"translate-x-0":"-translate-x-full"}`,onClick:Ke=>Ke.stopPropagation(),children:hr})]}):l?hr:null,o.jsx("main",{className:"flex min-w-0 flex-1 flex-col",children:o.jsx(Sle,{projects:K.projects,selectedProject:j,selectedSession:_,activeTab:C,setActiveTab:zt,ws:u,sendMessage:d,latestMessage:p,isMobile:s,onMenuClick:Ne,isLoading:I,onInputFocusChange:$,onSessionActive:v,onSessionInactive:_t,onSessionProcessing:N,onSessionNotProcessing:w,onSessionActivityBump:tt,processingSessions:y,onReplaceTemporarySession:gn,onNavigateToSession:Ke=>{P(Ue=>Ue?.id===Ke?Ue:{id:Ke}),e(`/session/${Ke}`)},onStartNewSession:le,onSelectSession:Ct,onShowSettings:xe,onSelectProjectByName:Ke=>{const Ue=K.projects.find(ht=>ht.name===Ke);Ue&&(de(Ue),P(null),M("dashboard"),e(`/p/${encodeURIComponent(Ue.name)}`))},isSidebarCollapsed:!s&&!l,onOpenSidebar:Ge,externalMessageUpdate:z})}),K.showSettings?$o.createPortal(o.jsx(Ele,{isOpen:K.showSettings,onClose:ce,projects:K.projects.map(TP),initialTab:K.settingsInitialTab||"appearance"}),document.body):null,ee?$o.createPortal(o.jsx(NP,{onClose:te,onProjectCreated:J}),document.body):null,H?$o.createPortal(o.jsx(Rle,{project:H,isDeleting:Z,error:be,onCancel:Le,onConfirm:ke}),document.body):null,We?$o.createPortal(o.jsx(_le,{target:We,isDeleting:st,error:$e,onCancel:ie,onConfirm:et}),document.body):null]})}function Rle({project:e,isDeleting:t,error:n,onCancel:r,onConfirm:a}){const i=e.sessions?.length??0,s=e.displayName||e.name;return o.jsx("div",{className:"fixed inset-0 z-[65] flex items-center justify-center bg-black/50 p-4 backdrop-blur-sm",children:o.jsxs("div",{className:"w-full max-w-md rounded-xl border border-border bg-card text-card-foreground shadow-xl",children:[o.jsxs("div",{className:"flex items-start gap-3 border-b border-border p-5",children:[o.jsx("div",{className:"flex h-9 w-9 flex-shrink-0 items-center justify-center rounded-lg bg-destructive/15 text-destructive",children:o.jsx(en,{className:"h-5 w-5",strokeWidth:1.75})}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("h3",{className:"text-base font-semibold text-foreground",children:"Delete project?"}),o.jsx("p",{className:"mt-1 break-all text-sm text-muted-foreground",children:o.jsx("span",{className:"font-mono text-xs",children:s})})]})]}),o.jsxs("div",{className:"space-y-3 p-5",children:[o.jsxs("p",{className:"text-sm text-foreground",children:["This removes the project from PilotDeck and deletes its session metadata.",i>0?o.jsxs(o.Fragment,{children:[" ",o.jsxs("span",{className:"font-medium",children:[i," session",i===1?"":"s"]})," ","will also be removed."]}):null]}),o.jsxs("p",{className:"text-xs text-muted-foreground",children:["Files on disk are ",o.jsx("span",{className:"font-medium text-foreground",children:"not"})," deleted — only PilotDeck's reference to them."]}),n?o.jsx("div",{className:"rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive",children:n}):null]}),o.jsxs("div",{className:"flex items-center justify-end gap-2 border-t border-border bg-muted/30 px-5 py-3",children:[o.jsx("button",{type:"button",onClick:r,disabled:t,className:"inline-flex h-9 items-center justify-center rounded-md border border-border bg-background px-3 text-sm font-medium text-foreground hover:bg-accent disabled:opacity-50",children:"Cancel"}),o.jsxs("button",{type:"button",onClick:a,disabled:t,className:"inline-flex h-9 items-center justify-center gap-2 rounded-md bg-destructive px-3 text-sm font-medium text-destructive-foreground hover:bg-destructive/90 disabled:opacity-60",children:[t?o.jsx(pt,{className:"h-4 w-4 animate-spin"}):o.jsx(en,{className:"h-4 w-4",strokeWidth:1.75}),t?"Deleting…":"Delete project"]})]})]})})}function _le({target:e,isDeleting:t,error:n,onCancel:r,onConfirm:a}){const i=e.project.displayName||e.project.name,s=nc(e.session);return o.jsx("div",{className:"fixed inset-0 z-[65] flex items-center justify-center bg-black/50 p-4 backdrop-blur-sm",children:o.jsxs("div",{className:"w-full max-w-md rounded-xl border border-border bg-card text-card-foreground shadow-xl",children:[o.jsxs("div",{className:"flex items-start gap-3 border-b border-border p-5",children:[o.jsx("div",{className:"flex h-9 w-9 flex-shrink-0 items-center justify-center rounded-lg bg-destructive/15 text-destructive",children:o.jsx(en,{className:"h-5 w-5",strokeWidth:1.75})}),o.jsxs("div",{className:"min-w-0 flex-1",children:[o.jsx("h3",{className:"text-base font-semibold text-foreground",children:"Delete conversation?"}),o.jsx("p",{className:"mt-1 truncate text-sm text-muted-foreground",children:s})]})]}),o.jsxs("div",{className:"space-y-3 p-5",children:[o.jsxs("p",{className:"text-sm text-foreground",children:["This removes the conversation from ",o.jsx("span",{className:"font-medium",children:i}),"."]}),n?o.jsx("div",{className:"rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive",children:n}):null]}),o.jsxs("div",{className:"flex items-center justify-end gap-2 border-t border-border bg-muted/30 px-5 py-3",children:[o.jsx("button",{type:"button",onClick:r,disabled:t,className:"inline-flex h-9 items-center justify-center rounded-md border border-border bg-background px-3 text-sm font-medium text-foreground hover:bg-accent disabled:opacity-50",children:"Cancel"}),o.jsxs("button",{type:"button",onClick:a,disabled:t,className:"inline-flex h-9 items-center justify-center gap-2 rounded-md bg-destructive px-3 text-sm font-medium text-destructive-foreground hover:bg-destructive/90 disabled:opacity-60",children:[t?o.jsx(pt,{className:"h-4 w-4 animate-spin"}):o.jsx(en,{className:"h-4 w-4",strokeWidth:1.75}),t?"Deleting…":"Delete conversation"]})]})]})})}const{slice:jle,forEach:Ole}=[];function Dle(e){return Ole.call(jle.call(arguments,1),t=>{if(t)for(const n in t)e[n]===void 0&&(e[n]=t[n])}),e}function Mle(e){return typeof e!="string"?!1:[/<\s*script.*?>/i,/<\s*\/\s*script\s*>/i,/<\s*img.*?on\w+\s*=/i,/<\s*\w+\s*on\w+\s*=.*?>/i,/javascript\s*:/i,/vbscript\s*:/i,/expression\s*\(/i,/eval\s*\(/i,/alert\s*\(/i,/document\.cookie/i,/document\.write\s*\(/i,/window\.location/i,/innerHTML/i].some(n=>n.test(e))}const V5=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Lle=function(e,t){const r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{path:"/"},a=encodeURIComponent(t);let i=`${e}=${a}`;if(r.maxAge>0){const s=r.maxAge-0;if(Number.isNaN(s))throw new Error("maxAge should be a Number");i+=`; Max-Age=${Math.floor(s)}`}if(r.domain){if(!V5.test(r.domain))throw new TypeError("option domain is invalid");i+=`; Domain=${r.domain}`}if(r.path){if(!V5.test(r.path))throw new TypeError("option path is invalid");i+=`; Path=${r.path}`}if(r.expires){if(typeof r.expires.toUTCString!="function")throw new TypeError("option expires is invalid");i+=`; Expires=${r.expires.toUTCString()}`}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.sameSite)switch(typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}return r.partitioned&&(i+="; Partitioned"),i},W5={create(e,t,n,r){let a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};n&&(a.expires=new Date,a.expires.setTime(a.expires.getTime()+n*60*1e3)),r&&(a.domain=r),document.cookie=Lle(e,t,a)},read(e){const t=`${e}=`,n=document.cookie.split(";");for(let r=0;r-1&&(r=window.location.hash.substring(window.location.hash.indexOf("?")));const i=r.substring(1).split("&");for(let s=0;s0&&i[s].substring(0,l)===t&&(n=i[s].substring(l+1))}}return n}},Ble={name:"hash",lookup(e){let{lookupHash:t,lookupFromHashIndex:n}=e,r;if(typeof window<"u"){const{hash:a}=window.location;if(a&&a.length>2){const i=a.substring(1);if(t){const s=i.split("&");for(let l=0;l0&&s[l].substring(0,c)===t&&(r=s[l].substring(c+1))}}if(r)return r;if(!r&&n>-1){const s=a.match(/\/([a-zA-Z-]*)/g);return Array.isArray(s)?s[typeof n=="number"?n:0]?.replace("/",""):void 0}}}return r}};let Ci=null;const K5=()=>{if(Ci!==null)return Ci;try{if(Ci=typeof window<"u"&&window.localStorage!==null,!Ci)return!1;const e="i18next.translate.boo";window.localStorage.setItem(e,"foo"),window.localStorage.removeItem(e)}catch{Ci=!1}return Ci};var $le={name:"localStorage",lookup(e){let{lookupLocalStorage:t}=e;if(t&&K5())return window.localStorage.getItem(t)||void 0},cacheUserLanguage(e,t){let{lookupLocalStorage:n}=t;n&&K5()&&window.localStorage.setItem(n,e)}};let Ni=null;const Y5=()=>{if(Ni!==null)return Ni;try{if(Ni=typeof window<"u"&&window.sessionStorage!==null,!Ni)return!1;const e="i18next.translate.boo";window.sessionStorage.setItem(e,"foo"),window.sessionStorage.removeItem(e)}catch{Ni=!1}return Ni};var Ule={name:"sessionStorage",lookup(e){let{lookupSessionStorage:t}=e;if(t&&Y5())return window.sessionStorage.getItem(t)||void 0},cacheUserLanguage(e,t){let{lookupSessionStorage:n}=t;n&&Y5()&&window.sessionStorage.setItem(n,e)}},zle={name:"navigator",lookup(e){const t=[];if(typeof navigator<"u"){const{languages:n,userLanguage:r,language:a}=navigator;if(n)for(let i=0;i0?t:void 0}},qle={name:"htmlTag",lookup(e){let{htmlTag:t}=e,n;const r=t||(typeof document<"u"?document.documentElement:null);return r&&typeof r.getAttribute=="function"&&(n=r.getAttribute("lang")),n}},Hle={name:"path",lookup(e){let{lookupFromPathIndex:t}=e;if(typeof window>"u")return;const n=window.location.pathname.match(/\/([a-zA-Z-]*)/g);return Array.isArray(n)?n[typeof t=="number"?t:0]?.replace("/",""):void 0}},Gle={name:"subdomain",lookup(e){let{lookupFromSubdomainIndex:t}=e;const n=typeof t=="number"?t+1:1,r=typeof window<"u"&&window.location?.hostname?.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(r)return r[n]}};let x7=!1;try{document.cookie,x7=!0}catch{}const y7=["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"];x7||y7.splice(1,1);const Vle=()=>({order:y7,lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:e=>e});class v7{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.type="languageDetector",this.detectors={},this.init(t,n)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{languageUtils:{}},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=t,this.options=Dle(n,this.options||{},Vle()),typeof this.options.convertDetectedLanguage=="string"&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=a=>a.replace("-","_")),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=r,this.addDetector(Ple),this.addDetector(Fle),this.addDetector($le),this.addDetector(Ule),this.addDetector(zle),this.addDetector(qle),this.addDetector(Hle),this.addDetector(Gle),this.addDetector(Ble)}addDetector(t){return this.detectors[t.name]=t,this}detect(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.order,n=[];return t.forEach(r=>{if(this.detectors[r]){let a=this.detectors[r].lookup(this.options);a&&typeof a=="string"&&(a=[a]),a&&(n=n.concat(a))}}),n=n.filter(r=>r!=null&&!Mle(r)).map(r=>this.options.convertDetectedLanguage(r)),this.services&&this.services.languageUtils&&this.services.languageUtils.getBestMatchFromCodes?n:n.length>0?n[0]:null}cacheUserLanguage(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.caches;n&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(t)>-1||n.forEach(r=>{this.detectors[r]&&this.detectors[r].cacheUserLanguage(t,this.options)}))}}v7.type="languageDetector";const Wle={save:"Save",cancel:"Cancel",delete:"Delete",create:"Create",edit:"Edit",close:"Close",confirm:"Confirm",submit:"Submit",retry:"Retry",refresh:"Refresh",search:"Search",clear:"Clear",copy:"Copy",download:"Download",upload:"Upload",browse:"Browse"},Kle={home:"Home",chat:"Agent",alwaysOn:"Always-On",shell:"Shell",files:"Files",git:"Source Control",tasks:"Tasks",dashboard:"Routing",memory:"Memory",skills:"Skills"},Yle={pickProject:"Open a project to manage its skills.",generalChat:"General chat — user-scope skills only",refresh:"Refresh",newSkill:"New",loading:"Loading…",empty:'No skills yet. Click "New" to install or create one.',selectHint:"Pick a skill on the left to view or edit its SKILL.md.",projectScope:"Project Skills",userScope:"User Skills",save:"Save",saving:"Saving…",savedSuccess:"Saved",delete:"Delete",deletedSuccess:"Deleted",revert:"Revert",confirmDelete:"Delete this skill? This will remove the entire folder.",discardUnsaved:"Discard unsaved changes?",newTitle:"New Skill",close:"Close",tabInstall:"Install from ClawHub",tabImport:"Import folder",tabCreate:"Write my own",importSource:"Source folder",importSourceHint:"Absolute path to a folder containing SKILL.md. Tilde (~) is expanded server-side.",importSourceHintBoth:"Pick a folder via the native dialog, or paste an absolute path. ~ is expanded server-side.",pickFolder:"Pick folder…",files:"files",complianceCheck:"Compliance check",complianceClean:"All checks passed.",symlinkUnavailable:"— unavailable for picker uploads (no source path on disk).",importSlug:"Slug (target folder name)",importSlugHint:"Defaults to the source folder name. Edit to override.",importMode:"Import mode",importModeCopy:"Copy",importModeCopyHint:"— independent copy, edits live in the skills folder.",importModeSymlink:"Symlink",importModeSymlinkHint:"— edits in the source folder propagate live; deleting the source breaks the skill.",importForce:"Overwrite if exists",importEnableForce:'Enable "Overwrite" to replace it.',importAction:"Import skill",importing:"Importing…",scan:"Scan",scanning:"Scanning…",foundSkills:"Found {{count}} skills in {{total}} subfolders",noSkillsFound:"No skills found in this folder.",selectAll:"Select All ({{count}})",importNSkills:"Import {{count}} skills",batchProgress:"Importing {{current}}/{{total}}…",batchComplete:"Batch import complete: {{success}} succeeded, {{failed}} failed",batchDone:"Done",noSkillMd:"No SKILL.md",alreadyExists:"already exists",scope:"Scope",scopeUser:"User",scopeProject:"Project",searchPlaceholder:"Search clawhub.com…",searchHint:"Type to search clawhub.com.",noResults:"No results.",install:"Install",installing:"Installing…",installForce:"Install (force)",installedSuccess:"Installed {{name}}",flaggedSuspicious:'"{{slug}}" is flagged as suspicious by VirusTotal. Click again to install with --force.',fieldSlug:"Slug",slugHint:"Folder name, e.g. my-skill",fieldName:"Display name",fieldNamePlaceholder:"Optional, defaults to slug",fieldDescription:"Description",descHint:"Shown in the slash menu — describe what this skill does and when to invoke it.",fieldBody:"Initial body (Markdown)",bodyHint:"Optional. Edit in detail later from the main view.",create:"Create skill",creating:"Creating…"},Xle="New session",Zle="Delete project",Jle={loading:"Loading...",success:"Success",error:"Error",failed:"Failed",pending:"Pending",completed:"Completed",inProgress:"In Progress"},Qle={savedSuccessfully:"Saved successfully",deletedSuccessfully:"Deleted successfully",updatedSuccessfully:"Updated successfully",operationFailed:"Operation failed",networkError:"Network error. Please check your connection.",unauthorized:"Unauthorized. Please log in.",notFound:"Not found",invalidInput:"Invalid input",requiredField:"This field is required",unknownError:"An unknown error occurred"},ece={settings:"Settings",home:"Home",back:"Back",next:"Next",previous:"Previous",logout:"Logout"},tce={language:"Language",theme:"Theme",darkMode:"Dark Mode",lightMode:"Light Mode",name:"Name",description:"Description",enabled:"Enabled",disabled:"Disabled",optional:"Optional",version:"Version",select:"Select",selectAll:"Select All",deselectAll:"Deselect All"},nce={justNow:"Just now",minutesAgo:"{{count}} mins ago",hoursAgo:"{{count}} hours ago",daysAgo:"{{count}} days ago",yesterday:"Yesterday"},rce={newFile:"New File",newFolder:"New Folder",rename:"Rename",move:"Move",copyPath:"Copy Path",openInEditor:"Open in Editor"},ace={loading:"Loading PilotDeck",settingUpWorkspace:"Setting up your workspace...",chooseProject:"Choose Your Project",selectProjectDescription:"Select a project from the sidebar to start coding with PilotDeck. Each project contains your chat sessions and file history.",tip:"Tip",createProjectMobile:"Tap the menu button above to access projects",createProjectDesktop:"Create a new project by clicking the folder icon in the sidebar",newSession:"New Session",untitledSession:"Untitled Session",projectFiles:"Project Files"},ice={title:"Always-On Overview",description:"Review discovery plans and scheduled cron jobs for the current project in one place.",lastUpdated:"Last updated: {{timestamp}}",loadingTitle:"Loading Always-On data",loadingDescription:"Reading discovery plans and scheduled tasks for the current project.",emptyTitle:"No scheduled tasks yet",emptyDescription:"This project does not currently have any visible durable cron jobs or session-scoped tasks.",summary:{total:"Total jobs",recurring:"Recurring jobs",failed:"Failed recently"},status:{draft:"Draft",ready:"Ready",queued:"Queued",scheduled:"Scheduled",running:"Running",completed:"Completed",failed:"Failed",superseded:"Superseded",unknown:"Unknown"},actions:{viewDetails:"View details for {{id}}",discoverTasks:"Discover tasks",runNow:"Run now"},flags:{durable:"Durable",sessionScoped:"Session",oneShot:"One-shot",recurring:"Recurring",manualOnly:"Manual only",permanent:"Permanent"},fields:{scope:"Scope",type:"Type",kind:"Kind",jobId:"Task ID",prompt:"Prompt",cron:"Cron schedule",status:"Status",createdAt:"Created",lastFiredAt:"Last fired",originSessionId:"Origin session",transcriptKey:"Transcript key",lastActivity:"Last activity",latestRunSummary:"Latest run summary",latestRunTaskId:"Latest run task ID",latestRunTranscript:"Latest run transcript",outputFile:"Output file"},detail:{title:"Task details",oneShotRunNowHint:"Run now executes this one-shot task immediately without changing the original scheduled trigger. It can still fire again at the scheduled time.",missingTitle:"Task no longer available",missingDescription:"This task may have been deleted or become unavailable since the overview was loaded.",noLatestRun:"This task does not have a recorded background run yet.",sections:{definition:"Task definition",latestRun:"Latest run"}},values:{notUpdated:"Not updated yet",notAvailable:"Not available"},confirmations:{delete:"Delete scheduled task {{id}}?"},feedback:{deleted:"Deleted scheduled task {{id}}.",runNowStarted:"Started {{id}} immediately.",alreadyRunning:"Task {{id}} is already running."},errors:{loadFailed:"Failed to load Always-On data.",deleteFailed:"Failed to delete cron job.",runNowFailed:"Failed to run cron job immediately."},discovery:{title:"Discovery plans",description:"Structured plans generated by Always-On discovery before execution.",emptyTitle:"No discovery plans yet",emptyDescription:"Run discovery to generate structured plans for follow-up work.",summary:{running:"Running plans"},actions:{viewDetails:"View details",openSession:"Open session",archive:"Archive"},fields:{title:"Title",summary:"Summary",rationale:"Rationale",updatedAt:"Updated",planFile:"Plan file",sourceSession:"Discovery session",executionSession:"Execution session",executionStartedAt:"Execution started",executionLastActivityAt:"Last activity",latestSummary:"Latest summary",contextRefsWorkingDirectory:"Workspace signals",contextRefsMemory:"Memory references",contextRefsPlans:"Related plans",contextRefsCron:"Related cron jobs",contextRefsChats:"Recent chats"},detail:{meta:"Plan metadata",plan:"Plan content",noContent:"This discovery plan does not have stored markdown content.",missingTitle:"Discovery plan no longer available",missingDescription:"This plan may have been updated or archived since the overview was loaded."},feedback:{executionQueued:"Queued discovery plan {{id}} for execution.",archived:"Archived discovery plan {{id}}."},errors:{executeFailed:"Failed to execute discovery plan.",archiveFailed:"Failed to archive discovery plan."}},cron:{title:"Scheduled cron jobs",description:"Existing durable and session-scoped cron tasks for this project."}},sce={loading:"Loading files...",files:"Files",simpleView:"Simple view",compactView:"Compact view",detailedView:"Detailed view",searchPlaceholder:"Search files and folders...",clearSearch:"Clear search",name:"Name",size:"Size",modified:"Modified",permissions:"Permissions",noFilesFound:"No files found",checkProjectPath:"Check if the project path is accessible",noMatchesFound:"No matches found",tryDifferentSearch:"Try a different search term or clear the search",justNow:"just now",minAgo:"{{count}} min ago",hoursAgo:"{{count}} hours ago",daysAgo:"{{count}} days ago",newFile:"New File (Cmd+N)",newFolder:"New Folder (Cmd+Shift+N)",refresh:"Refresh",collapseAll:"Collapse All",context:{rename:"Rename",delete:"Delete",copyPath:"Copy Path",download:"Download",newFile:"New File",newFolder:"New Folder",refresh:"Refresh",menuLabel:"File context menu",loading:"Loading..."}},oce={title:"Create New Project",steps:{type:"Type",configure:"Configure",confirm:"Confirm"},step1:{question:"Do you already have a workspace, or would you like to create a new one?",existing:{title:"Existing Workspace",description:"I already have a workspace on my server and just need to add it to the project list"},new:{title:"New Workspace",description:"Create a new workspace, optionally clone from a GitHub repository"}},step2:{existingPath:"Workspace Path",newPath:"Workspace Path",existingPlaceholder:"/path/to/existing/workspace",newPlaceholder:"/path/to/new/workspace",existingHelp:"Full path to your existing workspace directory",newHelp:"Full path to your workspace directory",githubUrl:"GitHub URL (Optional)",githubPlaceholder:"https://github.com/username/repository",githubHelp:"Optional: provide a GitHub URL to clone a repository",githubAuth:"GitHub Authentication (Optional)",githubAuthHelp:"Only required for private repositories. Public repos can be cloned without authentication.",loadingTokens:"Loading stored tokens...",storedToken:"Stored Token",newToken:"New Token",nonePublic:"None (Public)",selectToken:"Select Token",selectTokenPlaceholder:"-- Select a token --",tokenPlaceholder:"ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",tokenHelp:"This token will be used only for this operation",publicRepoInfo:"Public repositories don't require authentication. You can skip providing a token if cloning a public repo.",noTokensHelp:"No stored tokens available. You can add tokens in Settings → API Keys for easier reuse.",optionalTokenPublic:"GitHub Token (Optional for Public Repos)",tokenPublicPlaceholder:"ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (leave empty for public repos)"},step3:{reviewConfig:"Review Your Configuration",workspaceType:"Workspace Type:",existingWorkspace:"Existing Workspace",newWorkspace:"New Workspace",path:"Path:",cloneFrom:"Clone From:",authentication:"Authentication:",usingStoredToken:"Using stored token:",usingProvidedToken:"Using provided token",noAuthentication:"No authentication",sshKey:"SSH Key",existingInfo:"The workspace will be added to your project list and will be available for PilotDeck sessions.",newWithClone:"The repository will be cloned from this folder.",newEmpty:"The workspace will be added to your project list and will be available for PilotDeck sessions.",cloningRepository:"Cloning repository..."},buttons:{cancel:"Cancel",back:"Back",next:"Next",createProject:"Create Project",creating:"Creating...",cloning:"Cloning..."},errors:{selectType:"Please select whether you have an existing workspace or want to create a new one",providePath:"Please provide a workspace path",failedToCreate:"Failed to create workspace",failedToCreateFolder:"Failed to create folder"}},lce={genericTool:"a tool",codes:{generic:{info:{title:"Notification"}},permission:{required:{title:"Action Required",body:"{{toolName}} is waiting for your decision."}},run:{stopped:{title:"Run Stopped",body:"Reason: {{reason}}"},failed:{title:"Run Failed"}},agent:{notification:{title:"Agent Notification"}}}},cce={title:"Update Available",newVersionReady:"A new version is ready",currentVersion:"Current Version",latestVersion:"Latest Version",whatsNew:"What's New:",viewFullRelease:"View full release",updateProgress:"Update Progress:",manualUpgrade:"Manual upgrade:",npmUpgradeCommand:"git pull && npm run build && (cd ui && npm run build)",manualUpgradeHint:'Or click "Update Now" to run the update automatically.',updateCompleted:"Update completed successfully!",restartServer:"Please restart the server to apply changes.",updateFailed:"Update failed",buttons:{close:"Close",later:"Later",copyCommand:"Copy Command",updateNow:"Update Now",updating:"Updating..."},ariaLabels:{closeModal:"Close version upgrade modal",showSidebar:"Show sidebar",settings:"Settings",updateAvailable:"Update available",closeSidebar:"Close sidebar"}},uce={buttons:Wle,tabs:Kle,skillsTab:Yle,newSessionInProject:Xle,deleteProject:Zle,status:Jle,messages:Qle,navigation:ece,common:tce,time:nce,fileOperations:rce,mainContent:ace,alwaysOn:ice,fileTree:sce,projectWizard:oce,notifications:lce,versionUpdate:cce},dce="Settings",pce={account:"Account",permissions:"Permissions",mcpServers:"MCP Servers",appearance:"Appearance"},mce={title:"Account",language:"Language",languageLabel:"Display Language",languageDescription:"Choose your preferred language for the interface",username:"Username",email:"Email",profile:"Profile",changePassword:"Change Password"},fce={title:"MCP Servers",addServer:"Add Server",editServer:"Edit Server",deleteServer:"Delete Server",serverName:"Server Name",serverType:"Server Type",config:"Configuration",testConnection:"Test Connection",status:"Status",connected:"Connected",disconnected:"Disconnected",scope:{label:"Scope",user:"User",project:"Project"}},hce={title:"Appearance",theme:"Theme",codeEditor:"Code Editor",editorTheme:"Editor Theme",wordWrap:"Word Wrap",showMinimap:"Show Minimap",lineNumbers:"Line Numbers",fontSize:"Font Size"},gce={saveChanges:"Save Changes",resetToDefaults:"Reset to Defaults",cancelChanges:"Cancel Changes"},bce={title:"Quick Settings",sections:{appearance:"Appearance",toolDisplay:"Tool Display",viewOptions:"View Options",inputSettings:"Input Settings"},darkMode:"Dark Mode",autoExpandTools:"Auto-expand tools",showRawParameters:"Show raw parameters",showThinking:"Show thinking",autoScrollToBottom:"Auto-scroll to bottom",sendByCtrlEnter:"Send by Ctrl+Enter",sendByCtrlEnterDescription:"When enabled, pressing Ctrl+Enter will send the message instead of just Enter. This is useful for IME users to avoid accidental sends.",dragHandle:{dragging:"Dragging handle",closePanel:"Close settings panel",openPanel:"Open settings panel",draggingStatus:"Dragging...",toggleAndMove:"Click to toggle, drag to move"}},xce={title:"Terminal Shortcuts",sectionKeys:"Keys",sectionNavigation:"Navigation",escape:"Escape",tab:"Tab",shiftTab:"Shift+Tab",arrowUp:"Arrow Up",arrowDown:"Arrow Down",scrollDown:"Scroll Down",handle:{closePanel:"Close shortcuts panel",openPanel:"Open shortcuts panel"}},yce={label:"Settings",agents:"Agents",appearance:"Appearance",permissions:"Permissions",git:"Git",apiTokens:"API & Tokens",tasks:"Tasks",notifications:"Notifications",plugins:"Plugins",router:"Router",config:"Service Config",about:"About"},vce={back:"Back",close:"Close settings",basics:"Basics",configRequiredDescription:"Configure model services before running this service.",application:"Appearance",workflow:"Workflow",advanced:"Advanced",config:{detail:"Model pool, agents, routing, memory, search, and service settings"},mcp:{detail:"Configure MCP tools from global or project JSON"},appearanceMode:{title:"Theme Mode",detail:"Follow the system appearance, or pin a light / dark theme.",system:"Follow System",light:"Light",dark:"Dark"},chatInput:{title:"Chat & Input",detail:"Tool display, scroll behavior, and send shortcut"},codeEditor:{detail:"Word wrap, line numbers, minimap, and font size"},permissions:{detail:"Manage allowed and blocked tool rules"}},kce={title:"Notifications",description:"Control which notification events you receive.",webPush:{title:"Web Push Notifications",enable:"Enable Push Notifications",disable:"Disable Push Notifications",enabled:"Push notifications are enabled",loading:"Updating...",unsupported:"Push notifications are not supported in this browser.",denied:"Push notifications are blocked. Please allow them in your browser settings."},events:{title:"Event Types",actionRequired:"Action required",stop:"Run stopped",error:"Run failed"}},wce={darkMode:{label:"Dark Mode",description:"Toggle between light and dark themes"},projectSorting:{label:"Project Sorting",description:"How projects are ordered in the sidebar",alphabetical:"Alphabetical",recentActivity:"Recent Activity"},codeEditor:{title:"Code Editor",theme:{label:"Editor Theme",description:"Default theme for the code editor"},wordWrap:{label:"Word Wrap",description:"Enable word wrapping by default in the editor"},showMinimap:{label:"Show Minimap",description:"Display a minimap for easier navigation in diff view"},lineNumbers:{label:"Show Line Numbers",description:"Display line numbers in the editor"},fontSize:{label:"Font Size",description:"Applies to the code editor only (px). Chat and sidebar keep the system default."}}},Sce={title:{add:"Add MCP Server",edit:"Edit MCP Server"},importMode:{form:"Form Input",json:"JSON Import"},scope:{label:"Scope",userGlobal:"User (Global)",projectLocal:"Project (Local)",userDescription:"User scope: Available across all projects on your machine",projectDescription:"Local scope: Only available in the selected project",cannotChange:"Scope cannot be changed when editing an existing server"},fields:{serverName:"Server Name",transportType:"Transport Type",command:"Command",arguments:"Arguments (one per line)",jsonConfig:"JSON Configuration",url:"URL",envVars:"Environment Variables (KEY=value, one per line)",headers:"Headers (KEY=value, one per line)",selectProject:"Select a project..."},placeholders:{serverName:"my-server"},validation:{missingType:"Missing required field: type",stdioRequiresCommand:"stdio type requires a command field",httpRequiresUrl:"{{type}} type requires a url field",invalidJson:"Invalid JSON format",jsonHelp:"Paste your MCP server configuration in JSON format. Example formats:",jsonExampleStdio:'• stdio: {"type":"stdio","command":"npx","args":["@upstash/context7-mcp"]}',jsonExampleHttp:'• http/sse: {"type":"http","url":"https://api.example.com/mcp"}'},configDetails:"Configuration Details (from {{configFile}})",projectPath:"Path: {{path}}",actions:{cancel:"Cancel",saving:"Saving...",addServer:"Add Server",updateServer:"Update Server"}},Ece={success:"Settings saved successfully!",error:"Failed to save settings",saving:"Saving..."},Cce={save:"Save Settings",cancel:"Cancel"},Nce={title:"Git Configuration",description:"Configure your git identity for commits. These settings will be applied globally via git config --global",name:{label:"Git Name",help:"Your name for git commits"},email:{label:"Git Email",help:"Your email for git commits"},actions:{save:"Save Configuration",saving:"Saving..."},status:{success:"Saved successfully"}},Tce={title:"API Keys",description:"Generate API keys to access the external API from other applications.",newKey:{alertTitle:"⚠️ Save Your API Key",alertMessage:"This is the only time you'll see this key. Store it securely.",iveSavedIt:"I've saved it"},form:{placeholder:"API Key Name (e.g., Production Server)",createButton:"Create",cancelButton:"Cancel"},newButton:"New API Key",empty:"No API keys created yet.",list:{created:"Created:",lastUsed:"Last used:"},confirmDelete:"Are you sure you want to delete this API key?",status:{active:"Active",inactive:"Inactive"},github:{title:"GitHub Tokens",description:"Add GitHub Personal Access Tokens to clone private repositories via the external API.",descriptionAlt:"Add GitHub Personal Access Tokens to clone private repositories. You can also pass tokens directly in API requests without storing them.",addButton:"Add Token",form:{namePlaceholder:"Token Name (e.g., Personal Repos)",tokenPlaceholder:"GitHub Personal Access Token (ghp_...)",descriptionPlaceholder:"Description (optional)",addButton:"Add Token",cancelButton:"Cancel",howToCreate:"How to create a GitHub Personal Access Token →"},empty:"No GitHub tokens added yet.",added:"Added:",confirmDelete:"Are you sure you want to delete this GitHub token?"},apiDocsLink:"API Documentation",documentation:{title:"External API Documentation",description:"Learn how to use the external API to trigger PilotDeck sessions from your applications.",viewLink:"View API Documentation →"},loading:"Loading...",version:{updateAvailable:"Update available: v{{version}}"}},Ace={checking:"Checking TaskMaster installation...",notInstalled:{title:"TaskMaster AI CLI Not Installed",description:"TaskMaster CLI is required to use task management features. Install it to get started:",installCommand:"npm install -g task-master-ai",viewOnGitHub:"View on GitHub",afterInstallation:"After installation:",steps:{restart:"Restart this application",autoAvailable:"TaskMaster features will automatically become available",initCommand:"Use task-master init in your project directory"}},settings:{enableLabel:"Enable TaskMaster Integration",enableDescription:"Show TaskMaster tasks, banners, and sidebar indicators across the interface"}},Ice={authStatus:{checking:"Checking...",connected:"Connected",notConnected:"Not connected",disconnected:"Disconnected",checkingAuth:"Checking authentication status...",loggedInAs:"Logged in as {{email}}",authenticatedUser:"authenticated user"},account:{claude:{description:"Anthropic Claude AI assistant"},cursor:{description:"Cursor AI-powered code editor"},codex:{description:"OpenAI Codex AI assistant"},gemini:{description:"Google Gemini AI assistant"},pilotdeck:{description:"OpenBMB PilotDeck AI assistant"}},connectionStatus:"Connection Status",login:{title:"Login",reAuthenticate:"Re-authenticate",description:"Sign in to your {{agent}} account to enable AI features",reAuthDescription:"Sign in with a different account or refresh credentials",button:"Login",reLoginButton:"Re-login"},error:"Error: {{error}}"},Rce={title:"Permission Settings",description:'Manage which tools the assistant can run without asking. Grants from the chat "Add permission" button land here too.',export:"Export",import:"Import",importExportHint:"Share or back up your tool permissions as JSON.",exportSuccess:"Exported {{allowed}} allowed and {{blocked}} blocked tools.",exportError:"Failed to export permissions.",importReadError:"Could not read the selected file.",importInvalid:"Not a valid permissions export. Expected JSON with allowedTools / disallowedTools.",importConfirmBody:"Merge {{allowed}} allowed and {{blocked}} blocked tools into your existing permissions?",importSuccess:"Imported. Added {{addedAllowed}} allowed and {{addedBlocked}} blocked tools.",skipPermissions:{title:"Skip permission prompts",description:"Run tool calls without asking for confirmation. This maps to bypassPermissions and should only be used in trusted workspaces.",warning:"Permission prompts are currently bypassed. Allowed and blocked rules below are still saved, but this global mode lets the agent run without asking."},allowedTools:{title:"Allowed Tools",description:"Tools that are automatically allowed without prompting for permission",placeholder:'e.g., "Bash(git log:*)" or "Write"',quickAdd:"Quick add common tools:",empty:"No allowed tools configured"},blockedTools:{title:"Blocked Tools",description:"Tools that are automatically blocked without prompting for permission",placeholder:'e.g., "Bash(rm:*)"',empty:"No blocked tools configured"},allowedCommands:{title:"Allowed Shell Commands",description:"Shell commands that are automatically allowed without prompting",placeholder:'e.g., "Shell(ls)" or "Shell(git status)"',quickAdd:"Quick add common commands:",empty:"No allowed commands configured"},blockedCommands:{title:"Blocked Shell Commands",description:"Shell commands that are automatically blocked",placeholder:'e.g., "Shell(rm -rf)" or "Shell(sudo)"',empty:"No blocked commands configured"},toolExamples:{title:"Tool Pattern Examples:",bashGitLog:"- Allow all git log commands",bashGitDiff:"- Allow all git diff commands",write:"- Allow all Write tool usage",bashRm:"- Block all rm commands (dangerous)"},shellExamples:{title:"Shell Command Examples:",ls:"- Allow ls command",gitStatus:"- Allow git status",npmInstall:"- Allow npm install",rmRf:"- Block recursive delete"},codex:{permissionMode:"Permission Mode",description:"Controls how Codex handles file modifications and command execution",modes:{default:{title:"Default",description:"Only trusted commands (ls, cat, grep, git status, etc.) run automatically. Other commands are skipped. Can write to workspace."},acceptEdits:{title:"Accept Edits",description:"All commands run automatically within the workspace. Full auto mode with sandboxed execution."},bypassPermissions:{title:"Bypass Permissions",description:"Full system access with no restrictions. All commands run automatically with full disk and network access. Use with caution."}},technicalDetails:"Technical details",technicalInfo:{default:"sandboxMode=workspace-write, approvalPolicy=untrusted. Trusted commands: cat, cd, grep, head, ls, pwd, tail, git status/log/diff/show, find (without -exec), etc.",acceptEdits:"sandboxMode=workspace-write, approvalPolicy=never. All commands auto-execute within project directory.",bypassPermissions:"sandboxMode=danger-full-access, approvalPolicy=never. Full system access, use only in trusted environments.",overrideNote:"You can override this per-session using the mode button in the chat interface."}},actions:{add:"Add",remove:"Remove"}},_ce={title:"MCP Servers",description:{pilotdeck:"Model Context Protocol servers provide additional tools and data sources to PilotDeck",cursor:"Model Context Protocol servers provide additional tools and data sources to Cursor",codex:"Model Context Protocol servers provide additional tools and data sources to Codex"},addButton:"Add MCP Server",empty:"No MCP servers configured",serverType:"Type",scope:{local:"local",user:"user"},config:{command:"Command",url:"URL",args:"Args",environment:"Environment"},tools:{title:"Tools",count:"({{count}}):",more:"+{{count}} more"},actions:{edit:"Edit server",delete:"Delete server"},help:{title:"About Codex MCP",description:"Codex supports stdio-based MCP servers. You can add servers that extend Codex's capabilities with additional tools and resources."}},jce={title:"MCP Servers",description:"Edit PilotDeck MCP config. Global config lives in ~/.pilotdeck/mcp.json; project config lives in .pilotdeck/mcp.json and overrides global servers with the same name.",project:"Project for project-scoped config",scopes:{global:"Global",project:"Project"},serverCount:"{{count}} configured server",serverCount_plural:"{{count}} configured servers",noPath:"Config path unavailable",addStdio:"Add stdio template",addRemote:"Add remote template",saved:"MCP config saved. New sessions and the next runtime rebuild will use it.",fixJsonBeforeTemplate:"Fix the JSON before inserting a template.",empty:"No MCP servers configured yet.",advanced:"Advanced: raw JSON",expand:"Expand",unnamed:"Unnamed server",noSummary:"No command or URL configured",nameRequired:"Every MCP server needs a name before saving.",transport:{http:"Streamable HTTP"},fields:{name:"Name",command:"Launch command",args:"Arguments",env:"Environment variables",envPassThrough:"Environment variable pass-through",perSession:"Per-session server",perSessionHelp:"Start a fresh MCP process for each agent session.",url:"URL",headers:"Headers"},placeholders:{key:"Key",value:"Value"},actions:{addArg:"Add argument",addEnv:"Add environment variable",addVariable:"Add variable",addHeader:"Add header"}},Oce=JSON.parse(`{"loading":"Loading PilotDeck config...","header":{"configFile":"Config file","configPreview":"Config preview","unsaved":"Unsaved"},"viewMode":{"form":"Form","rawYaml":"Raw YAML"},"actions":{"opening":"Opening...","revealFile":"Reveal in Finder","refresh":"Refresh","reloadCurrent":"Reload current config","saving":"Saving...","saveAndReload":"Save and reload current config","saveAndReloadShort":"Save & reload","remove":"Remove","removeModel":"Remove model","add":"Add","dismiss":"Dismiss","showDetails":"Show config details","hideDetails":"Hide config details"},"status":{"unsavedChanges":"Unsaved changes","noUnsavedChanges":"No unsaved changes","fixYamlInFilesystem":"Fix the config file in the filesystem, then refresh.","subsystems":{"pending":"Waiting for config parsing.","processEnv":{"label":"Process Env","applied":"Native settings have been applied to this process."},"memory":{"label":"Memory","enabled":"Memory service is enabled.","disabled":"memory.enabled is false."},"router":{"label":"Router (CCR)","enabled":"Router dashboard uses native records.","disabled":"router.enabled is false."},"gateway":{"label":"Gateway","enabled":"Gateway is enabled.","disabled":"gateway.enabled is false."}}},"rawYaml":{"configValid":"Config is valid","unsaved":"(unsaved)","configInvalid":"Config has validation errors","configInvalidSeeBelow":"Config has validation errors — see below","errors":"Errors","warnings":"Warnings","yamlParseError":"The config file YAML failed to parse. Fix it in the filesystem, then refresh.","cannotParse":"Could not parse the config file YAML. Fix it in the filesystem, then refresh.","rawYaml":"Raw YAML"},"sectionGroups":{"basic":"Basic","basicDescription":"Configure model services before running this service.","features":"Features","advanced":"Advanced"},"sections":{"backToMenu":"Back to service config","runtime":{"label":"Service","description":"Ports, proxy, and paths"},"models":{"label":"Model Pool","description":"Models available to agents, memory, and routing"},"agents":{"label":"Agents","description":"Main agent + subagents model bindings"},"alwaysOn":{"label":"Always-On","description":"Automatic discovery and workspace opt-in"},"memory":{"label":"Memory","description":"PilotDeck memory service"},"tools":{"label":"Search","description":"Web search provider"},"customEnv":{"label":"Env Vars","description":"Custom environment variables for sessions"},"router":{"label":"Router","description":"PilotDeck Router"},"gateway":{"label":"Gateway","description":"Messaging gateway home + channels"}},"panels":{"runtime":{"title":"Service","description":"Configure service ports, data paths, and network proxy. Changes to ports or paths usually require restarting the service.","advancedToggle":"Advanced settings","fields":{"host":{"label":"Host","description":"Bind interface for the HTTP/WebSocket server."},"serverPort":{"label":"Server port","description":"Express + WebSocket port."},"vitePort":{"label":"Vite port","description":"Frontend dev server (only used when running \`npm run dev\`)."},"proxyPort":{"label":"Proxy port","description":"Local LLM proxy (PilotDeck agent target)."},"apiTimeout":{"label":"API timeout (ms)","description":"Per-request upstream timeout."},"databasePath":{"label":"Database path","description":"SQLite auth/projects database (~ expands to home)."},"workspacesRoot":{"label":"Workspaces root","description":"Directory under which projects are scanned."},"httpsProxy":{"label":"HTTPS proxy","description":"Outbound HTTPS proxy URL (HTTPS_PROXY / https_proxy)."}}},"models":{"title":"Model Pool","description":"Configure model providers, API keys, base URLs, and enabled models. Agents, memory, and routing choose from the enabled models here.","providerIdDuplicate":"A Provider id with this name already exists.","addProvider":"Add provider","addProviderTitle":"Add a provider","cancel":"Cancel","customProvider":"Custom","manualSetup":"Manual setup","modelCount":"{{count}} models","emptyProviders":"No providers configured yet. Click \\"Add provider\\" to get started.","providerId":"id","protocol":"Protocol","protocolOptions":{"openai":"openai (chat-completions)","anthropic":"anthropic (messages API)"},"baseUrl":"Base URL","baseUrlHint":"For OpenAI-compatible providers, include the /v1 suffix, for example https://api.example.com/v1.","defaultsTo":"Defaults to","fromCatalog":"from catalog.","effective":"Effective:","apiKey":"API key","maskedKeyPlaceholder":"Existing key kept — type to replace","keyHidden":"Key hidden; leave as-is to keep, retype to replace.","enabledModels":"Enabled models","supportsImageInput":"supports image input","clickEnable":"Click to enable","clickDisable":"Click to disable","customModelPlaceholder":"Custom model ID"},"agents":{"title":"Agents","description":"Set the main agent, subagents, and model parameters.","advancedToggle":"Advanced settings","mainModel":{"label":"Main agent model","description":"Model used for the main conversation."},"capabilities":{"title":"Model Settings","imageInput":"Image input","enabled":"Enabled","disabled":"Disabled","overrideActive":"Image input is set manually.","catalogSupportsImage":"Catalog default supports images.","catalogTextOnly":"Catalog default is text only.","noCatalog":"No catalog entry; defaulting to text only.","imageWarning":"Enable only when the upstream model supports images.","maxOutputTokens":"Max output tokens","maxOutputDescription":"Maximum tokens generated in one response. Leave empty to use the default.","maxContextTokens":"Max context tokens","maxContextDescription":"Context window used for auto-compaction. Leave empty to use the model default."},"subagents":{"label":"Subagents default","description":"Default model for subagents on non-router paths.","inherit":"Inherit main agent model","routerNote":"When PilotDeck Router or Token Saver is enabled, subagent requests enter the router first. By default, the subagent policy re-judges each subagent turn and picks a tier model. This default only acts as a direct subagent fallback or inherited baseline; it does not override the subagent routing policy in Router advanced settings."}},"customEnv":{"title":"Environment Variables","description":"Custom env vars injected into every agent session. Persisted in config.yaml — no need to reconfigure after switching sessions.","empty":"No custom environment variables configured.","existingValueKept":"Existing value kept — type to replace","valueHidden":"Value hidden; leave as-is to keep, retype to replace.","addVariable":"Add variable","quickAddKeys":"Quick add common keys:","add":"Add"},"alwaysOn":{"title":"Always-On","description":"Configure automatic discovery globally and opt individual workspaces in.","enabled":{"label":"Enabled","description":"Master switch for Always-On background agent."},"trigger":{"title":"Trigger","description":"Controls when and how often discovery runs fire.","autoDiscovery":{"label":"Auto discovery","description":"When enabled, Always-On periodically inspects opted-in workspaces and proposes follow-up plans."},"tickInterval":{"label":"Tick interval (minutes)","description":"How often the daemon checks opted-in workspaces."},"cooldown":{"label":"Cooldown (minutes)","description":"Minimum time between discovery runs per workspace."},"dailyBudget":{"label":"Daily budget","description":"Maximum automatic discovery runs per workspace per day."},"heartbeatStale":{"label":"Heartbeat stale (seconds)","description":"Heartbeats older than this are considered stale."},"recentUserMsg":{"label":"Recent user msg (minutes)","description":"Only fire if the user sent a message within this window."},"preferChannel":{"label":"Preferred channel","description":"Channel the discovery agent prefers to interact through."}},"dormancy":{"title":"Dormancy","description":"File-system watcher that pauses discovery while the user is actively editing.","enabled":{"label":"Enabled","description":"Suppress discovery fires while the workspace has recent file changes."},"debounce":{"label":"Debounce (ms)","description":"Wait this long after the last file change before resuming."},"ignoreGlobs":{"label":"Ignore globs","description":"File patterns excluded from dormancy detection, one per line."}},"workspace":{"title":"Workspace","description":"Isolated workspace strategy for Always-On runs.","gitWorktree":{"label":"Git worktree base dir","description":"Root directory for git worktree-based isolation."},"snapshotDir":{"label":"Snapshot base dir","description":"Root directory for snapshot-based isolation."},"snapshotMaxBytes":{"label":"Snapshot max bytes","description":"Maximum size of a workspace snapshot."},"gitLfs":{"label":"Git LFS","description":"Include Git LFS objects in workspace snapshots."}},"execution":{"title":"Execution","description":"Safety limits for each Always-On run.","maxTurns":{"label":"Max turns","description":"Maximum number of agent turns per run."},"maxToolCalls":{"label":"Max tool calls","description":"Maximum total tool calls per run."},"timeout":{"label":"Timeout (minutes)","description":"Hard timeout for each run."}},"workspaceOptIn":{"title":"Workspace opt-in","description":"Only enabled workspaces receive Always-On heartbeats and scheduled discovery checks.","empty":"No recognized projects yet. Add or open a workspace first."}},"memory":{"title":"Memory","description":"Configure the model used for memory indexing and Dream.","enabled":{"label":"Enabled","description":"Toggles the memory service."},"model":{"label":"Memory Model","description":"Provider/model the memory pipeline calls.","inherit":"inherit (use main agent's model)"}},"tools":{"title":"Search","description":"Configure the search service used by the agent's web_search tool.","provider":{"label":"Search provider","description":"The active search service.","glm":"GLM / Z.AI Web Search","tavily":"Tavily","custom":"Custom"},"apiKey":{"label":"API key","description":"API key for the selected provider.","placeholder":"provider API key","maskedPlaceholder":"Existing key kept — type to replace","keyHidden":"Key hidden; leave as-is to keep, retype to replace."},"endpoint":{"label":"Endpoint","description":"Custom endpoint. Leave empty to use the default.","placeholder":"Default endpoint"},"custom":{"name":{"label":"Name","description":"Name of this custom search service."},"auth":{"label":"Auth","description":"How the API key is sent.","bearer":"Bearer header","bodyApiKey":"API key in JSON body","queryApiKey":"API key in query string","none":"No API key"},"method":{"label":"HTTP method","description":"Request method."},"params":{"label":"Parameter names","description":"Parameter names for the query and API key."},"mapping":{"label":"Result mapping","description":"Fields used to read search results from the response."}},"test":{"button":"Test connection","testing":"Testing…","needsKey":"Enter an API key first.","success":"Connected: {{count}} result(s), {{latency}}ms.","failedPrefix":"Connection failed: {{error}}"}},"router":{"title":"PilotDeck Router","description":"Embedded router for fan-out across providers (tier-based routing, token saver, auto-orchestrate).","enabled":{"label":"Enabled","description":"When on, agents use the router instead of the configured provider directly."},"advancedToggle":"Advanced settings","levels":{"modelPlaceholder":"Select a configured model","default":{"label":"Default","description":"Primary route used when no tier-specific decision applies."},"judge":{"label":"Judge model","description":"Model used to classify the request before choosing a token-saving tier."},"simple":{"label":"Simple","description":"Quick Q&A, confirmations, light rewrites, and simple file operations."},"medium":{"label":"Medium","description":"Single tool calls, short generation, small file edits, and standard coding changes."},"complex":{"label":"Complex","description":"Work that should be decomposed or delegated to sub-agents."},"reasoning":{"label":"Reasoning","description":"Multi-file analysis, long-context work, reports, and deep reasoning."}},"zeroUsageRetry":{"label":"Zero-usage retry","description":"Automatically retry when the upstream returns a response with zero tokens used.","maxAttempts":{"label":"Max attempts","description":"Maximum retry attempts before giving up."}},"tokenSaver":{"title":"Token Saver","description":"A lightweight judge classifies each turn into a tier and routes it to a cost-appropriate model.","judgeModel":"Judge model","defaultTier":"Default tier","judgeTimeout":{"label":"Judge timeout (ms)","description":"Maximum time to wait for the judge decision."},"subagentPolicy":{"label":"Sub-agent policy","description":"How sub-agents are routed: 'judge' re-evaluates each sub-agent turn, 'skip' keeps the direct sub-agent route."}},"autoOrchestrate":{"title":"Auto Orchestrate","description":"Automatically fan out complex turns into parallel sub-agents when the judge assigns certain tiers.","triggerTiers":"Trigger tiers","slimPrompt":{"label":"Slim system prompt","description":"Use a shorter system prompt for orchestrated sub-agents to save tokens."}},"stats":{"label":"Stats collection","description":"Track token usage and cost per session. Powers the Dashboard tab."},"pricing":{"title":"Model Pricing","description":"Custom pricing per model ($/million tokens). Used when the API doesn't report cost.","keyFormat":"Key format:","empty":"No custom pricing configured. Built-in defaults cover common models (DeepSeek, Claude, GPT, Gemini, GLM, Qwen, Llama, etc).","inputPerM":"Input $/M","outputPerM":"Output $/M","cachePerM":"Cache $/M","addTitle":"Add model pricing","add":"Add"},"scenarios":{"title":"Scenarios","description":"Map scenario names to models. default is the primary route.","empty":"No scenarios configured.","add":"Add"},"fallback":{"title":"Fallback Chains","description":"Ordered fallback models per scenario. If the primary fails, the router tries the next.","empty":"No fallback chains configured.","addModel":"Add fallback model","add":"Add"},"tiers":{"title":"Tiers","description":"Complexity tiers the judge can route to. Pick a model for each — descriptions are pre-filled.","placeholder":"Describe when the judge should pick this tier…","add":"Add"},"rules":{"title":"Judge Rules","empty":"No custom rules. The judge uses tier descriptions only.","placeholder":"Add a rule for the judge…","add":"Add"}},"gateway":{"title":"Gateway","description":"Messaging gateway (Feishu / Telegram / Discord / Slack) — channel-level secrets are best edited via Raw YAML.","enabled":{"label":"Enabled","description":"When on, the gateway home is generated and channels with credentials come online."},"home":{"label":"Gateway home","description":"Working directory for gateway state and per-channel configs."}},"subsystemReload":{"title":"Subsystem reload status","fallbackDescription":"Reload status will appear after the first save or external edit.","lastReload":"Last reload: {{source}} at {{time}}"}}}`),Dce={title:"Plugins",description:"Extend the interface with custom plugins. Install from git or drop a folder in ~/.pilotdeck/plugins/",installPlaceholder:"https://github.com/user/my-plugin",installButton:"Install",installing:"Installing…",securityWarning:"Only install plugins whose source code you have reviewed or from authors you trust.",scanningPlugins:"Scanning plugins…",noPluginsInstalled:"No plugins installed",pullLatest:"Pull latest from git",noGitRemote:"No git remote — update not available",uninstallPlugin:"Uninstall plugin",confirmUninstall:"Click again to confirm",confirmUninstallMessage:"Remove {{name}}? This cannot be undone.",cancel:"Cancel",remove:"Remove",updateFailed:"Update failed",installFailed:"Installation failed",uninstallFailed:"Uninstall failed",toggleFailed:"Toggle failed",starterPluginLabel:"Starter Plugin",starter:"Starter",docs:"Docs",starterPlugin:{name:"Project Stats",badge:"starter",description:"File counts, lines of code, file-type breakdown, and recent activity for your project.",install:"Install"},terminalPlugin:{name:"Terminal",badge:"official",description:"Integrated terminal with full shell access directly within the interface.",install:"Install"},morePlugins:"More",enable:"Enable",disable:"Disable",installAriaLabel:"Plugin git repository URL",tab:"tab",runningStatus:"running"},Mce={title:dce,tabs:pce,account:mce,mcp:fce,appearance:hce,actions:gce,quickSettings:bce,terminalShortcuts:xce,mainTabs:yce,settingsHome:vce,notifications:kce,appearanceSettings:wce,mcpForm:Sce,saveStatus:Ece,footerActions:Cce,git:Nce,apiKeys:Tce,tasks:Ace,agents:Ice,permissions:Rce,mcpServers:_ce,mcpConfig:jce,pilotDeckConfig:Oce,pluginSettings:Dce},Lce={title:"Welcome Back",description:"Sign in to your PilotDeck self-hosted account",username:"Username",password:"Password",submit:"Sign In",loading:"Signing in...",errors:{invalidCredentials:"Invalid username or password",requiredFields:"Please fill in all fields",networkError:"Network error. Please try again."},placeholders:{username:"Enter your username",password:"Enter your password"}},Pce={title:"Create Account",username:"Username",password:"Password",confirmPassword:"Confirm Password",submit:"Create Account",loading:"Creating account...",errors:{passwordMismatch:"Passwords do not match",usernameTaken:"Username is already taken",weakPassword:"Password is too weak"}},Fce={title:"Sign Out",confirm:"Are you sure you want to sign out?",button:"Sign Out"},Bce={login:Lce,register:Pce,logout:Fce},$ce={title:"Projects",newProject:"New Project",deleteProject:"Delete Project",renameProject:"Rename Project",noProjects:"No projects found",loadingProjects:"Loading projects...",searchPlaceholder:"Search projects...",projectNamePlaceholder:"Project name",starred:"Starred",all:"All",untitledSession:"Untitled Session",newSession:"New Session",codexSession:"Codex Session",fetchingProjects:"Fetching your PilotDeck projects and sessions",projects:"projects",noMatchingProjects:"No matching projects",tryDifferentSearch:"Try adjusting your search term",runPilotDeckCli:"Run PilotDeck CLI in a project directory to get started"},Uce={title:"General",name:"General",missing:"No general workspace found"},zce={label:"Sidebar section"},qce="Rename - empty to reset",Hce={label:"Context menu"},Gce={title:"PilotDeck",subtitle:"AI coding assistant interface"},Vce={title:"Sessions",newSession:"New Session",deleteSession:"Delete Session",renameSession:"Rename Session",noSessions:"No sessions yet",unsaved:"Not saved yet",sending:"Sending…",loadingSessions:"Loading sessions...",unnamed:"Unnamed",loading:"Loading...",loadingMore:"Loading more…",showMore:"Show more sessions",showMoreCount:"Show more ({{count}})"},Wce={viewEnvironments:"View Environments",hideSidebar:"Hide sidebar",createProject:"Create new project",refresh:"Refresh projects and sessions (Ctrl+R)",renameProject:"Rename project (F2)",deleteProject:"Delete empty project (Delete)",showSidebar:"Show sidebar",newChat:"New Chat",addToFavorites:"Add to favorites",removeFromFavorites:"Remove from favorites",editSessionName:"Manually edit session name",deleteSession:"Delete this session permanently",save:"Save",cancel:"Cancel",clearSearch:"Clear search"},Kce={chat:"Agent",files:"Files",git:"Git",terminal:"Terminal",tasks:"Tasks"},Yce={refresh:"Refresh",dashboard:"Dashboard",settings:"Settings",collapseAll:"Collapse All",expandAll:"Expand All",cancel:"Cancel",save:"Save",delete:"Delete",rename:"Rename",joinCommunity:"Join Community",reportIssue:"Report Issue",starOnGithub:"Star on GitHub"},Xce={openSource:"Open Source"},Zce={active:"Active",inactive:"Inactive",thinking:"Thinking...",error:"Error",aborted:"Aborted",unknown:"Unknown"},Jce={justNow:"Just now",oneMinuteAgo:"1 min ago",minutesAgo:"{{count}} mins ago",oneHourAgo:"1 hour ago",hoursAgo:"{{count}} hours ago",oneDayAgo:"1 day ago",daysAgo:"{{count}} days ago"},Qce={deleteConfirm:"Are you sure you want to delete this?",renameSuccess:"Renamed successfully",deleteSuccess:"Deleted successfully",errorOccurred:"An error occurred",deleteSessionConfirm:"Are you sure you want to delete this session? This action cannot be undone.",deleteProjectConfirm:"Are you sure you want to delete this empty project? This action cannot be undone.",enterProjectPath:"Please enter a project path",deleteSessionFailed:"Failed to delete session. Please try again.",deleteSessionError:"Error deleting session. Please try again.",renameSessionFailed:"Failed to rename session. Please try again.",renameSessionError:"Error renaming session. Please try again.",deleteProjectFailed:"Failed to delete project. Please try again.",deleteProjectError:"Error deleting project. Please try again.",createProjectFailed:"Failed to create project. Please try again.",createProjectError:"Error creating project. Please try again."},eue={updateAvailable:"Update available"},tue={modeProjects:"Projects",modeConversations:"Conversations",conversationsPlaceholder:"Search in conversations...",searching:"Searching...",noResults:"No results found",tryDifferentQuery:"Try a different search query",matches_one:"{{count}} match",matches_other:"{{count}} matches",projectsScanned_one:"{{count}} project scanned",projectsScanned_other:"{{count}} projects scanned"},nue={deleteProject:"Delete Project",deleteSession:"Delete Session",confirmDelete:"Are you sure you want to delete",sessionCount_one:"This project contains {{count}} conversation.",sessionCount_other:"This project contains {{count}} conversations.",allConversationsDeleted:"All conversations will be permanently deleted.",cannotUndo:"This action cannot be undone."},rue={projects:$ce,general:Uce,sectionToggle:zce,renamePlaceholder:qce,contextMenu:Hce,app:Gce,sessions:Vce,tooltips:Wce,navigation:Kce,actions:Yce,branding:Xce,status:Zce,time:Jce,messages:Qce,version:eue,search:tue,deleteConfirmation:nue},aue={copy:"Copy",copied:"Copied",copyCode:"Copy code"},iue={copy:"Copy message",copied:"Message copied",selectFormat:"Select copy format",copyAsMarkdown:"Copy as markdown",copyAsText:"Copy as text"},sue={user:"U",error:"Error",tool:"Tool",claude:"Claude",pilotdeck:"PilotDeck",cursor:"Cursor",codex:"Codex",gemini:"Gemini"},oue={title:"Tool error",description:""},lue={label:"Interrupted by user"},cue={label:"Context compacted",level:"Level {{level}}",tokens:"{{tokens}} tokens before compact",stages:{context_collapse:"Context collapse",session_memory:"Session memory compaction",summary:"Summary compaction",reactive:"Reactive compaction",overflow_recovery:"Overflow recovery retry"}},uue={default:"Working",processing:"Processing",thinking:"Thinking",generating:"Generating response",compacting:"Compacting context...",compactingLevel:"Triggering level {{level}} compaction: {{label}}",waitingForPermission:"Waiting for permission"},due={summary:{processed:"Processed {{duration}}",completed:"Process completed",failed:"Process failed",cancelled:"Process stopped"},waitingForModel:"Waiting for model",step:"Step",metrics:{toolCalls:"{{count}} tool calls",searches:"{{count}} searches",errors:"{{count}} errors"},live:{editedFiles:"Edited {{count}} files",editedFiles_one:"Edited {{count}} file",editedFiles_other:"Edited {{count}} files",exploredFiles:"Explored {{count}} files",exploredFiles_one:"Explored {{count}} file",exploredFiles_other:"Explored {{count}} files",searches:"Searched {{count}} times",searches_one:"Searched {{count}} time",searches_other:"Searched {{count}} times",commands:"Ran {{count}} commands",commands_one:"Ran {{count}} command",commands_other:"Ran {{count}} commands",toolCalls:"Used {{count}} tools",toolCalls_one:"Used {{count}} tool",toolCalls_other:"Used {{count}} tools",errors:"{{count}} errors",errors_one:"{{count}} error",errors_other:"{{count}} errors",subagentCompleted:"Subagent finished",compactCompleted:"Compacted context",thoughtCompleted:"Thought through next step",runningEdit:"Editing file",runningEditTarget:"Editing {{target}}",runningRead:"Reading file",runningReadTarget:"Reading {{target}}",runningSearch:"Searching",runningSearchTarget:"Searching {{target}}",runningCommand:"Running command",runningCommandTarget:"Running {{target}}",runningSubagent:"Running subagent"},noSteps:"No detailed steps recorded."},pue={settings:"Tool Settings",error:"Tool Error",result:"Tool Result",viewParams:"View input parameters",viewRawParams:"View raw parameters",viewDiff:"View edit diff for",creatingFile:"Creating new file:",updatingTodo:"Updating Todo List",read:"Read",readFile:"Read file",updateTodo:"Update todo list",readTodo:"Read todo list",searchResults:"results"},mue={found:"Found {{count}} {{type}}",file:"file",files:"files",pattern:"pattern:",in:"in:"},fue={updated:"File updated successfully",created:"File created successfully",written:"File written successfully",diff:"Diff",newFile:"New File",viewContent:"View file content",viewFullOutput:"View full output ({{count}} chars)",contentDisplayed:"The file content is displayed in the diff view above"},hue={title:"Interactive Prompt",waiting:"Waiting for your response in the CLI",instruction:"Please select an option in your terminal where PilotDeck is running.",selectedOption:"✓ PilotDeck selected option {{number}}",instructionDetail:"In the CLI, you would select this option interactively using arrow keys or by typing the number."},gue={title:"Thinking...",emoji:"💭 Thinking..."},bue={response:"JSON Response"},xue={grant:"Grant {{tool}} for this chat",added:"Granted for this chat",addTo:"Temporarily allows {{entry}} in this chat only.",retry:"Retry in this chat to use the tool.",error:"Unable to grant this chat permission. Please try again.",openSettings:"Open settings"},yue={updated:"Todo list has been updated successfully",current:"Current Todo List"},vue={viewPlan:"📋 View implementation plan",title:"Implementation Plan",exitMode:{header:"Plan is ready",subtitle:"Confirming will exit Plan mode and let the model execute the plan.",syncingPlan:"Plan content is syncing, please confirm whether to execute.",feedbackLabel:"Optional notes for continued discussion",feedbackPlaceholder:"e.g. Add a test plan, or do not modify the database yet.",continueButton:"Continue Discussion",executeButton:"Execute Plan"},approvedCard:{viewPlan:"View Plan"}},kue={resetAt:"Usage limit reached. Your limit will reset at **{{time}} {{timezone}}** - {{date}}"},wue={permissionMode:"Permission Mode",modes:{default:"Default Mode",acceptEdits:"Accept Edits",bypassPermissions:"Bypass Permissions",plan:"Plan Mode"},descriptions:{default:"Only trusted commands (ls, cat, grep, git status, etc.) run automatically. Other commands are skipped. Can write to workspace.",acceptEdits:"All commands run automatically within the workspace. Full auto mode with sandboxed execution.",bypassPermissions:"Full system access with no restrictions. All commands run automatically with full disk and network access. Use with caution.",plan:"Planning mode - no commands are executed"},technicalDetails:"Technical details"},Sue={permissionMode:"Gemini Permission Mode",description:"Control how Gemini CLI handles operation approvals.",modes:{default:{title:"Standard (Ask for Approval)",description:"Gemini will prompt for approval before executing commands, writing files, and fetching web resources."},autoEdit:{title:"Auto Edit (Skip File Approvals)",description:"Gemini will automatically approve file edits and web fetches, but will still prompt for shell commands."},yolo:{title:"YOLO (Bypass All Permissions)",description:"Gemini will execute all operations without asking for approval. Exercise caution."}}},Eue={placeholder:"Type / for commands, @ for files, or ask {{provider}} anything...",placeholderDefault:"Type your message...",disabled:"Input disabled",attachFiles:"Attach files",attachImages:"Attach images",mentionFile:"Mention a file",slashCommand:"Run a slash command",send:"Send",stop:"Stop",hintText:{ctrlEnter:"Ctrl+Enter to send • Shift+Enter for new line • Tab to change modes • / for slash commands",enter:"Enter to send • Shift+Enter for new line • Tab to change modes • / for slash commands"},clickToChangeMode:"Click to change permission mode (or press Tab in input)",showAllCommands:"Show all commands",clearInput:"Clear input",scrollToBottom:"Scroll to bottom",permissions:{default:"Default Permissions",defaultDescription:"Ask before risky operations",bypassPermissions:"Full Access",bypassPermissionsDescription:"Skip confirmations and allow full access",change:"Select permission mode"},runModes:{agent:"Agent",plan:"Plan",change:"Select run mode",agentDescription:"Directly process and execute the task",planDescription:"Generate a plan first, then execute after confirmation"}},Cue={empty:"No commands available",groups:{pinned:"Pinned",frequent:"Frequently used",builtin:"Built-in",project:"Project",user:"User",other:"Other"}},Nue={selector:{title:"Thinking Mode",description:"Extended thinking gives PilotDeck more time to evaluate alternatives",active:"Active",tip:"Higher thinking modes take more time but provide more thorough analysis"},modes:{none:{name:"Standard",description:"Regular PilotDeck response",prefix:""},think:{name:"Think",description:"Basic extended thinking",prefix:"think"},thinkHard:{name:"Think Hard",description:"More thorough evaluation",prefix:"think hard"},thinkHarder:{name:"Think Harder",description:"Deep analysis with alternatives",prefix:"think harder"},ultrathink:{name:"Ultrathink",description:"Maximum thinking budget",prefix:"ultrathink"}},buttonTitle:"Thinking mode: {{mode}}"},Tue={title:"Choose Your AI Assistant",description:"Select a provider to start a new conversation",selectModel:"Select Model",providerInfo:{anthropic:"by Anthropic",openai:"by OpenAI",cursorEditor:"AI Code Editor",google:"by Google"},readyPrompt:{pilotdeck:"Ready to use PilotDeck with {{model}}. Start typing your message below.",cursor:"Ready to use Cursor with {{model}}. Start typing your message below.",codex:"Ready to use Codex with {{model}}. Start typing your message below.",gemini:"Ready to use Gemini with {{model}}. Start typing your message below.",default:"Select a provider above to begin"}},Aue={continue:{title:"Continue your conversation",description:"Ask questions about your code, request changes, or get help with development tasks"},loading:{olderMessages:"Loading older messages...",sessionMessages:"Loading session messages..."},messages:{showingOf:"Showing {{shown}} of {{total}} messages",scrollToLoad:"Scroll up to load more",showingLast:"Showing last {{count}} messages ({{total}} total)",loadEarlier:"Load earlier messages",loadAll:"Load all messages",loadingAll:"Loading all messages...",allLoaded:"All messages loaded",perfWarning:'All messages loaded — scrolling may be slower. Click "Scroll to bottom" to restore performance.'}},Iue={selectProject:{title:"Select a Project",description:"Choose a project to open an interactive shell in that directory"},status:{newSession:"New Session",initializing:"Initializing...",restarting:"Restarting..."},actions:{disconnect:"Disconnect",disconnectTitle:"Disconnect from shell",restart:"Restart",restartTitle:"Restart Shell (disconnect first)",connect:"Continue in Shell",connectTitle:"Connect to shell"},loading:"Loading terminal...",connecting:"Connecting to shell...",startSession:"Start a new PilotDeck session",resumeSession:"Resume session: {{displayName}}...",runCommand:"Run {{command}} in {{projectName}}",startCli:"Starting PilotDeck CLI in {{projectName}}",defaultCommand:"command"},Rue={actions:{thinking:"Thinking",processing:"Processing",analyzing:"Analyzing",working:"Working",computing:"Computing",reasoning:"Reasoning"},state:{live:"Live",paused:"Paused"},elapsed:{seconds:"{{count}}s",minutesSeconds:"{{minutes}}m {{seconds}}s",label:"{{time}} elapsed",startingNow:"Starting now"},controls:{stopGeneration:"Stop Generation",pressEscToStop:"Press Esc anytime to stop"},providers:{assistant:"Assistant"}},_ue={startChatWithProvider:"Select a project to start chatting with {{provider}}"},jue={nextTaskPrompt:"Start the next task"},Oue={placeholder:"Tell PilotDeck what you want to get done…",welcomePlaceholder:"Tell PilotDeck what you want to get done…"},Due={codeBlock:aue,copyMessage:iue,messageTypes:sue,toolUseError:oue,interrupted:lue,compact:cue,working:uue,process:due,tools:pue,search:mue,fileOperations:fue,interactive:hue,thinking:gue,json:bue,permissions:xue,todo:yue,plan:vue,usageLimit:kue,codex:wue,gemini:Sue,input:Eue,commandMenu:Cue,thinkingMode:Nue,providerSelection:Tue,session:Aue,shell:Iue,pilotdeckStatus:Rue,projectSelection:_ue,tasks:jue,composer:Oue},Mue={changes:"changes",previousChange:"Previous change",nextChange:"Next change",hideDiff:"Hide diff highlighting",showDiff:"Show diff highlighting",settings:"Editor Settings",collapse:"Collapse editor",expand:"Expand editor to full width"},Lue="Loading {{fileName}}...",Pue={title:"Could not load this file",description:`We couldn't read "{{fileName}}" from disk. Saving is disabled until the file loads successfully, so we don't overwrite your real content.`,retry:"Retry"},Fue={showingChanges:"Showing changes"},Bue={download:"Download file",save:"Save",saving:"Saving...",saved:"Saved!",exitFullscreen:"Exit fullscreen",fullscreen:"Fullscreen",expand:"Expand to full width",collapse:"Collapse to split view",close:"Close",previewMarkdown:"Preview markdown",editMarkdown:"Edit markdown"},$ue={lines:"Lines:",characters:"Characters:",shortcuts:"Press Ctrl+S to save • Esc to close"},Uue={title:"Binary File",message:'The file "{{fileName}}" cannot be displayed in the text editor because it is a binary file.'},zue={toolbar:Mue,loading:Lue,loadError:Pue,header:Fue,actions:Bue,footer:$ue,binaryFile:Uue},que="Pick a project to view Always-On.",Hue={refresh:"Refresh"},Gue={dashboard:"Dashboard",plansCron:"Plans & Cron Jobs"},Vue={title:"Always-On Dashboard",subtitle:"Activity feed across all workspaces.",loading:"Loading events…",empty:"No Always-On events recorded yet.",stats:{todayEvents:"Today's Events",activeProjects:"Active Projects",running:"Running Now"},eventList:{title:"Recent Events"},detail:{back:"Back to events",placeholder:"Details coming soon."},runDetail:{back:"Back to events",backToPlans:"Back to Plans & Cron Jobs",loading:"Loading…",untitled:"Untitled Plan",workspaceStrategy:"Workspace",executionSession:"Execution Session",openSession:"Open Session",outcome:"Outcome",plan:"Plan",report:"Report",noPlanContent:"No plan content available.",noReportContent:"No report available yet.",apply:"Apply to Main",archive:"Archive"},phase:{discoveryStarted:"Discovery Started",planProduced:"Plan Produced",noPlan:"No Plan",workspaceReady:"Workspace Ready",executionStarted:"Execution Started",executionCompleted:"Execution Completed",reportProduced:"Report Produced",runCompleted:"Run Completed",runFailed:"Run Failed",cronStarted:"Cron Started",cronCompleted:"Cron Completed",cronFailed:"Cron Failed"}},Wue={title:"Plans & Cron Jobs",subtitle:"All plans and cron jobs across projects.",loading:"Loading plans and cron jobs…",empty:"No plans or cron jobs found.",unassigned:"Unassigned",columns:{title:"Title",type:"Type",createdAt:"Created",status:"Status",actions:"Actions"},actions:{retry:"Retry",delete:"Delete",runNow:"Run Now",stop:"Stop",applyCycle:"Apply All",archiveCycle:"Archive"},type:{plan:"Plan",cronJob:"Cron Job"},status:{created:"Created",preparingWorkspace:"Preparing Workspace",executing:"Executing",completedWaiting:"Completed",failed:"Failed",archived:"Archived",scheduled:"Scheduled",running:"Running"},workCycle:"Work Cycle",plans:"plans",cycleStatus:{active:"Active",applying:"Applying…",applied:"Applied",archived:"Archived"}},Kue={emptyProject:que,actions:Hue,tabs:Gue,dashboard:Vue,plansCron:Wue},Yue={title:"Router",total:"Total",subtitle:"Usage across all projects and sessions.",projectSubtitle:"Routing stats for {{project}}.",loading:"Loading router…",retry:"Retry",refresh:"Refresh",scope:{label:"Dashboard scope",project:"Project",total:"Total"},stats:{requests:"Requests",tokens:"Tokens",cost:"Cost",sessions_one:"{{count}} session",sessions_other:"{{count}} sessions",routedSessions_one:"{{count}} routed session",routedSessions_other:"{{count}} routed sessions",activeProjects_one:"{{count}} active project",activeProjects_other:"{{count}} active projects",inOut:"{{in}} in · {{out}} out",perRequest:"≈ {{value}} / request",noRouterCost:"No-router {{value}}"},sessions:{title:"Sessions",empty:"No sessions yet."},projects:{title:"By project"},projectCard:{summary:"{{requests}} requests · {{tokens}} tokens · {{sessions}} sessions"},units:{requestsShort_one:"{{count}} req",requestsShort_other:"{{count}} req",queries_one:"{{count}} query",queries_other:"{{count}} queries",tokens:"{{value}} tokens"},session:{orchestrated:"orchestrated",mainAgent:"Main Agent",subagents:"Sub-agents",mainShort:"main",subShort:"sub",toolShort:"tool",noContent:"(no content)",noUserQueries:"No user queries recorded.",models:"Models:"},recent:{title:"Recent routes",empty:"No routing activity yet. Start a conversation to see stats here.",columns:{time:"Time",project:"Project",provider:"Provider",model:"Model",tokens:"Tokens"}},price:{title:"Price",empty:"No priced sessions yet.",actual:"Actual cost",baseline:"No-router cost",saved:"Saved",savedLower:"saved",extra:"Extra spent",extraLower:"over",summary:"{{sessions}} sessions · {{requests}} req · {{tokens}} tokens",baselineHint:"Baseline assumes the main model handles all routed tokens.",savedHint:"{{rate}}% vs baseline",missingBaseline:"No baseline configured for these sessions.",session:"Session",actualShort:"Actual",baselineShort:"No router",savedShort:"Saved",extraShort:"Extra"}},Xue={dashboard:Yue},Zue={title:"TaskMaster AI is not configured",description:"TaskMaster helps break down complex projects into manageable tasks with AI-powered assistance",whatIsTitle:"🎯 What is TaskMaster?",features:{aiPowered:"AI-Powered Task Management: Break complex projects into manageable subtasks",prdTemplates:"PRD Templates: Generate tasks from Product Requirements Documents",dependencyTracking:"Dependency Tracking: Understand task relationships and execution order",progressVisualization:"Progress Visualization: Kanban boards and detailed task analytics",cliIntegration:"CLI Integration: Use taskmaster commands for advanced workflows"},initializeButton:"Initialize TaskMaster AI"},Jue={title:"Getting Started with TaskMaster",subtitle:"TaskMaster is initialized! Here's what to do next:",steps:{createPRD:{title:"Create a Product Requirements Document (PRD)",description:"Discuss your project idea and create a PRD that describes what you want to build.",addButton:"Add PRD",existingPRDs:"Existing PRDs:"},generateTasks:{title:"Generate Tasks from PRD",description:"Once you have a PRD, ask your AI assistant to parse it and TaskMaster will automatically break it down into manageable tasks with implementation details."},analyzeTasks:{title:"Analyze & Expand Tasks",description:"Ask your AI assistant to analyze task complexity and expand them into detailed subtasks for easier implementation."},startBuilding:{title:"Start Building",description:"Ask your AI assistant to begin working on tasks, update their status, and add new tasks as your project evolves."}},tip:"💡 Tip: Start with a PRD to get the most out of TaskMaster's AI-powered task generation"},Que={title:"TaskMaster Setup",subtitle:"Interactive CLI for {{projectName}}",willStart:"TaskMaster initialization will start automatically",completed:"TaskMaster setup completed! You can now close this window.",closeButton:"Close",closeContinueButton:"Close & Continue"},ede={title:"Getting Started with TaskMaster",subtitle:"Your guide to productive task management",examples:{parsePRD:`💬 Example: +"I've just initialized a new project with TaskMaster. I have a PRD at .taskmaster/docs/prd.txt. Can you help me parse it and set up the initial tasks?"`,expandTask:`💬 Example: +"Task 5 seems complex. Can you break it down into subtasks?"`,addTask:`💬 Example: +"Please add a new task to implement user profile image uploads using Cloudinary, research the best approach."`},moreExamples:"View more examples and usage patterns →",proTips:{title:"💡 Pro Tips",search:"Use the search bar to quickly find specific tasks",views:"Switch between Kanban, List, and Grid views using the view toggles",filters:"Use filters to focus on specific task statuses or priorities",details:"Click on any task to view detailed information and manage subtasks"},learnMore:{title:"📚 Learn More",description:"TaskMaster AI is an advanced task management system built for developers. Get documentation, examples, and contribute to the project.",githubButton:"View on GitHub"}},tde={placeholder:"Search tasks..."},nde={button:"Filters",status:"Status",priority:"Priority",sortBy:"Sort By",allStatuses:"All Statuses",allPriorities:"All Priorities",showing:"Showing {{filtered}} of {{total}} tasks",clearFilters:"Clear Filters"},rde={id:"ID",status:"Status",priority:"Priority",idAsc:"ID (Ascending)",idDesc:"ID (Descending)",titleAsc:"Title (A-Z)",titleDesc:"Title (Z-A)",statusAsc:"Status (Pending First)",statusDesc:"Status (Done First)",priorityAsc:"Priority (High First)",priorityDesc:"Priority (Low First)"},ade={kanban:"Kanban view",list:"List view",grid:"Grid view"},ide={pending:"📋 To Do",inProgress:"🚀 In Progress",done:"✅ Done",blocked:"🚫 Blocked",deferred:"⏳ Deferred",cancelled:"❌ Cancelled",noTasksYet:"No tasks yet",tasksWillAppear:"Tasks will appear here",moveTasksHere:"Move tasks here when started",completedTasksHere:"Completed tasks appear here",statusTasksHere:"Tasks with this status will appear here"},sde={help:"TaskMaster Getting Started Guide",prds:"PRDs",addPRD:"Add PRD",addTask:"Add Task",createNewPRD:"Create New PRD",prdsAvailable:"{{count}} PRD(s) available"},ode={modified:"Modified: {{date}}"},lde={pending:"Pending","in-progress":"In Progress",done:"Done",blocked:"Blocked",deferred:"Deferred",cancelled:"Cancelled"},cde={high:"High",medium:"Medium",low:"Low"},ude={title:"No tasks match your filters",description:"Try adjusting your search or filter criteria."},dde={notConfigured:Zue,gettingStarted:Jue,setupModal:Que,helpGuide:ede,search:tde,filters:nde,sort:rde,views:ade,kanban:ide,buttons:sde,prd:ode,statuses:lde,priorities:cde,noMatchingTasks:ude},pde={save:"保存",cancel:"取消",delete:"删除",create:"创建",edit:"编辑",close:"关闭",confirm:"确认",submit:"提交",retry:"重试",refresh:"刷新",search:"搜索",clear:"清除",copy:"复制",download:"下载",upload:"上传",browse:"浏览"},mde={home:"主页",chat:"智能体",alwaysOn:"常驻",shell:"终端",files:"文件",git:"源代码管理",tasks:"任务",dashboard:"路由",memory:"记忆",skills:"技能"},fde={pickProject:"选一个项目来管理它的技能。",generalChat:"通用聊天 — 仅显示用户级技能",refresh:"刷新",newSkill:"新建",loading:"加载中…",empty:'还没有技能。点 "新建" 来安装或创建一个。',selectHint:"在左侧选一个技能查看或编辑它的 SKILL.md。",projectScope:"项目技能",userScope:"用户技能",save:"保存",saving:"保存中…",savedSuccess:"已保存",delete:"删除",deletedSuccess:"已删除",revert:"撤销",confirmDelete:"确认删除这个技能?整个文件夹会被移除。",discardUnsaved:"放弃未保存的修改?",newTitle:"新建技能",close:"关闭",tabInstall:"从 ClawHub 安装",tabImport:"从文件夹导入",tabCreate:"自己写一个",importSource:"源文件夹",importSourceHint:"包含 SKILL.md 的文件夹绝对路径。波浪号 (~) 会在服务端展开。",importSourceHintBoth:"通过原生对话框选择文件夹,或粘贴绝对路径。~ 在服务端展开。",pickFolder:"选择文件夹…",files:"个文件",complianceCheck:"合规检查",complianceClean:"全部通过。",symlinkUnavailable:"— 选择器上传不支持(没有磁盘上的源路径)。",importSlug:"Slug(目标文件夹名)",importSlugHint:"默认用源文件夹名,可手动改。",importMode:"导入方式",importModeCopy:"复制",importModeCopyHint:"— 独立副本,编辑只发生在 skills 目录。",importModeSymlink:"软链",importModeSymlinkHint:"— 源文件夹的编辑实时同步到 skill;源被删则 skill 失效。",importForce:"已存在时覆盖",importEnableForce:'勾选 "覆盖" 来替换。',importAction:"导入技能",importing:"导入中…",scan:"扫描",scanning:"扫描中…",foundSkills:"在 {{total}} 个子文件夹中找到 {{count}} 个技能",noSkillsFound:"该文件夹下没有找到技能。",selectAll:"全选 ({{count}})",importNSkills:"导入 {{count}} 个技能",batchProgress:"正在导入 {{current}}/{{total}}…",batchComplete:"批量导入完成:{{success}} 个成功,{{failed}} 个失败",batchDone:"完成",noSkillMd:"无 SKILL.md",alreadyExists:"已存在",scope:"范围",scopeUser:"用户",scopeProject:"项目",searchPlaceholder:"在 clawhub.com 搜索…",searchHint:"输入关键词搜索 clawhub.com。",noResults:"没有结果。",install:"安装",installing:"安装中…",installForce:"强制安装",installedSuccess:"已安装 {{name}}",flaggedSuspicious:'"{{slug}}" 被 VirusTotal 标记为可疑。再点一次以 --force 安装。',fieldSlug:"Slug",slugHint:"文件夹名,例如 my-skill",fieldName:"显示名",fieldNamePlaceholder:"可选,默认用 slug",fieldDescription:"描述",descHint:"会显示在 slash 菜单 — 简要说明这个技能做什么、什么时候用。",fieldBody:"初始正文(Markdown)",bodyHint:"可选,之后可以在主视图里详细编辑。",create:"创建技能",creating:"创建中…"},hde={loading:"加载中...",success:"成功",error:"错误",failed:"失败",pending:"待处理",completed:"已完成",inProgress:"进行中"},gde={savedSuccessfully:"保存成功",deletedSuccessfully:"删除成功",updatedSuccessfully:"更新成功",operationFailed:"操作失败",networkError:"网络错误,请检查您的连接。",unauthorized:"未授权,请登录。",notFound:"未找到",invalidInput:"输入无效",requiredField:"此字段为必填项",unknownError:"发生未知错误"},bde={settings:"设置",home:"首页",back:"返回",next:"下一步",previous:"上一步",logout:"退出登录"},xde={language:"语言",theme:"主题",darkMode:"深色模式",lightMode:"浅色模式",name:"名称",description:"描述",enabled:"已启用",disabled:"已禁用",optional:"可选",version:"版本",select:"选择",selectAll:"全选",deselectAll:"取消全选"},yde={justNow:"刚刚",minutesAgo:"{{count}} 分钟前",hoursAgo:"{{count}} 小时前",daysAgo:"{{count}} 天前",yesterday:"昨天"},vde={newFile:"新建文件",newFolder:"新建文件夹",rename:"重命名",move:"移动",copyPath:"复制路径",openInEditor:"在编辑器中打开"},kde={loading:"正在加载 PilotDeck",settingUpWorkspace:"正在设置您的工作空间...",chooseProject:"选择您的项目",selectProjectDescription:"从侧边栏选择一个项目以开始使用 PilotDeck 进行编程。每个项目包含您的聊天会话和文件历史。",tip:"提示",createProjectMobile:"点击上方的菜单按钮以访问项目",createProjectDesktop:"点击侧边栏中的文件夹图标以创建新项目",newSession:"新会话",untitledSession:"未命名会话",projectFiles:"项目文件"},wde={title:"Always-On 总览",description:"在一个界面里查看当前项目的 discovery 计划和定时 cron 任务。",lastUpdated:"最近更新:{{timestamp}}",loadingTitle:"正在加载 Always-On 数据",loadingDescription:"正在读取当前项目的 discovery 计划和定时任务。",emptyTitle:"还没有定时任务",emptyDescription:"当前项目暂时没有可显示的持久化 cron 或本会话任务。",summary:{total:"任务总数",recurring:"循环任务",failed:"最近失败"},status:{draft:"草稿",ready:"待执行",queued:"已排队",scheduled:"待触发",running:"运行中",completed:"已完成",failed:"失败",superseded:"已替代",unknown:"未知"},actions:{viewDetails:"查看 {{id}} 的详情",discoverTasks:"主动发现任务",runNow:"立即执行"},flags:{durable:"持久化",sessionScoped:"本会话",oneShot:"单次",recurring:"循环",manualOnly:"仅手动执行",permanent:"永久"},fields:{scope:"范围",type:"类型",kind:"类别",jobId:"任务 ID",prompt:"提示词",cron:"Cron 表达式",status:"状态",createdAt:"创建时间",lastFiredAt:"上次触发",originSessionId:"来源会话",transcriptKey:"转录键",lastActivity:"最近活动",latestRunSummary:"最近一次运行摘要",latestRunTaskId:"最近一次运行任务 ID",latestRunTranscript:"最近一次运行转录",outputFile:"输出文件"},detail:{title:"任务详情",oneShotRunNowHint:"对单次任务点击“立即执行”只会额外触发一次,不会改变原始定时触发;到原定时间时它仍可能再次执行。",missingTitle:"任务已不可用",missingDescription:"该任务可能已经被删除,或在概览加载后变得不可见。",noLatestRun:"该任务还没有记录到后台运行结果。",sections:{definition:"任务定义",latestRun:"最近一次运行"}},values:{notUpdated:"尚未更新",notAvailable:"暂无"},confirmations:{delete:"确认删除定时任务 {{id}} 吗?"},feedback:{deleted:"已删除定时任务 {{id}}。",runNowStarted:"已立即发起 {{id}}。",alreadyRunning:"任务 {{id}} 正在运行中。"},errors:{loadFailed:"加载 Always-On 数据失败。",deleteFailed:"删除 cron job 失败。",runNowFailed:"立即执行 cron job 失败。"},discovery:{title:"Discovery 计划",description:"由 Always-On discovery 生成、在执行前可审阅的结构化计划。",emptyTitle:"还没有 discovery 计划",emptyDescription:"运行 discovery 后,这里会出现可执行的结构化计划。",summary:{running:"运行中计划"},actions:{viewDetails:"查看详情",openSession:"打开会话",archive:"归档"},fields:{title:"标题",summary:"摘要",rationale:"价值说明",updatedAt:"更新时间",planFile:"计划文件",sourceSession:"discovery 会话",executionSession:"执行会话",executionStartedAt:"开始执行时间",executionLastActivityAt:"最近活动",latestSummary:"最近摘要",contextRefsWorkingDirectory:"工作区信号",contextRefsMemory:"记忆引用",contextRefsPlans:"相关计划",contextRefsCron:"相关 cron 任务",contextRefsChats:"最近聊天"},detail:{meta:"计划元数据",plan:"计划正文",noContent:"这份 discovery 计划暂时没有落盘的 Markdown 正文。",missingTitle:"discovery 计划已不可用",missingDescription:"该计划可能已在概览加载后被更新或归档。"},feedback:{executionQueued:"已将 discovery 计划 {{id}} 加入执行队列。",archived:"已归档 discovery 计划 {{id}}。"},errors:{executeFailed:"执行 discovery 计划失败。",archiveFailed:"归档 discovery 计划失败。"}},cron:{title:"定时 cron 任务",description:"当前项目里已有的持久化和本会话 cron 任务。"}},Sde={loading:"正在加载文件...",files:"文件",simpleView:"简单视图",compactView:"紧凑视图",detailedView:"详细视图",searchPlaceholder:"搜索文件和文件夹...",clearSearch:"清除搜索",name:"名称",size:"大小",modified:"修改时间",permissions:"权限",noFilesFound:"未找到文件",checkProjectPath:"检查项目路径是否可访问",noMatchesFound:"未找到匹配项",tryDifferentSearch:"尝试不同的搜索词或清除搜索",justNow:"刚刚",minAgo:"{{count}} 分钟前",hoursAgo:"{{count}} 小时前",daysAgo:"{{count}} 天前",newFile:"新建文件 (Cmd+N)",newFolder:"新建文件夹 (Cmd+Shift+N)",refresh:"刷新",collapseAll:"全部折叠",context:{rename:"重命名",delete:"删除",copyPath:"复制路径",download:"下载",newFile:"新建文件",newFolder:"新建文件夹",refresh:"刷新",menuLabel:"文件上下文菜单",loading:"加载中..."}},Ede={title:"创建新项目",steps:{type:"类型",configure:"配置",confirm:"确认"},step1:{question:"您已经有工作区,还是想创建一个新的工作区?",existing:{title:"现有工作区",description:"我的服务器上已经有工作区,只需要将其添加到项目列表中"},new:{title:"新建工作区",description:"创建一个新工作区,可选择从 GitHub 仓库克隆"}},step2:{existingPath:"工作区路径",newPath:"工作区路径",existingPlaceholder:"/path/to/existing/workspace",newPlaceholder:"/path/to/new/workspace",existingHelp:"您现有工作区目录的完整路径",newHelp:"工作区目录的完整路径",githubUrl:"GitHub URL(可选)",githubPlaceholder:"https://github.com/username/repository",githubHelp:"可选:提供 GitHub URL 以克隆仓库",githubAuth:"GitHub 身份验证(可选)",githubAuthHelp:"仅私有仓库需要。公共仓库无需身份验证即可克隆。",loadingTokens:"正在加载已保存的令牌...",storedToken:"已保存的令牌",newToken:"新令牌",nonePublic:"无(公共)",selectToken:"选择令牌",selectTokenPlaceholder:"-- 选择令牌 --",tokenPlaceholder:"ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",tokenHelp:"此令牌仅用于此操作",publicRepoInfo:"公共仓库不需要身份验证。如果克隆公共仓库,可以跳过提供令牌。",noTokensHelp:"没有可用的已保存令牌。您可以在 设置 → API 密钥 中添加令牌以便重复使用。",optionalTokenPublic:"GitHub 令牌(公共仓库可选)",tokenPublicPlaceholder:"ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(公共仓库可留空)"},step3:{reviewConfig:"查看您的配置",workspaceType:"工作区类型:",existingWorkspace:"现有工作区",newWorkspace:"新建工作区",path:"路径:",cloneFrom:"克隆自:",authentication:"身份验证:",usingStoredToken:"使用已保存的令牌:",usingProvidedToken:"使用提供的令牌",noAuthentication:"无身份验证",sshKey:"SSH 密钥",existingInfo:"工作区将添加到您的项目列表,可用于 PilotDeck 会话。",newWithClone:"仓库将从此文件夹克隆。",newEmpty:"工作区将添加到您的项目列表,可用于 PilotDeck 会话。",cloningRepository:"正在克隆仓库..."},buttons:{cancel:"取消",back:"返回",next:"下一步",createProject:"创建项目",creating:"创建中...",cloning:"正在克隆..."},errors:{selectType:"请选择您已有现有工作区还是想创建新工作区",providePath:"请提供工作区路径",failedToCreate:"创建工作区失败",failedToCreateFolder:"创建文件夹失败"}},Cde={genericTool:"工具",codes:{generic:{info:{title:"通知"}},permission:{required:{title:"需要处理",body:"{{toolName}} 正在等待你的决策。"}},run:{stopped:{title:"运行已停止",body:"原因:{{reason}}"},failed:{title:"运行失败"}},agent:{notification:{title:"Agent 通知"}}}},Nde={title:"有可用更新",newVersionReady:"新版本已准备就绪",currentVersion:"当前版本",latestVersion:"最新版本",whatsNew:"新内容:",viewFullRelease:"查看完整发布",updateProgress:"更新进度:",manualUpgrade:"手动升级:",npmUpgradeCommand:"git pull && npm run build && (cd ui && npm run build)",manualUpgradeHint:"或点击'立即更新'以自动运行更新。",updateCompleted:"更新成功完成!",restartServer:"请重启服务器以应用更改。",updateFailed:"更新失败",buttons:{close:"关闭",later:"稍后",copyCommand:"复制命令",updateNow:"立即更新",updating:"更新中..."},ariaLabels:{closeModal:"关闭版本升级模态框",showSidebar:"显示侧边栏",settings:"设置",updateAvailable:"有可用更新",closeSidebar:"关闭侧边栏"}},Tde={buttons:pde,tabs:mde,skillsTab:fde,status:hde,messages:gde,navigation:bde,common:xde,time:yde,fileOperations:vde,mainContent:kde,alwaysOn:wde,fileTree:Sde,projectWizard:Ede,notifications:Cde,versionUpdate:Nde},Ade="设置",Ide={account:"账户",permissions:"权限",mcpServers:"MCP 服务器",appearance:"外观"},Rde={title:"账户",language:"语言",languageLabel:"显示语言",languageDescription:"选择您偏好的界面语言",username:"用户名",email:"邮箱",profile:"个人资料",changePassword:"修改密码"},_de={title:"MCP 服务器",addServer:"添加服务器",editServer:"编辑服务器",deleteServer:"删除服务器",serverName:"服务器名称",serverType:"服务器类型",config:"配置",testConnection:"测试连接",status:"状态",connected:"已连接",disconnected:"未连接",scope:{label:"范围",user:"用户",project:"项目"}},jde={title:"外观",theme:"主题",codeEditor:"代码编辑器",editorTheme:"编辑器主题",wordWrap:"自动换行",showMinimap:"显示缩略图",lineNumbers:"行号",fontSize:"字体大小"},Ode={saveChanges:"保存更改",resetToDefaults:"重置为默认值",cancelChanges:"取消更改"},Dde={title:"快速设置",sections:{appearance:"外观",toolDisplay:"工具显示",viewOptions:"视图选项",inputSettings:"输入设置"},darkMode:"深色模式",autoExpandTools:"自动展开工具",showRawParameters:"显示原始参数",showThinking:"显示思考过程",autoScrollToBottom:"自动滚动到底部",sendByCtrlEnter:"使用 Ctrl+Enter 发送",sendByCtrlEnterDescription:"启用后,按 Ctrl+Enter 发送消息,而不是仅按 Enter。这对于使用输入法的用户可以避免意外发送。",dragHandle:{dragging:"正在拖拽手柄",closePanel:"关闭设置面板",openPanel:"打开设置面板",draggingStatus:"正在拖拽...",toggleAndMove:"点击切换,拖拽移动"}},Mde={title:"终端快捷键",sectionKeys:"按键",sectionNavigation:"导航",escape:"Escape",tab:"Tab",shiftTab:"Shift+Tab",arrowUp:"上箭头",arrowDown:"下箭头",scrollDown:"滚动到底部",handle:{closePanel:"关闭快捷键面板",openPanel:"打开快捷键面板"}},Lde={label:"设置",agents:"智能体",appearance:"外观",permissions:"权限",git:"Git",apiTokens:"API 和令牌",tasks:"任务",notifications:"通知",plugins:"插件",router:"路由",config:"服务配置",about:"关于"},Pde={back:"返回",close:"关闭设置",basics:"基础",configRequiredDescription:"运行本服务前需要配置模型服务。",application:"外观",workflow:"工作流",advanced:"高级",config:{detail:"模型池、智能体、路由、记忆、搜索和服务参数"},mcp:{detail:"通过全局或项目 JSON 配置 MCP 工具"},appearanceMode:{title:"主题模式",detail:"跟随系统外观,或固定为浅色 / 深色主题。",system:"系统跟随",light:"浅色",dark:"深色"},chatInput:{title:"聊天与输入",detail:"工具显示、滚动行为和发送快捷键"},codeEditor:{detail:"自动换行、行号、缩略图和字号"},permissions:{detail:"管理允许和禁用的工具规则"}},Fde={title:"通知",description:"控制你希望接收的通知事件。",webPush:{title:"Web 推送通知",enable:"启用推送通知",disable:"关闭推送通知",enabled:"推送通知已启用",loading:"更新中...",unsupported:"此浏览器不支持推送通知。",denied:"推送通知已被阻止,请在浏览器设置中允许。"},events:{title:"事件类型",actionRequired:"需要处理",stop:"运行已停止",error:"运行失败"}},Bde={darkMode:{label:"深色模式",description:"切换浅色和深色主题"},projectSorting:{label:"项目排序",description:"项目在侧边栏中的排列方式",alphabetical:"按字母顺序",recentActivity:"最近活动"},codeEditor:{title:"代码编辑器",theme:{label:"编辑器主题",description:"代码编辑器的默认主题"},wordWrap:{label:"自动换行",description:"在编辑器中默认启用自动换行"},showMinimap:{label:"显示缩略图",description:"在差异视图中显示缩略图以便于导航"},lineNumbers:{label:"显示行号",description:"在编辑器中显示行号"},fontSize:{label:"字体大小",description:"仅作用于代码编辑器视图(px)。聊天和侧边栏沿用系统默认字号。"}}},$de={title:{add:"添加 MCP 服务器",edit:"编辑 MCP 服务器"},importMode:{form:"表单输入",json:"JSON 导入"},scope:{label:"范围",userGlobal:"用户(全局)",projectLocal:"项目(本地)",userDescription:"用户范围:在您机器上的所有项目中可用",projectDescription:"本地范围:仅在选定项目中可用",cannotChange:"编辑现有服务器时无法更改范围"},fields:{serverName:"服务器名称",transportType:"传输类型",command:"命令",arguments:"参数(每行一个)",jsonConfig:"JSON 配置",url:"URL",envVars:"环境变量(KEY=值,每行一个)",headers:"请求头(KEY=值,每行一个)",selectProject:"选择项目..."},placeholders:{serverName:"我的服务"},validation:{missingType:"缺少必填字段:type",stdioRequiresCommand:"stdio 类型需要 command 字段",httpRequiresUrl:"{{type}} 类型需要 url 字段",invalidJson:"无效的 JSON 格式",jsonHelp:"粘贴您的 MCP 服务器配置(JSON 格式)。示例格式:",jsonExampleStdio:'• stdio: {"type":"stdio","command":"npx","args":["@upstash/context7-mcp"]}',jsonExampleHttp:'• http/sse: {"type":"http","url":"https://api.example.com/mcp"}'},configDetails:"配置详细信息(来自 {{configFile}})",projectPath:"路径:{{path}}",actions:{cancel:"取消",saving:"保存中...",addServer:"添加服务器",updateServer:"更新服务器"}},Ude={success:"设置保存成功!",error:"保存设置失败",saving:"保存中..."},zde={save:"保存设置",cancel:"取消"},qde={title:"Git 配置",description:"配置您的 git 提交身份。这些设置将通过 git config --global 全局应用",name:{label:"Git 名称",help:"您的 git 提交名称"},email:{label:"Git 邮箱",help:"您的 git 提交邮箱"},actions:{save:"保存配置",saving:"保存中..."},status:{success:"保存成功"}},Hde={title:"API 密钥",description:"生成 API 密钥以从其他应用访问外部 API。",newKey:{alertTitle:"⚠️ 保存您的 API 密钥",alertMessage:"这是您唯一一次看到此密钥。请妥善保存。",iveSavedIt:"我已保存"},form:{placeholder:"API 密钥名称(例如:生产服务器)",createButton:"创建",cancelButton:"取消"},newButton:"新建 API 密钥",empty:"尚未创建 API 密钥。",list:{created:"创建时间:",lastUsed:"最后使用:"},confirmDelete:"确定要删除此 API 密钥吗?",status:{active:"激活",inactive:"未激活"},github:{title:"GitHub 令牌",description:"添加 GitHub 个人访问令牌以通过外部 API 克隆私有仓库。",descriptionAlt:"添加 GitHub 个人访问令牌以克隆私有仓库。您也可以直接在 API 请求中传递令牌而无需存储。",addButton:"添加令牌",form:{namePlaceholder:"令牌名称(例如:个人仓库)",tokenPlaceholder:"GitHub 个人访问令牌(ghp_...)",descriptionPlaceholder:"描述(可选)",addButton:"添加令牌",cancelButton:"取消",howToCreate:"如何创建 GitHub 个人访问令牌 →"},empty:"尚未添加 GitHub 令牌。",added:"添加时间:",confirmDelete:"确定要删除此 GitHub 令牌吗?"},apiDocsLink:"API 文档",documentation:{title:"外部 API 文档",description:"了解如何使用外部 API 从您的应用程序触发 PilotDeck 会话。",viewLink:"查看 API 文档 →"},loading:"加载中...",version:{updateAvailable:"有可用更新:v{{version}}"}},Gde={checking:"正在检查 TaskMaster 安装...",notInstalled:{title:"未安装 TaskMaster AI CLI",description:"需要 TaskMaster CLI 才能使用任务管理功能。安装它以开始使用:",installCommand:"npm install -g task-master-ai",viewOnGitHub:"在 GitHub 上查看",afterInstallation:"安装后:",steps:{restart:"重启此应用程序",autoAvailable:"TaskMaster 功能将自动可用",initCommand:"在项目目录中使用 task-master init"}},settings:{enableLabel:"启用 TaskMaster 集成",enableDescription:"在整个界面中显示 TaskMaster 任务、横幅和侧边栏指示器"}},Vde={authStatus:{checking:"检查中...",connected:"已连接",notConnected:"未连接",disconnected:"已断开",checkingAuth:"正在检查认证状态...",loggedInAs:"登录为 {{email}}",authenticatedUser:"已认证用户"},account:{claude:{description:"Anthropic Claude AI 助手"},cursor:{description:"Cursor AI 驱动的代码编辑器"},codex:{description:"OpenAI Codex AI 助手"},gemini:{description:"Google Gemini AI 助手"},pilotdeck:{description:"OpenBMB PilotDeck AI 助手"}},connectionStatus:"连接状态",login:{title:"登录",reAuthenticate:"重新认证",description:"登录您的 {{agent}} 账户以启用 AI 功能",reAuthDescription:"使用其他账户登录或刷新凭据",button:"登录",reLoginButton:"重新登录"},error:"错误:{{error}}"},Wde={title:"权限设置",description:"管理助手可以无需询问即可运行的工具。从聊天中点击「添加权限」授予的项也会落到这里。",export:"导出",import:"导入",importExportHint:"可将权限列表导出为 JSON,便于备份或与他人共享。",exportSuccess:"已导出 {{allowed}} 个允许工具与 {{blocked}} 个禁用工具。",exportError:"导出权限失败。",importReadError:"无法读取选中的文件。",importInvalid:"文件不是有效的权限导出(需要包含 allowedTools / disallowedTools 的 JSON)。",importConfirmBody:"将导入的 {{allowed}} 个允许工具与 {{blocked}} 个禁用工具合并到现有权限?",importSuccess:"导入完成,新增 {{addedAllowed}} 个允许工具与 {{addedBlocked}} 个禁用工具。",skipPermissions:{title:"跳过权限确认",description:"工具调用不再弹出确认,等同于 bypassPermissions。仅建议在可信工作区中开启。",warning:"当前已跳过权限确认。下方允许/禁用规则仍会保存,但这个全局模式会让智能体无需询问即可运行工具。"},allowedTools:{title:"允许的工具",description:"无需权限提示即可自动使用的工具",placeholder:'例如:"Bash(git log:*)" 或 "Write"',quickAdd:"快速添加常用工具:",empty:"未配置允许的工具"},blockedTools:{title:"禁用的工具",description:"无需权限提示即可自动禁用的工具",placeholder:'例如:"Bash(rm:*)"',empty:"未配置禁用的工具"},allowedCommands:{title:"允许的 Shell 命令",description:"无需权限提示即可自动执行的 Shell 命令",placeholder:'例如:"Shell(ls)" 或 "Shell(git status)"',quickAdd:"快速添加常用命令:",empty:"未配置允许的命令"},blockedCommands:{title:"阻止的 Shell 命令",description:"自动阻止的 Shell 命令",placeholder:'例如:"Shell(rm -rf)" 或 "Shell(sudo)"',empty:"未配置阻止的命令"},toolExamples:{title:"工具模式示例:",bashGitLog:"- 允许所有 git log 命令",bashGitDiff:"- 允许所有 git diff 命令",write:"- 允许所有 Write 工具使用",bashRm:"- 阻止所有 rm 命令(危险)"},shellExamples:{title:"Shell 命令示例:",ls:"- 允许 ls 命令",gitStatus:"- 允许 git status",npmInstall:"- 允许 npm install",rmRf:"- 阻止递归删除"},codex:{permissionMode:"权限模式",description:"控制 Codex 如何处理文件修改和命令执行",modes:{default:{title:"默认",description:"只有受信任的命令(ls、cat、grep、git status 等)会自动运行。其他命令将被跳过。可以写入工作区。"},acceptEdits:{title:"接受编辑",description:"所有命令在工作区内自动运行。具有沙箱执行的全自动模式。"},bypassPermissions:{title:"绕过权限",description:"完全系统访问,无任何限制。所有命令自动运行,具有完整的磁盘和网络访问权限。请谨慎使用。"}},technicalDetails:"技术详情",technicalInfo:{default:"sandboxMode=workspace-write, approvalPolicy=untrusted。受信任的命令:cat、cd、grep、head、ls、pwd、tail、git status/log/diff/show、find(不带 -exec)等。",acceptEdits:"sandboxMode=workspace-write, approvalPolicy=never。所有命令在项目目录内自动执行。",bypassPermissions:"sandboxMode=danger-full-access, approvalPolicy=never。完全系统访问权限,仅在可信环境中使用。",overrideNote:"您可以使用聊天界面中的模式按钮按会话覆盖此设置。"}},actions:{add:"添加",remove:"移除"}},Kde={title:"MCP 服务器",description:{pilotdeck:"Model Context Protocol 服务器为 PilotDeck 提供额外的工具和数据源",cursor:"Model Context Protocol 服务器为 Cursor 提供额外的工具和数据源",codex:"Model Context Protocol 服务器为 Codex 提供额外的工具和数据源"},addButton:"添加 MCP 服务器",empty:"未配置 MCP 服务器",serverType:"类型",scope:{local:"本地",user:"用户"},config:{command:"命令",url:"URL",args:"参数",environment:"环境变量"},tools:{title:"工具",count:"({{count}}):",more:"还有 {{count}} 个"},actions:{edit:"编辑服务器",delete:"删除服务器"},help:{title:"关于 Codex MCP",description:"Codex 支持基于 stdio 的 MCP 服务器。您可以添加服务器,通过额外的工具和资源来扩展 Codex 的功能。"}},Yde={title:"MCP 服务器",description:"编辑 PilotDeck MCP 配置。全局配置位于 ~/.pilotdeck/mcp.json;项目配置位于 .pilotdeck/mcp.json,同名服务器会覆盖全局配置。",project:"项目级配置对应的项目",scopes:{global:"全局",project:"项目"},serverCount:"已配置 {{count}} 个服务器",serverCount_plural:"已配置 {{count}} 个服务器",noPath:"配置路径不可用",addStdio:"添加 stdio 模板",addRemote:"添加远程模板",saved:"MCP 配置已保存。新的会话和下一次运行时重建会使用它。",fixJsonBeforeTemplate:"请先修复 JSON,再插入模板。",empty:"还没有配置 MCP 服务器。",advanced:"高级:原始 JSON",expand:"展开",unnamed:"未命名服务器",noSummary:"未配置命令或 URL",nameRequired:"保存前每个 MCP 服务器都需要填写名称。",transport:{http:"流式 HTTP"},fields:{name:"名称",command:"启动命令",args:"参数",env:"环境变量",envPassThrough:"环境变量传递",perSession:"每个会话独立启动",perSessionHelp:"每个 Agent 会话启动一个新的 MCP 进程。",url:"URL",headers:"请求头"},placeholders:{key:"键",value:"值"},actions:{addArg:"添加参数",addEnv:"添加环境变量",addVariable:"添加变量",addHeader:"添加请求头"}},Xde={loading:"正在加载 PilotDeck 配置...",header:{configFile:"配置文件",configPreview:"配置预览",unsaved:"未保存"},viewMode:{form:"表单",rawYaml:"原始 YAML"},actions:{opening:"正在打开...",revealFile:"在访达中显示",refresh:"刷新",reloadCurrent:"重新加载当前配置",saving:"保存中...",saveAndReload:"保存并重新加载当前配置",saveAndReloadShort:"保存并重载",remove:"移除",removeModel:"移除模型",add:"添加",dismiss:"忽略",showDetails:"展开配置详情",hideDetails:"收起配置详情"},status:{unsavedChanges:"未保存更改",noUnsavedChanges:"无未保存更改",fixYamlInFilesystem:"请在文件系统中修复配置文件后刷新。",subsystems:{pending:"等待配置解析。",processEnv:{label:"进程环境",applied:"原生设置已应用到当前进程。"},memory:{label:"记忆",enabled:"记忆服务已启用。",disabled:"memory.enabled 为 false。"},router:{label:"路由 (CCR)",enabled:"路由看板使用原生记录。",disabled:"router.enabled 为 false。"},gateway:{label:"网关",enabled:"网关已启用。",disabled:"gateway.enabled 为 false。"}}},rawYaml:{configValid:"配置有效",unsaved:"(未保存)",configInvalid:"配置存在校验错误",configInvalidSeeBelow:"配置存在校验错误——见下方",errors:"错误",warnings:"警告",yamlParseError:"配置文件 YAML 解析失败。请在文件系统中修复后刷新。",cannotParse:"无法解析配置文件 YAML。请在文件系统中修复后点击刷新。",rawYaml:"原始 YAML"},sectionGroups:{basic:"基础",basicDescription:"运行本服务前需要配置模型服务。",features:"功能",advanced:"高级"},sections:{backToMenu:"返回服务配置",runtime:{label:"服务",description:"端口、代理和路径"},models:{label:"模型池",description:"可供智能体、记忆和路由选择的模型"},agents:{label:"智能体",description:"主智能体和子智能体的模型绑定"},alwaysOn:{label:"常驻",description:"自动发现和工作区启用设置"},memory:{label:"记忆",description:"PilotDeck 记忆服务"},tools:{label:"搜索",description:"Web 搜索提供商"},customEnv:{label:"环境变量",description:"跨会话持久化的自定义环境变量"},router:{label:"路由",description:"PilotDeck Router"},gateway:{label:"网关",description:"消息网关主页和频道"}},panels:{runtime:{title:"服务",description:"配置服务端口、数据路径和网络代理。修改端口或路径后通常需要重启服务。",advancedToggle:"高级设置",fields:{host:{label:"主机",description:"HTTP/WebSocket 服务器的绑定接口。"},serverPort:{label:"服务器端口",description:"Express + WebSocket 端口。"},vitePort:{label:"Vite 端口",description:"前端开发服务器(仅在运行 npm run dev 时使用)。"},proxyPort:{label:"代理端口",description:"本地 LLM 代理(PilotDeck 智能体目标)。"},apiTimeout:{label:"API 超时(毫秒)",description:"每次请求的上游超时。"},databasePath:{label:"数据库路径",description:"SQLite 认证/项目数据库(~ 展开为主目录)。"},workspacesRoot:{label:"工作区根目录",description:"项目扫描的根目录。"},httpsProxy:{label:"HTTPS 代理",description:"出站 HTTPS 代理 URL(HTTPS_PROXY / https_proxy)。"}}},models:{title:"模型池",description:"配置想使用的模型提供商、API 密钥、接口地址与启用模型。智能体、记忆和路由会从这里的已启用模型中选择。",providerIdDuplicate:"已有同名 Provider id。",addProvider:"添加提供商",addProviderTitle:"添加提供商",cancel:"取消",customProvider:"自定义",manualSetup:"手动配置",modelCount:"共 {{count}} 个模型",emptyProviders:"尚未配置提供商。点击“添加提供商”开始配置。",providerId:"ID",protocol:"协议",protocolOptions:{openai:"openai(聊天补全)",anthropic:"anthropic(消息 API)"},baseUrl:"接口地址",baseUrlHint:"OpenAI 兼容接口请填到 /v1,例如 https://api.example.com/v1。",defaultsTo:"默认使用目录中的",fromCatalog:"。",effective:"实际地址:",apiKey:"API 密钥",maskedKeyPlaceholder:"已保留现有密钥,如需替换请重新输入",keyHidden:"密钥已隐藏;留空会继续保留,重新输入可替换。",enabledModels:"已启用模型",supportsImageInput:"支持图片输入",clickEnable:"点击启用",clickDisable:"点击禁用",customModelPlaceholder:"自定义模型 ID"},agents:{title:"智能体",description:"设置主智能体、子智能体和模型参数。",advancedToggle:"高级设置",mainModel:{label:"主智能体模型",description:"主对话使用的模型。"},capabilities:{title:"模型设置",imageInput:"图片输入",enabled:"已启用",disabled:"已禁用",overrideActive:"已手动设置图片输入。",catalogSupportsImage:"目录默认支持图片。",catalogTextOnly:"目录默认仅文本。",noCatalog:"无目录条目,默认仅文本。",imageWarning:"请只在上游确实支持图片时启用。",maxOutputTokens:"最大输出 Token 数",maxOutputDescription:"单次回复最多生成的 Token。留空使用默认值。",maxContextTokens:"最大上下文 Token 数",maxContextDescription:"自动压缩参考的上下文窗口。留空使用模型默认值。"},subagents:{label:"子智能体默认模型",description:"非路由路径下子智能体默认使用的模型。",inherit:"继承主智能体模型",routerNote:"启用 PilotDeck Router 或 Token 节省后,子智能体请求会先进入路由器;默认会按子智能体策略重新判定层级并选择模型。这里的默认模型只作为直接子智能体路径或继承兜底,不会覆盖 Router 高级设置中的子智能体路由策略。"}},customEnv:{title:"环境变量",description:"注入到每个智能体会话里的自定义环境变量。持久化到配置文件,切换会话不必重新配置。",empty:"未配置自定义环境变量。",existingValueKept:"保留现有值——输入新值以替换",addVariable:"添加变量",valueHidden:"值已隐藏;保持原样以保留,重新输入以替换。",quickAddKeys:"快速添加常用密钥:",add:"添加"},alwaysOn:{title:"Always-On",description:"配置全局自动发现,并按工作区单独开关。",enabled:{label:"启用",description:"常驻后台智能体的总开关。"},trigger:{title:"触发",description:"控制自动发现何时、多久触发一次。",autoDiscovery:{label:"自动发现",description:"启用后,常驻模式会定期检查已接入的工作区并提出后续计划。"},tickInterval:{label:"检查间隔(分钟)",description:"守护进程检查已接入工作区的频率。"},cooldown:{label:"冷却时间(分钟)",description:"每个工作区两次发现运行之间的最短间隔。"},dailyBudget:{label:"每日预算",description:"每个工作区每天最多自动发现运行次数。"},heartbeatStale:{label:"心跳过期(秒)",description:"超过此时间的心跳视为过期。"},recentUserMsg:{label:"最近用户消息(分钟)",description:"仅在用户于此时间窗口内发送过消息时触发。"},preferChannel:{label:"首选频道",description:"发现智能体偏好使用的交互频道。"}},dormancy:{title:"休眠",description:"文件系统监听:用户正在活跃编辑时暂停自动发现。",enabled:{label:"启用",description:"当工作区有近期文件变更时暂停发现触发。"},debounce:{label:"防抖(毫秒)",description:"最后一次文件变更后等待此时长再恢复。"},ignoreGlobs:{label:"忽略匹配模式",description:"不参与休眠检测的文件匹配模式,每行一个。"}},workspace:{title:"工作区",description:"常驻模式跑批的工作区隔离策略。",gitWorktree:{label:"Git 工作树根目录",description:"基于 Git 工作树隔离的根目录。"},snapshotDir:{label:"快照根目录",description:"基于快照隔离的根目录。"},snapshotMaxBytes:{label:"快照最大字节数",description:"工作区快照的最大大小。"},gitLfs:{label:"Git LFS",description:"在工作区快照中包含 Git LFS 对象。"}},execution:{title:"执行",description:"每次常驻模式跑批的安全上限。",maxTurns:{label:"最大轮次",description:"每次运行的最大智能体轮次数。"},maxToolCalls:{label:"最大工具调用数",description:"每次运行的最大工具调用总数。"},timeout:{label:"超时(分钟)",description:"每次运行的硬性超时。"}},workspaceOptIn:{title:"工作区接入",description:"只有勾选的工作区会收到常驻模式心跳和定时发现检查。",empty:"尚未识别到项目。请先添加或打开一个工作区。"}},memory:{title:"记忆",description:"配置记忆索引与 Dream 使用的模型。",enabled:{label:"启用",description:"启用记忆服务的总开关。"},model:{label:"记忆模型",description:"记忆管线使用的提供商/模型。",inherit:"继承(使用主智能体模型)"}},tools:{title:"搜索",description:"配置智能体 web_search 工具使用的搜索服务。",provider:{label:"搜索提供商",description:"当前启用的搜索服务。",glm:"GLM / Z.AI Web Search",tavily:"Tavily",custom:"自定义"},apiKey:{label:"API 密钥",description:"当前提供商的 API 密钥。",placeholder:"提供商 API Key",maskedPlaceholder:"已保留现有密钥,如需替换请重新输入",keyHidden:"密钥已隐藏;留空会继续保留,重新输入可替换。"},endpoint:{label:"接口地址",description:"自定义接口地址,留空使用默认地址。",placeholder:"默认接口地址"},custom:{name:{label:"名称",description:"自定义搜索服务的名称。"},auth:{label:"鉴权方式",description:"API Key 的传递方式。",bearer:"Bearer header",bodyApiKey:"API Key 放在 JSON body",queryApiKey:"API Key 放在 query string",none:"不使用 API Key"},method:{label:"HTTP 方法",description:"请求方法。"},params:{label:"参数名",description:"搜索词和 API Key 的参数名。"},mapping:{label:"结果字段映射",description:"从响应中读取搜索结果的字段。"}},test:{button:"测试连接",testing:"测试中…",needsKey:"请先填写 API Key。",success:"连接正常:{{count}} 条结果,{{latency}}ms。",failedPrefix:"连接失败:{{error}}"}},router:{title:"PilotDeck Router",description:"内嵌路由器,跨提供商路由分发(按层级分流、Token 节省、自动编排)。",enabled:{label:"启用",description:"启用后,智能体通过路由器而非直接使用配置的提供商。"},advancedToggle:"高级设置",levels:{modelPlaceholder:"选择已配置模型",default:{label:"Default",description:"没有命中特定层级时使用的主路由。"},judge:{label:"判定模型",description:"用于先判定请求复杂度,再选择省 Token 层级的模型。"},simple:{label:"Simple",description:"快速问答、确认、轻量改写和简单文件操作。"},medium:{label:"Medium",description:"单次工具调用、短文本生成、少量文件修改和常规代码变更。"},complex:{label:"Complex",description:"需要拆分或交给子智能体处理的任务。"},reasoning:{label:"Reasoning",description:"多文件分析、长上下文、报告和深度推理任务。"}},zeroUsageRetry:{label:"Zero-usage 重试",description:"上游返回零 Token 用量响应时自动重试。",maxAttempts:{label:"最大重试次数",description:"放弃前的最大重试次数。"}},tokenSaver:{title:"Token 节省",description:"轻量级判定器将每轮对话分类到对应层级,并路由到成本适合的模型。",judgeModel:"判定模型",defaultTier:"默认层级",judgeTimeout:{label:"判定超时(毫秒)",description:"等待判定结果的最长时间。"},subagentPolicy:{label:"子智能体策略",description:"子智能体的路由方式:'judge' 重新评估每个子智能体轮次,'skip' 保持子智能体直接路由。"}},autoOrchestrate:{title:"自动编排",description:"当判定器分配到特定层级时,自动将复杂轮次展开为并行子智能体。",triggerTiers:"触发层级",slimPrompt:{label:"精简系统提示",description:"为编排的子智能体使用更短的系统提示以节省 Token。"}},stats:{label:"统计收集",description:"跟踪每个会话的 Token 用量和成本。为仪表板提供数据。"},pricing:{title:"模型定价",description:"每个模型的自定义定价($/百万 Token)。在 API 不报告成本时使用。",keyFormat:"键格式:",empty:"未配置自定义定价。内置默认值覆盖常见模型(DeepSeek、Claude、GPT、Gemini、GLM、Qwen、Llama 等)。",inputPerM:"输入 $/M",outputPerM:"输出 $/M",cachePerM:"缓存 $/M",addTitle:"添加模型定价",add:"添加"},scenarios:{title:"场景",description:"将场景名称映射到模型。default 是主要路由。",empty:"未配置场景。",add:"添加"},fallback:{title:"回退链",description:"每个场景的有序回退模型。如果主模型失败,路由器尝试下一个。",empty:"未配置回退链。",addModel:"添加回退模型",add:"添加"},tiers:{title:"层级",description:"判定器可路由到的复杂度层级。为每个层级选择模型——描述已预填。",placeholder:"描述判定器何时应选择此层级…",add:"添加"},rules:{title:"判定规则",empty:"无自定义规则。判定器仅使用层级描述。",placeholder:"为判定器添加规则…",add:"添加"}},gateway:{title:"网关",description:"消息网关(飞书 / Telegram / Discord / Slack)—— 频道级密钥建议用原始 YAML 编辑。",enabled:{label:"启用",description:"启用后,网关主目录将被生成,配有凭据的频道将上线。"},home:{label:"网关主目录",description:"网关状态和各频道配置的工作目录。"}},subsystemReload:{title:"子系统重载状态",fallbackDescription:"首次保存或外部编辑后会出现重载状态。",lastReload:"上次重载:{{source}} 于 {{time}}"}}},Zde={title:"插件",description:"通过自定义插件扩展界面。从 git 安装或直接将文件夹放入 ~/.pilotdeck/plugins/",installPlaceholder:"https://github.com/user/my-plugin",installButton:"安装",installing:"安装中…",securityWarning:"仅安装您已审查过源代码或信任作者的插件。",scanningPlugins:"正在扫描插件…",noPluginsInstalled:"未安装插件",pullLatest:"从 git 拉取最新内容",noGitRemote:"无 git 远程仓库 — 无法更新",uninstallPlugin:"卸载插件",confirmUninstall:"再次点击确认",confirmUninstallMessage:"移除 {{name}}?此操作无法撤销。",cancel:"取消",remove:"移除",updateFailed:"更新失败",installFailed:"安装失败",uninstallFailed:"卸载失败",toggleFailed:"切换失败",buildYourOwn:"构建您自己的插件",starter:"入门模板",docs:"文档",starterPlugin:{name:"项目统计",badge:"入门",description:"查看项目的文件数、代码行数、文件类型分布以及最近活动。",install:"安装"},morePlugins:"更多",enable:"启用",disable:"禁用",installAriaLabel:"插件 git 仓库 URL",tab:"标签",runningStatus:"运行中"},Jde={title:Ade,tabs:Ide,account:Rde,mcp:_de,appearance:jde,actions:Ode,quickSettings:Dde,terminalShortcuts:Mde,mainTabs:Lde,settingsHome:Pde,notifications:Fde,appearanceSettings:Bde,mcpForm:$de,saveStatus:Ude,footerActions:zde,git:qde,apiKeys:Hde,tasks:Gde,agents:Vde,permissions:Wde,mcpServers:Kde,mcpConfig:Yde,pilotDeckConfig:Xde,pluginSettings:Zde},Qde={title:"欢迎回来",description:"登录您的 PilotDeck 账户",username:"用户名",password:"密码",submit:"登录",loading:"登录中...",errors:{invalidCredentials:"用户名或密码无效",requiredFields:"请填写所有字段",networkError:"网络错误,请重试。"},placeholders:{username:"输入您的用户名",password:"输入您的密码"}},epe={title:"创建账户",username:"用户名",password:"密码",confirmPassword:"确认密码",submit:"创建账户",loading:"创建账户中...",errors:{passwordMismatch:"密码不匹配",usernameTaken:"用户名已被占用",weakPassword:"密码强度太弱"}},tpe={title:"退出登录",confirm:"确定要退出登录吗?",button:"退出登录"},npe={login:Qde,register:epe,logout:tpe},rpe={title:"项目",newProject:"新建项目",deleteProject:"删除项目",renameProject:"重命名项目",noProjects:"未找到项目",loadingProjects:"加载项目中...",searchPlaceholder:"搜索项目...",projectNamePlaceholder:"项目名称",starred:"星标",all:"全部",untitledSession:"未命名会话",newSession:"新会话",codexSession:"Codex 会话",fetchingProjects:"正在获取您的 PilotDeck 项目和会话",projects:"项目",noMatchingProjects:"未找到匹配的项目",tryDifferentSearch:"尝试调整您的搜索词",runPilotDeckCli:"在项目目录中运行 PilotDeck CLI 以开始使用"},ape={title:"通用",name:"通用",missing:"未找到通用工作区"},ipe={label:"侧边栏分区"},spe="重命名 - 留空恢复默认",ope={label:"操作菜单"},lpe={title:"PilotDeck",subtitle:"AI 编程助手"},cpe={title:"会话",newSession:"新建会话",deleteSession:"删除会话",renameSession:"重命名会话",noSessions:"暂无会话",unsaved:"尚未保存",sending:"发送中…",loadingSessions:"加载会话中...",unnamed:"未命名",loading:"加载中...",loadingMore:"加载更多中…",showMore:"显示更多会话",showMoreCount:"显示更多 ({{count}})"},upe={viewEnvironments:"查看环境",hideSidebar:"隐藏侧边栏",createProject:"创建新项目",refresh:"刷新项目和会话 (Ctrl+R)",renameProject:"重命名项目 (F2)",deleteProject:"删除空项目 (Delete)",showSidebar:"显示侧边栏",newChat:"新建对话",addToFavorites:"添加到收藏",removeFromFavorites:"从收藏移除",editSessionName:"手动编辑会话名称",deleteSession:"永久删除此会话",save:"保存",cancel:"取消",clearSearch:"清除搜索"},dpe={chat:"智能体",files:"文件",git:"Git",terminal:"终端",tasks:"任务"},ppe={refresh:"刷新",dashboard:"仪表盘",settings:"设置",collapseAll:"全部折叠",expandAll:"全部展开",cancel:"取消",save:"保存",delete:"删除",rename:"重命名",joinCommunity:"加入社区",reportIssue:"报告问题",starOnGithub:"在GitHub上加星"},mpe={openSource:"开源"},fpe={active:"活动",inactive:"非活动",thinking:"思考中...",error:"错误",aborted:"已中止",unknown:"未知"},hpe={justNow:"刚刚",oneMinuteAgo:"1 分钟前",minutesAgo:"{{count}} 分钟前",oneHourAgo:"1 小时前",hoursAgo:"{{count}} 小时前",oneDayAgo:"1 天前",daysAgo:"{{count}} 天前"},gpe={deleteConfirm:"确定要删除吗?",renameSuccess:"重命名成功",deleteSuccess:"删除成功",errorOccurred:"发生错误",deleteSessionConfirm:"确定要删除此会话吗?此操作无法撤销。",deleteProjectConfirm:"确定要删除此空项目吗?此操作无法撤销。",enterProjectPath:"请输入项目路径",deleteSessionFailed:"删除会话失败,请重试。",deleteSessionError:"删除会话时出错,请重试。",renameSessionFailed:"重命名会话失败,请重试。",renameSessionError:"重命名会话时出错,请重试。",deleteProjectFailed:"删除项目失败,请重试。",deleteProjectError:"删除项目时出错,请重试。",createProjectFailed:"创建项目失败,请重试。",createProjectError:"创建项目时出错,请重试。"},bpe={updateAvailable:"有可用更新"},xpe={modeProjects:"项目",modeConversations:"对话",conversationsPlaceholder:"搜索对话内容...",searching:"搜索中...",noResults:"未找到结果",tryDifferentQuery:"尝试不同的搜索词",matches_one:"{{count}} 个匹配",matches_other:"{{count}} 个匹配",projectsScanned_one:"{{count}} 个项目已扫描",projectsScanned_other:"{{count}} 个项目已扫描"},ype={deleteProject:"删除项目",deleteSession:"删除会话",confirmDelete:"您确定要删除",sessionCount_one:"此项目包含 {{count}} 个对话。",sessionCount_other:"此项目包含 {{count}} 个对话。",allConversationsDeleted:"所有对话将被永久删除。",cannotUndo:"此操作无法撤销。"},vpe={projects:rpe,general:ape,sectionToggle:ipe,renamePlaceholder:spe,contextMenu:ope,app:lpe,sessions:cpe,tooltips:upe,navigation:dpe,actions:ppe,branding:mpe,status:fpe,time:hpe,messages:gpe,version:bpe,search:xpe,deleteConfirmation:ype},kpe={copy:"复制",copied:"已复制",copyCode:"复制代码"},wpe={copy:"复制消息",copied:"消息已复制",selectFormat:"选择复制格式",copyAsMarkdown:"复制为 Markdown",copyAsText:"复制为纯文本"},Spe={user:"U",error:"错误",tool:"工具",claude:"Claude",pilotdeck:"PilotDeck",cursor:"Cursor",codex:"Codex",gemini:"Gemini"},Epe={title:"工具错误",description:""},Cpe={label:"已被用户暂停"},Npe={label:"上下文已压缩",level:"{{level}} 级",tokens:"压缩前 {{tokens}} tokens",stages:{context_collapse:"上下文折叠",session_memory:"会话记忆压缩",summary:"摘要压缩",reactive:"响应式压缩",overflow_recovery:"溢出恢复重试"}},Tpe={default:"处理中",processing:"处理中",thinking:"思考中",generating:"正在生成回复",compacting:"正在压缩上下文...",compactingLevel:"正在触发 {{level}} 级压缩:{{label}}",waitingForPermission:"等待授权"},Ape={summary:{processed:"已处理 {{duration}}",completed:"过程已完成",failed:"过程失败",cancelled:"过程已停止"},waitingForModel:"等待模型响应",step:"步骤",metrics:{toolCalls:"{{count}} 次工具调用",searches:"{{count}} 次搜索",errors:"{{count}} 个错误"},live:{editedFiles:"已编辑 {{count}} 个文件",editedFiles_one:"已编辑 {{count}} 个文件",editedFiles_other:"已编辑 {{count}} 个文件",exploredFiles:"已探索 {{count}} 个文件",exploredFiles_one:"已探索 {{count}} 个文件",exploredFiles_other:"已探索 {{count}} 个文件",searches:"已搜索 {{count}} 次",searches_one:"已搜索 {{count}} 次",searches_other:"已搜索 {{count}} 次",commands:"已运行 {{count}} 条命令",commands_one:"已运行 {{count}} 条命令",commands_other:"已运行 {{count}} 条命令",toolCalls:"已调用 {{count}} 个工具",toolCalls_one:"已调用 {{count}} 个工具",toolCalls_other:"已调用 {{count}} 个工具",errors:"{{count}} 个错误",errors_one:"{{count}} 个错误",errors_other:"{{count}} 个错误",subagentCompleted:"子任务已完成",compactCompleted:"已压缩上下文",thoughtCompleted:"已完成思考",runningEdit:"正在编辑文件",runningEditTarget:"正在编辑 {{target}}",runningRead:"正在读取文件",runningReadTarget:"正在读取 {{target}}",runningSearch:"正在搜索",runningSearchTarget:"正在搜索 {{target}}",runningCommand:"正在运行命令",runningCommandTarget:"正在运行 {{target}}",runningSubagent:"正在运行子任务"},noSteps:"没有记录详细步骤。"},Ipe={settings:"工具设置",error:"工具错误",result:"工具结果",viewParams:"查看输入参数",viewRawParams:"查看原始参数",viewDiff:"查看编辑差异",creatingFile:"创建新文件:",updatingTodo:"更新待办事项",read:"读取",readFile:"读取文件",updateTodo:"更新待办列表",readTodo:"读取待办列表",searchResults:"结果"},Rpe={found:"找到 {{count}} 个{{type}}",file:"文件",files:"文件",pattern:"模式:",in:"在:"},_pe={updated:"文件更新成功",created:"文件创建成功",written:"文件写入成功",diff:"差异",newFile:"新文件",viewContent:"查看文件内容",viewFullOutput:"查看完整输出({{count}} 个字符)",contentDisplayed:"文件内容显示在上面的差异视图中"},jpe={title:"交互式提示",waiting:"等待您在 CLI 中响应",instruction:"请在 PilotDeck 运行的终端中选择一个选项。",selectedOption:"✓ PilotDeck 选择了选项 {{number}}",instructionDetail:"在 CLI 中,您可以使用方向键或输入数字来交互式地选择此选项。"},Ope={title:"思考中...",emoji:"💭 思考中..."},Dpe={response:"JSON 响应"},Mpe={grant:"在本聊天中授权 {{tool}}",added:"已在本聊天中授权",addTo:"仅在本聊天中临时允许 {{entry}}。",retry:"在本聊天中重试即可使用该工具。",error:"无法授予本聊天权限。请重试。",openSettings:"打开设置"},Lpe={updated:"待办列表已成功更新",current:"当前待办列表"},Ppe={viewPlan:"📋 查看实施计划",title:"实施计划",exitMode:{header:"计划已准备好",subtitle:"确认后会退出 Plan 模式,并让模型开始按计划执行。",syncingPlan:"计划正文正在同步,请确认是否执行。",feedbackLabel:"继续讨论时可以补充说明",feedbackPlaceholder:"例如:再补充测试方案,或者先不要改数据库。",continueButton:"发送继续交流消息",executeButton:"按计划执行"},approvedCard:{viewPlan:"查看计划"}},Fpe={resetAt:"使用限制已达到。您的限制将在 **{{time}} {{timezone}}** - {{date}} 重置"},Bpe={permissionMode:"权限模式",modes:{default:"默认模式",acceptEdits:"编辑模式",bypassPermissions:"无限制模式",plan:"计划模式"},descriptions:{default:"只有受信任的命令(ls、cat、grep、git status 等)自动运行。其他命令将被跳过。可以写入工作区。",acceptEdits:"工作区内的所有命令自动运行。完全自动模式,具有沙盒执行功能。",bypassPermissions:"完全的系统访问,无限制。所有命令自动运行,具有完整的磁盘和网络访问权限。请谨慎使用。",plan:"计划模式 - 不执行任何命令"},technicalDetails:"技术细节"},$pe={placeholder:"输入 / 调用命令,@ 选择文件,或向 {{provider}} 提问...",placeholderDefault:"输入您的消息...",disabled:"输入已禁用",attachFile:"上传附件",attachFiles:"附加文件",attachImages:"附加图片",mentionFile:"引用文件",slashCommand:"运行斜杠命令",send:"发送",stop:"停止",hintText:{ctrlEnter:"Ctrl+Enter 发送 • Shift+Enter 换行 • Tab 切换模式 • / 斜杠命令",enter:"Enter 发送 • Shift+Enter 换行 • Tab 切换模式 • / 斜杠命令"},clickToChangeMode:"点击更改权限模式(或在输入框中按 Tab)",showAllCommands:"显示所有命令",clearInput:"清空输入",scrollToBottom:"滚动到底部",permissions:{default:"默认权限",defaultDescription:"需要风险操作时先询问",bypassPermissions:"完全访问权限",bypassPermissionsDescription:"跳过确认并允许完全访问",change:"选择权限模式"},runModes:{agent:"智能体",plan:"计划",change:"选择运行模式",agentDescription:"直接处理并执行任务",planDescription:"先产出计划,确认后再执行"}},Upe={empty:"暂无可用命令",groups:{pinned:"常用",frequent:"最常用",builtin:"内置",project:"项目",user:"用户",other:"其他"}},zpe={selector:{title:"思考模式",description:"扩展思考给 PilotDeck 更多时间来评估替代方案",active:"激活",tip:"更高的思考模式需要更多时间,但提供更彻底的分析"},modes:{none:{name:"标准",description:"常规 PilotDeck 响应",prefix:""},think:{name:"思考",description:"基本扩展思考",prefix:"思考"},thinkHard:{name:"深入思考",description:"更彻底的评估",prefix:"深入思考"},thinkHarder:{name:"更深入思考",description:"考虑替代方案的深度分析",prefix:"更深入思考"},ultrathink:{name:"超级思考",description:"最大思考预算",prefix:"超级思考"}},buttonTitle:"思考模式:{{mode}}"},qpe={title:"选择您的 AI 助手",description:"选择一个供应商以开始新对话",selectModel:"选择模型",providerInfo:{anthropic:"由 Anthropic 提供",openai:"由 OpenAI 提供",cursorEditor:"AI 代码编辑器",google:"由 Google 提供"},readyPrompt:{claude:"已就绪:使用 {{model}} 的 PilotDeck。请在下方开始输入您的消息。",cursor:"准备好使用带有 {{model}} 的 Cursor。请在下方开始输入您的消息。",codex:"准备好使用带有 {{model}} 的 Codex。请在下方开始输入您的消息。",gemini:"准备好使用带有 {{model}} 的 Gemini。请在下方开始输入您的消息。",pilotdeck:"准备好使用带有 {{model}} 的 PilotDeck。请在下方开始输入您的消息。",default:"请在上方选择一个提供者以开始"}},Hpe={continue:{title:"继续您的对话",description:"询问有关代码的问题、请求更改或获取开发任务的帮助"},loading:{olderMessages:"正在加载更早的消息...",sessionMessages:"正在加载会话消息..."},messages:{showingOf:"显示 {{shown}} / {{total}} 条消息",scrollToLoad:"向上滚动以加载更多",showingLast:"显示最近 {{count}} 条消息(共 {{total}} 条)",loadEarlier:"加载更早的消息",loadAll:"加载全部消息",loadingAll:"正在加载全部消息...",allLoaded:"全部消息已加载",perfWarning:"已加载全部消息 - 滚动可能变慢。点击「滚动到底部」恢复性能。"}},Gpe={selectProject:{title:"选择项目",description:"选择一个项目以在该目录中打开交互式 Shell"},status:{newSession:"新会话",initializing:"初始化中...",restarting:"重启中..."},actions:{disconnect:"断开连接",disconnectTitle:"断开 Shell 连接",restart:"重启",restartTitle:"重启 Shell(请先断开连接)",connect:"在 Shell 中继续",connectTitle:"连接到 Shell"},loading:"正在加载终端...",connecting:"正在连接到 Shell...",startSession:"启动新的 PilotDeck 会话",resumeSession:"恢复会话:{{displayName}}...",runCommand:"在 {{projectName}} 中运行 {{command}}",startCli:"在 {{projectName}} 中启动 PilotDeck CLI",defaultCommand:"命令"},Vpe={actions:{thinking:"Thinking",processing:"Processing",analyzing:"Analyzing",working:"Working",computing:"Computing",reasoning:"Reasoning"},state:{live:"Live",paused:"Paused"},elapsed:{seconds:"{{count}}s",minutesSeconds:"{{minutes}}m {{seconds}}s",label:"{{time}} elapsed",startingNow:"Starting now"},controls:{stopGeneration:"Stop Generation",pressEscToStop:"Press Esc anytime to stop"},providers:{assistant:"Assistant"}},Wpe={startChatWithProvider:"选择一个项目以开始与 {{provider}} 聊天"},Kpe={nextTaskPrompt:"开始下一个任务"},Ype={placeholder:"告诉 PilotDeck 你想完成什么…",welcomePlaceholder:"告诉 PilotDeck 你想完成什么…"},Xpe={greetingWithProject:"今天想做点什么?",noProject:"从左侧选择一个项目开始"},Zpe={codeBlock:kpe,copyMessage:wpe,messageTypes:Spe,toolUseError:Epe,interrupted:Cpe,compact:Npe,working:Tpe,process:Ape,tools:Ipe,search:Rpe,fileOperations:_pe,interactive:jpe,thinking:Ope,json:Dpe,permissions:Mpe,todo:Lpe,plan:Ppe,usageLimit:Fpe,codex:Bpe,input:$pe,commandMenu:Upe,thinkingMode:zpe,providerSelection:qpe,session:Hpe,shell:Gpe,pilotdeckStatus:Vpe,projectSelection:Wpe,tasks:Kpe,composer:Ype,welcome:Xpe},Jpe="选择一个项目以查看 Always-On。",Qpe={refresh:"刷新"},eme={dashboard:"仪表盘",plansCron:"计划与定时任务"},tme={title:"Always-On 仪表盘",subtitle:"所有工作区的活动动态。",loading:"正在加载事件…",empty:"暂无 Always-On 事件记录。",stats:{todayEvents:"今日事件",activeProjects:"活跃项目",running:"正在运行"},eventList:{title:"近期事件"},detail:{back:"返回事件列表",placeholder:"详细内容即将推出。"},runDetail:{back:"返回事件列表",backToPlans:"返回计划列表",loading:"加载中…",untitled:"未命名计划",workspaceStrategy:"工作区",executionSession:"执行会话",openSession:"打开会话",outcome:"结果",plan:"计划",report:"报告",noPlanContent:"暂无计划内容。",noReportContent:"暂无报告。",apply:"应用到主分支",archive:"归档"},phase:{discoveryStarted:"发现已启动",planProduced:"已产出计划",noPlan:"未产出计划",workspaceReady:"工作区就绪",executionStarted:"开始执行",executionCompleted:"执行完成",reportProduced:"已产出报告",runCompleted:"运行完成",runFailed:"运行失败",cronStarted:"定时任务已启动",cronCompleted:"定时任务完成",cronFailed:"定时任务失败"}},nme={title:"计划与定时任务",subtitle:"所有项目的计划与定时任务。",loading:"正在加载计划与定时任务…",empty:"暂无计划或定时任务。",unassigned:"未关联项目",columns:{title:"标题",type:"类型",createdAt:"创建时间",status:"状态",actions:"操作"},actions:{retry:"重新执行",delete:"删除",runNow:"立即运行",stop:"停止",applyCycle:"全部应用",archiveCycle:"归档"},type:{plan:"计划",cronJob:"定时任务"},status:{created:"刚创建",preparingWorkspace:"正在创建隔离环境",executing:"正在执行",completedWaiting:"执行完成",failed:"执行失败",archived:"已归档",scheduled:"已安排",running:"运行中"},workCycle:"工作周期",plans:"个计划",cycleStatus:{active:"活跃",applying:"正在应用…",applied:"已应用",archived:"已归档"}},rme={emptyProject:Jpe,actions:Qpe,tabs:eme,dashboard:tme,plansCron:nme},ame={title:"路由",total:"总计",subtitle:"覆盖所有项目与会话的用量统计。",projectSubtitle:"{{project}} 的路由统计。",loading:"正在加载路由…",retry:"重试",refresh:"刷新",scope:{label:"统计范围",project:"项目",total:"总计"},stats:{requests:"请求数",tokens:"Token 数",cost:"成本",sessions_one:"{{count}} 个会话",sessions_other:"{{count}} 个会话",routedSessions_one:"{{count}} 个已路由会话",routedSessions_other:"{{count}} 个已路由会话",activeProjects_one:"{{count}} 个活跃项目",activeProjects_other:"{{count}} 个活跃项目",inOut:"输入 {{in}} · 输出 {{out}}",perRequest:"≈ {{value}} / 次请求",noRouterCost:"不走路由 {{value}}"},sessions:{title:"会话",empty:"暂无会话。"},projects:{title:"按项目"},projectCard:{summary:"{{requests}} 次请求 · {{tokens}} tokens · {{sessions}} 个会话"},units:{requestsShort_one:"{{count}} 次",requestsShort_other:"{{count}} 次",queries_one:"{{count}} 条请求",queries_other:"{{count}} 条请求",tokens:"{{value}} tokens"},session:{orchestrated:"已编排",mainAgent:"主智能体",subagents:"子智能体",mainShort:"主",subShort:"子",toolShort:"工具",noContent:"(无内容)",noUserQueries:"暂无用户请求记录。",models:"模型:"},recent:{title:"最近调用",empty:"暂无路由活动。发起一个对话即可在此看到统计。",columns:{time:"时间",project:"项目",provider:"供应商",model:"模型",tokens:"Token 数"}},price:{title:"成本",empty:"暂无可计价会话。",actual:"实际开销",baseline:"不走 Router 开销",saved:"节省",savedLower:"节省",extra:"多花",extraLower:"多花",summary:"{{sessions}} 个会话 · {{requests}} 次请求 · {{tokens}} tokens",baselineHint:"按所有路由 token 都交给主模型估算。",savedHint:"相对基准 {{rate}}%",missingBaseline:"这些会话还没有配置基准成本。",session:"会话",actualShort:"实际",baselineShort:"不走 Router",savedShort:"节省",extraShort:"多花"}},ime={dashboard:ame},sme={changes:"个更改",previousChange:"上一个更改",nextChange:"下一个更改",hideDiff:"隐藏差异高亮",showDiff:"显示差异高亮",settings:"编辑器设置",collapse:"折叠编辑器",expand:"展开编辑器到全宽"},ome="正在加载 {{fileName}}...",lme={title:"无法加载该文件",description:'未能从磁盘读取 "{{fileName}}"。在文件成功重新加载之前,保存已被禁用,以避免把错误内容写回磁盘覆盖你的真实文件。',retry:"重试"},cme={showingChanges:"显示更改"},ume={download:"下载文件",save:"保存",saving:"保存中...",saved:"已保存!",exitFullscreen:"退出全屏",fullscreen:"全屏",expand:"展开为全宽",collapse:"收起为分栏视图",close:"关闭"},dme={lines:"行数:",characters:"字符数:",shortcuts:"按 Ctrl+S 保存 • Esc 关闭"},pme={title:"二进制文件",message:'文件 "{{fileName}}" 无法在文本编辑器中显示,因为它是二进制文件。'},mme={toolbar:sme,loading:ome,loadError:lme,header:cme,actions:ume,footer:dme,binaryFile:pme},fme=()=>{try{const e=localStorage.getItem("userLanguage");return e&&qg.some(t=>t.value===e)?e:"en"}catch{return"en"}};yn.use(v7).use(M_).init({resources:{en:{common:uce,settings:Mce,auth:Bce,sidebar:rue,chat:Due,codeEditor:zue,tasks:dde,alwaysOn:Kue,routing:Xue},"zh-CN":{common:Tde,settings:Jde,auth:npe,sidebar:vpe,chat:Zpe,codeEditor:mme,alwaysOn:rme,routing:ime}},lng:fme(),fallbackLng:"en",debug:!1,ns:["common","settings","auth","sidebar","chat","codeEditor","tasks","alwaysOn","routing"],defaultNS:"common",keySeparator:".",nsSeparator:":",saveMissing:!1,interpolation:{escapeValue:!1},react:{useSuspense:!0,bindI18n:"languageChanged",bindI18nStore:!1},detection:{order:["localStorage"],lookupLocalStorage:"userLanguage",caches:["localStorage"]}});yn.on("languageChanged",e=>{try{localStorage.setItem("userLanguage",e)}catch(t){console.error("Failed to save language preference:",t)}hme(e)});function hme(e){const t=e==="zh-CN"?"zh-CN":"en";Oe("/api/config").then(n=>n.json()).then(n=>{const r=typeof n?.raw=="string"?n.raw:"";if(!r)return;let a;try{a=K3(r)}catch{return}if(!a||typeof a!="object"||!a.alwaysOn||typeof a.alwaysOn!="object"||a.alwaysOn.language===t)return;a.alwaysOn.language=t;const i=Y3(a,{lineWidth:0});return Oe("/api/config",{method:"PUT",body:JSON.stringify({raw:i})})}).catch(()=>{})}function gme(){return o.jsx(q_,{i18n:yn,children:o.jsx(G_,{children:o.jsx(Z_,{children:o.jsx(vD,{children:o.jsx(TD,{children:o.jsx(CD,{children:o.jsx(ED,{children:o.jsx(bD,{children:o.jsx(X7,{basename:window.__ROUTER_BASENAME__||"",children:o.jsx(Z7,{children:o.jsx(J7,{path:"*",element:o.jsx(Ile,{})})})})})})})})})})})})}"serviceWorker"in navigator&&navigator.serviceWorker.register("/sw.js").catch(e=>{console.warn("Service worker registration failed:",e)});a_.createRoot(document.getElementById("root")).render(o.jsx($n.StrictMode,{children:o.jsx(gme,{})}));export{yx as A,$3 as C,Ao as D,KL as L,On as P,bt as S,O3 as Y,YL as a,V3 as b,gL as c,or as d,Mi as e,ai as f,xL as g,kme as h,cs as i,Yt as j,us as k,Eo as l,Xt as m,Gt as n,Lt as o,Co as p,K3 as q,Eme as r,XL as s,Y3 as t,bx as u,ds as v}; diff --git a/ui/dist.noauth.bak/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 b/ui/dist.noauth.bak/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 new file mode 100644 index 00000000..de83a9c7 Binary files /dev/null and b/ui/dist.noauth.bak/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 differ diff --git a/ui/dist.noauth.bak/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 b/ui/dist.noauth.bak/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 new file mode 100644 index 00000000..d7509147 Binary files /dev/null and b/ui/dist.noauth.bak/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 differ diff --git a/ui/dist.noauth.bak/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 b/ui/dist.noauth.bak/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 new file mode 100644 index 00000000..6e7141f8 Binary files /dev/null and b/ui/dist.noauth.bak/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 differ diff --git a/ui/dist.noauth.bak/assets/inter-greek-wght-normal-CkhJZR-_.woff2 b/ui/dist.noauth.bak/assets/inter-greek-wght-normal-CkhJZR-_.woff2 new file mode 100644 index 00000000..024f0770 Binary files /dev/null and b/ui/dist.noauth.bak/assets/inter-greek-wght-normal-CkhJZR-_.woff2 differ diff --git a/ui/dist.noauth.bak/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 b/ui/dist.noauth.bak/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 new file mode 100644 index 00000000..479d010d Binary files /dev/null and b/ui/dist.noauth.bak/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 differ diff --git a/ui/dist.noauth.bak/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 b/ui/dist.noauth.bak/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 new file mode 100644 index 00000000..d15208de Binary files /dev/null and b/ui/dist.noauth.bak/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 differ diff --git a/ui/dist.noauth.bak/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 b/ui/dist.noauth.bak/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 new file mode 100644 index 00000000..a40c4699 Binary files /dev/null and b/ui/dist.noauth.bak/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 differ diff --git a/ui/dist.noauth.bak/assets/pilotdeck-wordmark-dark-CzkiaGaF.png b/ui/dist.noauth.bak/assets/pilotdeck-wordmark-dark-CzkiaGaF.png new file mode 100644 index 00000000..34396a60 Binary files /dev/null and b/ui/dist.noauth.bak/assets/pilotdeck-wordmark-dark-CzkiaGaF.png differ diff --git a/ui/dist.noauth.bak/assets/pilotdeck-wordmark-light-Cfvpbdi6.png b/ui/dist.noauth.bak/assets/pilotdeck-wordmark-light-Cfvpbdi6.png new file mode 100644 index 00000000..341d36be Binary files /dev/null and b/ui/dist.noauth.bak/assets/pilotdeck-wordmark-light-Cfvpbdi6.png differ diff --git a/ui/dist.noauth.bak/assets/vendor-codemirror-Cyecodkc.js b/ui/dist.noauth.bak/assets/vendor-codemirror-Cyecodkc.js new file mode 100644 index 00000000..f84d8d2f --- /dev/null +++ b/ui/dist.noauth.bak/assets/vendor-codemirror-Cyecodkc.js @@ -0,0 +1,33 @@ +import{h as gm,f as ve}from"./vendor-react-QREEBBIX.js";var Ls={exports:{}},tn={};var Na;function Qm(){if(Na)return tn;Na=1;var n=gm(),e=Symbol.for("react.element"),t=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,r=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function o(l,a,h){var c,f={},O=null,u=null;h!==void 0&&(O=""+h),a.key!==void 0&&(O=""+a.key),a.ref!==void 0&&(u=a.ref);for(c in a)i.call(a,c)&&!s.hasOwnProperty(c)&&(f[c]=a[c]);if(l&&l.defaultProps)for(c in a=l.defaultProps,a)f[c]===void 0&&(f[c]=a[c]);return{$$typeof:e,type:l,key:O,ref:u,props:f,_owner:r.current}}return tn.Fragment=t,tn.jsx=o,tn.jsxs=o,tn}var Fa;function Sm(){return Fa||(Fa=1,Ls.exports=Qm()),Ls.exports}var bm=Sm();function ym(n,e){if(n==null)return{};var t={};for(var i in n)if({}.hasOwnProperty.call(n,i)){if(e.indexOf(i)!==-1)continue;t[i]=n[i]}return t}function Eo(){return Eo=Object.assign?Object.assign.bind():function(n){for(var e=1;e{let n="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,t=0;e>1;if(n=Df[i])e=i+1;else return!0;if(e==t)return!1}}function Ha(n){return n>=127462&&n<=127487}const Ka=8205;function xm(n,e,t=!0,i=!0){return(t?Bf:wm)(n,e,i)}function Bf(n,e,t){if(e==n.length)return e;e&&If(n.charCodeAt(e))&&Gf(n.charCodeAt(e-1))&&e--;let i=Ys(n,e);for(e+=Ja(i);e=0&&Ha(Ys(n,o));)s++,o-=2;if(s%2==0)break;e+=2}else break}return e}function wm(n,e,t){for(;e>0;){let i=Bf(n,e-2,t);if(i=56320&&n<57344}function Gf(n){return n>=55296&&n<56320}function Ja(n){return n<65536?1:2}class B{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,i){[e,t]=_i(this,e,t);let r=[];return this.decompose(0,e,r,2),i.length&&i.decompose(0,i.length,r,3),this.decompose(t,this.length,r,1),ft.from(r,this.length-(t-e)+i.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=_i(this,e,t);let i=[];return this.decompose(e,t,i,0),ft.from(i,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),i=this.length-this.scanIdentical(e,-1),r=new pn(this),s=new pn(e);for(let o=t,l=t;;){if(r.next(o),s.next(o),o=0,r.lineBreak!=s.lineBreak||r.done!=s.done||r.value!=s.value)return!1;if(l+=r.value.length,r.done||l>=i)return!0}}iter(e=1){return new pn(this,e)}iterRange(e,t=this.length){return new Uf(this,e,t)}iterLines(e,t){let i;if(e==null)i=this.iter();else{t==null&&(t=this.lines+1);let r=this.line(e).from;i=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Nf(i)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?B.empty:e.length<=32?new le(e):ft.from(le.split(e,[]))}}class le extends B{constructor(e,t=$m(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,i,r){for(let s=0;;s++){let o=this.text[s],l=r+o.length;if((t?i:l)>=e)return new Pm(r,l,i,o);r=l+1,i++}}decompose(e,t,i,r){let s=e<=0&&t>=this.length?this:new le(eh(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(r&1){let o=i.pop(),l=Tr(s.text,o.text.slice(),0,s.length);if(l.length<=32)i.push(new le(l,o.length+s.length));else{let a=l.length>>1;i.push(new le(l.slice(0,a)),new le(l.slice(a)))}}else i.push(s)}replace(e,t,i){if(!(i instanceof le))return super.replace(e,t,i);[e,t]=_i(this,e,t);let r=Tr(this.text,Tr(i.text,eh(this.text,0,e)),t),s=this.length+i.length-(t-e);return r.length<=32?new le(r,s):ft.from(le.split(r,[]),s)}sliceString(e,t=this.length,i=` +`){[e,t]=_i(this,e,t);let r="";for(let s=0,o=0;s<=t&&oe&&o&&(r+=i),es&&(r+=l.slice(Math.max(0,e-s),t-s)),s=a+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let i=[],r=-1;for(let s of e)i.push(s),r+=s.length+1,i.length==32&&(t.push(new le(i,r)),i=[],r=-1);return r>-1&&t.push(new le(i,r)),t}}class ft extends B{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let i of e)this.lines+=i.lines}lineInner(e,t,i,r){for(let s=0;;s++){let o=this.children[s],l=r+o.length,a=i+o.lines-1;if((t?a:l)>=e)return o.lineInner(e,t,i,r);r=l+1,i=a+1}}decompose(e,t,i,r){for(let s=0,o=0;o<=t&&s=o){let h=r&((o<=e?1:0)|(a>=t?2:0));o>=e&&a<=t&&!h?i.push(l):l.decompose(e-o,t-o,i,h)}o=a+1}}replace(e,t,i){if([e,t]=_i(this,e,t),i.lines=s&&t<=l){let a=o.replace(e-s,t-s,i),h=this.lines-o.lines+a.lines;if(a.lines>4&&a.lines>h>>6){let c=this.children.slice();return c[r]=a,new ft(c,this.length-(t-e)+i.length)}return super.replace(s,l,a)}s=l+1}return super.replace(e,t,i)}sliceString(e,t=this.length,i=` +`){[e,t]=_i(this,e,t);let r="";for(let s=0,o=0;se&&s&&(r+=i),eo&&(r+=l.sliceString(e-o,t-o,i)),o=a+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof ft))return 0;let i=0,[r,s,o,l]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=t,s+=t){if(r==o||s==l)return i;let a=this.children[r],h=e.children[s];if(a!=h)return i+a.scanIdentical(h,t);i+=a.length+1}}static from(e,t=e.reduce((i,r)=>i+r.length+1,-1)){let i=0;for(let u of e)i+=u.lines;if(i<32){let u=[];for(let d of e)d.flatten(u);return new le(u,t)}let r=Math.max(32,i>>5),s=r<<1,o=r>>1,l=[],a=0,h=-1,c=[];function f(u){let d;if(u.lines>s&&u instanceof ft)for(let m of u.children)f(m);else u.lines>o&&(a>o||!a)?(O(),l.push(u)):u instanceof le&&a&&(d=c[c.length-1])instanceof le&&u.lines+d.lines<=32?(a+=u.lines,h+=u.length+1,c[c.length-1]=new le(d.text.concat(u.text),d.length+1+u.length)):(a+u.lines>r&&O(),a+=u.lines,h+=u.length+1,c.push(u))}function O(){a!=0&&(l.push(c.length==1?c[0]:ft.from(c,h)),h=-1,a=c.length=0)}for(let u of e)f(u);return O(),l.length==1?l[0]:new ft(l,t)}}B.empty=new le([""],0);function $m(n){let e=-1;for(let t of n)e+=t.length+1;return e}function Tr(n,e,t=0,i=1e9){for(let r=0,s=0,o=!0;s=t&&(a>i&&(l=l.slice(0,i-r)),r0?1:(e instanceof le?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,r=this.nodes[i],s=this.offsets[i],o=s>>1,l=r instanceof le?r.text.length:r.children.length;if(o==(t>0?l:0)){if(i==0)return this.done=!0,this.value="",this;t>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((s&1)==(t>0?0:1)){if(this.offsets[i]+=t,e==0)return this.lineBreak=!0,this.value=` +`,this;e--}else if(r instanceof le){let a=r.text[o+(t<0?-1:0)];if(this.offsets[i]+=t,a.length>Math.max(0,e))return this.value=e==0?a:t>0?a.slice(e):a.slice(0,a.length-e),this;e-=a.length}else{let a=r.children[o+(t<0?-1:0)];e>a.length?(e-=a.length,this.offsets[i]+=t):(t<0&&this.offsets[i]--,this.nodes.push(a),this.offsets.push(t>0?1:(a instanceof le?a.text.length:a.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class Uf{constructor(e,t,i){this.value="",this.done=!1,this.cursor=new pn(e,t>i?-1:1),this.pos=t>i?e.length:0,this.from=Math.min(t,i),this.to=Math.max(t,i)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let i=t<0?this.pos-this.from:this.to-this.pos;e>i&&(e=i),i-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=i?r:t<0?r.slice(r.length-i):r.slice(0,i),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class Nf{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:i,value:r}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):i?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(B.prototype[Symbol.iterator]=function(){return this.iter()},pn.prototype[Symbol.iterator]=Uf.prototype[Symbol.iterator]=Nf.prototype[Symbol.iterator]=function(){return this});let Pm=class{constructor(e,t,i,r){this.from=e,this.to=t,this.number=i,this.text=r}get length(){return this.to-this.from}};function _i(n,e,t){return e=Math.max(0,Math.min(n.length,e)),[e,Math.max(e,Math.min(n.length,t))]}function ue(n,e,t=!0,i=!0){return xm(n,e,t,i)}function vm(n){return n>=56320&&n<57344}function Tm(n){return n>=55296&&n<56320}function Ze(n,e){let t=n.charCodeAt(e);if(!Tm(t)||e+1==n.length)return t;let i=n.charCodeAt(e+1);return vm(i)?(t-55296<<10)+(i-56320)+65536:t}function Yl(n){return n<=65535?String.fromCharCode(n):(n-=65536,String.fromCharCode((n>>10)+55296,(n&1023)+56320))}function Ot(n){return n<65536?1:2}const Vo=/\r\n?|\n/;var Qe=(function(n){return n[n.Simple=0]="Simple",n[n.TrackDel=1]="TrackDel",n[n.TrackBefore=2]="TrackBefore",n[n.TrackAfter=3]="TrackAfter",n})(Qe||(Qe={}));class Qt{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;te)return s+(e-r);s+=l}else{if(i!=Qe.Simple&&h>=e&&(i==Qe.TrackDel&&re||i==Qe.TrackBefore&&re))return null;if(h>e||h==e&&t<0&&!l)return e==r||t<0?s:s+a;s+=a}r=h}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return s}touchesRange(e,t=e){for(let i=0,r=0;i=0&&r<=t&&l>=e)return rt?"cover":!0;r=l}return!1}toString(){let e="";for(let t=0;t=0?":"+r:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new Qt(e)}static create(e){return new Qt(e)}}class ce extends Qt{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return Lo(this,(t,i,r,s,o)=>e=e.replace(r,r+(i-t),o),!1),e}mapDesc(e,t=!1){return Yo(this,e,t,!0)}invert(e){let t=this.sections.slice(),i=[];for(let r=0,s=0;r=0){t[r]=l,t[r+1]=o;let a=r>>1;for(;i.length0&&Et(i,t,s.text),s.forward(c),l+=c}let h=e[o++];for(;l>1].toJSON()))}return e}static of(e,t,i){let r=[],s=[],o=0,l=null;function a(c=!1){if(!c&&!r.length)return;oO||f<0||O>t)throw new RangeError(`Invalid change range ${f} to ${O} (in doc of length ${t})`);let d=u?typeof u=="string"?B.of(u.split(i||Vo)):u:B.empty,m=d.length;if(f==O&&m==0)return;fo&&ke(r,f-o,-1),ke(r,O-f,m),Et(s,r,d),o=O}}return h(e),a(!l),l}static empty(e){return new ce(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],i=[];for(let r=0;rl&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(s.length==1)t.push(s[0],0);else{for(;i.length=0&&t<=0&&t==n[r+1]?n[r]+=e:r>=0&&e==0&&n[r]==0?n[r+1]+=t:i?(n[r]+=e,n[r+1]+=t):n.push(e,t)}function Et(n,e,t){if(t.length==0)return;let i=e.length-2>>1;if(i>1])),!(t||o==n.sections.length||n.sections[o+1]<0);)l=n.sections[o++],a=n.sections[o++];e(r,h,s,c,f),r=h,s=c}}}function Yo(n,e,t,i=!1){let r=[],s=i?[]:null,o=new wn(n),l=new wn(e);for(let a=-1;;){if(o.done&&l.len||l.done&&o.len)throw new Error("Mismatched change set lengths");if(o.ins==-1&&l.ins==-1){let h=Math.min(o.len,l.len);ke(r,h,-1),o.forward(h),l.forward(h)}else if(l.ins>=0&&(o.ins<0||a==o.i||o.off==0&&(l.len=0&&a=0){let h=0,c=o.len;for(;c;)if(l.ins==-1){let f=Math.min(c,l.len);h+=f,c-=f,l.forward(f)}else if(l.ins==0&&l.lena||o.ins>=0&&o.len>a)&&(l||i.length>h),s.forward2(a),o.forward(a)}}}}class wn{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return t>=e.length?B.empty:e[t]}textBit(e){let{inserted:t}=this.set,i=this.i-2>>1;return i>=t.length&&!e?B.empty:t[i].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class ci{constructor(e,t,i){this.from=e,this.to=t,this.flags=i}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,t=-1){let i,r;return this.empty?i=r=e.mapPos(this.from,t):(i=e.mapPos(this.from,1),r=e.mapPos(this.to,-1)),i==this.from&&r==this.to?this:new ci(i,r,this.flags)}extend(e,t=e,i=0){if(e<=this.anchor&&t>=this.anchor)return b.range(e,t,void 0,void 0,i);let r=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return b.range(this.anchor,r,void 0,void 0,i)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!t||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return b.range(e.anchor,e.head)}static create(e,t,i){return new ci(e,t,i)}}class b{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:b.create(this.ranges.map(i=>i.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let i=0;ie.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new b(e.ranges.map(t=>ci.fromJSON(t)),e.main)}static single(e,t=e){return new b([b.range(e,t)],0)}static create(e,t=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let i=0,r=0;rr.from-s.from),t=e.indexOf(i);for(let r=1;rs.head?b.range(a,l):b.range(l,a))}}return new b(e,t)}}function Hf(n,e){for(let t of n.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let Dl=0;class C{constructor(e,t,i,r,s){this.combine=e,this.compareInput=t,this.compare=i,this.isStatic=r,this.id=Dl++,this.default=e([]),this.extensions=typeof s=="function"?s(this):s}get reader(){return this}static define(e={}){return new C(e.combine||(t=>t),e.compareInput||((t,i)=>t===i),e.compare||(e.combine?(t,i)=>t===i:Bl),!!e.static,e.enables)}of(e){return new Cr([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Cr(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Cr(e,this,2,t)}from(e,t){return t||(t=i=>i),this.compute([e],i=>t(i.field(e)))}}function Bl(n,e){return n==e||n.length==e.length&&n.every((t,i)=>t===e[i])}class Cr{constructor(e,t,i,r){this.dependencies=e,this.facet=t,this.type=i,this.value=r,this.id=Dl++}dynamicSlot(e){var t;let i=this.value,r=this.facet.compareInput,s=this.id,o=e[s]>>1,l=this.type==2,a=!1,h=!1,c=[];for(let f of this.dependencies)f=="doc"?a=!0:f=="selection"?h=!0:(((t=e[f.id])!==null&&t!==void 0?t:1)&1)==0&&c.push(e[f.id]);return{create(f){return f.values[o]=i(f),1},update(f,O){if(a&&O.docChanged||h&&(O.docChanged||O.selection)||Do(f,c)){let u=i(f);if(l?!th(u,f.values[o],r):!r(u,f.values[o]))return f.values[o]=u,1}return 0},reconfigure:(f,O)=>{let u,d=O.config.address[s];if(d!=null){let m=Dr(O,d);if(this.dependencies.every(g=>g instanceof C?O.facet(g)===f.facet(g):g instanceof be?O.field(g,!1)==f.field(g,!1):!0)||(l?th(u=i(f),m,r):r(u=i(f),m)))return f.values[o]=m,0}else u=i(f);return f.values[o]=u,1}}}}function th(n,e,t){if(n.length!=e.length)return!1;for(let i=0;in[a.id]),r=t.map(a=>a.type),s=i.filter(a=>!(a&1)),o=n[e.id]>>1;function l(a){let h=[];for(let c=0;ci===r),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(ir).find(i=>i.field==this);return(t?.create||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:i=>(i.values[t]=this.create(i),1),update:(i,r)=>{let s=i.values[t],o=this.updateF(s,r);return this.compareF(s,o)?0:(i.values[t]=o,1)},reconfigure:(i,r)=>{let s=i.facet(ir),o=r.facet(ir),l;return(l=s.find(a=>a.field==this))&&l!=o.find(a=>a.field==this)?(i.values[t]=l.create(i),1):r.config.address[this.id]!=null?(i.values[t]=r.field(this),0):(i.values[t]=this.create(i),1)}}}init(e){return[this,ir.of({field:this,create:e})]}get extension(){return this}}const li={lowest:4,low:3,default:2,high:1,highest:0};function nn(n){return e=>new Kf(e,n)}const qt={highest:nn(li.highest),high:nn(li.high),default:nn(li.default),low:nn(li.low),lowest:nn(li.lowest)};class Kf{constructor(e,t){this.inner=e,this.prec=t}}class ys{of(e){return new Bo(this,e)}reconfigure(e){return ys.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Bo{constructor(e,t){this.compartment=e,this.inner=t}}class Yr{constructor(e,t,i,r,s,o){for(this.base=e,this.compartments=t,this.dynamicSlots=i,this.address=r,this.staticValues=s,this.facets=o,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,t,i){let r=[],s=Object.create(null),o=new Map;for(let O of Xm(e,t,o))O instanceof be?r.push(O):(s[O.facet.id]||(s[O.facet.id]=[])).push(O);let l=Object.create(null),a=[],h=[];for(let O of r)l[O.id]=h.length<<1,h.push(u=>O.slot(u));let c=i?.config.facets;for(let O in s){let u=s[O],d=u[0].facet,m=c&&c[O]||[];if(u.every(g=>g.type==0))if(l[d.id]=a.length<<1|1,Bl(m,u))a.push(i.facet(d));else{let g=d.combine(u.map(Q=>Q.value));a.push(i&&d.compare(g,i.facet(d))?i.facet(d):g)}else{for(let g of u)g.type==0?(l[g.id]=a.length<<1|1,a.push(g.value)):(l[g.id]=h.length<<1,h.push(Q=>g.dynamicSlot(Q)));l[d.id]=h.length<<1,h.push(g=>Cm(g,d,u))}}let f=h.map(O=>O(l));return new Yr(e,o,f,l,a,s)}}function Xm(n,e,t){let i=[[],[],[],[],[]],r=new Map;function s(o,l){let a=r.get(o);if(a!=null){if(a<=l)return;let h=i[a].indexOf(o);h>-1&&i[a].splice(h,1),o instanceof Bo&&t.delete(o.compartment)}if(r.set(o,l),Array.isArray(o))for(let h of o)s(h,l);else if(o instanceof Bo){if(t.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let h=e.get(o.compartment)||o.inner;t.set(o.compartment,h),s(h,l)}else if(o instanceof Kf)s(o.inner,o.prec);else if(o instanceof be)i[l].push(o),o.provides&&s(o.provides,l);else if(o instanceof Cr)i[l].push(o),o.facet.extensions&&s(o.facet.extensions,li.default);else{let h=o.extension;if(!h)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);s(h,l)}}return s(n,li.default),i.reduce((o,l)=>o.concat(l))}function mn(n,e){if(e&1)return 2;let t=e>>1,i=n.status[t];if(i==4)throw new Error("Cyclic dependency between fields and/or facets");if(i&2)return i;n.status[t]=4;let r=n.computeSlot(n,n.config.dynamicSlots[t]);return n.status[t]=2|r}function Dr(n,e){return e&1?n.config.staticValues[e>>1]:n.values[e>>1]}const Jf=C.define(),Io=C.define({combine:n=>n.some(e=>e),static:!0}),eO=C.define({combine:n=>n.length?n[0]:void 0,static:!0}),tO=C.define(),iO=C.define(),nO=C.define(),rO=C.define({combine:n=>n.length?n[0]:!1});class bt{constructor(e,t){this.type=e,this.value=t}static define(){return new Zm}}class Zm{of(e){return new bt(this,e)}}class Rm{constructor(e){this.map=e}of(e){return new z(this,e)}}class z{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return t===void 0?void 0:t==this.value?this:new z(this.type,t)}is(e){return this.type==e}static define(e={}){return new Rm(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let i=[];for(let r of e){let s=r.map(t);s&&i.push(s)}return i}}z.reconfigure=z.define();z.appendConfig=z.define();class ae{constructor(e,t,i,r,s,o){this.startState=e,this.changes=t,this.selection=i,this.effects=r,this.annotations=s,this.scrollIntoView=o,this._doc=null,this._state=null,i&&Hf(i,t.newLength),s.some(l=>l.type==ae.time)||(this.annotations=s.concat(ae.time.of(Date.now())))}static create(e,t,i,r,s,o){return new ae(e,t,i,r,s,o)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(ae.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}}ae.time=bt.define();ae.userEvent=bt.define();ae.addToHistory=bt.define();ae.remote=bt.define();function Am(n,e){let t=[];for(let i=0,r=0;;){let s,o;if(i=n[i]))s=n[i++],o=n[i++];else if(r=0;r--){let s=i[r](n);s instanceof ae?n=s:Array.isArray(s)&&s.length==1&&s[0]instanceof ae?n=s[0]:n=oO(e,Ci(s),!1)}return n}function Mm(n){let e=n.startState,t=e.facet(nO),i=n;for(let r=t.length-1;r>=0;r--){let s=t[r](n);s&&Object.keys(s).length&&(i=sO(i,Go(e,s,n.changes.newLength),!0))}return i==n?n:ae.create(e,n.changes,n.selection,i.effects,i.annotations,i.scrollIntoView)}const zm=[];function Ci(n){return n==null?zm:Array.isArray(n)?n:[n]}var te=(function(n){return n[n.Word=0]="Word",n[n.Space=1]="Space",n[n.Other=2]="Other",n})(te||(te={}));const Wm=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let Uo;try{Uo=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function _m(n){if(Uo)return Uo.test(n);for(let e=0;e"€"&&(t.toUpperCase()!=t.toLowerCase()||Wm.test(t)))return!0}return!1}function Em(n){return e=>{if(!/\S/.test(e))return te.Space;if(_m(e))return te.Word;for(let t=0;t-1)return te.Word;return te.Other}}class Y{constructor(e,t,i,r,s,o){this.config=e,this.doc=t,this.selection=i,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=s,o&&(o._state=this);for(let l=0;lr.set(h,a)),t=null),r.set(l.value.compartment,l.value.extension)):l.is(z.reconfigure)?(t=null,i=l.value):l.is(z.appendConfig)&&(t=null,i=Ci(i).concat(l.value));let s;t?s=e.startState.values.slice():(t=Yr.resolve(i,r,this),s=new Y(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(a,h)=>h.reconfigure(a,this),null).values);let o=e.startState.facet(Io)?e.newSelection:e.newSelection.asSingle();new Y(t,e.newDoc,o,s,(l,a)=>a.update(l,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:b.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,i=e(t.ranges[0]),r=this.changes(i.changes),s=[i.range],o=Ci(i.effects);for(let l=1;lo.spec.fromJSON(l,a)))}}return Y.create({doc:e.doc,selection:b.fromJSON(e.selection),extensions:t.extensions?r.concat([t.extensions]):r})}static create(e={}){let t=Yr.resolve(e.extensions||[],new Map),i=e.doc instanceof B?e.doc:B.of((e.doc||"").split(t.staticFacet(Y.lineSeparator)||Vo)),r=e.selection?e.selection instanceof b?e.selection:b.single(e.selection.anchor,e.selection.head):b.single(0);return Hf(r,i.length),t.staticFacet(Io)||(r=r.asSingle()),new Y(t,i,r,t.dynamicSlots.map(()=>null),(s,o)=>o.create(s),null)}get tabSize(){return this.facet(Y.tabSize)}get lineBreak(){return this.facet(Y.lineSeparator)||` +`}get readOnly(){return this.facet(rO)}phrase(e,...t){for(let i of this.facet(Y.phrases))if(Object.prototype.hasOwnProperty.call(i,e)){e=i[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(i,r)=>{if(r=="$")return"$";let s=+(r||1);return!s||s>t.length?i:t[s-1]})),e}languageDataAt(e,t,i=-1){let r=[];for(let s of this.facet(Jf))for(let o of s(this,t,i))Object.prototype.hasOwnProperty.call(o,e)&&r.push(o[e]);return r}charCategorizer(e){let t=this.languageDataAt("wordChars",e);return Em(t.length?t[0]:"")}wordAt(e){let{text:t,from:i,length:r}=this.doc.lineAt(e),s=this.charCategorizer(e),o=e-i,l=e-i;for(;o>0;){let a=ue(t,o,!1);if(s(t.slice(a,o))!=te.Word)break;o=a}for(;ln.length?n[0]:4});Y.lineSeparator=eO;Y.readOnly=rO;Y.phrases=C.define({compare(n,e){let t=Object.keys(n),i=Object.keys(e);return t.length==i.length&&t.every(r=>n[r]==e[r])}});Y.languageData=Jf;Y.changeFilter=tO;Y.transactionFilter=iO;Y.transactionExtender=nO;ys.reconfigure=z.define();function yt(n,e,t={}){let i={};for(let r of n)for(let s of Object.keys(r)){let o=r[s],l=i[s];if(l===void 0)i[s]=o;else if(!(l===o||o===void 0))if(Object.hasOwnProperty.call(t,s))i[s]=t[s](l,o);else throw new Error("Config merge conflict for field "+s)}for(let r in e)i[r]===void 0&&(i[r]=e[r]);return i}class Lt{eq(e){return this==e}range(e,t=e){return No.create(e,t,this)}}Lt.prototype.startSide=Lt.prototype.endSide=0;Lt.prototype.point=!1;Lt.prototype.mapMode=Qe.TrackDel;function Il(n,e){return n==e||n.constructor==e.constructor&&n.eq(e)}let No=class lO{constructor(e,t,i){this.from=e,this.to=t,this.value=i}static create(e,t,i){return new lO(e,t,i)}};function Fo(n,e){return n.from-e.from||n.value.startSide-e.value.startSide}class Gl{constructor(e,t,i,r){this.from=e,this.to=t,this.value=i,this.maxPoint=r}get length(){return this.to[this.to.length-1]}findIndex(e,t,i,r=0){let s=i?this.to:this.from;for(let o=r,l=s.length;;){if(o==l)return o;let a=o+l>>1,h=s[a]-e||(i?this.value[a].endSide:this.value[a].startSide)-t;if(a==o)return h>=0?o:l;h>=0?l=a:o=a+1}}between(e,t,i,r){for(let s=this.findIndex(t,-1e9,!0),o=this.findIndex(i,1e9,!1,s);su||O==u&&h.startSide>0&&h.endSide<=0)continue;(u-O||h.endSide-h.startSide)<0||(o<0&&(o=O),h.point&&(l=Math.max(l,u-O)),i.push(h),r.push(O-o),s.push(u-o))}return{mapped:i.length?new Gl(r,s,i,l):null,pos:o}}}class j{constructor(e,t,i,r){this.chunkPos=e,this.chunk=t,this.nextLayer=i,this.maxPoint=r}static create(e,t,i,r){return new j(e,t,i,r)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:i=!1,filterFrom:r=0,filterTo:s=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(i&&(t=t.slice().sort(Fo)),this.isEmpty)return t.length?j.of(t):this;let l=new aO(this,null,-1).goto(0),a=0,h=[],c=new Zt;for(;l.value||a=0){let f=t[a++];c.addInner(f.from,f.to,f.value)||h.push(f)}else l.rangeIndex==1&&l.chunkIndexthis.chunkEnd(l.chunkIndex)||sl.to||s=s&&e<=s+o.length&&o.between(s,e-s,t-s,i)===!1)return}this.nextLayer.between(e,t,i)}}iter(e=0){return $n.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return $n.from(e).goto(t)}static compare(e,t,i,r,s=-1){let o=e.filter(f=>f.maxPoint>0||!f.isEmpty&&f.maxPoint>=s),l=t.filter(f=>f.maxPoint>0||!f.isEmpty&&f.maxPoint>=s),a=ih(o,l,i),h=new rn(o,a,s),c=new rn(l,a,s);i.iterGaps((f,O,u)=>nh(h,f,c,O,u,r)),i.empty&&i.length==0&&nh(h,0,c,0,0,r)}static eq(e,t,i=0,r){r==null&&(r=999999999);let s=e.filter(c=>!c.isEmpty&&t.indexOf(c)<0),o=t.filter(c=>!c.isEmpty&&e.indexOf(c)<0);if(s.length!=o.length)return!1;if(!s.length)return!0;let l=ih(s,o),a=new rn(s,l,0).goto(i),h=new rn(o,l,0).goto(i);for(;;){if(a.to!=h.to||!Ho(a.active,h.active)||a.point&&(!h.point||!Il(a.point,h.point)))return!1;if(a.to>r)return!0;a.next(),h.next()}}static spans(e,t,i,r,s=-1){let o=new rn(e,null,s).goto(t),l=t,a=o.openStart;for(;;){let h=Math.min(o.to,i);if(o.point){let c=o.activeForPoint(o.to),f=o.pointFroml&&(r.span(l,h,o.active,a),a=o.openEnd(h));if(o.to>i)return a+(o.point&&o.to>i?1:0);l=o.to,o.next()}}static of(e,t=!1){let i=new Zt;for(let r of e instanceof No?[e]:t?jm(e):e)i.add(r.from,r.to,r.value);return i.finish()}static join(e){if(!e.length)return j.empty;let t=e[e.length-1];for(let i=e.length-2;i>=0;i--)for(let r=e[i];r!=j.empty;r=r.nextLayer)t=new j(r.chunkPos,r.chunk,t,Math.max(r.maxPoint,t.maxPoint));return t}}j.empty=new j([],[],null,-1);function jm(n){if(n.length>1)for(let e=n[0],t=1;t0)return n.slice().sort(Fo);e=i}return n}j.empty.nextLayer=j.empty;class Zt{finishChunk(e){this.chunks.push(new Gl(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(e,t,i){this.addInner(e,t,i)||(this.nextLayer||(this.nextLayer=new Zt)).add(e,t,i)}addInner(e,t,i){let r=e-this.lastTo||i.startSide-this.last.endSide;if(r<=0&&(e-this.lastFrom||i.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return r<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=i,this.lastFrom=e,this.lastTo=t,this.value.push(i),i.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let i=t.value.length-1;return this.last=t.value[i],this.lastFrom=t.from[i]+e,this.lastTo=t.to[i]+e,!0}finish(){return this.finishInner(j.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=j.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function ih(n,e,t){let i=new Map;for(let s of n)for(let o=0;o=this.minPoint)break}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=i&&r.push(new aO(o,t,i,s));return r.length==1?r[0]:new $n(r)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let i of this.heap)i.goto(e,t);for(let i=this.heap.length>>1;i>=0;i--)Ds(this.heap,i);return this.next(),this}forward(e,t){for(let i of this.heap)i.forward(e,t);for(let i=this.heap.length>>1;i>=0;i--)Ds(this.heap,i);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),Ds(this.heap,0)}}}function Ds(n,e){for(let t=n[e];;){let i=(e<<1)+1;if(i>=n.length)break;let r=n[i];if(i+1=0&&(r=n[i+1],i++),t.compare(r)<0)break;n[i]=t,n[e]=r,e=i}}class rn{constructor(e,t,i){this.minPoint=i,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=$n.from(e,t,i)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){nr(this.active,e),nr(this.activeTo,e),nr(this.activeRank,e),this.minActive=rh(this.active,this.activeTo)}addActive(e){let t=0,{value:i,to:r,rank:s}=this.cursor;for(;t0;)t++;rr(this.active,t,i),rr(this.activeTo,t,r),rr(this.activeRank,t,s),e&&rr(e,t,this.cursor.from),this.minActive=rh(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let i=this.openStart<0?[]:null;for(;;){let r=this.minActive;if(r>-1&&(this.activeTo[r]-this.cursor.from||this.active[r].endSide-this.cursor.startSide)<0){if(this.activeTo[r]>e){this.to=this.activeTo[r],this.endSide=this.active[r].endSide;break}this.removeActive(r),i&&nr(i,r)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let s=this.cursor.value;if(!s.point)this.addActive(i),this.cursor.next();else if(t&&this.cursor.to==this.to&&this.cursor.from=0&&i[r]=0&&!(this.activeRank[i]e||this.activeTo[i]==e&&this.active[i].endSide>=this.point.endSide)&&t.push(this.active[i]);return t.reverse()}openEnd(e){let t=0;for(let i=this.activeTo.length-1;i>=0&&this.activeTo[i]>e;i--)t++;return t}}function nh(n,e,t,i,r,s){n.goto(e),t.goto(i);let o=i+r,l=i,a=i-e,h=!!s.boundChange;for(let c=!1;;){let f=n.to+a-t.to,O=f||n.endSide-t.endSide,u=O<0?n.to+a:t.to,d=Math.min(u,o);if(n.point||t.point?(n.point&&t.point&&Il(n.point,t.point)&&Ho(n.activeForPoint(n.to),t.activeForPoint(t.to))||s.comparePoint(l,d,n.point,t.point),c=!1):(c&&s.boundChange(l),d>l&&!Ho(n.active,t.active)&&s.compareRange(l,d,n.active,t.active),h&&do)break;l=u,O<=0&&n.next(),O>=0&&t.next()}}function Ho(n,e){if(n.length!=e.length)return!1;for(let t=0;t=e;i--)n[i+1]=n[i];n[e]=t}function rh(n,e){let t=-1,i=1e9;for(let r=0;r=e)return r;if(r==n.length)break;s+=n.charCodeAt(r)==9?t-s%t:1,r=ue(n,r)}return i===!0?-1:n.length}const Jo="ͼ",sh=typeof Symbol>"u"?"__"+Jo:Symbol.for(Jo),el=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),oh=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class Yt{constructor(e,t){this.rules=[];let{finish:i}=t||{};function r(o){return/^@/.test(o)?[o]:o.split(/,\s*/)}function s(o,l,a,h){let c=[],f=/^@(\w+)\b/.exec(o[0]),O=f&&f[1]=="keyframes";if(f&&l==null)return a.push(o[0]+";");for(let u in l){let d=l[u];if(/&/.test(u))s(u.split(/,\s*/).map(m=>o.map(g=>m.replace(/&/,g))).reduce((m,g)=>m.concat(g)),d,a);else if(d&&typeof d=="object"){if(!f)throw new RangeError("The value of a property ("+u+") should be a primitive value.");s(r(u),d,c,O)}else d!=null&&c.push(u.replace(/_.*/,"").replace(/[A-Z]/g,m=>"-"+m.toLowerCase())+": "+d+";")}(c.length||O)&&a.push((i&&!f&&!h?o.map(i):o).join(", ")+" {"+c.join(" ")+"}")}for(let o in e)s(r(o),e[o],this.rules)}getRules(){return this.rules.join(` +`)}static newName(){let e=oh[sh]||1;return oh[sh]=e+1,Jo+e.toString(36)}static mount(e,t,i){let r=e[el],s=i&&i.nonce;r?s&&r.setNonce(s):r=new Vm(e,s),r.mount(Array.isArray(t)?t:[t],e)}}let lh=new Map;class Vm{constructor(e,t){let i=e.ownerDocument||e,r=i.defaultView;if(!e.head&&e.adoptedStyleSheets&&r.CSSStyleSheet){let s=lh.get(i);if(s)return e[el]=s;this.sheet=new r.CSSStyleSheet,lh.set(i,this)}else this.styleTag=i.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[el]=this}mount(e,t){let i=this.sheet,r=0,s=0;for(let o=0;o-1&&(this.modules.splice(a,1),s--,a=-1),a==-1){if(this.modules.splice(s++,0,l),i)for(let h=0;h",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Lm=typeof navigator<"u"&&/Mac/.test(navigator.platform),Ym=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var ge=0;ge<10;ge++)Dt[48+ge]=Dt[96+ge]=String(ge);for(var ge=1;ge<=24;ge++)Dt[ge+111]="F"+ge;for(var ge=65;ge<=90;ge++)Dt[ge]=String.fromCharCode(ge+32),Pn[ge]=String.fromCharCode(ge);for(var Bs in Dt)Pn.hasOwnProperty(Bs)||(Pn[Bs]=Dt[Bs]);function Dm(n){var e=Lm&&n.metaKey&&n.shiftKey&&!n.ctrlKey&&!n.altKey||Ym&&n.shiftKey&&n.key&&n.key.length==1||n.key=="Unidentified",t=!e&&n.key||(n.shiftKey?Pn:Dt)[n.keyCode]||n.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}function N(){var n=arguments[0];typeof n=="string"&&(n=document.createElement(n));var e=1,t=arguments[1];if(t&&typeof t=="object"&&t.nodeType==null&&!Array.isArray(t)){for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i)){var r=t[i];typeof r=="string"?n.setAttribute(i,r):r!=null&&(n[i]=r)}e++}for(;e2);var X={mac:ch||/Mac/.test(Te.platform),windows:/Win/.test(Te.platform),linux:/Linux|X11/.test(Te.platform),ie:ks,ie_version:cO?tl.documentMode||6:nl?+nl[1]:il?+il[1]:0,gecko:ah,gecko_version:ah?+(/Firefox\/(\d+)/.exec(Te.userAgent)||[0,0])[1]:0,chrome:!!Is,chrome_version:Is?+Is[1]:0,ios:ch,android:/Android\b/.test(Te.userAgent),webkit:hh,webkit_version:hh?+(/\bAppleWebKit\/(\d+)/.exec(Te.userAgent)||[0,0])[1]:0,safari:rl,safari_version:rl?+(/\bVersion\/(\d+(\.\d+)?)/.exec(Te.userAgent)||[0,0])[1]:0,tabSize:tl.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function Ul(n,e){for(let t in n)t=="class"&&e.class?e.class+=" "+n.class:t=="style"&&e.style?e.style+=";"+n.style:e[t]=n[t];return e}const Br=Object.create(null);function Nl(n,e,t){if(n==e)return!0;n||(n=Br),e||(e=Br);let i=Object.keys(n),r=Object.keys(e);if(i.length-0!=r.length-0)return!1;for(let s of i)if(s!=t&&(r.indexOf(s)==-1||n[s]!==e[s]))return!1;return!0}function Bm(n,e){for(let t=n.attributes.length-1;t>=0;t--){let i=n.attributes[t].name;e[i]==null&&n.removeAttribute(i)}for(let t in e){let i=e[t];t=="style"?n.style.cssText=i:n.getAttribute(t)!=i&&n.setAttribute(t,i)}}function fh(n,e,t){let i=!1;if(e)for(let r in e)t&&r in t||(i=!0,r=="style"?n.style.cssText="":n.removeAttribute(r));if(t)for(let r in t)e&&e[r]==t[r]||(i=!0,r=="style"?n.style.cssText=t[r]:n.setAttribute(r,t[r]));return i}function Im(n){let e=Object.create(null);for(let t=0;t0?3e8:-4e8:t>0?1e8:-1e8,new pi(e,t,t,i,e.widget||null,!1)}static replace(e){let t=!!e.block,i,r;if(e.isBlockGap)i=-5e8,r=4e8;else{let{start:s,end:o}=fO(e,t);i=(s?t?-3e8:-1:5e8)-1,r=(o?t?2e8:1:-6e8)+1}return new pi(e,i,r,t,e.widget||null,!0)}static line(e){return new Un(e)}static set(e,t=!1){return j.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}R.none=j.empty;class Gn extends R{constructor(e){let{start:t,end:i}=fO(e);super(t?-1:5e8,i?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?Ul(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||Br}eq(e){return this==e||e instanceof Gn&&this.tagName==e.tagName&&Nl(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}}Gn.prototype.point=!1;class Un extends R{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof Un&&this.spec.class==e.spec.class&&Nl(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}}Un.prototype.mapMode=Qe.TrackBefore;Un.prototype.point=!0;class pi extends R{constructor(e,t,i,r,s,o){super(t,i,s,e),this.block=r,this.isReplace=o,this.mapMode=r?t<=0?Qe.TrackBefore:Qe.TrackAfter:Qe.TrackDel}get type(){return this.startSide!=this.endSide?Se.WidgetRange:this.startSide<=0?Se.WidgetBefore:Se.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof pi&&Gm(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}}pi.prototype.point=!0;function fO(n,e=!1){let{inclusiveStart:t,inclusiveEnd:i}=n;return t==null&&(t=n.inclusive),i==null&&(i=n.inclusive),{start:t??e,end:i??e}}function Gm(n,e){return n==e||!!(n&&e&&n.compare(e))}function Xi(n,e,t,i=0){let r=t.length-1;r>=0&&t[r]+i>=n?t[r]=Math.max(t[r],e):t.push(n,e)}class vn extends Lt{constructor(e,t,i){super(),this.tagName=e,this.attributes=t,this.rank=i}eq(e){return e==this||e instanceof vn&&this.tagName==e.tagName&&Nl(this.attributes,e.attributes)}static create(e){return new vn(e.tagName,e.attributes||Br,e.rank==null?50:Math.max(0,Math.min(e.rank,100)))}static set(e,t=!1){return j.of(e,t)}}vn.prototype.startSide=vn.prototype.endSide=-1;function Tn(n){let e;return n.nodeType==11?e=n.getSelection?n:n.ownerDocument:e=n,e.getSelection()}function sl(n,e){return e?n==e||n.contains(e.nodeType!=1?e.parentNode:e):!1}function gn(n,e){if(!e.anchorNode)return!1;try{return sl(n,e.anchorNode)}catch{return!1}}function Qn(n){return n.nodeType==3?Xn(n,0,n.nodeValue.length).getClientRects():n.nodeType==1?n.getClientRects():[]}function Sn(n,e,t,i){return t?Oh(n,e,t,i,-1)||Oh(n,e,t,i,1):!1}function Bt(n){for(var e=0;;e++)if(n=n.previousSibling,!n)return e}function Ir(n){return n.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(n.nodeName)}function Oh(n,e,t,i,r){for(;;){if(n==t&&e==i)return!0;if(e==(r<0?0:Rt(n))){if(n.nodeName=="DIV")return!1;let s=n.parentNode;if(!s||s.nodeType!=1)return!1;e=Bt(n)+(r<0?0:1),n=s}else if(n.nodeType==1){if(n=n.childNodes[e+(r<0?-1:0)],n.nodeType==1&&n.contentEditable=="false")return!1;e=r<0?Rt(n):0}else return!1}}function Rt(n){return n.nodeType==3?n.nodeValue.length:n.childNodes.length}function Cn(n,e){let t=e?n.left:n.right;return{left:t,right:t,top:n.top,bottom:n.bottom}}function Um(n){let e=n.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:n.innerWidth,top:0,bottom:n.innerHeight}}function OO(n,e){let t=e.width/n.offsetWidth,i=e.height/n.offsetHeight;return(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.width-n.offsetWidth)<1)&&(t=1),(i>.995&&i<1.005||!isFinite(i)||Math.abs(e.height-n.offsetHeight)<1)&&(i=1),{scaleX:t,scaleY:i}}function Nm(n,e,t,i,r,s,o,l){let a=n.ownerDocument,h=a.defaultView||window;for(let c=n,f=!1;c&&!f;)if(c.nodeType==1){let O,u=c==a.body,d=1,m=1;if(u)O=Um(h);else{if(/^(fixed|sticky)$/.test(getComputedStyle(c).position)&&(f=!0),c.scrollHeight<=c.clientHeight&&c.scrollWidth<=c.clientWidth){c=c.assignedSlot||c.parentNode;continue}let S=c.getBoundingClientRect();({scaleX:d,scaleY:m}=OO(c,S)),O={left:S.left,right:S.left+c.clientWidth*d,top:S.top,bottom:S.top+c.clientHeight*m}}let g=0,Q=0;if(r=="nearest")e.top0&&e.bottom>O.bottom+Q&&(Q=e.bottom-O.bottom+o)):e.bottom>O.bottom-o&&(Q=e.bottom-O.bottom+o,t<0&&e.top-Q0&&e.right>O.right+g&&(g=e.right-O.right+s)):e.right>O.right-s&&(g=e.right-O.right+s,t<0&&e.leftO.bottom||e.leftO.right)&&(e={left:Math.max(e.left,O.left),right:Math.min(e.right,O.right),top:Math.max(e.top,O.top),bottom:Math.min(e.bottom,O.bottom)}),c=c.assignedSlot||c.parentNode}else if(c.nodeType==11)c=c.host;else break}function uO(n,e=!0){let t=n.ownerDocument,i=null,r=null;for(let s=n.parentNode;s&&!(s==t.body||(!e||i)&&r);)if(s.nodeType==1)!r&&s.scrollHeight>s.clientHeight&&(r=s),e&&!i&&s.scrollWidth>s.clientWidth&&(i=s),s=s.assignedSlot||s.parentNode;else if(s.nodeType==11)s=s.host;else break;return{x:i,y:r}}class Fm{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:t,focusNode:i}=e;this.set(t,Math.min(e.anchorOffset,t?Rt(t):0),i,Math.min(e.focusOffset,i?Rt(i):0))}set(e,t,i,r){this.anchorNode=e,this.anchorOffset=t,this.focusNode=i,this.focusOffset=r}}let oi=null;X.safari&&X.safari_version>=26&&(oi=!1);function dO(n){if(n.setActive)return n.setActive();if(oi)return n.focus(oi);let e=[];for(let t=n;t&&(e.push(t,t.scrollTop,t.scrollLeft),t!=t.ownerDocument);t=t.parentNode);if(n.focus(oi==null?{get preventScroll(){return oi={preventScroll:!0},!0}}:void 0),!oi){oi=!1;for(let t=0;tMath.max(0,n.document.documentElement.scrollHeight-n.innerHeight-4):n.scrollTop>Math.max(1,n.scrollHeight-n.clientHeight-4)}function mO(n,e){for(let t=n,i=e;;){if(t.nodeType==3&&i>0)return{node:t,offset:i};if(t.nodeType==1&&i>0){if(t.contentEditable=="false")return null;t=t.childNodes[i-1],i=Rt(t)}else if(t.parentNode&&!Ir(t))i=Bt(t),t=t.parentNode;else return null}}function gO(n,e){for(let t=n,i=e;;){if(t.nodeType==3&&i=t){if(l.level==i)return o;(s<0||(r!=0?r<0?l.fromt:e[s].level>l.level))&&(s=o)}}if(s<0)throw new RangeError("Index out of range");return s}}function bO(n,e){if(n.length!=e.length)return!1;for(let t=0;t=0;m-=3)if(lt[m+1]==-u){let g=lt[m+2],Q=g&2?r:g&4?g&1?s:r:0;Q&&(K[f]=K[lt[m]]=Q),l=m;break}}else{if(lt.length==189)break;lt[l++]=f,lt[l++]=O,lt[l++]=a}else if((d=K[f])==2||d==1){let m=d==r;a=m?0:1;for(let g=l-3;g>=0;g-=3){let Q=lt[g+2];if(Q&2)break;if(m)lt[g+2]|=2;else{if(Q&4)break;lt[g+2]|=4}}}}}function rg(n,e,t,i){for(let r=0,s=i;r<=t.length;r++){let o=r?t[r-1].to:n,l=ra;)d==g&&(d=t[--m].from,g=m?t[m-1].to:n),K[--d]=u;a=c}else s=h,a++}}}function ll(n,e,t,i,r,s,o){let l=i%2?2:1;if(i%2==r%2)for(let a=e,h=0;aa&&o.push(new dt(a,m.from,u));let g=m.direction==mi!=!(u%2);al(n,g?i+1:i,r,m.inner,m.from,m.to,o),a=m.to}d=m.to}else{if(d==t||(c?K[d]!=l:K[d]==l))break;d++}O?ll(n,a,d,i+1,r,O,o):ae;){let c=!0,f=!1;if(!h||a>s[h-1].to){let m=K[a-1];m!=l&&(c=!1,f=m==16)}let O=!c&&l==1?[]:null,u=c?i:i+1,d=a;e:for(;;)if(h&&d==s[h-1].to){if(f)break e;let m=s[--h];if(!c)for(let g=m.from,Q=h;;){if(g==e)break e;if(Q&&s[Q-1].to==g)g=s[--Q].from;else{if(K[g-1]==l)break e;break}}if(O)O.push(m);else{m.toK.length;)K[K.length]=256;let i=[],r=e==mi?0:1;return al(n,r,r,t,0,n.length,i),i}function yO(n){return[new dt(0,n,0)]}let kO="";function og(n,e,t,i,r){var s;let o=i.head-n.from,l=dt.find(e,o,(s=i.bidiLevel)!==null&&s!==void 0?s:-1,i.assoc),a=e[l],h=a.side(r,t);if(o==h){let O=l+=r?1:-1;if(O<0||O>=e.length)return null;a=e[l=O],o=a.side(!r,t),h=a.side(r,t)}let c=ue(n.text,o,a.forward(r,t));(ca.to)&&(c=h),kO=n.text.slice(Math.min(o,c),Math.max(o,c));let f=l==(r?e.length-1:0)?null:e[l+(r?1:-1)];return f&&c==h&&f.level+(r?0:1)n.some(e=>e)}),XO=C.define({combine:n=>n.some(e=>e)}),ZO=C.define();class Ri{constructor(e,t,i,r,s,o=!1){this.range=e,this.y=t,this.x=i,this.yMargin=r,this.xMargin=s,this.isSnapshot=o}map(e){return e.empty?this:new Ri(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new Ri(b.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const sr=z.define({map:(n,e)=>n.map(e)}),RO=z.define();function qe(n,e,t){let i=n.facet(PO);i.length?i[0](e):window.onerror&&window.onerror(String(e),t,void 0,void 0,e)||(t?console.error(t+":",e):console.error(e))}const Tt=C.define({combine:n=>n.length?n[0]:!0});let ag=0;const Pi=C.define({combine(n){return n.filter((e,t)=>{for(let i=0;i{let a=[];return o&&a.push(xs.of(h=>{let c=h.plugin(l);return c?o(c):R.none})),s&&a.push(s(l)),a})}static fromClass(e,t){return se.define((i,r)=>new e(i,r),t)}}class Gs{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let t=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(t)}catch(i){if(qe(t.state,i,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(t){qe(e.state,t,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var t;if(!((t=this.value)===null||t===void 0)&&t.destroy)try{this.value.destroy()}catch(i){qe(e.state,i,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const AO=C.define(),Jl=C.define(),xs=C.define(),qO=C.define(),ea=C.define(),Nn=C.define(),MO=C.define();function dh(n,e){let t=n.state.facet(MO);if(!t.length)return t;let i=t.map(s=>s instanceof Function?s(n):s),r=[];return j.spans(i,e.from,e.to,{point(){},span(s,o,l,a){let h=s-e.from,c=o-e.from,f=r;for(let O=l.length-1;O>=0;O--,a--){let u=l[O].spec.bidiIsolate,d;if(u==null&&(u=lg(e.text,h,c)),a>0&&f.length&&(d=f[f.length-1]).to==h&&d.direction==u)d.to=c,f=d.inner;else{let m={from:h,to:c,direction:u,inner:[]};f.push(m),f=m.inner}}}}),r}const zO=C.define();function ta(n){let e=0,t=0,i=0,r=0;for(let s of n.state.facet(zO)){let o=s(n);o&&(o.left!=null&&(e=Math.max(e,o.left)),o.right!=null&&(t=Math.max(t,o.right)),o.top!=null&&(i=Math.max(i,o.top)),o.bottom!=null&&(r=Math.max(r,o.bottom)))}return{left:e,right:t,top:i,bottom:r}}const fn=C.define();class Be{constructor(e,t,i,r){this.fromA=e,this.toA=t,this.fromB=i,this.toB=r}join(e){return new Be(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,i=this;for(;t>0;t--){let r=e[t-1];if(!(r.fromA>i.toA)){if(r.toAr.push(new Be(s,o,l,a))),this.changedRanges=r}static create(e,t,i){return new Gr(e,t,i)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}}const hg=[];class re{constructor(e,t,i=0){this.dom=e,this.length=t,this.flags=i,this.parent=null,e.cmTile=this}get breakAfter(){return this.flags&1}get children(){return hg}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,this.flags&4){this.flags&=-5;let t=this.domAttrs;t&&Bm(this.dom,t)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,t=this.posAtStart){let i=t;for(let r of this.children){if(r==e)return i;i+=r.length+r.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,t){return null}domPosFor(e,t){let i=Bt(this.dom),r=this.length?e>0:t>0;return new Je(this.parent.dom,i+(r?1:0),e==0||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof $s)return e;return null}static get(e){return e.cmTile}}class ws extends re{constructor(e){super(e,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(e){this.children.push(e),e.parent=this}sync(e){if(this.flags&2)return;super.sync(e);let t=this.dom,i=null,r,s=e?.node==t?e:null,o=0;for(let l of this.children){if(l.sync(e),o+=l.length+l.breakAfter,r=i?i.nextSibling:t.firstChild,s&&r!=l.dom&&(s.written=!0),l.dom.parentNode==t)for(;r&&r!=l.dom;)r=ph(r);else t.insertBefore(l.dom,r);i=l.dom}for(r=i?i.nextSibling:t.firstChild,s&&r&&(s.written=!0);r;)r=ph(r);this.length=o}}function ph(n){let e=n.nextSibling;return n.parentNode.removeChild(n),e}class $s extends ws{constructor(e,t){super(t),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let t=re.get(e);if(t&&this.owns(t))return t;e=e.parentNode}}blockTiles(e){for(let t=[],i=this,r=0,s=0;;)if(r==i.children.length){if(!t.length)return;i=i.parent,i.breakAfter&&s++,r=t.pop()}else{let o=i.children[r++];if(o instanceof Ct)t.push(r),i=o,r=0;else{let l=s+o.length,a=e(o,s);if(a!==void 0)return a;s=l+o.breakAfter}}}resolveBlock(e,t){let i,r=-1,s,o=-1;if(this.blockTiles((l,a)=>{let h=a+l.length;if(e>=a&&e<=h){if(l.isWidget()&&t>=-1&&t<=1){if(l.flags&32)return!0;l.flags&16&&(i=void 0)}(ae||e==a&&(t>1?l.length:l.covers(-1)))&&(!s||!l.isWidget()&&s.isWidget())&&(s=l,o=e-a)}}),!i&&!s)throw new Error("No tile at position "+e);return i&&t<0||!s?{tile:i,offset:r}:{tile:s,offset:o}}}class Ct extends ws{constructor(e,t){super(e),this.wrapper=t}isBlock(){return!0}covers(e){return this.children.length?e<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(e,t){let i=new Ct(t||document.createElement(e.tagName),e);return t||(i.flags|=4),i}}class Ei extends ws{constructor(e,t){super(e),this.attrs=t}isLine(){return!0}static start(e,t,i){let r=new Ei(t||document.createElement("div"),e);return(!t||!i)&&(r.flags|=4),r}get domAttrs(){return this.attrs}resolveInline(e,t,i){let r=null,s=-1,o=null,l=-1;function a(c,f){for(let O=0,u=0;O=f&&(d.isComposite()?a(d,f-u):(!o||o.isHidden&&(t>0||i&&fg(o,d)))&&(m>f||d.flags&32)?(o=d,l=f-u):(ui&&(e=i);let r=e,s=e,o=0;e==0&&t<0||e==i&&t>=0?X.chrome||X.gecko||(e?(r--,o=1):s=0)?0:l.length-1];return X.safari&&!o&&a.width==0&&(a=Array.prototype.find.call(l,h=>h.width)||a),o?Cn(a,o<0):a||null}static of(e,t){let i=new fi(t||document.createTextNode(e),e);return t||(i.flags|=2),i}}class gi extends re{constructor(e,t,i,r){super(e,t,r),this.widget=i}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return this.flags&48?!1:(this.flags&(e<0?64:128))>0}coordsIn(e,t){return this.coordsInWidget(e,t,!1)}coordsInWidget(e,t,i){let r=this.widget.coordsAt(this.dom,e,t);if(r)return r;if(i)return Cn(this.dom.getBoundingClientRect(),this.length?e==0:t<=0);{let s=this.dom.getClientRects(),o=null;if(!s.length)return null;let l=this.flags&16?!0:this.flags&32?!1:e>0;for(let a=l?s.length-1:0;o=s[a],!(e>0?a==0:a==s.length-1||o.top0;)if(r.isComposite())if(o){if(!e)break;i&&i.break(),e--,o=!1}else if(s==r.children.length){if(!e&&!l.length)break;i&&i.leave(r),o=!!r.breakAfter,{tile:r,index:s}=l.pop(),s++}else{let a=r.children[s],h=a.breakAfter;(t>0?a.length<=e:a.length=0;l--){let a=t.marks[l],h=r.lastChild;if(h instanceof Ae&&h.mark.eq(a.mark))h.dom!=a.dom&&h.setDOM(Us(a.dom)),r=h;else{if(this.cache.reused.get(a)){let f=re.get(a.dom);f&&f.setDOM(Us(a.dom))}let c=Ae.of(a.mark,a.dom);r.append(c),r=c}this.cache.reused.set(a,2)}let s=re.get(e.text);s&&this.cache.reused.set(s,2);let o=new fi(e.text,e.text.nodeValue);o.flags|=8,this.pos=e.range.toB,r.append(o)}addInlineWidget(e,t,i){let r=this.afterWidget&&e.flags&48&&(this.afterWidget.flags&48)==(e.flags&48);r||this.flushBuffer();let s=this.ensureMarks(t,i);!r&&!(e.flags&16)&&s.append(this.getBuffer(1)),s.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,t,i){this.flushBuffer(),this.ensureMarks(t,i).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){let t=this.afterWidget||this.lastBlock;t.length+=e,this.pos+=e}addLineStart(e,t){var i;e||(e=WO);let r=Ei.start(e,t||((i=this.cache.find(Ei))===null||i===void 0?void 0:i.dom),!!t);this.getBlockPos().append(this.lastBlock=this.curLine=r)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,t){var i;let r=this.curLine;for(let s=e.length-1;s>=0;s--){let o=e[s],l;if(t>0&&(l=r.lastChild)&&l instanceof Ae&&l.mark.eq(o))r=l,t--;else{let a=Ae.of(o,(i=this.cache.find(Ae,h=>h.mark.eq(o)))===null||i===void 0?void 0:i.dom);r.append(a),r=a,t=0}}return r}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;(!e||!mh(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(X.ios&&mh(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(Ns,0,32)||new gi(Ns.toDOM(),0,Ns,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to=this.pos){let t=e.rank*102+e.value.rank,i=new ug(e.from,e.to,e.value,t),r=this.wrappers.length;for(;r>0&&(this.wrappers[r-1].rank-i.rank||this.wrappers[r-1].to-i.to)<0;)r--;this.wrappers.splice(r,0,i)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let t=this.root;for(let i of this.wrappers){let r=t.lastChild;if(i.fromo.wrapper.eq(i.wrapper)))===null||e===void 0?void 0:e.dom);t.append(s),t=s}}return t}blockPosCovered(){let e=this.lastBlock;return e!=null&&!e.breakAfter&&(!e.isWidget()||(e.flags&160)>0)}getBuffer(e){let t=2|(e<0?16:32),i=this.cache.find(Ur,void 0,1);return i&&(i.flags=t),i||new Ur(t)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}}class pg{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:r,lineBreak:s,done:o}=this.cursor.next(this.skipCount);if(this.skipCount=0,o)throw new Error("Ran out of text content when drawing inline views");this.text=r;let l=this.textOff=Math.min(e,r.length);return s?null:r.slice(0,l)}let t=Math.min(this.text.length,this.textOff+e),i=this.text.slice(this.textOff,t);return this.textOff=t,i}}const Nr=[gi,Ei,fi,Ae,Ur,Ct,$s];for(let n=0;n[]),this.index=Nr.map(()=>0),this.reused=new Map}add(e){let t=e.constructor.bucket,i=this.buckets[t];i.length<6?i.push(e):i[this.index[t]=(this.index[t]+1)%6]=e}find(e,t,i=2){let r=e.bucket,s=this.buckets[r],o=this.index[r];for(let l=s.length-1;l>=0;l--){let a=(l+o)%s.length,h=s[a];if((!t||t(h))&&!this.reused.has(h))return s.splice(a,1),a{if(this.cache.add(o),o.isComposite())return!1},enter:o=>this.cache.add(o),leave:()=>{},break:()=>{}}}run(e,t){let i=t&&this.getCompositionContext(t.text);for(let r=0,s=0,o=0;;){let l=or){let h=a-r;this.preserve(h,!o,!l),r=a,s+=h}if(!l)break;t&&l.fromA<=t.range.fromA&&l.toA>=t.range.toA?(this.forward(l.fromA,t.range.fromA,t.range.fromA{if(o.isWidget())if(this.openWidget)this.builder.continueWidget(a-l);else{let h=a>0||l{o.isLine()?this.builder.addLineStart(o.attrs,this.cache.maybeReuse(o)):(this.cache.add(o),o instanceof Ae&&r.unshift(o.mark)),this.openWidget=!1},leave:o=>{o.isLine()?r.length&&(r.length=s=0):o instanceof Ae&&(r.shift(),s=Math.min(s,r.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,t){let i=null,r=this.builder,s=0,o=j.spans(this.decorations,e,t,{point:(l,a,h,c,f,O)=>{if(h instanceof pi){if(this.disallowBlockEffectsFor[O]){if(h.block)throw new RangeError("Block decorations may not be specified via plugins");if(a>this.view.state.doc.lineAt(l).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(s=c.length,f>c.length)r.continueWidget(a-l);else{let u=h.widget||(h.block?ji.block:ji.inline),d=Qg(h),m=this.cache.findWidget(u,a-l,d)||gi.of(u,this.view,a-l,d);h.block?(h.startSide>0&&r.addLineStartIfNotCovered(i),r.addBlockWidget(m)):(r.ensureLine(i),r.addInlineWidget(m,c,f))}i=null}else i=Sg(i,h);a>l&&this.text.skip(a-l)},span:(l,a,h,c)=>{for(let f=l;fs,this.openMarks=o}forward(e,t,i=1){t-e<=10?this.old.advance(t-e,i,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(t-e-10,-1),this.old.advance(5,i,this.reuseWalker))}getCompositionContext(e){let t=[],i=null;for(let r=e.parentNode;;r=r.parentNode){let s=re.get(r);if(r==this.view.contentDOM)break;s instanceof Ae?t.push(s):s?.isLine()?i=s:s instanceof Ct||(r.nodeName=="DIV"&&!i&&r!=this.view.contentDOM?i=new Ei(r,WO):i||t.push(Ae.of(new Gn({tagName:r.nodeName.toLowerCase(),attributes:Im(r)}),r)))}return{line:i,marks:t}}}function mh(n,e){let t=i=>{for(let r of i.children)if((e?r.isText():r.length)||t(r))return!0;return!1};return t(n)}function Qg(n){let e=n.isReplace?(n.startSide<0?64:0)|(n.endSide>0?128:0):n.startSide>0?32:16;return n.block&&(e|=256),e}const WO={class:"cm-line"};function Sg(n,e){let t=e.spec.attributes,i=e.spec.class;return!t&&!i||(n||(n={class:"cm-line"}),t&&Ul(t,n),i&&(n.class+=" "+i)),n}function bg(n){let e=[];for(let t=n.parents.length;t>1;t--){let i=t==n.parents.length?n.tile:n.parents[t].tile;i instanceof Ae&&e.push(i.mark)}return e}function Us(n){let e=re.get(n);return e&&e.setDOM(n.cloneNode()),n}class ji extends it{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}ji.inline=new ji("span");ji.block=new ji("div");const Ns=new class extends it{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}};class gh{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=R.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new $s(e,e.contentDOM),this.updateInner([new Be(0,0,0,e.state.doc.length)],null)}update(e){var t;let i=e.changedRanges;this.minWidth>0&&i.length&&(i.every(({fromA:c,toA:f})=>fthis.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let r=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?r=this.domChanged.newSel.head:!Cg(e.changes,this.hasComposition)&&!e.selectionSet&&(r=e.state.selection.main.head));let s=r>-1?kg(this.view,e.changes,r):null;if(this.domChanged=null,this.hasComposition){let{from:c,to:f}=this.hasComposition;i=new Be(c,f,e.changes.mapPos(c,-1),e.changes.mapPos(f,1)).addToSet(i.slice())}this.hasComposition=s?{from:s.range.fromB,to:s.range.toB}:null,(X.ie||X.chrome)&&!s&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,l=this.blockWrappers;this.updateDeco();let a=$g(o,this.decorations,e.changes);a.length&&(i=Be.extendWithRanges(i,a));let h=vg(l,this.blockWrappers,e.changes);return h.length&&(i=Be.extendWithRanges(i,h)),s&&!i.some(c=>c.fromA<=s.range.fromA&&c.toA>=s.range.toA)&&(i=s.range.addToSet(i.slice())),this.tile.flags&2&&i.length==0?!1:(this.updateInner(i,s),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t){this.view.viewState.mustMeasureContent=!0;let{observer:i}=this.view;i.ignore(()=>{if(t||e.length){let o=this.tile,l=new gg(this.view,o,this.blockWrappers,this.decorations,this.dynamicDecorationMap);t&&re.get(t.text)&&l.cache.reused.set(re.get(t.text),2),this.tile=l.run(e,t),cl(o,l.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let s=X.chrome||X.ios?{node:i.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(s),s&&(s.written||i.selectionRange.focusNode!=s.node||!this.tile.dom.contains(s.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let r=[];if(this.view.viewport.from||this.view.viewport.to-1)&&gn(i,this.view.observer.selectionRange)&&!(r&&i.contains(r));if(!(s||t||o))return;let l=this.forceSelection;this.forceSelection=!1;let a=this.view.state.selection.main,h,c;if(a.empty?c=h=this.inlineDOMNearPos(a.anchor,a.assoc||1):(c=this.inlineDOMNearPos(a.head,a.head==a.from?1:-1),h=this.inlineDOMNearPos(a.anchor,a.anchor==a.from?1:-1)),X.gecko&&a.empty&&!this.hasComposition&&yg(h)){let O=document.createTextNode("");this.view.observer.ignore(()=>h.node.insertBefore(O,h.node.childNodes[h.offset]||null)),h=c=new Je(O,0),l=!0}let f=this.view.observer.selectionRange;(l||!f.focusNode||(!Sn(h.node,h.offset,f.anchorNode,f.anchorOffset)||!Sn(c.node,c.offset,f.focusNode,f.focusOffset))&&!this.suppressWidgetCursorChange(f,a))&&(this.view.observer.ignore(()=>{X.android&&X.chrome&&i.contains(f.focusNode)&&Tg(f.focusNode,i)&&(i.blur(),i.focus({preventScroll:!0}));let O=Tn(this.view.root);if(O)if(a.empty){if(X.gecko){let u=xg(h.node,h.offset);if(u&&u!=3){let d=(u==1?mO:gO)(h.node,h.offset);d&&(h=new Je(d.node,d.offset))}}O.collapse(h.node,h.offset),a.bidiLevel!=null&&O.caretBidiLevel!==void 0&&(O.caretBidiLevel=a.bidiLevel)}else if(O.extend){O.collapse(h.node,h.offset);try{O.extend(c.node,c.offset)}catch{}}else{let u=document.createRange();a.anchor>a.head&&([h,c]=[c,h]),u.setEnd(c.node,c.offset),u.setStart(h.node,h.offset),O.removeAllRanges(),O.addRange(u)}o&&this.view.root.activeElement==i&&(i.blur(),r&&r.focus())}),this.view.observer.setSelectionRange(h,c)),this.impreciseAnchor=h.precise?null:new Je(f.anchorNode,f.anchorOffset),this.impreciseHead=c.precise?null:new Je(f.focusNode,f.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&Sn(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==t.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,t=e.state.selection.main,i=Tn(e.root),{anchorNode:r,anchorOffset:s}=e.observer.selectionRange;if(!i||!t.empty||!t.assoc||!i.modify)return;let o=this.lineAt(t.head,t.assoc);if(!o)return;let l=o.posAtStart;if(t.head==l||t.head==l+o.length)return;let a=this.coordsAt(t.head,-1),h=this.coordsAt(t.head,1);if(!a||!h||a.bottom>h.top)return;let c=this.domAtPos(t.head+t.assoc,t.assoc);i.collapse(c.node,c.offset),i.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let f=e.observer.selectionRange;e.docView.posFromDOM(f.anchorNode,f.anchorOffset)!=t.from&&i.collapse(r,s)}posFromDOM(e,t){let i=this.tile.nearest(e);if(!i)return this.tile.dom.compareDocumentPosition(e)&2?0:this.view.state.doc.length;let r=i.posAtStart;if(i.isComposite()){let s;if(e==i.dom)s=i.dom.childNodes[t];else{let o=Rt(e)==0?0:t==0?-1:1;for(;;){let l=e.parentNode;if(l==i.dom)break;o==0&&l.firstChild!=l.lastChild&&(e==l.firstChild?o=-1:o=1),e=l}o<0?s=e:s=e.nextSibling}if(s==i.dom.firstChild)return r;for(;s&&!re.get(s);)s=s.nextSibling;if(!s)return r+i.length;for(let o=0,l=r;;o++){let a=i.children[o];if(a.dom==s)return l;l+=a.length+a.breakAfter}}else return i.isText()?e==i.dom?r+t:r+(t?i.length:0):r}domAtPos(e,t){let{tile:i,offset:r}=this.tile.resolveBlock(e,t);return i.isWidget()?i.domPosFor(e,t):i.domIn(r,t)}inlineDOMNearPos(e,t){let i,r=-1,s=!1,o,l=-1,a=!1;return this.tile.blockTiles((h,c)=>{if(h.isWidget()){if(h.flags&32&&c>=e)return!0;h.flags&16&&(s=!0)}else{let f=c+h.length;if(c<=e&&(i=h,r=e-c,s=f=e&&!o&&(o=h,l=e-c,a=c>e),c>e&&o)return!0}}),!i&&!o?this.domAtPos(e,t):(s&&o?i=null:a&&i&&(o=null),i&&t<0||!o?i.domIn(r,t):o.domIn(l,t))}coordsAt(e,t){let{tile:i,offset:r}=this.tile.resolveBlock(e,t);return i.isWidget()?i.widget instanceof Fs?null:i.coordsInWidget(r,t,!0):i.coordsIn(r,t)}lineAt(e,t){let{tile:i}=this.tile.resolveBlock(e,t);return i.isLine()?i:null}coordsForChar(e){let{tile:t,offset:i}=this.tile.resolveBlock(e,1);if(!t.isLine())return null;function r(s,o){if(s.isComposite())for(let l of s.children){if(l.length>=o){let a=r(l,o);if(a)return a}if(o-=l.length,o<0)break}else if(s.isText()&&oMath.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,l=-1,a=this.view.textDirection==J.LTR,h=0,c=(f,O,u)=>{for(let d=0;dr);d++){let m=f.children[d],g=O+m.length,Q=m.dom.getBoundingClientRect(),{height:S}=Q;if(u&&!d&&(h+=Q.top-u.top),m instanceof Ct)g>i&&c(m,O,Q);else if(O>=i&&(h>0&&t.push(-h),t.push(S+h),h=0,o)){let y=m.dom.lastChild,P=y?Qn(y):[];if(P.length){let k=P[P.length-1],x=a?k.right-Q.left:Q.right-k.left;x>l&&(l=x,this.minWidth=s,this.minWidthFrom=O,this.minWidthTo=g)}}u&&d==f.children.length-1&&(h+=u.bottom-Q.bottom),O=g+m.breakAfter}};return c(this.tile,0,null),t}textDirectionAt(e){let{tile:t}=this.tile.resolveBlock(e,1);return getComputedStyle(t.dom).direction=="rtl"?J.RTL:J.LTR}measureTextSize(){let e=this.tile.blockTiles(o=>{if(o.isLine()&&o.children.length&&o.length<=20){let l=0,a;for(let h of o.children){if(!h.isText()||/[^ -~]/.test(h.text))return;let c=Qn(h.dom);if(c.length!=1)return;l+=c[0].width,a=c[0].height}if(l)return{lineHeight:o.dom.getBoundingClientRect().height,charWidth:l/o.length,textHeight:a}}});if(e)return e;let t=document.createElement("div"),i,r,s;return t.className="cm-line",t.style.width="99999px",t.style.position="absolute",t.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(t);let o=Qn(t.firstChild)[0];i=t.getBoundingClientRect().height,r=o&&o.width?o.width/27:7,s=o&&o.height?o.height:i,t.remove()}),{lineHeight:i,charWidth:r,textHeight:s}}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let i=0,r=0;;r++){let s=r==t.viewports.length?null:t.viewports[r],o=s?s.from-1:this.view.state.doc.length;if(o>i){let l=(t.lineBlockAt(o).bottom-t.lineBlockAt(i).top)/this.view.scaleY;e.push(R.replace({widget:new Fs(l),block:!0,inclusive:!0,isBlockGap:!0}).range(i,o))}if(!s)break;i=s.to+1}return R.set(e)}updateDeco(){let e=1,t=this.view.state.facet(xs).map(s=>(this.dynamicDecorationMap[e++]=typeof s=="function")?s(this.view):s),i=!1,r=this.view.state.facet(ea).map((s,o)=>{let l=typeof s=="function";return l&&(i=!0),l?s(this.view):s});for(r.length&&(this.dynamicDecorationMap[e++]=i,t.push(j.join(r))),this.decorations=[this.editContextFormatting,...t,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];etypeof s=="function"?s(this.view):s)}scrollIntoView(e){var t;if(e.isSnapshot){let c=this.view.viewState.lineBlockAt(e.range.head);this.view.scrollDOM.scrollTop=c.top-e.yMargin,this.view.scrollDOM.scrollLeft=e.xMargin;return}for(let c of this.view.state.facet(ZO))try{if(c(this.view,e.range,e))return!0}catch(f){qe(this.view.state,f,"scroll handler")}let{range:i}=e,r=this.coordsAt(i.head,(t=i.assoc)!==null&&t!==void 0?t:i.empty?0:i.head>i.anchor?-1:1),s;if(!r)return;!i.empty&&(s=this.coordsAt(i.anchor,i.anchor>i.head?-1:1))&&(r={left:Math.min(r.left,s.left),top:Math.min(r.top,s.top),right:Math.max(r.right,s.right),bottom:Math.max(r.bottom,s.bottom)});let o=ta(this.view),l={left:r.left-o.left,top:r.top-o.top,right:r.right+o.right,bottom:r.bottom+o.bottom},{offsetWidth:a,offsetHeight:h}=this.view.scrollDOM;if(Nm(this.view.scrollDOM,l,i.head1&&(r.top>window.pageYOffset+window.visualViewport.offsetTop+window.visualViewport.height||r.bottomi.isWidget()||i.children.some(t);return t(this.tile.resolveBlock(e,1).tile)}destroy(){cl(this.tile)}}function cl(n,e){let t=e?.get(n);if(t!=1){t==null&&n.destroy();for(let i of n.children)cl(i,e)}}function yg(n){return n.node.nodeType==1&&n.node.firstChild&&(n.offset==0||n.node.childNodes[n.offset-1].contentEditable=="false")&&(n.offset==n.node.childNodes.length||n.node.childNodes[n.offset].contentEditable=="false")}function _O(n,e){let t=n.observer.selectionRange;if(!t.focusNode)return null;let i=mO(t.focusNode,t.focusOffset),r=gO(t.focusNode,t.focusOffset),s=i||r;if(r&&i&&r.node!=i.node){let l=re.get(r.node);if(!l||l.isText()&&l.text!=r.node.nodeValue)s=r;else if(n.docView.lastCompositionAfterCursor){let a=re.get(i.node);!a||a.isText()&&a.text!=i.node.nodeValue||(s=r)}}if(n.docView.lastCompositionAfterCursor=s!=i,!s)return null;let o=e-s.offset;return{from:o,to:o+s.node.nodeValue.length,node:s.node}}function kg(n,e,t){let i=_O(n,t);if(!i)return null;let{node:r,from:s,to:o}=i,l=r.nodeValue;if(/[\n\r]/.test(l)||n.state.doc.sliceString(i.from,i.to)!=l)return null;let a=e.invertedDesc;return{range:new Be(a.mapPos(s),a.mapPos(o),s,o),text:r}}function xg(n,e){return n.nodeType!=1?0:(e&&n.childNodes[e-1].contentEditable=="false"?1:0)|(e{ie.from&&(t=!0)}),t}class Fs extends it{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}function Xg(n,e,t=1){let i=n.charCategorizer(e),r=n.doc.lineAt(e),s=e-r.from;if(r.length==0)return b.cursor(e);s==0?t=1:s==r.length&&(t=-1);let o=s,l=s;t<0?o=ue(r.text,s,!1):l=ue(r.text,s);let a=i(r.text.slice(o,l));for(;o>0;){let h=ue(r.text,o,!1);if(i(r.text.slice(h,o))!=a)break;o=h}for(;ln.defaultLineHeight*1.5){let l=n.viewState.heightOracle.textHeight,a=Math.floor((r-t.top-(n.defaultLineHeight-l)*.5)/l);s+=a*n.viewState.heightOracle.lineLength}let o=n.state.sliceDoc(t.from,t.to);return t.from+Ko(o,s,n.state.tabSize)}function fl(n,e,t){let i=n.lineBlockAt(e);if(Array.isArray(i.type)){let r;for(let s of i.type){if(s.from>e)break;if(!(s.toe)return s;(!r||s.type==Se.Text&&(r.type!=s.type||(t<0?s.frome)))&&(r=s)}}return r||i}return i}function Rg(n,e,t,i){let r=fl(n,e.head,e.assoc||-1),s=!i||r.type!=Se.Text||!(n.lineWrapping||r.widgetLineBreaks)?null:n.coordsAtPos(e.assoc<0&&e.head>r.from?e.head-1:e.head);if(s){let o=n.dom.getBoundingClientRect(),l=n.textDirectionAt(r.from),a=n.posAtCoords({x:t==(l==J.LTR)?o.right-1:o.left+1,y:(s.top+s.bottom)/2});if(a!=null)return b.cursor(a,t?-1:1)}return b.cursor(t?r.to:r.from,t?-1:1)}function Qh(n,e,t,i){let r=n.state.doc.lineAt(e.head),s=n.bidiSpans(r),o=n.textDirectionAt(r.from);for(let l=e,a=null;;){let h=og(r,s,o,l,t),c=kO;if(!h){if(r.number==(t?n.state.doc.lines:1))return l;c=` +`,r=n.state.doc.line(r.number+(t?1:-1)),s=n.bidiSpans(r),h=n.visualLineSide(r,!t)}if(a){if(!a(c))return l}else{if(!i)return h;a=i(c)}l=h}}function Ag(n,e,t){let i=n.state.charCategorizer(e),r=i(t);return s=>{let o=i(s);return r==te.Space&&(r=o),r==o}}function qg(n,e,t,i){let r=e.head,s=t?1:-1;if(r==(t?n.state.doc.length:0))return b.cursor(r,e.assoc);let o=e.goalColumn,l,a=n.contentDOM.getBoundingClientRect(),h=n.coordsAtPos(r,e.assoc||((e.empty?t:e.head==e.from)?1:-1)),c=n.documentTop;if(h)o==null&&(o=h.left-a.left),l=s<0?h.top:h.bottom;else{let d=n.viewState.lineBlockAt(r);o==null&&(o=Math.min(a.right-a.left,n.defaultCharacterWidth*(r-d.from))),l=(s<0?d.top:d.bottom)+c}let f=a.left+o,O=n.viewState.heightOracle.textHeight>>1,u=i??O;for(let d=0;;d+=O){let m=l+(u+d)*s,g=Ol(n,{x:f,y:m},!1,s);if(t?m>a.bottom:ml:S{if(e>s&&er(n)),t.from,e.head>t.from?-1:1);return i==t.from?t:b.cursor(i,in.viewState.docHeight)return new ut(n.state.doc.length,-1);if(h=n.elementAtHeight(a),i==null)break;if(h.type==Se.Text){if(i<0?h.ton.viewport.to)break;let O=n.docView.coordsAt(i<0?h.from:h.to,i>0?-1:1);if(O&&(i<0?O.top<=a+s:O.bottom>=a+s))break}let f=n.viewState.heightOracle.textHeight/2;a=i>0?h.bottom+f:h.top-f}if(n.viewport.from>=h.to||n.viewport.to<=h.from){if(t)return null;if(h.type==Se.Text){let f=Zg(n,r,h,o,l);return new ut(f,f==h.from?1:-1)}}if(h.type!=Se.Text)return a<(h.top+h.bottom)/2?new ut(h.from,1):new ut(h.to,-1);let c=n.docView.lineAt(h.from,2);return(!c||c.length!=h.length)&&(c=n.docView.lineAt(h.from,-2)),new Mg(n,o,l,n.textDirectionAt(h.from)).scanTile(c,h.from)}class Mg{constructor(e,t,i,r){this.view=e,this.x=t,this.y=i,this.baseDir=r,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to1||i.length&&(i[0].level!=this.baseDir||i[0].to+r.from>1;t:if(o.has(m)){let Q=r+Math.floor(Math.random()*d);for(let S=0;S1)){if(S.bottomthis.y)(!h||h.top>S.top)&&(h=S),y=-1;else{let P=S.left>this.x?this.x-S.left:S.right(d+d+m)/3)return this.y=a.bottom-1,this.scan(e,t,!0);if(h&&h.top<(d+m+m)/3)return this.y=h.top+1,this.scan(e,t,!0)}let u=(l?this.dirAt(e[c],1):this.baseDir)==J.LTR;return{i:c,after:this.x>(O.left+O.right)/2==u}}scanText(e,t){let i=[];for(let s=0;s{let o=i[s]-t,l=i[s+1]-t;return Xn(e.dom,o,l).getClientRects()});return r.after?new ut(i[r.i+1],-1):new ut(i[r.i],1)}scanTile(e,t){if(!e.length)return new ut(t,1);if(e.children.length==1){let l=e.children[0];if(l.isText())return this.scanText(l,t);if(l.isComposite())return this.scanTile(l,t)}let i=[t];for(let l=0,a=t;l{let a=e.children[l];return a.flags&48?null:(a.dom.nodeType==1?a.dom:Xn(a.dom,0,a.length)).getClientRects()}),s=e.children[r.i],o=i[r.i];return s.isText()?this.scanText(s,o):s.isComposite()?this.scanTile(s,o):r.after?new ut(i[r.i+1],-1):new ut(o,1)}}const xi="￿";class zg{constructor(e,t){this.points=e,this.view=t,this.text="",this.lineSeparator=t.state.facet(Y.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=xi}readRange(e,t){if(!e)return this;let i=e.parentNode;for(let r=e;;){this.findPointBefore(i,r);let s=this.text.length;this.readNode(r);let o=re.get(r),l=r.nextSibling;if(l==t){o?.breakAfter&&!l&&i!=this.view.contentDOM&&this.lineBreak();break}let a=re.get(l);(o&&a?o.breakAfter:(o?o.breakAfter:Ir(r))||Ir(l)&&(r.nodeName!="BR"||o?.isWidget())&&this.text.length>s)&&!_g(l,t)&&this.lineBreak(),r=l}return this.findPointBefore(i,t),this}readTextNode(e){let t=e.nodeValue;for(let i of this.points)i.node==e&&(i.pos=this.text.length+Math.min(i.offset,t.length));for(let i=0,r=this.lineSeparator?null:/\r\n?|\n/g;;){let s=-1,o=1,l;if(this.lineSeparator?(s=t.indexOf(this.lineSeparator,i),o=this.lineSeparator.length):(l=r.exec(t))&&(s=l.index,o=l[0].length),this.append(t.slice(i,s<0?t.length:s)),s<0)break;if(this.lineBreak(),o>1)for(let a of this.points)a.node==e&&a.pos>this.text.length&&(a.pos-=o-1);i=s+o}}readNode(e){let t=re.get(e),i=t&&t.overrideDOMText;if(i!=null){this.findPointInside(e,i.length);for(let r=i.iter();!r.next().done;)r.lineBreak?this.lineBreak():this.append(r.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,t){for(let i of this.points)i.node==e&&e.childNodes[i.offset]==t&&(i.pos=this.text.length)}findPointInside(e,t){for(let i of this.points)(e.nodeType==3?i.node==e:e.contains(i.node))&&(i.pos=this.text.length+(Wg(e,i.node,i.offset)?t:0))}}function Wg(n,e,t){for(;;){if(!e||t-1;let{impreciseHead:s,impreciseAnchor:o}=e.docView,l=e.state.selection;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=jO(e.docView.tile,t,i,0))){let a=s||o?[]:Vg(e),h=new zg(a,e);h.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=h.text,this.newSel=Lg(a,this.bounds.from)}else{let a=e.observer.selectionRange,h=s&&s.node==a.focusNode&&s.offset==a.focusOffset||!sl(e.contentDOM,a.focusNode)?l.main.head:e.docView.posFromDOM(a.focusNode,a.focusOffset),c=o&&o.node==a.anchorNode&&o.offset==a.anchorOffset||!sl(e.contentDOM,a.anchorNode)?l.main.anchor:e.docView.posFromDOM(a.anchorNode,a.anchorOffset),f=e.viewport;if((X.ios||X.chrome)&&l.main.empty&&h!=c&&(f.from>0||f.to-1&&l.ranges.length>1)this.newSel=l.replaceRange(b.range(c,h));else if(e.lineWrapping&&c==h&&!(l.main.empty&&l.main.head==h)&&e.inputState.lastTouchTime>Date.now()-100){let O=e.coordsAtPos(h,-1),u=0;O&&(u=e.inputState.lastTouchY<=O.bottom?-1:1),this.newSel=b.create([b.cursor(h,u)])}else this.newSel=b.single(c,h)}}}function jO(n,e,t,i){if(n.isComposite()){let r=-1,s=-1,o=-1,l=-1;for(let a=0,h=i,c=i;at)return jO(f,e,t,h);if(O>=e&&r==-1&&(r=a,s=h),h>t&&f.dom.parentNode==n.dom){o=a,l=c;break}c=O,h=O+f.breakAfter}return{from:s,to:l<0?i+n.length:l,startDOM:(r?n.children[r-1].dom.nextSibling:null)||n.dom.firstChild,endDOM:o=0?n.children[o].dom:null}}else return n.isText()?{from:i,to:i+n.length,startDOM:n.dom,endDOM:n.dom.nextSibling}:null}function VO(n,e){let t,{newSel:i}=e,{state:r}=n,s=r.selection.main,o=n.inputState.lastKeyTime>Date.now()-100?n.inputState.lastKeyCode:-1;if(e.bounds){let{from:l,to:a}=e.bounds,h=s.from,c=null;(o===8||X.android&&e.text.length=l&&s.to<=a&&(e.typeOver||f!=e.text)&&f.slice(0,s.from-l)==e.text.slice(0,s.from-l)&&f.slice(s.to-l)==e.text.slice(O=e.text.length-(f.length-(s.to-l)))?t={from:s.from,to:s.to,insert:B.of(e.text.slice(s.from-l,O).split(xi))}:(u=LO(f,e.text,h-l,c))&&(X.chrome&&o==13&&u.toB==u.from+2&&e.text.slice(u.from,u.toB)==xi+xi&&u.toB--,t={from:l+u.from,to:l+u.toA,insert:B.of(e.text.slice(u.from,u.toB).split(xi))})}else i&&(!n.hasFocus&&r.facet(Tt)||Fr(i,s))&&(i=null);if(!t&&!i)return!1;if((X.mac||X.android)&&t&&t.from==t.to&&t.from==s.head-1&&/^\. ?$/.test(t.insert.toString())&&n.contentDOM.getAttribute("autocorrect")=="off"?(i&&t.insert.length==2&&(i=b.single(i.main.anchor-1,i.main.head-1)),t={from:t.from,to:t.to,insert:B.of([t.insert.toString().replace("."," ")])}):r.doc.lineAt(s.from).toDate.now()-50?t={from:s.from,to:s.to,insert:r.toText(n.inputState.insertingText)}:X.chrome&&t&&t.from==t.to&&t.from==s.head&&t.insert.toString()==` + `&&n.lineWrapping&&(i&&(i=b.single(i.main.anchor-1,i.main.head-1)),t={from:s.from,to:s.to,insert:B.of([" "])}),t)return ia(n,t,i,o);if(i&&!Fr(i,s)){let l=!1,a="select";return n.inputState.lastSelectionTime>Date.now()-50&&(n.inputState.lastSelectionOrigin=="select"&&(l=!0),a=n.inputState.lastSelectionOrigin,a=="select.pointer"&&(i=EO(r.facet(Nn).map(h=>h(n)),i))),n.dispatch({selection:i,scrollIntoView:l,userEvent:a}),!0}else return!1}function ia(n,e,t,i=-1){if(X.ios&&n.inputState.flushIOSKey(e))return!0;let r=n.state.selection.main;if(X.android&&(e.to==r.to&&(e.from==r.from||e.from==r.from-1&&n.state.sliceDoc(e.from,r.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&Zi(n.contentDOM,"Enter",13)||(e.from==r.from-1&&e.to==r.to&&e.insert.length==0||i==8&&e.insert.lengthr.head)&&Zi(n.contentDOM,"Backspace",8)||e.from==r.from&&e.to==r.to+1&&e.insert.length==0&&Zi(n.contentDOM,"Delete",46)))return!0;let s=e.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let o,l=()=>o||(o=jg(n,e,t));return n.state.facet(vO).some(a=>a(n,e.from,e.to,s,l))||n.dispatch(l()),!0}function jg(n,e,t){let i,r=n.state,s=r.selection.main,o=-1;if(e.from==e.to&&e.froms.to){let a=e.fromf(n)),h,a);e.from==c&&(o=c)}if(o>-1)i={changes:e,selection:b.cursor(e.from+e.insert.length,-1)};else if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&n.inputState.composing<0){let a=s.frome.to?r.sliceDoc(e.to,s.to):"";i=r.replaceSelection(n.state.toText(a+e.insert.sliceString(0,void 0,n.state.lineBreak)+h))}else{let a=r.changes(e),h=t&&t.main.to<=a.newLength?t.main:void 0;if(r.selection.ranges.length>1&&(n.inputState.composing>=0||n.inputState.compositionPendingChange)&&e.to<=s.to+10&&e.to>=s.to-10){let c=n.state.sliceDoc(e.from,e.to),f,O=t&&_O(n,t.main.head);if(O){let d=e.insert.length-(e.to-e.from);f={from:O.from,to:O.to-d}}else f=n.state.doc.lineAt(s.head);let u=s.to-e.to;i=r.changeByRange(d=>{if(d.from==s.from&&d.to==s.to)return{changes:a,range:h||d.map(a)};let m=d.to-u,g=m-c.length;if(n.state.sliceDoc(g,m)!=c||m>=f.from&&g<=f.to)return{range:d};let Q=r.changes({from:g,to:m,insert:e.insert}),S=d.to-s.to;return{changes:Q,range:h?b.range(Math.max(0,h.anchor+S),Math.max(0,h.head+S)):d.map(Q)}})}else i={changes:a,selection:h&&r.selection.replaceRange(h)}}let l="input.type";return(n.composing||n.inputState.compositionPendingChange&&n.inputState.compositionEndedAt>Date.now()-50)&&(n.inputState.compositionPendingChange=!1,l+=".compose",n.inputState.compositionFirstChange&&(l+=".start",n.inputState.compositionFirstChange=!1)),r.update(i,{userEvent:l,scrollIntoView:!0})}function LO(n,e,t,i){let r=Math.min(n.length,e.length),s=0;for(;s0&&l>0&&n.charCodeAt(o-1)==e.charCodeAt(l-1);)o--,l--;if(i=="end"){let a=Math.max(0,s-Math.min(o,l));t-=o+a-s}if(o=o?s-t:0;s-=a,l=s+(l-o),o=s}else if(l=l?s-t:0;s-=a,o=s+(o-l),l=s}return{from:s,toA:o,toB:l}}function Vg(n){let e=[];if(n.root.activeElement!=n.contentDOM)return e;let{anchorNode:t,anchorOffset:i,focusNode:r,focusOffset:s}=n.observer.selectionRange;return t&&(e.push(new Sh(t,i)),(r!=t||s!=i)&&e.push(new Sh(r,s))),e}function Lg(n,e){if(n.length==0)return null;let t=n[0].pos,i=n.length==2?n[1].pos:t;return t>-1&&i>-1?b.single(t+e,i+e):null}function Fr(n,e){return e.head==n.main.head&&e.anchor==n.main.anchor}class Yg{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,X.safari&&e.contentDOM.addEventListener("input",()=>null),X.gecko&&r0(e.contentDOM.ownerDocument)}handleEvent(e){!Hg(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,t){let i=this.handlers[e];if(i){for(let r of i.observers)r(this.view,t);for(let r of i.handlers){if(t.defaultPrevented)break;if(r(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=Dg(e),i=this.handlers,r=this.view.contentDOM;for(let s in t)if(s!="scroll"){let o=!t[s].handlers.length,l=i[s];l&&o!=!l.handlers.length&&(r.removeEventListener(s,this.handleEvent),l=null),l||r.addEventListener(s,this.handleEvent,{passive:o})}for(let s in i)s!="scroll"&&!t[s]&&r.removeEventListener(s,this.handleEvent);this.handlers=t}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&DO.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),X.android&&X.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let t;return X.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&!e.shiftKey&&((t=YO.find(i=>i.keyCode==e.keyCode))&&!e.ctrlKey||Bg.indexOf(e.key)>-1&&e.ctrlKey)?(this.pendingIOSKey=t||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(e){let t=this.pendingIOSKey;return!t||t.key=="Enter"&&e&&e.from0?!0:X.safari&&!X.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function bh(n,e){return(t,i)=>{try{return e.call(n,i,t)}catch(r){qe(t.state,r)}}}function Dg(n){let e=Object.create(null);function t(i){return e[i]||(e[i]={observers:[],handlers:[]})}for(let i of n){let r=i.spec,s=r&&r.plugin.domEventHandlers,o=r&&r.plugin.domEventObservers;if(s)for(let l in s){let a=s[l];a&&t(l).handlers.push(bh(i.value,a))}if(o)for(let l in o){let a=o[l];a&&t(l).observers.push(bh(i.value,a))}}for(let i in tt)t(i).handlers.push(tt[i]);for(let i in ze)t(i).observers.push(ze[i]);return e}const YO=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],Bg="dthko",DO=[16,17,18,20,91,92,224,225],or=6;function lr(n){return Math.max(0,n)*.7+8}function Ig(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}class Gg{constructor(e,t,i,r){this.view=e,this.startEvent=t,this.style=i,this.mustSelect=r,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParents=uO(e.contentDOM),this.atoms=e.state.facet(Nn).map(o=>o(e));let s=e.contentDOM.ownerDocument;s.addEventListener("mousemove",this.move=this.move.bind(this)),s.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(Y.allowMultipleSelections)&&Ug(e,t),this.dragging=Fg(e,t)&&GO(t)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&Ig(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let t=0,i=0,r=0,s=0,o=this.view.win.innerWidth,l=this.view.win.innerHeight;this.scrollParents.x&&({left:r,right:o}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:s,bottom:l}=this.scrollParents.y.getBoundingClientRect());let a=ta(this.view);e.clientX-a.left<=r+or?t=-lr(r-e.clientX):e.clientX+a.right>=o-or&&(t=lr(e.clientX-o)),e.clientY-a.top<=s+or?i=-lr(s-e.clientY):e.clientY+a.bottom>=l-or&&(i=lr(e.clientY-l)),this.setScrollSpeed(t,i)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:t}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),t&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=t,t=0),(e||t)&&this.view.win.scrollBy(e,t),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:t}=this,i=EO(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!i.eq(t.state.selection,this.dragging===!1))&&this.view.dispatch({selection:i,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(t=>t.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}function Ug(n,e){let t=n.state.facet(xO);return t.length?t[0](e):X.mac?e.metaKey:e.ctrlKey}function Ng(n,e){let t=n.state.facet(wO);return t.length?t[0](e):X.mac?!e.altKey:!e.ctrlKey}function Fg(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let i=Tn(n.root);if(!i||i.rangeCount==0)return!0;let r=i.getRangeAt(0).getClientRects();for(let s=0;s=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function Hg(n,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,i;t!=n.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(i=re.get(t))&&i.isWidget()&&!i.isHidden&&i.widget.ignoreEvent(e))return!1;return!0}const tt=Object.create(null),ze=Object.create(null),BO=X.ie&&X.ie_version<15||X.ios&&X.webkit_version<604;function Kg(n){let e=n.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout(()=>{n.focus(),t.remove(),IO(n,t.value)},50)}function Ps(n,e,t){for(let i of n.facet(e))t=i(t,n);return t}function IO(n,e){e=Ps(n.state,Hl,e);let{state:t}=n,i,r=1,s=t.toText(e),o=s.lines==t.selection.ranges.length;if(ul!=null&&t.selection.ranges.every(a=>a.empty)&&ul==s.toString()){let a=-1;i=t.changeByRange(h=>{let c=t.doc.lineAt(h.from);if(c.from==a)return{range:h};a=c.from;let f=t.toText((o?s.line(r++).text:e)+t.lineBreak);return{changes:{from:c.from,insert:f},range:b.cursor(h.from+f.length)}})}else o?i=t.changeByRange(a=>{let h=s.line(r++);return{changes:{from:a.from,to:a.to,insert:h.text},range:b.cursor(a.from+h.length)}}):i=t.replaceSelection(s);n.dispatch(i,{userEvent:"input.paste",scrollIntoView:!0})}ze.scroll=n=>{n.inputState.lastScrollTop=n.scrollDOM.scrollTop,n.inputState.lastScrollLeft=n.scrollDOM.scrollLeft};ze.wheel=ze.mousewheel=n=>{n.inputState.lastWheelEvent=Date.now()};tt.keydown=(n,e)=>(n.inputState.setSelectionOrigin("select"),e.keyCode==27&&n.inputState.tabFocusMode!=0&&(n.inputState.tabFocusMode=Date.now()+2e3),!1);ze.touchstart=(n,e)=>{let t=n.inputState,i=e.targetTouches[0];t.lastTouchTime=Date.now(),i&&(t.lastTouchX=i.clientX,t.lastTouchY=i.clientY),t.setSelectionOrigin("select.pointer")};ze.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};tt.mousedown=(n,e)=>{if(n.observer.flush(),n.inputState.lastTouchTime>Date.now()-2e3)return!1;let t=null;for(let i of n.state.facet($O))if(t=i(n,e),t)break;if(!t&&e.button==0&&(t=e0(n,e)),t){let i=!n.hasFocus;n.inputState.startMouseSelection(new Gg(n,e,t,i)),i&&n.observer.ignore(()=>{dO(n.contentDOM);let s=n.root.activeElement;s&&!s.contains(n.contentDOM)&&s.blur()});let r=n.inputState.mouseSelection;if(r)return r.start(e),r.dragging===!1}else n.inputState.setSelectionOrigin("select.pointer");return!1};function yh(n,e,t,i){if(i==1)return b.cursor(e,t);if(i==2)return Xg(n.state,e,t);{let r=n.docView.lineAt(e,t),s=n.state.doc.lineAt(r?r.posAtEnd:e),o=r?r.posAtStart:s.from,l=r?r.posAtEnd:s.to;return lDate.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(xh+1)%3:1}function e0(n,e){let t=n.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),i=GO(e),r=n.state.selection;return{update(s){s.docChanged&&(t.pos=s.changes.mapPos(t.pos),r=r.map(s.changes))},get(s,o,l){let a=n.posAndSideAtCoords({x:s.clientX,y:s.clientY},!1),h,c=yh(n,a.pos,a.assoc,i);if(t.pos!=a.pos&&!o){let f=yh(n,t.pos,t.assoc,i),O=Math.min(f.from,c.from),u=Math.max(f.to,c.to);c=O1&&(h=t0(r,a.pos))?h:l?r.addRange(c):b.create([c])}}}function t0(n,e){for(let t=0;t=e)return b.create(n.ranges.slice(0,t).concat(n.ranges.slice(t+1)),n.mainIndex==t?0:n.mainIndex-(n.mainIndex>t?1:0))}return null}tt.dragstart=(n,e)=>{let{selection:{main:t}}=n.state;if(e.target.draggable){let r=n.docView.tile.nearest(e.target);if(r&&r.isWidget()){let s=r.posAtStart,o=s+r.length;(s>=t.to||o<=t.from)&&(t=b.range(s,o))}}let{inputState:i}=n;return i.mouseSelection&&(i.mouseSelection.dragging=!0),i.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",Ps(n.state,Kl,n.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1};tt.dragend=n=>(n.inputState.draggedContent=null,!1);function $h(n,e,t,i){if(t=Ps(n.state,Hl,t),!t)return;let r=n.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:s}=n.inputState,o=i&&s&&Ng(n,e)?{from:s.from,to:s.to}:null,l={from:r,insert:t},a=n.state.changes(o?[o,l]:l);n.focus(),n.dispatch({changes:a,selection:{anchor:a.mapPos(r,-1),head:a.mapPos(r,1)},userEvent:o?"move.drop":"input.drop"}),n.inputState.draggedContent=null}tt.drop=(n,e)=>{if(!e.dataTransfer)return!1;if(n.state.readOnly)return!0;let t=e.dataTransfer.files;if(t&&t.length){let i=Array(t.length),r=0,s=()=>{++r==t.length&&$h(n,e,i.filter(o=>o!=null).join(n.state.lineBreak),!1)};for(let o=0;o{/[\x00-\x08\x0e-\x1f]{2}/.test(l.result)||(i[o]=l.result),s()},l.readAsText(t[o])}return!0}else{let i=e.dataTransfer.getData("Text");if(i)return $h(n,e,i,!0),!0}return!1};tt.paste=(n,e)=>{if(n.state.readOnly)return!0;n.observer.flush();let t=BO?null:e.clipboardData;return t?(IO(n,t.getData("text/plain")||t.getData("text/uri-list")),!0):(Kg(n),!1)};function i0(n,e){let t=n.dom.parentNode;if(!t)return;let i=t.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.value=e,i.focus(),i.selectionEnd=e.length,i.selectionStart=0,setTimeout(()=>{i.remove(),n.focus()},50)}function n0(n){let e=[],t=[],i=!1;for(let r of n.selection.ranges)r.empty||(e.push(n.sliceDoc(r.from,r.to)),t.push(r));if(!e.length){let r=-1;for(let{from:s}of n.selection.ranges){let o=n.doc.lineAt(s);o.number>r&&(e.push(o.text),t.push({from:o.from,to:Math.min(n.doc.length,o.to+1)})),r=o.number}i=!0}return{text:Ps(n,Kl,e.join(n.lineBreak)),ranges:t,linewise:i}}let ul=null;tt.copy=tt.cut=(n,e)=>{if(!gn(n.contentDOM,n.observer.selectionRange))return!1;let{text:t,ranges:i,linewise:r}=n0(n.state);if(!t&&!r)return!1;ul=r?t:null,e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:i,scrollIntoView:!0,userEvent:"delete.cut"});let s=BO?null:e.clipboardData;return s?(s.clearData(),s.setData("text/plain",t),!0):(i0(n,t),!1)};const UO=bt.define();function NO(n,e){let t=[];for(let i of n.facet(TO)){let r=i(n,e);r&&t.push(r)}return t.length?n.update({effects:t,annotations:UO.of(!0)}):null}function FO(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=NO(n.state,e);t?n.dispatch(t):n.update([])}},10)}ze.focus=n=>{n.inputState.lastFocusTime=Date.now(),!n.scrollDOM.scrollTop&&(n.inputState.lastScrollTop||n.inputState.lastScrollLeft)&&(n.scrollDOM.scrollTop=n.inputState.lastScrollTop,n.scrollDOM.scrollLeft=n.inputState.lastScrollLeft),FO(n)};ze.blur=n=>{n.observer.clearSelectionRange(),FO(n)};ze.compositionstart=ze.compositionupdate=n=>{n.observer.editContext||(n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0&&(n.inputState.composing=0))};ze.compositionend=n=>{n.observer.editContext||(n.inputState.composing=-1,n.inputState.compositionEndedAt=Date.now(),n.inputState.compositionPendingKey=!0,n.inputState.compositionPendingChange=n.observer.pendingRecords().length>0,n.inputState.compositionFirstChange=null,X.chrome&&X.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50))};ze.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};tt.beforeinput=(n,e)=>{var t,i;if((e.inputType=="insertText"||e.inputType=="insertCompositionText")&&(n.inputState.insertingText=e.data,n.inputState.insertingTextAt=Date.now()),e.inputType=="insertReplacementText"&&n.observer.editContext){let s=(t=e.dataTransfer)===null||t===void 0?void 0:t.getData("text/plain"),o=e.getTargetRanges();if(s&&o.length){let l=o[0],a=n.posAtDOM(l.startContainer,l.startOffset),h=n.posAtDOM(l.endContainer,l.endOffset);return ia(n,{from:a,to:h,insert:n.state.toText(s)},null),!0}}let r;if(X.chrome&&X.android&&(r=YO.find(s=>s.inputType==e.inputType))&&(n.observer.delayAndroidKey(r.key,r.keyCode),r.key=="Backspace"||r.key=="Delete")){let s=((i=window.visualViewport)===null||i===void 0?void 0:i.height)||0;setTimeout(()=>{var o;(((o=window.visualViewport)===null||o===void 0?void 0:o.height)||0)>s+10&&n.hasFocus&&(n.contentDOM.blur(),n.focus())},100)}return X.ios&&e.inputType=="deleteContentForward"&&n.observer.flushSoon(),X.safari&&e.inputType=="insertText"&&n.inputState.composing>=0&&setTimeout(()=>ze.compositionend(n,e),20),!1};const Ph=new Set;function r0(n){Ph.has(n)||(Ph.add(n),n.addEventListener("copy",()=>{}),n.addEventListener("cut",()=>{}))}const vh=["pre-wrap","normal","pre-line","break-spaces"];let Vi=!1;function Th(){Vi=!1}class s0{constructor(e){this.lineWrapping=e,this.doc=B.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,t){let i=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(i+=Math.max(0,Math.ceil((t-e-i*this.lineLength*.5)/this.lineLength))),this.lineHeight*i}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return vh.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let i=0;i-1,a=Math.abs(t-this.lineHeight)>.3||this.lineWrapping!=l;if(this.lineWrapping=l,this.lineHeight=t,this.charWidth=i,this.textHeight=r,this.lineLength=s,a){this.heightSamples={};for(let h=0;h0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>Xr&&(Vi=!0),this.height=e)}replace(e,t,i){return Xe.of(i)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,i,r){let s=this,o=i.doc;for(let l=r.length-1;l>=0;l--){let{fromA:a,toA:h,fromB:c,toB:f}=r[l],O=s.lineAt(a,ee.ByPosNoHeight,i.setDoc(t),0,0),u=O.to>=h?O:s.lineAt(h,ee.ByPosNoHeight,i,0,0);for(f+=u.to-h,h=u.to;l>0&&O.from<=r[l-1].toA;)a=r[l-1].fromA,c=r[l-1].fromB,l--,as*2){let l=e[t-1];l.break?e.splice(--t,1,l.left,null,l.right):e.splice(--t,1,l.left,l.right),i+=1+l.break,r-=l.size}else if(s>r*2){let l=e[i];l.break?e.splice(i,1,l.left,null,l.right):e.splice(i,1,l.left,l.right),i+=2+l.break,s-=l.size}else break;else if(r=s&&o(this.lineAt(0,ee.ByPos,i,r,s))}setMeasuredHeight(e){let t=e.heights[e.index++];t<0?(this.spaceAbove=-t,t=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(t)}updateHeight(e,t=0,i=!1,r){return r&&r.from<=t&&r.more&&this.setMeasuredHeight(r),this.outdated=!1,this}toString(){return`block(${this.length})`}}class Ve extends HO{constructor(e,t,i){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=i}mainBlock(e,t){return new Ke(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,t,i){let r=i[0];return i.length==1&&(r instanceof Ve||r instanceof me&&r.flags&4)&&Math.abs(this.length-r.length)<10?(r instanceof me?r=new Ve(r.length,this.height,this.spaceAbove):r.height=this.height,this.outdated||(r.outdated=!1),r):Xe.of(i)}updateHeight(e,t=0,i=!1,r){return r&&r.from<=t&&r.more?this.setMeasuredHeight(r):(i||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class me extends Xe{constructor(e){super(e,0)}heightMetrics(e,t){let i=e.doc.lineAt(t).number,r=e.doc.lineAt(t+this.length).number,s=r-i+1,o,l=0;if(e.lineWrapping){let a=Math.min(this.height,e.lineHeight*s);o=a/s,this.length>s+1&&(l=(this.height-a)/(this.length-s-1))}else o=this.height/s;return{firstLine:i,lastLine:r,perLine:o,perChar:l}}blockAt(e,t,i,r){let{firstLine:s,lastLine:o,perLine:l,perChar:a}=this.heightMetrics(t,r);if(t.lineWrapping){let h=r+(e0){let s=i[i.length-1];s instanceof me?i[i.length-1]=new me(s.length+r):i.push(null,new me(r-1))}if(e>0){let s=i[0];s instanceof me?i[0]=new me(e+s.length):i.unshift(new me(e-1),null)}return Xe.of(i)}decomposeLeft(e,t){t.push(new me(e-1),null)}decomposeRight(e,t){t.push(null,new me(this.length-e-1))}updateHeight(e,t=0,i=!1,r){let s=t+this.length;if(r&&r.from<=t+this.length&&r.more){let o=[],l=Math.max(t,r.from),a=-1;for(r.from>t&&o.push(new me(r.from-t-1).updateHeight(e,t));l<=s&&r.more;){let c=e.doc.lineAt(l).length;o.length&&o.push(null);let f=r.heights[r.index++],O=0;f<0&&(O=-f,f=r.heights[r.index++]),a==-1?a=f:Math.abs(f-a)>=Xr&&(a=-2);let u=new Ve(c,f,O);u.outdated=!1,o.push(u),l+=c+1}l<=s&&o.push(null,new me(s-l).updateHeight(e,l));let h=Xe.of(o);return(a<0||Math.abs(h.height-this.height)>=Xr||Math.abs(a-this.heightMetrics(e,t).perLine)>=Xr)&&(Vi=!0),Hr(this,h)}else(i||this.outdated)&&(this.setHeight(e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class a0 extends Xe{constructor(e,t,i){super(e.length+t+i.length,e.height+i.height,t|(e.outdated||i.outdated?2:0)),this.left=e,this.right=i,this.size=e.size+i.size}get break(){return this.flags&1}blockAt(e,t,i,r){let s=i+this.left.height;return el))return h;let c=t==ee.ByPosNoHeight?ee.ByPosNoHeight:ee.ByPos;return a?h.join(this.right.lineAt(l,c,i,o,l)):this.left.lineAt(l,c,i,r,s).join(h)}forEachLine(e,t,i,r,s,o){let l=r+this.left.height,a=s+this.left.length+this.break;if(this.break)e=a&&this.right.forEachLine(e,t,i,l,a,o);else{let h=this.lineAt(a,ee.ByPos,i,r,s);e=e&&h.from<=t&&o(h),t>h.to&&this.right.forEachLine(h.to+1,t,i,l,a,o)}}replace(e,t,i){let r=this.left.length+this.break;if(tthis.left.length)return this.balanced(this.left,this.right.replace(e-r,t-r,i));let s=[];e>0&&this.decomposeLeft(e,s);let o=s.length;for(let l of i)s.push(l);if(e>0&&Ch(s,o-1),t=i&&t.push(null)),e>i&&this.right.decomposeLeft(e-i,t)}decomposeRight(e,t){let i=this.left.length,r=i+this.break;if(e>=r)return this.right.decomposeRight(e-r,t);e2*t.size||t.size>2*e.size?Xe.of(this.break?[e,null,t]:[e,t]):(this.left=Hr(this.left,e),this.right=Hr(this.right,t),this.setHeight(e.height+t.height),this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,i=!1,r){let{left:s,right:o}=this,l=t+s.length+this.break,a=null;return r&&r.from<=t+s.length&&r.more?a=s=s.updateHeight(e,t,i,r):s.updateHeight(e,t,i),r&&r.from<=l+o.length&&r.more?a=o=o.updateHeight(e,l,i,r):o.updateHeight(e,l,i),a?this.balanced(s,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function Ch(n,e){let t,i;n[e]==null&&(t=n[e-1])instanceof me&&(i=n[e+1])instanceof me&&n.splice(e-1,3,new me(t.length+1+i.length))}const h0=5;class na{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let i=Math.min(t,this.lineEnd),r=this.nodes[this.nodes.length-1];r instanceof Ve?r.length+=i-this.pos:(i>this.pos||!this.isCovered)&&this.nodes.push(new Ve(i-this.pos,-1,0)),this.writtenTo=i,t>i&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,i){if(e=h0)&&this.addLineDeco(r,s,o)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenToe&&this.nodes.push(new Ve(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,t){let i=new me(t-e);return this.oracle.doc.lineAt(e).to==t&&(i.flags|=4),i}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof Ve)return e;let t=new Ve(0,-1,0);return this.nodes.push(t),t}addBlock(e){this.enterLine();let t=e.deco;t&&t.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,t&&t.endSide>0&&(this.covering=e)}addLineDeco(e,t,i){let r=this.ensureLine();r.length+=i,r.collapsed+=i,r.widgetHeight=Math.max(r.widgetHeight,e),r.breaks+=t,this.writtenTo=this.pos=this.pos+i}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof Ve)&&!this.isCovered?this.nodes.push(new Ve(0,-1,0)):(this.writtenToc.clientHeight||c.scrollWidth>c.clientWidth)&&f.overflow!="visible"){let O=c.getBoundingClientRect();s=Math.max(s,O.left),o=Math.min(o,O.right),l=Math.max(l,O.top),a=Math.min(h==n.parentNode?r.innerHeight:a,O.bottom)}h=f.position=="absolute"||f.position=="fixed"?c.offsetParent:c.parentNode}else if(h.nodeType==11)h=h.host;else break;return{left:s-t.left,right:Math.max(s,o)-t.left,top:l-(t.top+e),bottom:Math.max(l,a)-(t.top+e)}}function u0(n){let e=n.getBoundingClientRect(),t=n.ownerDocument.defaultView||window;return e.left0&&e.top0}function d0(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class Ks{constructor(e,t,i,r){this.from=e,this.to=t,this.size=i,this.displaySize=r}static same(e,t){if(e.length!=t.length)return!1;for(let i=0;itypeof r!="function"&&r.class=="cm-lineWrapping");this.heightOracle=new s0(i),this.stateDeco=Rh(t),this.heightMap=Xe.empty().applyChanges(this.stateDeco,B.empty,this.heightOracle.setDoc(t.doc),[new Be(0,0,0,t.doc.length)]);for(let r=0;r<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());r++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=R.set(this.lineGaps.map(r=>r.draw(this,!1))),this.scrollParent=e.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let i=0;i<=1;i++){let r=i?t.head:t.anchor;if(!e.some(({from:s,to:o})=>r>=s&&r<=o)){let{from:s,to:o}=this.lineBlockAt(r);e.push(new ar(s,o))}}return this.viewports=e.sort((i,r)=>i.from-r.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?Zh:new ra(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(On(e,this.scaler))})}update(e,t=null){this.state=e.state;let i=this.stateDeco;this.stateDeco=Rh(this.state);let r=e.changedRanges,s=Be.extendWithRanges(r,c0(i,this.stateDeco,e?e.changes:ce.empty(this.state.doc.length))),o=this.heightMap.height,l=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);Th(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),(this.heightMap.height!=o||Vi)&&(e.flags|=2),l?(this.scrollAnchorPos=e.changes.mapPos(l.from,-1),this.scrollAnchorHeight=l.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=o);let a=s.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.heada.to)||!this.viewportIsAppropriate(a))&&(a=this.getViewport(0,t));let h=a.from!=this.viewport.from||a.to!=this.viewport.to;this.viewport=a,e.flags|=this.updateForViewport(),(h||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&(e.selectionSet||e.focusChanged)&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(XO)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:e}=this,t=e.contentDOM,i=window.getComputedStyle(t),r=this.heightOracle,s=i.whiteSpace;this.defaultTextDirection=i.direction=="rtl"?J.RTL:J.LTR;let o=this.heightOracle.mustRefreshForWrapping(s)||this.mustMeasureContent==="refresh",l=t.getBoundingClientRect(),a=o||this.mustMeasureContent||this.contentDOMHeight!=l.height;this.contentDOMHeight=l.height,this.mustMeasureContent=!1;let h=0,c=0;if(l.width&&l.height){let{scaleX:k,scaleY:x}=OO(t,l);(k>.005&&Math.abs(this.scaleX-k)>.005||x>.005&&Math.abs(this.scaleY-x)>.005)&&(this.scaleX=k,this.scaleY=x,h|=16,o=a=!0)}let f=(parseInt(i.paddingTop)||0)*this.scaleY,O=(parseInt(i.paddingBottom)||0)*this.scaleY;(this.paddingTop!=f||this.paddingBottom!=O)&&(this.paddingTop=f,this.paddingBottom=O,h|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(r.lineWrapping&&(a=!0),this.editorWidth=e.scrollDOM.clientWidth,h|=16);let u=uO(this.view.contentDOM,!1).y;u!=this.scrollParent&&(this.scrollParent=u,this.scrollAnchorHeight=-1,this.scrollOffset=0);let d=this.getScrollOffset();this.scrollOffset!=d&&(this.scrollAnchorHeight=-1,this.scrollOffset=d),this.scrolledToBottom=pO(this.scrollParent||e.win);let m=(this.printing?d0:O0)(t,this.paddingTop),g=m.top-this.pixelViewport.top,Q=m.bottom-this.pixelViewport.bottom;this.pixelViewport=m;let S=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(S!=this.inView&&(this.inView=S,S&&(a=!0)),!this.inView&&!this.scrollTarget&&!u0(e.dom))return 0;let y=l.width;if((this.contentDOMWidth!=y||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=l.width,this.editorHeight=e.scrollDOM.clientHeight,h|=16),a){let k=e.docView.measureVisibleLineHeights(this.viewport);if(r.mustRefreshForHeights(k)&&(o=!0),o||r.lineWrapping&&Math.abs(y-this.contentDOMWidth)>r.charWidth){let{lineHeight:x,charWidth:$,textHeight:q}=e.docView.measureTextSize();o=x>0&&r.refresh(s,x,$,q,Math.max(5,y/$),k),o&&(e.docView.minWidth=0,h|=16)}g>0&&Q>0?c=Math.max(g,Q):g<0&&Q<0&&(c=Math.min(g,Q)),Th();for(let x of this.viewports){let $=x.from==this.viewport.from?k:e.docView.measureVisibleLineHeights(x);this.heightMap=(o?Xe.empty().applyChanges(this.stateDeco,B.empty,this.heightOracle,[new Be(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(r,0,o,new o0(x.from,$))}Vi&&(h|=2)}let P=!this.viewportIsAppropriate(this.viewport,c)||this.scrollTarget&&(this.scrollTarget.range.headthis.viewport.to);return P&&(h&2&&(h|=this.updateScaler()),this.viewport=this.getViewport(c,this.scrollTarget),h|=this.updateForViewport()),(h&2||P)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),h|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),h}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let i=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),r=this.heightMap,s=this.heightOracle,{visibleTop:o,visibleBottom:l}=this,a=new ar(r.lineAt(o-i*1e3,ee.ByHeight,s,0,0).from,r.lineAt(l+(1-i)*1e3,ee.ByHeight,s,0,0).to);if(t){let{head:h}=t.range;if(ha.to){let c=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),f=r.lineAt(h,ee.ByPos,s,0,0),O;t.y=="center"?O=(f.top+f.bottom)/2-c/2:t.y=="start"||t.y=="nearest"&&h=l+Math.max(10,Math.min(i,250)))&&r>o-2*1e3&&s>1,o=r<<1;if(this.defaultTextDirection!=J.LTR&&!i)return[];let l=[],a=(c,f,O,u)=>{if(f-cc&&QQ.from>=O.from&&Q.to<=O.to&&Math.abs(Q.from-c)Q.fromS));if(!g){if(fy.from<=f&&y.to>=f)){let y=t.moveToLineBoundary(b.cursor(f),!1,!0).head;y>c&&(f=y)}let Q=this.gapSize(O,c,f,u),S=i||Q<2e6?Q:2e6;g=new Ks(c,f,Q,S)}l.push(g)},h=c=>{if(c.length2e6)for(let x of e)x.from>=c.from&&x.fromc.from&&a(c.from,u,c,f),dt.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let t=this.stateDeco;this.lineGaps.length&&(t=t.concat(this.lineGapDeco));let i=[];j.spans(t,this.viewport.from,this.viewport.to,{span(s,o){i.push({from:s,to:o})},point(){}},20);let r=0;if(i.length!=this.visibleRanges.length)r=12;else for(let s=0;s=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||On(this.heightMap.lineAt(e,ee.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(t=>t.top<=e&&t.bottom>=e)||On(this.heightMap.lineAt(this.scaler.fromDOM(e),ee.ByHeight,this.heightOracle,0,0),this.scaler)}getScrollOffset(){return(this.scrollParent==this.view.scrollDOM?this.scrollParent.scrollTop:(this.scrollParent?this.scrollParent.getBoundingClientRect().top:0)-this.view.contentDOM.getBoundingClientRect().top)*this.scaleY}scrollAnchorAt(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return On(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class ar{constructor(e,t){this.from=e,this.to=t}}function m0(n,e,t){let i=[],r=n,s=0;return j.spans(t,n,e,{span(){},point(o,l){o>r&&(i.push({from:r,to:o}),s+=o-r),r=l}},20),r=1)return e[e.length-1].to;let i=Math.floor(n*t);for(let r=0;;r++){let{from:s,to:o}=e[r],l=o-s;if(i<=l)return s+i;i-=l}}function cr(n,e){let t=0;for(let{from:i,to:r}of n.ranges){if(e<=r){t+=e-i;break}t+=r-i}return t/n.total}function g0(n,e){for(let t of n)if(e(t))return t}const Zh={toDOM(n){return n},fromDOM(n){return n},scale:1,eq(n){return n==this}};function Rh(n){let e=n.facet(xs).filter(i=>typeof i!="function"),t=n.facet(ea).filter(i=>typeof i!="function");return t.length&&e.push(j.join(t)),e}class ra{constructor(e,t,i){let r=0,s=0,o=0;this.viewports=i.map(({from:l,to:a})=>{let h=t.lineAt(l,ee.ByPos,e,0,0).top,c=t.lineAt(a,ee.ByPos,e,0,0).bottom;return r+=c-h,{from:l,to:a,top:h,bottom:c,domTop:0,domBottom:0}}),this.scale=(7e6-r)/(t.height-r);for(let l of this.viewports)l.domTop=o+(l.top-s)*this.scale,o=l.domBottom=l.domTop+(l.bottom-l.top),s=l.bottom}toDOM(e){for(let t=0,i=0,r=0;;t++){let s=tt.from==e.viewports[i].from&&t.to==e.viewports[i].to):!1}}function On(n,e){if(e.scale==1)return n;let t=e.toDOM(n.top),i=e.toDOM(n.bottom);return new Ke(n.from,n.length,t,i-t,Array.isArray(n._content)?n._content.map(r=>On(r,e)):n._content)}const fr=C.define({combine:n=>n.join(" ")}),dl=C.define({combine:n=>n.indexOf(!0)>-1}),pl=Yt.newName(),KO=Yt.newName(),JO=Yt.newName(),eu={"&light":"."+KO,"&dark":"."+JO};function ml(n,e,t){return new Yt(e,{finish(i){return/&/.test(i)?i.replace(/&\w*/,r=>{if(r=="&")return n;if(!t||!t[r])throw new RangeError(`Unsupported selector: ${r}`);return t[r]}):n+" "+i}})}const Q0=ml("."+pl,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-selectionHandle":{backgroundColor:"currentColor",width:"1.5px"},".cm-selectionHandle-start::before, .cm-selectionHandle-end::before":{content:'""',backgroundColor:"inherit",borderRadius:"50%",width:"8px",height:"8px",position:"absolute",left:"-3.25px"},".cm-selectionHandle-start::before":{top:"-8px"},".cm-selectionHandle-end::before":{bottom:"-8px"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},eu),S0={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Js=X.ie&&X.ie_version<=11;class b0{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new Fm,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(t=>{for(let i of t)this.queue.push(i);(X.ie&&X.ie_version<=11||X.ios&&e.composing)&&t.some(i=>i.type=="childList"&&i.removedNodes.length||i.type=="characterData"&&i.oldValue.length>i.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&X.android&&e.constructor.EDIT_CONTEXT!==!1&&!(X.chrome&&X.chrome_version<126)&&(this.editContext=new k0(e),e.state.facet(Tt)&&(e.contentDOM.editContext=this.editContext.editContext)),Js&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate){this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),t.length>0&&t[t.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(t=>{t.length>0&&t[t.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((t,i)=>t!=e[i]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:i}=this,r=this.selectionRange;if(i.state.facet(Tt)?i.root.activeElement!=this.dom:!gn(this.dom,r))return;let s=r.anchorNode&&i.docView.tile.nearest(r.anchorNode);if(s&&s.isWidget()&&s.widget.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(X.ie&&X.ie_version<=11||X.android&&X.chrome)&&!i.state.selection.main.empty&&r.focusNode&&Sn(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=Tn(e.root);if(!t)return!1;let i=X.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&y0(this.view,t)||t;if(!i||this.selectionRange.eq(i))return!1;let r=gn(this.dom,i);return r&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime{let s=this.delayedAndroidKey;s&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=s.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&s.force&&Zi(this.dom,s.key,s.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(r)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let t=-1,i=-1,r=!1;for(let s of e){let o=this.readMutation(s);o&&(o.typeOver&&(r=!0),t==-1?{from:t,to:i}=o:(t=Math.min(o.from,t),i=Math.max(o.to,i)))}return{from:t,to:i,typeOver:r}}readChange(){let{from:e,to:t,typeOver:i}=this.processRecords(),r=this.selectionChanged&&gn(this.dom,this.selectionRange);if(e<0&&!r)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let s=new Eg(this.view,e,t,i);return this.view.docView.domChanged={newSel:s.newSel?s.newSel.main:null},s}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return this.view.requestMeasure(),!1;let i=this.view.state,r=VO(this.view,t);return this.view.state==i&&(t.domChanged||t.newSel&&!Fr(this.view.state.selection,t.newSel.main))&&this.view.update([]),r}readMutation(e){let t=this.view.docView.tile.nearest(e.target);if(!t||t.isWidget())return null;if(t.markDirty(e.type=="attributes"),e.type=="childList"){let i=Ah(t,e.previousSibling||e.target.previousSibling,-1),r=Ah(t,e.nextSibling||e.target.nextSibling,1);return{from:i?t.posAfter(i):t.posAtStart,to:r?t.posBefore(r):t.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(Tt)!=e.state.facet(Tt)&&(e.view.contentDOM.editContext=e.state.facet(Tt)?this.editContext.editContext:null))}destroy(){var e,t,i;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(i=this.resizeScroll)===null||i===void 0||i.disconnect();for(let r of this.scrollTargets)r.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}}function Ah(n,e,t){for(;e;){let i=re.get(e);if(i&&i.parent==n)return i;let r=e.parentNode;e=r!=n.dom?r:t>0?e.nextSibling:e.previousSibling}return null}function qh(n,e){let t=e.startContainer,i=e.startOffset,r=e.endContainer,s=e.endOffset,o=n.docView.domAtPos(n.state.selection.main.anchor,1);return Sn(o.node,o.offset,r,s)&&([t,i,r,s]=[r,s,t,i]),{anchorNode:t,anchorOffset:i,focusNode:r,focusOffset:s}}function y0(n,e){if(e.getComposedRanges){let r=e.getComposedRanges(n.root)[0];if(r)return qh(n,r)}let t=null;function i(r){r.preventDefault(),r.stopImmediatePropagation(),t=r.getTargetRanges()[0]}return n.contentDOM.addEventListener("beforeinput",i,!0),n.dom.ownerDocument.execCommand("indent"),n.contentDOM.removeEventListener("beforeinput",i,!0),t?qh(n,t):null}class k0{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let t=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=i=>{let r=e.state.selection.main,{anchor:s,head:o}=r,l=this.toEditorPos(i.updateRangeStart),a=this.toEditorPos(i.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:i.updateRangeStart,editorBase:l,drifted:!1});let h=a-l>i.text.length;l==this.from&&sthis.to&&(a=s);let c=LO(e.state.sliceDoc(l,a),i.text,(h?r.from:r.to)-l,h?"end":null);if(!c){let O=b.single(this.toEditorPos(i.selectionStart),this.toEditorPos(i.selectionEnd));Fr(O,r)||e.dispatch({selection:O,userEvent:"select"});return}let f={from:c.from+l,to:c.toA+l,insert:B.of(i.text.slice(c.from,c.toB).split(` +`))};if((X.mac||X.android)&&f.from==o-1&&/^\. ?$/.test(i.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(f={from:l,to:a,insert:B.of([i.text.replace("."," ")])}),this.pendingContextChange=f,!e.state.readOnly){let O=this.to-this.from+(f.to-f.from+f.insert.length);ia(e,f,b.single(this.toEditorPos(i.selectionStart,O),this.toEditorPos(i.selectionEnd,O)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),f.from=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(t.text.slice(Math.max(0,i.updateRangeStart-1),Math.min(t.text.length,i.updateRangeStart+1)))&&this.handlers.compositionend(i)},this.handlers.characterboundsupdate=i=>{let r=[],s=null;for(let o=this.toEditorPos(i.rangeStart),l=this.toEditorPos(i.rangeEnd);o{let r=[];for(let s of i.getTextFormats()){let o=s.underlineStyle,l=s.underlineThickness;if(!/none/i.test(o)&&!/none/i.test(l)){let a=this.toEditorPos(s.rangeStart),h=this.toEditorPos(s.rangeEnd);if(a{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:i}=this.composing;this.composing=null,i&&this.reset(e.state)}};for(let i in this.handlers)t.addEventListener(i,this.handlers[i]);this.measureReq={read:i=>{this.editContext.updateControlBounds(i.contentDOM.getBoundingClientRect());let r=Tn(i.root);r&&r.rangeCount&&this.editContext.updateSelectionBounds(r.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,i=!1,r=this.pendingContextChange;return e.changes.iterChanges((s,o,l,a,h)=>{if(i)return;let c=h.length-(o-s);if(r&&o>=r.to)if(r.from==s&&r.to==o&&r.insert.eq(h)){r=this.pendingContextChange=null,t+=c,this.to+=c;return}else r=null,this.revertPending(e.state);if(s+=t,o+=t,o<=this.from)this.from+=c,this.to+=c;else if(sthis.to||this.to-this.from+h.length>3e4){i=!0;return}this.editContext.updateText(this.toContextPos(s),this.toContextPos(o),h.toString()),this.to+=c}t+=c}),r&&!i&&this.revertPending(e.state),!i}update(e){let t=this.pendingContextChange,i=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(i.from,i.to)&&e.transactions.some(r=>!r.isUserEvent("input.type")&&r.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||t)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,i=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),r=this.toContextPos(t.head);(this.editContext.selectionStart!=i||this.editContext.selectionEnd!=r)&&this.editContext.updateSelection(i,r)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to1e4*3)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let i=this.composing;return i&&i.drifted?i.editorBase+(e-i.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}}class v{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var t;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),e.parent&&e.parent.appendChild(this.dom);let{dispatch:i}=e;this.dispatchTransactions=e.dispatchTransactions||i&&(r=>r.forEach(s=>i(s,this)))||(r=>this.update(r)),this.dispatch=this.dispatch.bind(this),this._root=e.root||Hm(e.parent)||document,this.viewState=new Xh(this,e.state||Y.create(e)),e.scrollTo&&e.scrollTo.is(sr)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Pi).map(r=>new Gs(r));for(let r of this.plugins)r.update(this);this.observer=new b0(this),this.inputState=new Yg(this),this.inputState.ensureHandlers(this.plugins),this.docView=new gh(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((t=document.fonts)===null||t===void 0)&&t.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...e){let t=e.length==1&&e[0]instanceof ae?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,i=!1,r,s=this.state;for(let O of e){if(O.startState!=s)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");s=O.state}if(this.destroyed){this.viewState.state=s;return}let o=this.hasFocus,l=0,a=null;e.some(O=>O.annotation(UO))?(this.inputState.notifiedFocused=o,l=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,a=NO(s,o),a||(l=1));let h=this.observer.delayedAndroidKey,c=null;if(h?(this.observer.clearDelayedAndroidKey(),c=this.observer.readChange(),(c&&!this.state.doc.eq(s.doc)||!this.state.selection.eq(s.selection))&&(c=null)):this.observer.clear(),s.facet(Y.phrases)!=this.state.facet(Y.phrases))return this.setState(s);r=Gr.create(this,s,e),r.flags|=l;let f=this.viewState.scrollTarget;try{this.updateState=2;for(let O of e){if(f&&(f=f.map(O.changes)),O.scrollIntoView){let{main:u}=O.state.selection,{x:d,y:m}=this.state.facet(v.cursorScrollMargin);f=new Ri(u.empty?u:b.cursor(u.head,u.head>u.anchor?-1:1),"nearest","nearest",m,d)}for(let u of O.effects)u.is(sr)&&(f=u.value.clip(this.state))}this.viewState.update(r,f),this.bidiCache=Kr.update(this.bidiCache,r.changes),r.empty||(this.updatePlugins(r),this.inputState.update(r)),t=this.docView.update(r),this.state.facet(fn)!=this.styleModules&&this.mountStyles(),i=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(O=>O.isUserEvent("select.pointer")))}finally{this.updateState=0}if(r.startState.facet(fr)!=r.state.facet(fr)&&(this.viewState.mustMeasureContent=!0),(t||i||f||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!r.empty)for(let O of this.state.facet(hl))try{O(r)}catch(u){qe(this.state,u,"update listener")}(a||c)&&Promise.resolve().then(()=>{a&&this.state==a.startState&&this.dispatch(a),c&&!VO(this,c)&&h.force&&Zi(this.contentDOM,h.key,h.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let t=this.hasFocus;try{for(let i of this.plugins)i.destroy(this);this.viewState=new Xh(this,e),this.plugins=e.facet(Pi).map(i=>new Gs(i)),this.pluginMap.clear();for(let i of this.plugins)i.update(this);this.docView.destroy(),this.docView=new gh(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(Pi),i=e.state.facet(Pi);if(t!=i){let r=[];for(let s of i){let o=t.indexOf(s);if(o<0)r.push(new Gs(s));else{let l=this.plugins[o];l.mustUpdate=e,r.push(l)}}for(let s of this.plugins)s.mustUpdate!=e&&s.destroy(this);this.plugins=r,this.pluginMap.clear()}else for(let r of this.plugins)r.mustUpdate=e;for(let r=0;r-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,e&&this.observer.forceFlush();let t=null,i=this.viewState.scrollParent,r=this.viewState.getScrollOffset(),{scrollAnchorPos:s,scrollAnchorHeight:o}=this.viewState;Math.abs(r-this.viewState.scrollOffset)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let l=0;;l++){if(o<0)if(pO(i||this.win))s=-1,o=this.viewState.heightMap.height;else{let u=this.viewState.scrollAnchorAt(r);s=u.from,o=u.top}this.updateState=1;let a=this.viewState.measure();if(!a&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(l>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let h=[];a&4||([this.measureRequests,h]=[h,this.measureRequests]);let c=h.map(u=>{try{return u.read(this)}catch(d){return qe(this.state,d),Mh}}),f=Gr.create(this,this.state,[]),O=!1;f.flags|=a,t?t.flags|=a:t=f,this.updateState=2,f.empty||(this.updatePlugins(f),this.inputState.update(f),this.updateAttrs(),O=this.docView.update(f),O&&this.docViewUpdate());for(let u=0;u1||d<-1)&&(i==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){r=r+d,i?i.scrollTop+=d:this.win.scrollBy(0,d),o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let l of this.state.facet(hl))l(t)}get themeClasses(){return pl+" "+(this.state.facet(dl)?JO:KO)+" "+this.state.facet(fr)}updateAttrs(){let e=zh(this,AO,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(Tt)?"true":"false",class:"cm-content",style:`${X.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),zh(this,Jl,t);let i=this.observer.ignore(()=>{let r=fh(this.contentDOM,this.contentAttrs,t),s=fh(this.dom,this.editorAttrs,e);return r||s});return this.editorAttrs=e,this.contentAttrs=t,i}showAnnouncements(e){let t=!0;for(let i of e)for(let r of i.effects)if(r.is(v.announce)){t&&(this.announceDOM.textContent=""),t=!1;let s=this.announceDOM.appendChild(document.createElement("div"));s.textContent=r.value}}mountStyles(){this.styleModules=this.state.facet(fn);let e=this.state.facet(v.cspNonce);Yt.mount(this.root,this.styleModules.concat(Q0).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let t=0;ti.plugin==e)||null),t&&t.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,i){return Hs(this,e,Qh(this,e,t,i))}moveByGroup(e,t){return Hs(this,e,Qh(this,e,t,i=>Ag(this,e.head,i)))}visualLineSide(e,t){let i=this.bidiSpans(e),r=this.textDirectionAt(e.from),s=i[t?i.length-1:0];return b.cursor(s.side(t,r)+e.from,s.forward(!t,r)?1:-1)}moveToLineBoundary(e,t,i=!0){return Rg(this,e,t,i)}moveVertically(e,t,i){return Hs(this,e,qg(this,e,t,i))}domAtPos(e,t=1){return this.docView.domAtPos(e,t)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){this.readMeasured();let i=Ol(this,e,t);return i&&i.pos}posAndSideAtCoords(e,t=!0){return this.readMeasured(),Ol(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let i=this.docView.coordsAt(e,t);if(!i||i.left==i.right)return i;let r=this.state.doc.lineAt(e),s=this.bidiSpans(r),o=s[dt.find(s,e-r.from,-1,t)];return Cn(i,o.dir==J.LTR==t>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(CO)||ethis.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>x0)return yO(e.length);let t=this.textDirectionAt(e.from),i;for(let s of this.bidiCache)if(s.from==e.from&&s.dir==t&&(s.fresh||bO(s.isolates,i=dh(this,e))))return s.order;i||(i=dh(this,e));let r=sg(e.text,t,i);return this.bidiCache.push(new Kr(e.from,e.to,t,i,!0,r)),r}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||X.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{dO(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,t={}){var i,r,s,o;return sr.of(new Ri(typeof e=="number"?b.cursor(e):e,(i=t.y)!==null&&i!==void 0?i:"nearest",(r=t.x)!==null&&r!==void 0?r:"nearest",(s=t.yMargin)!==null&&s!==void 0?s:5,(o=t.xMargin)!==null&&o!==void 0?o:5))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,i=this.viewState.scrollAnchorAt(e);return sr.of(new Ri(b.cursor(i.from),"start","start",i.top-e,t,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return se.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return se.define(()=>({}),{eventObservers:e})}static theme(e,t){let i=Yt.newName(),r=[fr.of(i),fn.of(ml(`.${i}`,e))];return t&&t.dark&&r.push(dl.of(!0)),r}static baseTheme(e){return qt.lowest(fn.of(ml("."+pl,e,eu)))}static findFromDOM(e){var t;let i=e.querySelector(".cm-content"),r=i&&re.get(i)||re.get(e);return((t=r?.root)===null||t===void 0?void 0:t.view)||null}}v.styleModule=fn;v.inputHandler=vO;v.clipboardInputFilter=Hl;v.clipboardOutputFilter=Kl;v.scrollHandler=ZO;v.focusChangeEffect=TO;v.perLineTextDirection=CO;v.exceptionSink=PO;v.updateListener=hl;v.editable=Tt;v.mouseSelectionStyle=$O;v.dragMovesSelection=wO;v.clickAddsSelectionRange=xO;v.decorations=xs;v.blockWrappers=qO;v.outerDecorations=ea;v.atomicRanges=Nn;v.bidiIsolatedRanges=MO;v.cursorScrollMargin=C.define({combine:n=>{let e=5,t=5;for(let i of n)typeof i=="number"?e=t=i:{x:e,y:t}=i;return{x:e,y:t}}});v.scrollMargins=zO;v.darkTheme=dl;v.cspNonce=C.define({combine:n=>n.length?n[0]:""});v.contentAttributes=Jl;v.editorAttributes=AO;v.lineWrapping=v.contentAttributes.of({class:"cm-lineWrapping"});v.announce=z.define();const x0=4096,Mh={};class Kr{constructor(e,t,i,r,s,o){this.from=e,this.to=t,this.dir=i,this.isolates=r,this.fresh=s,this.order=o}static update(e,t){if(t.empty&&!e.some(s=>s.fresh))return e;let i=[],r=e.length?e[e.length-1].dir:J.LTR;for(let s=Math.max(0,e.length-10);s=0;r--){let s=i[r],o=typeof s=="function"?s(n):s;o&&Ul(o,t)}return t}const w0=X.mac?"mac":X.windows?"win":X.linux?"linux":"key";function $0(n,e){const t=n.split(/-(?!$)/);let i=t[t.length-1];i=="Space"&&(i=" ");let r,s,o,l;for(let a=0;ai.concat(r),[]))),t}function v0(n,e,t){return iu(tu(n.state),e,n,t)}let _t=null;const T0=4e3;function C0(n,e=w0){let t=Object.create(null),i=Object.create(null),r=(o,l)=>{let a=i[o];if(a==null)i[o]=l;else if(a!=l)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},s=(o,l,a,h,c)=>{var f,O;let u=t[o]||(t[o]=Object.create(null)),d=l.split(/ (?!$)/).map(Q=>$0(Q,e));for(let Q=1;Q{let P=_t={view:y,prefix:S,scope:o};return setTimeout(()=>{_t==P&&(_t=null)},T0),!0}]})}let m=d.join(" ");r(m,!1);let g=u[m]||(u[m]={preventDefault:!1,stopPropagation:!1,run:((O=(f=u._any)===null||f===void 0?void 0:f.run)===null||O===void 0?void 0:O.slice())||[]});a&&g.run.push(a),h&&(g.preventDefault=!0),c&&(g.stopPropagation=!0)};for(let o of n){let l=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let h of l){let c=t[h]||(t[h]=Object.create(null));c._any||(c._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:f}=o;for(let O in c)c[O].run.push(u=>f(u,gl))}let a=o[e]||o.key;if(a)for(let h of l)s(h,a,o.run,o.preventDefault,o.stopPropagation),o.shift&&s(h,"Shift-"+a,o.shift,o.preventDefault,o.stopPropagation)}return t}let gl=null;function iu(n,e,t,i){gl=e;let r=Dm(e),s=Ze(r,0),o=Ot(s)==r.length&&r!=" ",l="",a=!1,h=!1,c=!1;_t&&_t.view==t&&_t.scope==i&&(l=_t.prefix+" ",DO.indexOf(e.keyCode)<0&&(h=!0,_t=null));let f=new Set,O=g=>{if(g){for(let Q of g.run)if(!f.has(Q)&&(f.add(Q),Q(t)))return g.stopPropagation&&(c=!0),!0;g.preventDefault&&(g.stopPropagation&&(c=!0),h=!0)}return!1},u=n[i],d,m;return u&&(O(u[l+Or(r,e,!o)])?a=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(X.windows&&e.ctrlKey&&e.altKey)&&!(X.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(d=Dt[e.keyCode])&&d!=r?(O(u[l+Or(d,e,!0)])||e.shiftKey&&(m=Pn[e.keyCode])!=r&&m!=d&&O(u[l+Or(m,e,!1)]))&&(a=!0):o&&e.shiftKey&&O(u[l+Or(r,e,!0)])&&(a=!0),!a&&O(u._any)&&(a=!0)),h&&(a=!0),a&&c&&e.stopPropagation(),gl=null,a}class ui{constructor(e,t,i,r,s){this.className=e,this.left=t,this.top=i,this.width=r,this.height=s}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,t,i){if(i.empty){let r=e.coordsAtPos(i.head,i.assoc||1);if(!r)return[];let s=nu(e);return[new ui(t,r.left-s.left,r.top-s.top,null,r.bottom-r.top)]}else return X0(e,t,i)}}function nu(n){let e=n.scrollDOM.getBoundingClientRect();return{left:(n.textDirection==J.LTR?e.left:e.right-n.scrollDOM.clientWidth*n.scaleX)-n.scrollDOM.scrollLeft*n.scaleX,top:e.top-n.scrollDOM.scrollTop*n.scaleY}}function _h(n,e,t,i){let r=n.coordsAtPos(e,t*2);if(!r)return i;let s=n.dom.getBoundingClientRect(),o=(r.top+r.bottom)/2,l=n.posAtCoords({x:s.left+1,y:o}),a=n.posAtCoords({x:s.right-1,y:o});return l==null||a==null?i:{from:Math.max(i.from,Math.min(l,a)),to:Math.min(i.to,Math.max(l,a))}}function X0(n,e,t){if(t.to<=n.viewport.from||t.from>=n.viewport.to)return[];let i=Math.max(t.from,n.viewport.from),r=Math.min(t.to,n.viewport.to),s=n.textDirection==J.LTR,o=n.contentDOM,l=o.getBoundingClientRect(),a=nu(n),h=o.querySelector(".cm-line"),c=h&&window.getComputedStyle(h),f=l.left+(c?parseInt(c.paddingLeft)+Math.min(0,parseInt(c.textIndent)):0),O=l.right-(c?parseInt(c.paddingRight):0),u=fl(n,i,1),d=fl(n,r,-1),m=u.type==Se.Text?u:null,g=d.type==Se.Text?d:null;if(m&&(n.lineWrapping||u.widgetLineBreaks)&&(m=_h(n,i,1,m)),g&&(n.lineWrapping||d.widgetLineBreaks)&&(g=_h(n,r,-1,g)),m&&g&&m.from==g.from&&m.to==g.to)return S(y(t.from,t.to,m));{let k=m?y(t.from,null,m):P(u,!1),x=g?y(null,t.to,g):P(d,!0),$=[];return(m||u).to<(g||d).from-(m&&g?1:0)||u.widgetLineBreaks>1&&k.bottom+n.defaultLineHeight/2A&&E.from=oe)break;de>G&&W(Math.max(ie,G),k==null&&ie<=A,Math.min(de,oe),x==null&&de>=L,$e.dir)}if(G=fe.to+1,G>=oe)break}return I.length==0&&W(A,k==null,L,x==null,n.textDirection),{top:q,bottom:_,horizontal:I}}function P(k,x){let $=l.top+(x?k.top:k.bottom);return{top:$,bottom:$,horizontal:[]}}}function Z0(n,e){return n.constructor==e.constructor&&n.eq(e)}class R0{constructor(e,t){this.view=e,this.layer=t,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(Zr)!=e.state.facet(Zr)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}docViewUpdate(e){this.layer.updateOnDocViewUpdate!==!1&&e.requestMeasure(this.measureReq)}setOrder(e){let t=0,i=e.facet(Zr);for(;t!Z0(t,this.drawn[i]))){let t=this.dom.firstChild,i=0;for(let r of e)r.update&&t&&r.constructor&&this.drawn[i].constructor&&r.update(t,this.drawn[i])?(t=t.nextSibling,i++):this.dom.insertBefore(r.draw(),t);for(;t;){let r=t.nextSibling;t.remove(),t=r}this.drawn=e,X.webkit&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const Zr=C.define();function ru(n){return[se.define(e=>new R0(e,n)),Zr.of(n)]}const Li=C.define({combine(n){return yt(n,{cursorBlinkRate:1200,drawRangeCursor:!0,iosSelectionHandles:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function A0(n={}){return[Li.of(n),q0,M0,z0,XO.of(!0)]}function su(n){return n.startState.facet(Li)!=n.state.facet(Li)}const q0=ru({above:!0,markers(n){let{state:e}=n,t=e.facet(Li),i=[];for(let r of e.selection.ranges){let s=r==e.selection.main;if(r.empty||t.drawRangeCursor&&!(s&&X.ios&&t.iosSelectionHandles)){let o=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",l=r.empty?r:b.cursor(r.head,r.assoc);for(let a of ui.forRange(n,o,l))i.push(a)}}return i},update(n,e){n.transactions.some(i=>i.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=su(n);return t&&Eh(n.state,e),n.docChanged||n.selectionSet||t},mount(n,e){Eh(e.state,n)},class:"cm-cursorLayer"});function Eh(n,e){e.style.animationDuration=n.facet(Li).cursorBlinkRate+"ms"}const M0=ru({above:!1,markers(n){let e=[],{main:t,ranges:i}=n.state.selection;for(let r of i)if(!r.empty)for(let s of ui.forRange(n,"cm-selectionBackground",r))e.push(s);if(X.ios&&!t.empty&&n.state.facet(Li).iosSelectionHandles){for(let r of ui.forRange(n,"cm-selectionHandle cm-selectionHandle-start",b.cursor(t.from,1)))e.push(r);for(let r of ui.forRange(n,"cm-selectionHandle cm-selectionHandle-end",b.cursor(t.to,1)))e.push(r)}return e},update(n,e){return n.docChanged||n.selectionSet||n.viewportChanged||su(n)},class:"cm-selectionLayer"}),z0=qt.highest(v.theme({".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"},caretColor:"transparent !important"},".cm-content":{caretColor:"transparent !important","& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}})),ou=z.define({map(n,e){return n==null?null:e.mapPos(n)}}),un=be.define({create(){return null},update(n,e){return n!=null&&(n=e.changes.mapPos(n)),e.effects.reduce((t,i)=>i.is(ou)?i.value:t,n)}}),W0=se.fromClass(class{constructor(n){this.view=n,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(n){var e;let t=n.state.field(un);t==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(n.startState.field(un)!=t||n.docChanged||n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:n}=this,e=n.state.field(un),t=e!=null&&n.coordsAtPos(e);if(!t)return null;let i=n.scrollDOM.getBoundingClientRect();return{left:t.left-i.left+n.scrollDOM.scrollLeft*n.scaleX,top:t.top-i.top+n.scrollDOM.scrollTop*n.scaleY,height:t.bottom-t.top}}drawCursor(n){if(this.cursor){let{scaleX:e,scaleY:t}=this.view;n?(this.cursor.style.left=n.left/e+"px",this.cursor.style.top=n.top/t+"px",this.cursor.style.height=n.height/t+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(n){this.view.state.field(un)!=n&&this.view.dispatch({effects:ou.of(n)})}},{eventObservers:{dragover(n){this.setDropPos(this.view.posAtCoords({x:n.clientX,y:n.clientY}))},dragleave(n){(n.target==this.view.contentDOM||!this.view.contentDOM.contains(n.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function _0(){return[un,W0]}function jh(n,e,t,i,r){e.lastIndex=0;for(let s=n.iterRange(t,i),o=t,l;!s.next().done;o+=s.value.length)if(!s.lineBreak)for(;l=e.exec(s.value);)r(o+l.index,l)}function E0(n,e){let t=n.visibleRanges;if(t.length==1&&t[0].from==n.viewport.from&&t[0].to==n.viewport.to)return t;let i=[];for(let{from:r,to:s}of t)r=Math.max(n.state.doc.lineAt(r).from,r-e),s=Math.min(n.state.doc.lineAt(s).to,s+e),i.length&&i[i.length-1].to>=r?i[i.length-1].to=s:i.push({from:r,to:s});return i}class j0{constructor(e){const{regexp:t,decoration:i,decorate:r,boundary:s,maxLength:o=1e3}=e;if(!t.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=t,r)this.addMatch=(l,a,h,c)=>r(c,h,h+l[0].length,l,a);else if(typeof i=="function")this.addMatch=(l,a,h,c)=>{let f=i(l,a,h);f&&c(h,h+l[0].length,f)};else if(i)this.addMatch=(l,a,h,c)=>c(h,h+l[0].length,i);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=s,this.maxLength=o}createDeco(e){let t=new Zt,i=t.add.bind(t);for(let{from:r,to:s}of E0(e,this.maxLength))jh(e.state.doc,this.regexp,r,s,(o,l)=>this.addMatch(l,e,o,i));return t.finish()}updateDeco(e,t){let i=1e9,r=-1;return e.docChanged&&e.changes.iterChanges((s,o,l,a)=>{a>=e.view.viewport.from&&l<=e.view.viewport.to&&(i=Math.min(l,i),r=Math.max(a,r))}),e.viewportMoved||r-i>1e3?this.createDeco(e.view):r>-1?this.updateRange(e.view,t.map(e.changes),i,r):t}updateRange(e,t,i,r){for(let s of e.visibleRanges){let o=Math.max(s.from,i),l=Math.min(s.to,r);if(l>=o){let a=e.state.doc.lineAt(o),h=a.toa.from;o--)if(this.boundary.test(a.text[o-1-a.from])){c=o;break}for(;lO.push(Q.range(m,g));if(a==h)for(this.regexp.lastIndex=c-a.from;(u=this.regexp.exec(a.text))&&u.indexthis.addMatch(g,e,m,d));t=t.update({filterFrom:c,filterTo:f,filter:(m,g)=>mf,add:O})}}return t}}const Ql=/x/.unicode!=null?"gu":"g",V0=new RegExp(`[\0-\b +--Ÿ­؜​‎‏\u2028\u2029‭‮⁦⁧⁩\uFEFF-]`,Ql),L0={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"};let eo=null;function Y0(){var n;if(eo==null&&typeof document<"u"&&document.body){let e=document.body.style;eo=((n=e.tabSize)!==null&&n!==void 0?n:e.MozTabSize)!=null}return eo||!1}const Rr=C.define({combine(n){let e=yt(n,{render:null,specialChars:V0,addSpecialChars:null});return(e.replaceTabs=!Y0())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,Ql)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,Ql)),e}});function D0(n={}){return[Rr.of(n),B0()]}let Vh=null;function B0(){return Vh||(Vh=se.fromClass(class{constructor(n){this.view=n,this.decorations=R.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(n.state.facet(Rr)),this.decorations=this.decorator.createDeco(n)}makeDecorator(n){return new j0({regexp:n.specialChars,decoration:(e,t,i)=>{let{doc:r}=t.state,s=Ze(e[0],0);if(s==9){let o=r.lineAt(i),l=t.state.tabSize,a=et(o.text,l,i-o.from);return R.replace({widget:new N0((l-a%l)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[s]||(this.decorationCache[s]=R.replace({widget:new U0(n,s)}))},boundary:n.replaceTabs?void 0:/[^]/})}update(n){let e=n.state.facet(Rr);n.startState.facet(Rr)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(n.view)):this.decorations=this.decorator.updateDeco(n,this.decorations)}},{decorations:n=>n.decorations}))}const I0="•";function G0(n){return n>=32?I0:n==10?"␤":String.fromCharCode(9216+n)}class U0 extends it{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=G0(this.code),i=e.state.phrase("Control character")+" "+(L0[this.code]||"0x"+this.code.toString(16)),r=this.options.render&&this.options.render(this.code,i,t);if(r)return r;let s=document.createElement("span");return s.textContent=t,s.title=i,s.setAttribute("aria-label",i),s.className="cm-specialChar",s}ignoreEvent(){return!1}}class N0 extends it{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}}function F0(){return K0}const H0=R.line({class:"cm-activeLine"}),K0=se.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.docChanged||n.selectionSet)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=-1,t=[];for(let i of n.state.selection.ranges){let r=n.lineBlockAt(i.head);r.from>e&&(t.push(H0.range(r.from)),e=r.from)}return R.set(t)}},{decorations:n=>n.decorations});class J0 extends it{constructor(e){super(),this.content=e}toDOM(e){let t=document.createElement("span");return t.className="cm-placeholder",t.style.pointerEvents="none",t.appendChild(typeof this.content=="string"?document.createTextNode(this.content):typeof this.content=="function"?this.content(e):this.content.cloneNode(!0)),t.setAttribute("aria-hidden","true"),t}coordsAt(e){let t=e.firstChild?Qn(e.firstChild):[];if(!t.length)return null;let i=window.getComputedStyle(e.parentNode),r=Cn(t[0],i.direction!="rtl"),s=parseInt(i.lineHeight);return r.bottom-r.top>s*1.5?{left:r.left,right:r.right,top:r.top,bottom:r.top+s}:r}ignoreEvent(){return!1}}function eQ(n){let e=se.fromClass(class{constructor(t){this.view=t,this.placeholder=n?R.set([R.widget({widget:new J0(n),side:1}).range(0)]):R.none}get decorations(){return this.view.state.doc.length?R.none:this.placeholder}},{decorations:t=>t.decorations});return typeof n=="string"?[e,v.contentAttributes.of({"aria-placeholder":n})]:e}const Sl=2e3;function tQ(n,e,t){let i=Math.min(e.line,t.line),r=Math.max(e.line,t.line),s=[];if(e.off>Sl||t.off>Sl||e.col<0||t.col<0){let o=Math.min(e.off,t.off),l=Math.max(e.off,t.off);for(let a=i;a<=r;a++){let h=n.doc.line(a);h.length<=l&&s.push(b.range(h.from+o,h.to+l))}}else{let o=Math.min(e.col,t.col),l=Math.max(e.col,t.col);for(let a=i;a<=r;a++){let h=n.doc.line(a),c=Ko(h.text,o,n.tabSize,!0);if(c<0)s.push(b.cursor(h.to));else{let f=Ko(h.text,l,n.tabSize);s.push(b.range(h.from+c,h.from+f))}}}return s}function iQ(n,e){let t=n.coordsAtPos(n.viewport.from);return t?Math.round(Math.abs((t.left-e)/n.defaultCharacterWidth)):-1}function Lh(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1),i=n.state.doc.lineAt(t),r=t-i.from,s=r>Sl?-1:r==i.length?iQ(n,e.clientX):et(i.text,n.state.tabSize,t-i.from);return{line:i.number,col:s,off:r}}function nQ(n,e){let t=Lh(n,e),i=n.state.selection;return t?{update(r){if(r.docChanged){let s=r.changes.mapPos(r.startState.doc.line(t.line).from),o=r.state.doc.lineAt(s);t={line:o.number,col:t.col,off:Math.min(t.off,o.length)},i=i.map(r.changes)}},get(r,s,o){let l=Lh(n,r);if(!l)return i;let a=tQ(n.state,t,l);return a.length?o?b.create(a.concat(i.ranges)):b.create(a):i}}:null}function rQ(n){let e=(t=>t.altKey&&t.button==0);return v.mouseSelectionStyle.of((t,i)=>e(i)?nQ(t,i):null)}const sQ={Alt:[18,n=>!!n.altKey],Control:[17,n=>!!n.ctrlKey],Shift:[16,n=>!!n.shiftKey],Meta:[91,n=>!!n.metaKey]},oQ={style:"cursor: crosshair"};function lQ(n={}){let[e,t]=sQ[n.key||"Alt"],i=se.fromClass(class{constructor(r){this.view=r,this.isDown=!1}set(r){this.isDown!=r&&(this.isDown=r,this.view.update([]))}},{eventObservers:{keydown(r){this.set(r.keyCode==e||t(r))},keyup(r){(r.keyCode==e||!t(r))&&this.set(!1)},mousemove(r){this.set(t(r))}}});return[i,v.contentAttributes.of(r=>{var s;return!((s=r.plugin(i))===null||s===void 0)&&s.isDown?oQ:null})]}const ur="-10000px";class lu{constructor(e,t,i,r){this.facet=t,this.createTooltipView=i,this.removeTooltipView=r,this.input=e.state.facet(t),this.tooltips=this.input.filter(o=>o);let s=null;this.tooltipViews=this.tooltips.map(o=>s=i(o,s))}update(e,t){var i;let r=e.state.facet(this.facet),s=r.filter(a=>a);if(r===this.input){for(let a of this.tooltipViews)a.update&&a.update(e);return!1}let o=[],l=t?[]:null;for(let a=0;at[h]=a),t.length=l.length),this.input=r,this.tooltips=s,this.tooltipViews=o,!0}}function aQ(n){let e=n.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:e.clientHeight,right:e.clientWidth}}const to=C.define({combine:n=>{var e,t,i;return{position:X.ios?"absolute":((e=n.find(r=>r.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((t=n.find(r=>r.parent))===null||t===void 0?void 0:t.parent)||null,tooltipSpace:((i=n.find(r=>r.tooltipSpace))===null||i===void 0?void 0:i.tooltipSpace)||aQ}}}),Yh=new WeakMap,sa=se.fromClass(class{constructor(n){this.view=n,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let e=n.state.facet(to);this.position=e.position,this.parent=e.parent,this.classes=n.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver=typeof ResizeObserver=="function"?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new lu(n,oa,(t,i)=>this.createTooltip(t,i),t=>{this.resizeObserver&&this.resizeObserver.unobserve(t.dom),t.dom.remove()}),this.above=this.manager.tooltips.map(t=>!!t.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(t=>{Date.now()>this.lastTransaction-50&&t.length>0&&t[t.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),n.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let n of this.manager.tooltipViews)this.intersectionObserver.observe(n.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(n){n.transactions.length&&(this.lastTransaction=Date.now());let e=this.manager.update(n,this.above);e&&this.observeIntersection();let t=e||n.geometryChanged,i=n.state.facet(to);if(i.position!=this.position&&!this.madeAbsolute){this.position=i.position;for(let r of this.manager.tooltipViews)r.dom.style.position=this.position;t=!0}if(i.parent!=this.parent){this.parent&&this.container.remove(),this.parent=i.parent,this.createContainer();for(let r of this.manager.tooltipViews)this.container.appendChild(r.dom);t=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);t&&this.maybeMeasure()}createTooltip(n,e){let t=n.create(this.view),i=e?e.dom:null;if(t.dom.classList.add("cm-tooltip"),n.arrow&&!t.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let r=document.createElement("div");r.className="cm-tooltip-arrow",t.dom.appendChild(r)}return t.dom.style.position=this.position,t.dom.style.top=ur,t.dom.style.left="0px",this.container.insertBefore(t.dom,i),t.mount&&t.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(t.dom),t}destroy(){var n,e,t;this.view.win.removeEventListener("resize",this.measureSoon);for(let i of this.manager.tooltipViews)i.dom.remove(),(n=i.destroy)===null||n===void 0||n.call(i);this.parent&&this.container.remove(),(e=this.resizeObserver)===null||e===void 0||e.disconnect(),(t=this.intersectionObserver)===null||t===void 0||t.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let n=1,e=1,t=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:s}=this.manager.tooltipViews[0];if(X.safari){let o=s.getBoundingClientRect();t=Math.abs(o.top+1e4)>1||Math.abs(o.left)>1}else t=!!s.offsetParent&&s.offsetParent!=this.container.ownerDocument.body}if(t||this.position=="absolute")if(this.parent){let s=this.parent.getBoundingClientRect();s.width&&s.height&&(n=s.width/this.parent.offsetWidth,e=s.height/this.parent.offsetHeight)}else({scaleX:n,scaleY:e}=this.view.viewState);let i=this.view.scrollDOM.getBoundingClientRect(),r=ta(this.view);return{visible:{left:i.left+r.left,top:i.top+r.top,right:i.right-r.right,bottom:i.bottom-r.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((s,o)=>{let l=this.manager.tooltipViews[o];return l.getCoords?l.getCoords(s.pos):this.view.coordsAtPos(s.pos)}),size:this.manager.tooltipViews.map(({dom:s})=>s.getBoundingClientRect()),space:this.view.state.facet(to).tooltipSpace(this.view),scaleX:n,scaleY:e,makeAbsolute:t}}writeMeasure(n){var e;if(n.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let l of this.manager.tooltipViews)l.dom.style.position="absolute"}let{visible:t,space:i,scaleX:r,scaleY:s}=n,o=[];for(let l=0;l=Math.min(t.bottom,i.bottom)||f.rightMath.min(t.right,i.right)+.1)){c.style.top=ur;continue}let u=a.arrow?h.dom.querySelector(".cm-tooltip-arrow"):null,d=u?7:0,m=O.right-O.left,g=(e=Yh.get(h))!==null&&e!==void 0?e:O.bottom-O.top,Q=h.offset||cQ,S=this.view.textDirection==J.LTR,y=O.width>i.right-i.left?S?i.left:i.right-O.width:S?Math.max(i.left,Math.min(f.left-(u?14:0)+Q.x,i.right-m)):Math.min(Math.max(i.left,f.left-m+(u?14:0)-Q.x),i.right-m),P=this.above[l];!a.strictSide&&(P?f.top-g-d-Q.yi.bottom)&&P==i.bottom-f.bottom>f.top-i.top&&(P=this.above[l]=!P);let k=(P?f.top-i.top:i.bottom-f.bottom)-d;if(ky&&q.topx&&(x=P?q.top-g-2-d:q.bottom+d+2);if(this.position=="absolute"?(c.style.top=(x-n.parent.top)/s+"px",Dh(c,(y-n.parent.left)/r)):(c.style.top=x/s+"px",Dh(c,y/r)),u){let q=f.left+(S?Q.x:-Q.x)-(y+14-7);u.style.left=q/r+"px"}h.overlap!==!0&&o.push({left:y,top:x,right:$,bottom:x+g}),c.classList.toggle("cm-tooltip-above",P),c.classList.toggle("cm-tooltip-below",!P),h.positioned&&h.positioned(n.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let n of this.manager.tooltipViews)n.dom.style.top=ur}},{eventObservers:{scroll(){this.maybeMeasure()}}});function Dh(n,e){let t=parseInt(n.style.left,10);(isNaN(t)||Math.abs(e-t)>1)&&(n.style.left=e+"px")}const hQ=v.baseTheme({".cm-tooltip":{zIndex:500,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),cQ={x:0,y:0},oa=C.define({enables:[sa,hQ]}),Jr=C.define({combine:n=>n.reduce((e,t)=>e.concat(t),[])});class vs{static create(e){return new vs(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new lu(e,Jr,(t,i)=>this.createHostedView(t,i),t=>t.dom.remove())}createHostedView(e,t){let i=e.create(this.view);return i.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(i.dom,t?t.dom.nextSibling:this.dom.firstChild),this.mounted&&i.mount&&i.mount(this.view),i}mount(e){for(let t of this.manager.tooltipViews)t.mount&&t.mount(e);this.mounted=!0}positioned(e){for(let t of this.manager.tooltipViews)t.positioned&&t.positioned(e)}update(e){this.manager.update(e)}destroy(){var e;for(let t of this.manager.tooltipViews)(e=t.destroy)===null||e===void 0||e.call(t)}passProp(e){let t;for(let i of this.manager.tooltipViews){let r=i[e];if(r!==void 0){if(t===void 0)t=r;else if(t!==r)return}}return t}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}}const fQ=oa.compute([Jr],n=>{let e=n.facet(Jr);return e.length===0?null:{pos:Math.min(...e.map(t=>t.pos)),end:Math.max(...e.map(t=>{var i;return(i=t.end)!==null&&i!==void 0?i:t.pos})),create:vs.create,above:e[0].above,arrow:e.some(t=>t.arrow)}}),au=C.define();class OQ{constructor(e,t,i,r,s,o){this.view=e,this.source=t,this.field=i,this.locked=r,this.setHover=s,this.hoverTime=o,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:e.dom,time:0},this.checkHover=this.checkHover.bind(this),e.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),e.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(e){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active.length)return;let e=Date.now()-this.lastMove.time;eo.bottom||t.xo.right+e.defaultCharacterWidth)return;let l=e.bidiSpans(e.state.doc.lineAt(r)).find(h=>h.from<=r&&h.to>=r),a=l&&l.dir==J.RTL?-1:1;s=t.x{if(l&&!(Array.isArray(l)&&!l.length)){let a=Array.isArray(l)?l:[l];r&&this.locked.set(a,r),e.dispatch({effects:this.setHover.of(a)})}};if(s&&"then"in s){let l=this.pending={pos:t};s.then(a=>{this.pending==l&&(this.pending=null,o(a))},a=>qe(e.state,a,"hover tooltip"))}else o(s)}get tooltip(){let e=this.view.plugin(sa),t=e?e.manager.tooltips.findIndex(i=>i.create==vs.create):-1;return t>-1?e.manager.tooltipViews[t]:null}mousemove(e){var t,i;this.lastMove={x:e.clientX,y:e.clientY,target:e.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let{active:r,tooltip:s}=this;if(r.length&&!this.locked.has(r)&&s&&!uQ(s.dom,e)||this.pending){let{pos:o}=r[0]||this.pending,l=(i=(t=r[0])===null||t===void 0?void 0:t.end)!==null&&i!==void 0?i:o;(o==l?this.view.posAtCoords(this.lastMove)!=o:!dQ(this.view,o,l,e.clientX,e.clientY))&&(this.view.dispatch({effects:this.setHover.of([])}),this.pending=null)}}mouseleave(e){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1;let{active:t}=this;if(t.length&&!this.locked.has(t)){let{tooltip:i}=this;i&&i.dom.contains(e.relatedTarget)?this.watchTooltipLeave(i.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(e){let t=i=>{e.removeEventListener("mouseleave",t);let{active:r}=this;r.length&&!this.locked.has(r)&&!this.view.dom.contains(i.relatedTarget)&&this.view.dispatch({effects:this.setHover.of([])})};e.addEventListener("mouseleave",t)}destroy(){clearTimeout(this.hoverTimeout),clearTimeout(this.restartTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}}const dr=4;function uQ(n,e){let{left:t,right:i,top:r,bottom:s}=n.getBoundingClientRect(),o;if(o=n.querySelector(".cm-tooltip-arrow")){let l=o.getBoundingClientRect();r=Math.min(l.top,r),s=Math.max(l.bottom,s)}return e.clientX>=t-dr&&e.clientX<=i+dr&&e.clientY>=r-dr&&e.clientY<=s+dr}function dQ(n,e,t,i,r,s){let o=n.scrollDOM.getBoundingClientRect(),l=n.documentTop+n.documentPadding.top+n.contentHeight;if(o.left>i||o.rightr||Math.min(o.bottom,l)=e&&a<=t}function pQ(n,e={}){let t=z.define(),i=new WeakMap,r=be.define({create(){return[]},update(o,l){let a=i.get(o);if(o.length&&(e.hideOnChange&&(l.docChanged||l.selection)?o=[]:a&&a(l)?o=[]:e.hideOn&&(o=o.filter(h=>!e.hideOn(l,h)))),l.docChanged&&o.length){let h=[];for(let c of o){let f=l.changes.mapPos(c.pos,-1,Qe.TrackDel);if(f!=null){let O=Object.assign(Object.create(null),c);O.pos=f,O.end!=null&&(O.end=l.changes.mapPos(O.end)),h.push(O)}}o=h}for(let h of l.effects)h.is(t)&&(o=h.value,a=void 0),(h.is(gQ)&&!h.value||h.value==r)&&(o=[]);return o.length&&a&&i.set(o,a),o},provide:o=>Jr.from(o)});const s=se.define(o=>new OQ(o,n,r,i,t,e.hoverTime||300));return{active:r,extension:[r,s,au.of(s),fQ]}}function mQ(n,e,t,i={}){var r;let s=n.state.facet(au).map(o=>n.plugin(o)).filter(o=>!!o);if(i.tooltip&&i.tooltip.active){let o=s.find(l=>l.field==i.tooltip.active);o&&(s=[o])}for(let o of s)o.activateHover(n,e,t,(r=i.until)!==null&&r!==void 0?r:(()=>!1))}function hu(n,e){let t=n.plugin(sa);if(!t)return null;let i=t.manager.tooltips.indexOf(e);return i<0?null:t.manager.tooltipViews[i]}const gQ=z.define(),Bh=C.define({combine(n){let e,t;for(let i of n)e=e||i.topContainer,t=t||i.bottomContainer;return{topContainer:e,bottomContainer:t}}});function la(n,e){let t=n.plugin(cu),i=t?t.specs.indexOf(e):-1;return i>-1?t.panels[i]:null}const cu=se.fromClass(class{constructor(n){this.input=n.state.facet(Zn),this.specs=this.input.filter(t=>t),this.panels=this.specs.map(t=>t(n));let e=n.state.facet(Bh);this.top=new pr(n,!0,e.topContainer),this.bottom=new pr(n,!1,e.bottomContainer),this.top.sync(this.panels.filter(t=>t.top)),this.bottom.sync(this.panels.filter(t=>!t.top));for(let t of this.panels)t.dom.classList.add("cm-panel"),t.mount&&t.mount()}update(n){let e=n.state.facet(Bh);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new pr(n.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new pr(n.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let t=n.state.facet(Zn);if(t!=this.input){let i=t.filter(a=>a),r=[],s=[],o=[],l=[];for(let a of i){let h=this.specs.indexOf(a),c;h<0?(c=a(n.view),l.push(c)):(c=this.panels[h],c.update&&c.update(n)),r.push(c),(c.top?s:o).push(c)}this.specs=i,this.panels=r,this.top.sync(s),this.bottom.sync(o);for(let a of l)a.dom.classList.add("cm-panel"),a.mount&&a.mount()}else for(let i of this.panels)i.update&&i.update(n)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:n=>v.scrollMargins.of(e=>{let t=e.plugin(n);return t&&{top:t.top.scrollMargin(),bottom:t.bottom.scrollMargin()}})});class pr{constructor(e,t,i){this.view=e,this.top=t,this.container=i,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let t of this.panels)t.destroy&&e.indexOf(t)<0&&t.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let t=this.container||this.view.dom;t.insertBefore(this.dom,this.top?t.firstChild:null)}let e=this.dom.firstChild;for(let t of this.panels)if(t.dom.parentNode==this.dom){for(;e!=t.dom;)e=Ih(e);e=e.nextSibling}else this.dom.insertBefore(t.dom,e);for(;e;)e=Ih(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}}function Ih(n){let e=n.nextSibling;return n.remove(),e}const Zn=C.define({enables:cu});function QQ(n,e){let t,i=new Promise(o=>t=o),r=o=>SQ(o,e,t);n.state.field(io,!1)?n.dispatch({effects:fu.of(r)}):n.dispatch({effects:z.appendConfig.of(io.init(()=>[r]))});let s=Ou.of(r);return{close:s,result:i.then(o=>((n.win.queueMicrotask||(a=>n.win.setTimeout(a,10)))(()=>{n.state.field(io).indexOf(r)>-1&&n.dispatch({effects:s})}),o))}}const io=be.define({create(){return[]},update(n,e){for(let t of e.effects)t.is(fu)?n=[t.value].concat(n):t.is(Ou)&&(n=n.filter(i=>i!=t.value));return n},provide:n=>Zn.computeN([n],e=>e.field(n))}),fu=z.define(),Ou=z.define();function SQ(n,e,t){let i=e.content?e.content(n,()=>o(null)):null;if(!i){if(i=N("form"),e.input){let l=N("input",e.input);/^(text|password|number|email|tel|url)$/.test(l.type)&&l.classList.add("cm-textfield"),l.name||(l.name="input"),i.appendChild(N("label",(e.label||"")+": ",l))}else i.appendChild(document.createTextNode(e.label||""));i.appendChild(document.createTextNode(" ")),i.appendChild(N("button",{class:"cm-button",type:"submit"},e.submitLabel||"OK"))}let r=i.nodeName=="FORM"?[i]:i.querySelectorAll("form");for(let l=0;l{h.keyCode==27?(h.preventDefault(),o(null)):h.keyCode==13&&(h.preventDefault(),o(a))}),a.addEventListener("submit",h=>{h.preventDefault(),o(a)})}let s=N("div",i,N("button",{onclick:()=>o(null),"aria-label":n.state.phrase("close"),class:"cm-dialog-close",type:"button"},["×"]));e.class&&(s.className=e.class),s.classList.add("cm-dialog");function o(l){s.contains(s.ownerDocument.activeElement)&&n.focus(),t(l)}return{dom:s,top:e.top,mount:()=>{if(e.focus){let l;typeof e.focus=="string"?l=i.querySelector(e.focus):l=i.querySelector("input")||i.querySelector("button"),l&&"select"in l?l.select():l&&"focus"in l&&l.focus()}}}}class At extends Lt{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}At.prototype.elementClass="";At.prototype.toDOM=void 0;At.prototype.mapMode=Qe.TrackBefore;At.prototype.startSide=At.prototype.endSide=-1;At.prototype.point=!0;const Ar=C.define(),bQ=C.define(),yQ={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>j.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},yn=C.define();function kQ(n){return[uu(),yn.of({...yQ,...n})]}const Gh=C.define({combine:n=>n.some(e=>e)});function uu(n){return[xQ]}const xQ=se.fromClass(class{constructor(n){this.view=n,this.domAfter=null,this.prevViewport=n.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=n.state.facet(yn).map(e=>new Nh(n,e)),this.fixed=!n.state.facet(Gh);for(let e of this.gutters)e.config.side=="after"?this.getDOMAfter().appendChild(e.dom):this.dom.appendChild(e.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),n.scrollDOM.insertBefore(this.dom,n.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(n){if(this.updateGutters(n)){let e=this.prevViewport,t=n.view.viewport,i=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(i<(t.to-t.from)*.8)}if(n.geometryChanged){let e=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=e,this.domAfter&&(this.domAfter.style.minHeight=e)}this.view.state.facet(Gh)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=n.view.viewport}syncGutters(n){let e=this.dom.nextSibling;n&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let t=j.iter(this.view.state.facet(Ar),this.view.viewport.from),i=[],r=this.gutters.map(s=>new wQ(s,this.view.viewport,-this.view.documentPadding.top));for(let s of this.view.viewportLineBlocks)if(i.length&&(i=[]),Array.isArray(s.type)){let o=!0;for(let l of s.type)if(l.type==Se.Text&&o){bl(t,i,l.from);for(let a of r)a.line(this.view,l,i);o=!1}else if(l.widget)for(let a of r)a.widget(this.view,l)}else if(s.type==Se.Text){bl(t,i,s.from);for(let o of r)o.line(this.view,s,i)}else if(s.widget)for(let o of r)o.widget(this.view,s);for(let s of r)s.finish();n&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(n){let e=n.startState.facet(yn),t=n.state.facet(yn),i=n.docChanged||n.heightChanged||n.viewportChanged||!j.eq(n.startState.facet(Ar),n.state.facet(Ar),n.view.viewport.from,n.view.viewport.to);if(e==t)for(let r of this.gutters)r.update(n)&&(i=!0);else{i=!0;let r=[];for(let s of t){let o=e.indexOf(s);o<0?r.push(new Nh(this.view,s)):(this.gutters[o].update(n),r.push(this.gutters[o]))}for(let s of this.gutters)s.dom.remove(),r.indexOf(s)<0&&s.destroy();for(let s of r)s.config.side=="after"?this.getDOMAfter().appendChild(s.dom):this.dom.appendChild(s.dom);this.gutters=r}return i}destroy(){for(let n of this.gutters)n.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:n=>v.scrollMargins.of(e=>{let t=e.plugin(n);if(!t||t.gutters.length==0||!t.fixed)return null;let i=t.dom.offsetWidth*e.scaleX,r=t.domAfter?t.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==J.LTR?{left:i,right:r}:{right:i,left:r}})});function Uh(n){return Array.isArray(n)?n:[n]}function bl(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}class wQ{constructor(e,t,i){this.gutter=e,this.height=i,this.i=0,this.cursor=j.iter(e.markers,t.from)}addElement(e,t,i){let{gutter:r}=this,s=(t.top-this.height)/e.scaleY,o=t.height/e.scaleY;if(this.i==r.elements.length){let l=new du(e,o,s,i);r.elements.push(l),r.dom.appendChild(l.dom)}else r.elements[this.i].update(e,o,s,i);this.height=t.bottom,this.i++}line(e,t,i){let r=[];bl(this.cursor,r,t.from),i.length&&(r=r.concat(i));let s=this.gutter.config.lineMarker(e,t,r);s&&r.unshift(s);let o=this.gutter;r.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,r)}widget(e,t){let i=this.gutter.config.widgetMarker(e,t.widget,t),r=i?[i]:null;for(let s of e.state.facet(bQ)){let o=s(e,t.widget,t);o&&(r||(r=[])).push(o)}r&&this.addElement(e,t,r)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}}class Nh{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let i in t.domEventHandlers)this.dom.addEventListener(i,r=>{let s=r.target,o;if(s!=this.dom&&this.dom.contains(s)){for(;s.parentNode!=this.dom;)s=s.parentNode;let a=s.getBoundingClientRect();o=(a.top+a.bottom)/2}else o=r.clientY;let l=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[i](e,l,r)&&r.preventDefault()});this.markers=Uh(t.markers(e)),t.initialSpacer&&(this.spacer=new du(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=Uh(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let r=this.config.updateSpacer(this.spacer.markers[0],e);r!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[r])}let i=e.view.viewport;return!j.eq(this.markers,t,i.from,i.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class du{constructor(e,t,i,r){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,i,r)}update(e,t,i,r){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=i&&(this.dom.style.marginTop=(this.above=i)?i+"px":""),$Q(this.markers,r)||this.setMarkers(e,r)}setMarkers(e,t){let i="cm-gutterElement",r=this.dom.firstChild;for(let s=0,o=0;;){let l=o,a=ss(l,a,h)||o(l,a,h):o}return i}})}});class no extends At{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function ro(n,e){return n.state.facet(vi).formatNumber(e,n.state)}const TQ=yn.compute([vi],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(PQ)},lineMarker(e,t,i){return i.some(r=>r.toDOM)?null:new no(ro(e,e.state.doc.lineAt(t.from).number))},widgetMarker:(e,t,i)=>{for(let r of e.state.facet(vQ)){let s=r(e,t,i);if(s)return s}return null},lineMarkerChange:e=>e.startState.facet(vi)!=e.state.facet(vi),initialSpacer(e){return new no(ro(e,Fh(e.state.doc.lines)))},updateSpacer(e,t){let i=ro(t.view,Fh(t.view.state.doc.lines));return i==e.number?e:new no(i)},domEventHandlers:n.facet(vi).domEventHandlers,side:"before"}));function CQ(n={}){return[vi.of(n),uu(),TQ]}function Fh(n){let e=9;for(;e{let e=[],t=-1;for(let i of n.selection.ranges){let r=n.doc.lineAt(i.head).from;r>t&&(t=r,e.push(XQ.range(r)))}return j.of(e)});function RQ(){return ZQ}const pu=1024;let AQ=0;class Ie{constructor(e,t){this.from=e,this.to=t}}class M{constructor(e={}){this.id=AQ++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=he.match(e)),t=>{let i=e(t);return i===void 0?null:[this,i]}}}M.closedBy=new M({deserialize:n=>n.split(" ")});M.openedBy=new M({deserialize:n=>n.split(" ")});M.group=new M({deserialize:n=>n.split(" ")});M.isolate=new M({deserialize:n=>{if(n&&n!="rtl"&&n!="ltr"&&n!="auto")throw new RangeError("Invalid value for isolate: "+n);return n||"auto"}});M.contextHash=new M({perNode:!0});M.lookAhead=new M({perNode:!0});M.mounted=new M({perNode:!0});class Ai{constructor(e,t,i,r=!1){this.tree=e,this.overlay=t,this.parser=i,this.bracketed=r}static get(e){return e&&e.props&&e.props[M.mounted.id]}}const qQ=Object.create(null);class he{constructor(e,t,i,r=0){this.name=e,this.props=t,this.id=i,this.flags=r}static define(e){let t=e.props&&e.props.length?Object.create(null):qQ,i=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),r=new he(e.name||"",t,e.id,i);if(e.props){for(let s of e.props)if(Array.isArray(s)||(s=s(r)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[s[0].id]=s[1]}}return r}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(M.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let i in e)for(let r of i.split(" "))t[r]=e[i];return i=>{for(let r=i.prop(M.group),s=-1;s<(r?r.length:0);s++){let o=t[s<0?i.name:r[s]];if(o)return o}}}}he.none=new he("",Object.create(null),0,8);class Ni{constructor(e){this.types=e;for(let t=0;t0;for(let a=this.cursor(o|U.IncludeAnonymous);;){let h=!1;if(a.from<=s&&a.to>=r&&(!l&&a.type.isAnonymous||t(a)!==!1)){if(a.firstChild())continue;h=!0}for(;h&&i&&(l||!a.type.isAnonymous)&&i(a),!a.nextSibling();){if(!a.parent())return;h=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:ca(he.none,this.children,this.positions,0,this.children.length,0,this.length,(t,i,r)=>new V(this.type,t,i,r,this.propValues),e.makeTree||((t,i,r)=>new V(he.none,t,i,r)))}static build(e){return _Q(e)}}V.empty=new V(he.none,[],[],0);class aa{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new aa(this.buffer,this.index)}}class It{constructor(e,t,i){this.buffer=e,this.length=t,this.set=i}get type(){return he.none}toString(){let e=[];for(let t=0;t0));a=o[a+3]);return l}slice(e,t,i){let r=this.buffer,s=new Uint16Array(t-e),o=0;for(let l=e,a=0;l=e&&te;case 1:return t<=e&&i>e;case 2:return i>e;case 4:return!0}}function Rn(n,e,t,i){for(var r;n.from==n.to||(t<1?n.from>=e:n.from>e)||(t>-1?n.to<=e:n.to0?l.length:-1;e!=h;e+=t){let c=l[e],f=a[e]+o.from,O;if(!(!(s&U.EnterBracketed&&c instanceof V&&(O=Ai.get(c))&&!O.overlay&&O.bracketed&&i>=f&&i<=f+c.length)&&!mu(r,i,f,f+c.length))){if(c instanceof It){if(s&U.ExcludeBuffers)continue;let u=c.findChild(0,c.buffer.length,t,i-f,r);if(u>-1)return new pt(new MQ(o,c,e,f),null,u)}else if(s&U.IncludeAnonymous||!c.type.isAnonymous||ha(c)){let u;if(!(s&U.IgnoreMounts)&&(u=Ai.get(c))&&!u.overlay)return new xe(u.tree,f,e,o);let d=new xe(c,f,e,o);return s&U.IncludeAnonymous||!d.type.isAnonymous?d:d.nextChild(t<0?c.children.length-1:0,t,i,r,s)}}}if(s&U.IncludeAnonymous||!o.type.isAnonymous||(o.index>=0?e=o.index+t:e=t<0?-1:o._parent._tree.children.length,o=o._parent,!o))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,t,i=0){let r;if(!(i&U.IgnoreOverlays)&&(r=Ai.get(this._tree))&&r.overlay){let s=e-this.from,o=i&U.EnterBracketed&&r.bracketed;for(let{from:l,to:a}of r.overlay)if((t>0||o?l<=s:l=s:a>s))return new xe(r.tree,r.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,i)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function Kh(n,e,t,i){let r=n.cursor(),s=[];if(!r.firstChild())return s;if(t!=null){for(let o=!1;!o;)if(o=r.type.is(t),!r.nextSibling())return s}for(;;){if(i!=null&&r.type.is(i))return s;if(r.type.is(e)&&s.push(r.node),!r.nextSibling())return i==null?s:[]}}function yl(n,e,t=e.length-1){for(let i=n;t>=0;i=i.parent){if(!i)return!1;if(!i.type.isAnonymous){if(e[t]&&e[t]!=i.name)return!1;t--}}return!0}class MQ{constructor(e,t,i,r){this.parent=e,this.buffer=t,this.index=i,this.start=r}}class pt extends gu{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,i){super(),this.context=e,this._parent=t,this.index=i,this.type=e.buffer.set.types[e.buffer.buffer[i]]}child(e,t,i){let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.context.start,i);return s<0?null:new pt(this.context,this,s)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,t,i=0){if(i&U.ExcludeBuffers)return null;let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return s<0?null:new pt(this.context,this,s)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new pt(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new pt(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:i}=this.context,r=this.index+4,s=i.buffer[this.index+3];if(s>r){let o=i.buffer[this.index+1];e.push(i.slice(r,s,o)),t.push(0)}return new V(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function Qu(n){if(!n.length)return null;let e=0,t=n[0];for(let s=1;st.from||o.to=e){let l=new xe(o.tree,o.overlay[0].from+s.from,-1,s);(r||(r=[i])).push(Rn(l,e,t,!1))}}return r?Qu(r):i}class es{get name(){return this.type.name}constructor(e,t=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=t&~U.EnterBracketed,e instanceof xe)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let i=e._parent;i;i=i._parent)this.stack.unshift(i.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:i,buffer:r}=this.buffer;return this.type=t||r.set.types[r.buffer[e]],this.from=i+r.buffer[e+1],this.to=i+r.buffer[e+2],!0}yield(e){return e?e instanceof xe?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,i){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,i,this.mode));let{buffer:r}=this.buffer,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.buffer.start,i);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,i=this.mode){return this.buffer?i&U.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,i))}parent(){if(!this.buffer)return this.yieldNode(this.mode&U.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&U.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,i=this.stack.length-1;if(e<0){let r=i<0?0:this.stack[i]+4;if(this.index!=r)return this.yieldBuf(t.findChild(r,this.index,-1,0,4))}else{let r=t.buffer[this.index+3];if(r<(i<0?t.buffer.length:t.buffer[this.stack[i]+3]))return this.yieldBuf(r)}return i<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,i,{buffer:r}=this;if(r){if(e>0){if(this.index-1)for(let s=t+e,o=e<0?-1:i._tree.children.length;s!=o;s+=e){let l=i._tree.children[s];if(this.mode&U.IncludeAnonymous||l instanceof It||!l.type.isAnonymous||ha(l))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to=0;){for(let o=e;o;o=o._parent)if(o.index==r){if(r==this.index)return o;t=o,i=s+1;break e}r=this.stack[--s]}for(let r=i;r=0;s--){if(s<0)return yl(this._tree,e,r);let o=i[t.buffer[this.stack[s]]];if(!o.isAnonymous){if(e[r]&&e[r]!=o.name)return!1;r--}}return!0}}function ha(n){return n.children.some(e=>e instanceof It||!e.type.isAnonymous||ha(e))}function _Q(n){var e;let{buffer:t,nodeSet:i,maxBufferLength:r=pu,reused:s=[],minRepeatType:o=i.types.length}=n,l=Array.isArray(t)?new aa(t,t.length):t,a=i.types,h=0,c=0;function f(k,x,$,q,_,I){let{id:W,start:A,end:L,size:E}=l,G=c,oe=h;if(E<0)if(l.next(),E==-1){let pe=s[W];$.push(pe),q.push(A-k);return}else if(E==-3){h=W;return}else if(E==-4){c=W;return}else throw new RangeError(`Unrecognized record size: ${E}`);let fe=a[W],$e,ie,de=A-k;if(L-A<=r&&(ie=g(l.pos-x,_))){let pe=new Uint16Array(ie.size-ie.skip),Pe=l.pos-ie.size,We=pe.length;for(;l.pos>Pe;)We=Q(ie.start,pe,We);$e=new It(pe,L-ie.start,i),de=ie.start-k}else{let pe=l.pos-E;l.next();let Pe=[],We=[],H=W>=o?W:-1,He=0,ii=L;for(;l.pos>pe;)H>=0&&l.id==H&&l.size>=0?(l.end<=ii-r&&(d(Pe,We,A,He,l.end,ii,H,G,oe),He=Pe.length,ii=l.end),l.next()):I>2500?O(A,pe,Pe,We):f(A,pe,Pe,We,H,I+1);if(H>=0&&He>0&&He-1&&He>0){let ki=u(fe,oe);$e=ca(fe,Pe,We,0,Pe.length,0,L-A,ki,ki)}else $e=m(fe,Pe,We,L-A,G-L,oe)}$.push($e),q.push(de)}function O(k,x,$,q){let _=[],I=0,W=-1;for(;l.pos>x;){let{id:A,start:L,end:E,size:G}=l;if(G>4)l.next();else{if(W>-1&&L=0;E-=3)A[G++]=_[E],A[G++]=_[E+1]-L,A[G++]=_[E+2]-L,A[G++]=G;$.push(new It(A,_[2]-L,i)),q.push(L-k)}}function u(k,x){return($,q,_)=>{let I=0,W=$.length-1,A,L;if(W>=0&&(A=$[W])instanceof V){if(!W&&A.type==k&&A.length==_)return A;(L=A.prop(M.lookAhead))&&(I=q[W]+A.length+L)}return m(k,$,q,_,I,x)}}function d(k,x,$,q,_,I,W,A,L){let E=[],G=[];for(;k.length>q;)E.push(k.pop()),G.push(x.pop()+$-_);k.push(m(i.types[W],E,G,I-_,A-I,L)),x.push(_-$)}function m(k,x,$,q,_,I,W){if(I){let A=[M.contextHash,I];W=W?[A].concat(W):[A]}if(_>25){let A=[M.lookAhead,_];W=W?[A].concat(W):[A]}return new V(k,x,$,q,W)}function g(k,x){let $=l.fork(),q=0,_=0,I=0,W=$.end-r,A={size:0,start:0,skip:0};e:for(let L=$.pos-k;$.pos>L;){let E=$.size;if($.id==x&&E>=0){A.size=q,A.start=_,A.skip=I,I+=4,q+=4,$.next();continue}let G=$.pos-E;if(E<0||G=o?4:0,fe=$.start;for($.next();$.pos>G;){if($.size<0)if($.size==-3||$.size==-4)oe+=4;else break e;else $.id>=o&&(oe+=4);$.next()}_=fe,q+=E,I+=oe}return(x<0||q==k)&&(A.size=q,A.start=_,A.skip=I),A.size>4?A:void 0}function Q(k,x,$){let{id:q,start:_,end:I,size:W}=l;if(l.next(),W>=0&&q4){let L=l.pos-(W-4);for(;l.pos>L;)$=Q(k,x,$)}x[--$]=A,x[--$]=I-k,x[--$]=_-k,x[--$]=q}else W==-3?h=q:W==-4&&(c=q);return $}let S=[],y=[];for(;l.pos>0;)f(n.start||0,n.bufferStart||0,S,y,-1,0);let P=(e=n.length)!==null&&e!==void 0?e:S.length?y[0]+S[0].length:0;return new V(a[n.topID],S.reverse(),y.reverse(),P)}const Jh=new WeakMap;function qr(n,e){if(!n.isAnonymous||e instanceof It||e.type!=n)return 1;let t=Jh.get(e);if(t==null){t=1;for(let i of e.children){if(i.type!=n||!(i instanceof V)){t=1;break}t+=qr(n,i)}Jh.set(e,t)}return t}function ca(n,e,t,i,r,s,o,l,a){let h=0;for(let d=i;d=c)break;x+=$}if(y==P+1){if(x>c){let $=d[P];u($.children,$.positions,0,$.children.length,m[P]+S);continue}f.push(d[P])}else{let $=m[y-1]+d[y-1].length-k;f.push(ca(n,d,m,P,y,k,$,null,a))}O.push(k+S-s)}}return u(e,t,i,r,0),(l||a)(f,O,o)}class fa{constructor(){this.map=new WeakMap}setBuffer(e,t,i){let r=this.map.get(e);r||this.map.set(e,r=new Map),r.set(t,i)}getBuffer(e,t){let i=this.map.get(e);return i&&i.get(t)}set(e,t){e instanceof pt?this.setBuffer(e.context.buffer,e.index,t):e instanceof xe&&this.map.set(e.tree,t)}get(e){return e instanceof pt?this.getBuffer(e.context.buffer,e.index):e instanceof xe?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class Xt{constructor(e,t,i,r,s=!1,o=!1){this.from=e,this.to=t,this.tree=i,this.offset=r,this.open=(s?1:0)|(o?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],i=!1){let r=[new Xt(0,e.length,e,0,!1,i)];for(let s of t)s.to>e.length&&r.push(s);return r}static applyChanges(e,t,i=128){if(!t.length)return e;let r=[],s=1,o=e.length?e[0]:null;for(let l=0,a=0,h=0;;l++){let c=l=i)for(;o&&o.from=O.from||f<=O.to||h){let u=Math.max(O.from,a)-h,d=Math.min(O.to,f)-h;O=u>=d?null:new Xt(u,d,O.tree,O.offset+h,l>0,!!c)}if(O&&r.push(O),o.to>f)break;o=snew Ie(r.from,r.to)):[new Ie(0,0)]:[new Ie(0,e.length)],this.createParse(e,t||[],i)}parse(e,t,i){let r=this.startParse(e,t,i);for(;;){let s=r.advance();if(s)return s}}}class EQ{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function Su(n){return(e,t,i,r)=>new VQ(e,n,t,i,r)}class ec{constructor(e,t,i,r,s,o){this.parser=e,this.parse=t,this.overlay=i,this.bracketed=r,this.target=s,this.from=o}}function tc(n){if(!n.length||n.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(n))}class jQ{constructor(e,t,i,r,s,o,l,a){this.parser=e,this.predicate=t,this.mounts=i,this.index=r,this.start=s,this.bracketed=o,this.target=l,this.prev=a,this.depth=0,this.ranges=[]}}const kl=new M({perNode:!0});class VQ{constructor(e,t,i,r,s){this.nest=t,this.input=i,this.fragments=r,this.ranges=s,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let i=this.baseParse.advance();if(!i)return null;if(this.baseParse=null,this.baseTree=i,this.startInner(),this.stoppedAt!=null)for(let r of this.inner)r.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let i=this.baseTree;return this.stoppedAt!=null&&(i=new V(i.type,i.children,i.positions,i.length,i.propValues.concat([[kl,this.stoppedAt]]))),i}let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let i=Object.assign(Object.create(null),e.target.props);i[M.mounted.id]=new Ai(t,e.overlay,e.parser,e.bracketed),e.target.props=i}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let t=this.innerDone;t=this.stoppedAt)l=!1;else if(e.hasNode(r)){if(t){let h=t.mounts.find(c=>c.frag.from<=r.from&&c.frag.to>=r.to&&c.mount.overlay);if(h)for(let c of h.mount.overlay){let f=c.from+h.pos,O=c.to+h.pos;f>=r.from&&O<=r.to&&!t.ranges.some(u=>u.fromf)&&t.ranges.push({from:f,to:O})}}l=!1}else if(i&&(o=LQ(i.ranges,r.from,r.to)))l=o!=2;else if(!r.type.isAnonymous&&(s=this.nest(r,this.input))&&(r.fromnew Ie(f.from-r.from,f.to-r.from)):null,!!s.bracketed,r.tree,c.length?c[0].from:r.from)),s.overlay?c.length&&(i={ranges:c,depth:0,prev:i}):l=!1}}else if(t&&(a=t.predicate(r))&&(a===!0&&(a=new Ie(r.from,r.to)),a.from=0&&t.ranges[h].to==a.from?t.ranges[h]={from:t.ranges[h].from,to:a.to}:t.ranges.push(a)}if(l&&r.firstChild())t&&t.depth++,i&&i.depth++;else for(;!r.nextSibling();){if(!r.parent())break e;if(t&&!--t.depth){let h=rc(this.ranges,t.ranges);h.length&&(tc(h),this.inner.splice(t.index,0,new ec(t.parser,t.parser.startParse(this.input,sc(t.mounts,h),h),t.ranges.map(c=>new Ie(c.from-t.start,c.to-t.start)),t.bracketed,t.target,h[0].from))),t=t.prev}i&&!--i.depth&&(i=i.prev)}}}}function LQ(n,e,t){for(let i of n){if(i.from>=t)break;if(i.to>e)return i.from<=e&&i.to>=t?2:1}return 0}function ic(n,e,t,i,r,s){if(e=e&&t.enter(i,1,U.IgnoreOverlays|U.ExcludeBuffers)))if(t.to<=e)t.next(!1)||(this.done=!0);else break}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(t.children.length&&t.positions[0]==0&&t.children[0]instanceof V)t=t.children[0];else break}return!1}}let DQ=class{constructor(e){var t;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let i=this.curFrag=e[0];this.curTo=(t=i.tree.prop(kl))!==null&&t!==void 0?t:i.to,this.inner=new nc(i.tree,-i.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let t=this.curFrag=this.fragments[this.fragI];this.curTo=(e=t.tree.prop(kl))!==null&&e!==void 0?e:t.to,this.inner=new nc(t.tree,-t.offset)}}findMounts(e,t){var i;let r=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let s=this.inner.cursor.node;s;s=s.parent){let o=(i=s.tree)===null||i===void 0?void 0:i.prop(M.mounted);if(o&&o.parser==t)for(let l=this.fragI;l=s.to)break;a.tree==this.curFrag.tree&&r.push({frag:a,pos:s.from-a.offset,mount:o})}}}return r}};function rc(n,e){let t=null,i=e;for(let r=1,s=0;r=l)break;a.to<=o||(t||(i=t=e.slice()),a.froml&&t.splice(s+1,0,new Ie(l,a.to))):a.to>l?t[s--]=new Ie(l,a.to):t.splice(s--,1))}}return i}function BQ(n,e,t,i){let r=0,s=0,o=!1,l=!1,a=-1e9,h=[];for(;;){let c=r==n.length?1e9:o?n[r].to:n[r].from,f=s==e.length?1e9:l?e[s].to:e[s].from;if(o!=l){let O=Math.max(a,t),u=Math.min(c,f,i);Onew Ie(O.from+i,O.to+i)),f=BQ(e,c,a,h);for(let O=0,u=a;;O++){let d=O==f.length,m=d?h:f[O].from;if(m>u&&t.push(new Xt(u,m,r.tree,-o,s.from>=u||s.openStart,s.to<=m||s.openEnd)),d)break;u=f[O].to}}else t.push(new Xt(a,h,r.tree,-o,s.from>=o||s.openStart,s.to<=l||s.openEnd))}return t}let IQ=0;class Ye{constructor(e,t,i,r){this.name=e,this.set=t,this.base=i,this.modified=r,this.id=IQ++}toString(){let{name:e}=this;for(let t of this.modified)t.name&&(e=`${t.name}(${e})`);return e}static define(e,t){let i=typeof e=="string"?e:"?";if(e instanceof Ye&&(t=e),t?.base)throw new Error("Can not derive from a modified tag");let r=new Ye(i,[],null,[]);if(r.set.push(r),t)for(let s of t.set)r.set.push(s);return r}static defineModifier(e){let t=new ts(e);return i=>i.modified.indexOf(t)>-1?i:ts.get(i.base||i,i.modified.concat(t).sort((r,s)=>r.id-s.id))}}let GQ=0;class ts{constructor(e){this.name=e,this.instances=[],this.id=GQ++}static get(e,t){if(!t.length)return e;let i=t[0].instances.find(l=>l.base==e&&UQ(t,l.modified));if(i)return i;let r=[],s=new Ye(e.name,r,e,t);for(let l of t)l.instances.push(s);let o=NQ(t);for(let l of e.set)if(!l.modified.length)for(let a of o)r.push(ts.get(l,a));return s}}function UQ(n,e){return n.length==e.length&&n.every((t,i)=>t==e[i])}function NQ(n){let e=[[]];for(let t=0;ti.length-t.length)}function Kt(n){let e=Object.create(null);for(let t in n){let i=n[t];Array.isArray(i)||(i=[i]);for(let r of t.split(" "))if(r){let s=[],o=2,l=r;for(let f=0;;){if(l=="..."&&f>0&&f+3==r.length){o=1;break}let O=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(l);if(!O)throw new RangeError("Invalid path: "+r);if(s.push(O[0]=="*"?"":O[0][0]=='"'?JSON.parse(O[0]):O[0]),f+=O[0].length,f==r.length)break;let u=r[f++];if(f==r.length&&u=="!"){o=0;break}if(u!="/")throw new RangeError("Invalid path: "+r);l=r.slice(f)}let a=s.length-1,h=s[a];if(!h)throw new RangeError("Invalid path: "+r);let c=new An(i,o,a>0?s.slice(0,a):null);e[h]=c.sort(e[h])}}return bu.add(e)}const bu=new M({combine(n,e){let t,i,r;for(;n||e;){if(!n||e&&n.depth>=e.depth?(r=e,e=e.next):(r=n,n=n.next),t&&t.mode==r.mode&&!r.context&&!t.context)continue;let s=new An(r.tags,r.mode,r.context);t?t.next=s:i=s,t=s}return i}});class An{constructor(e,t,i,r){this.tags=e,this.mode=t,this.context=i,this.next=r}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth{let o=r;for(let l of s)for(let a of l.set){let h=t[a.id];if(h){o=o?o+" "+h:h;break}}return o},scope:i}}function FQ(n,e){let t=null;for(let i of n){let r=i.style(e);r&&(t=t?t+" "+r:r)}return t}function HQ(n,e,t,i=0,r=n.length){let s=new KQ(i,Array.isArray(e)?e:[e],t);s.highlightRange(n.cursor(),i,r,"",s.highlighters),s.flush(r)}class KQ{constructor(e,t,i){this.at=e,this.highlighters=t,this.span=i,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,i,r,s){let{type:o,from:l,to:a}=e;if(l>=i||a<=t)return;o.isTop&&(s=this.highlighters.filter(u=>!u.scope||u.scope(o)));let h=r,c=JQ(e)||An.empty,f=FQ(s,c.tags);if(f&&(h&&(h+=" "),h+=f,c.mode==1&&(r+=(r?" ":"")+f)),this.startSpan(Math.max(t,l),h),c.opaque)return;let O=e.tree&&e.tree.prop(M.mounted);if(O&&O.overlay){let u=e.node.enter(O.overlay[0].from+l,1),d=this.highlighters.filter(g=>!g.scope||g.scope(O.tree.type)),m=e.firstChild();for(let g=0,Q=l;;g++){let S=g=y||!e.nextSibling())););if(!S||y>i)break;Q=S.to+l,Q>t&&(this.highlightRange(u.cursor(),Math.max(t,S.from+l),Math.min(i,Q),"",d),this.startSpan(Math.min(i,Q),h))}m&&e.parent()}else if(e.firstChild()){O&&(r="");do if(!(e.to<=t)){if(e.from>=i)break;this.highlightRange(e,t,i,r,s),this.startSpan(Math.min(i,e.to),h)}while(e.nextSibling());e.parent()}}}function JQ(n){let e=n.type.prop(bu);for(;e&&e.context&&!n.matchContext(e.context);)e=e.next;return e||null}const T=Ye.define,gr=T(),zt=T(),oc=T(zt),lc=T(zt),Wt=T(),Qr=T(Wt),so=T(Wt),ct=T(),si=T(ct),at=T(),ht=T(),xl=T(),sn=T(xl),Sr=T(),p={comment:gr,lineComment:T(gr),blockComment:T(gr),docComment:T(gr),name:zt,variableName:T(zt),typeName:oc,tagName:T(oc),propertyName:lc,attributeName:T(lc),className:T(zt),labelName:T(zt),namespace:T(zt),macroName:T(zt),literal:Wt,string:Qr,docString:T(Qr),character:T(Qr),attributeValue:T(Qr),number:so,integer:T(so),float:T(so),bool:T(Wt),regexp:T(Wt),escape:T(Wt),color:T(Wt),url:T(Wt),keyword:at,self:T(at),null:T(at),atom:T(at),unit:T(at),modifier:T(at),operatorKeyword:T(at),controlKeyword:T(at),definitionKeyword:T(at),moduleKeyword:T(at),operator:ht,derefOperator:T(ht),arithmeticOperator:T(ht),logicOperator:T(ht),bitwiseOperator:T(ht),compareOperator:T(ht),updateOperator:T(ht),definitionOperator:T(ht),typeOperator:T(ht),controlOperator:T(ht),punctuation:xl,separator:T(xl),bracket:sn,angleBracket:T(sn),squareBracket:T(sn),paren:T(sn),brace:T(sn),content:ct,heading:si,heading1:T(si),heading2:T(si),heading3:T(si),heading4:T(si),heading5:T(si),heading6:T(si),contentSeparator:T(ct),list:T(ct),quote:T(ct),emphasis:T(ct),strong:T(ct),link:T(ct),monospace:T(ct),strikethrough:T(ct),inserted:T(),deleted:T(),changed:T(),invalid:T(),meta:Sr,documentMeta:T(Sr),annotation:T(Sr),processingInstruction:T(Sr),definition:Ye.defineModifier("definition"),constant:Ye.defineModifier("constant"),function:Ye.defineModifier("function"),standard:Ye.defineModifier("standard"),local:Ye.defineModifier("local"),special:Ye.defineModifier("special")};for(let n in p){let e=p[n];e instanceof Ye&&(e.name=n)}yu([{tag:p.link,class:"tok-link"},{tag:p.heading,class:"tok-heading"},{tag:p.emphasis,class:"tok-emphasis"},{tag:p.strong,class:"tok-strong"},{tag:p.keyword,class:"tok-keyword"},{tag:p.atom,class:"tok-atom"},{tag:p.bool,class:"tok-bool"},{tag:p.url,class:"tok-url"},{tag:p.labelName,class:"tok-labelName"},{tag:p.inserted,class:"tok-inserted"},{tag:p.deleted,class:"tok-deleted"},{tag:p.literal,class:"tok-literal"},{tag:p.string,class:"tok-string"},{tag:p.number,class:"tok-number"},{tag:[p.regexp,p.escape,p.special(p.string)],class:"tok-string2"},{tag:p.variableName,class:"tok-variableName"},{tag:p.local(p.variableName),class:"tok-variableName tok-local"},{tag:p.definition(p.variableName),class:"tok-variableName tok-definition"},{tag:p.special(p.variableName),class:"tok-variableName2"},{tag:p.definition(p.propertyName),class:"tok-propertyName tok-definition"},{tag:p.typeName,class:"tok-typeName"},{tag:p.namespace,class:"tok-namespace"},{tag:p.className,class:"tok-className"},{tag:p.macroName,class:"tok-macroName"},{tag:p.propertyName,class:"tok-propertyName"},{tag:p.operator,class:"tok-operator"},{tag:p.comment,class:"tok-comment"},{tag:p.meta,class:"tok-meta"},{tag:p.invalid,class:"tok-invalid"},{tag:p.punctuation,class:"tok-punctuation"}]);var oo;const jt=new M;function Cs(n){return C.define({combine:n?e=>e.concat(n):void 0})}const Oa=new M;class De{constructor(e,t,i=[],r=""){this.data=e,this.name=r,Y.prototype.hasOwnProperty("tree")||Object.defineProperty(Y.prototype,"tree",{get(){return F(this)}}),this.parser=t,this.extension=[Ut.of(this),Y.languageData.of((s,o,l)=>{let a=ac(s,o,l),h=a.type.prop(jt);if(!h)return[];let c=s.facet(h),f=a.type.prop(Oa);if(f){let O=a.resolve(o-a.from,l);for(let u of f)if(u.test(O,s)){let d=s.facet(u.facet);return u.type=="replace"?d:d.concat(c)}}return c})].concat(i)}isActiveAt(e,t,i=-1){return ac(e,t,i).type.prop(jt)==this.data}findRegions(e){let t=e.facet(Ut);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let i=[],r=(s,o)=>{if(s.prop(jt)==this.data){i.push({from:o,to:o+s.length});return}let l=s.prop(M.mounted);if(l){if(l.tree.prop(jt)==this.data){if(l.overlay)for(let a of l.overlay)i.push({from:a.from+o,to:a.to+o});else i.push({from:o,to:o+s.length});return}else if(l.overlay){let a=i.length;if(r(l.tree,l.overlay[0].from+o),i.length>a)return}}for(let a=0;ai.isTop?t:void 0)]}),e.name)}configure(e,t){return new Gt(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function F(n){let e=n.field(De.state,!1);return e?e.tree:V.empty}class eS{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let i=this.cursorPos-this.string.length;return e=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-i,t-i)}}let on=null;class Qi{constructor(e,t,i=[],r,s,o,l,a){this.parser=e,this.state=t,this.fragments=i,this.tree=r,this.treeLen=s,this.viewport=o,this.skipped=l,this.scheduleOn=a,this.parse=null,this.tempSkipped=[]}static create(e,t,i){return new Qi(e,t,[],V.empty,0,i,[],null)}startParse(){return this.parser.startParse(new eS(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=V.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var i;if(typeof e=="number"){let r=Date.now()+e;e=()=>Date.now()>r}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(Xt.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=on;on=this;try{return e()}finally{on=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=hc(e,t.from,t.to);return e}changes(e,t){let{fragments:i,tree:r,treeLen:s,viewport:o,skipped:l}=this;if(this.takeTree(),!e.empty){let a=[];if(e.iterChangedRanges((h,c,f,O)=>a.push({fromA:h,toA:c,fromB:f,toB:O})),i=Xt.applyChanges(i,a),r=V.empty,s=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){l=[];for(let h of this.skipped){let c=e.mapPos(h.from,1),f=e.mapPos(h.to,-1);ce.from&&(this.fragments=hc(this.fragments,r,s),this.skipped.splice(i--,1))}return this.skipped.length>=t?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends Ts{createParse(t,i,r){let s=r[0].from,o=r[r.length-1].to;return{parsedPos:s,advance(){let a=on;if(a){for(let h of r)a.tempSkipped.push(h);e&&(a.scheduleOn=a.scheduleOn?Promise.all([a.scheduleOn,e]):e)}return this.parsedPos=o,new V(he.none,[],[],o-s)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&t[0].from==0&&t[0].to>=e}static get(){return on}}function hc(n,e,t){return Xt.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}class Yi{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),i=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,i)||t.takeTree(),new Yi(t)}static init(e){let t=Math.min(3e3,e.doc.length),i=Qi.create(e.facet(Ut).parser,e,{from:0,to:t});return i.work(20,t)||i.takeTree(),new Yi(i)}}De.state=be.define({create:Yi.init,update(n,e){for(let t of e.effects)if(t.is(De.setState))return t.value;return e.startState.facet(Ut)!=e.state.facet(Ut)?Yi.init(e.state):n.apply(e)}});let ku=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(ku=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const lo=typeof navigator<"u"&&(!((oo=navigator.scheduling)===null||oo===void 0)&&oo.isInputPending)?()=>navigator.scheduling.isInputPending():null,tS=se.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(De.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(De.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=ku(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEndr+1e3,a=s.context.work(()=>lo&&lo()||Date.now()>o,r+(l?0:1e5));this.chunkBudget-=Date.now()-t,(a||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:De.setState.of(new Yi(s.context))})),this.chunkBudget>0&&!(a&&!l)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>qe(this.view.state,t)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Ut=C.define({combine(n){return n.length?n[0]:null},enables:n=>[De.state,tS,v.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});class Si{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}class is{constructor(e,t,i,r,s,o=void 0){this.name=e,this.alias=t,this.extensions=i,this.filename=r,this.loadFunc=s,this.support=o,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then(e=>this.support=e,e=>{throw this.loading=null,e}))}static of(e){let{load:t,support:i}=e;if(!t){if(!i)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");t=()=>Promise.resolve(i)}return new is(e.name,(e.alias||[]).concat(e.name).map(r=>r.toLowerCase()),e.extensions||[],e.filename,t,i)}static matchFilename(e,t){for(let r of e)if(r.filename&&r.filename.test(t))return r;let i=/\.([^.]+)$/.exec(t);if(i){for(let r of e)if(r.extensions.indexOf(i[1])>-1)return r}return null}static matchLanguageName(e,t,i=!0){t=t.toLowerCase();for(let r of e)if(r.alias.some(s=>s==t))return r;if(i)for(let r of e)for(let s of r.alias){let o=t.indexOf(s);if(o>-1&&(s.length>2||!/\w/.test(t[o-1])&&!/\w/.test(t[o+s.length])))return r}return null}}const iS=C.define(),Fi=C.define({combine:n=>{if(!n.length)return" ";let e=n[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(n[0]));return e}});function bi(n){let e=n.facet(Fi);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function qn(n,e){let t="",i=n.tabSize,r=n.facet(Fi)[0];if(r==" "){for(;e>=i;)t+=" ",e-=i;r=" "}for(let s=0;s=e?nS(n,t,e):null}class Xs{constructor(e,t={}){this.state=e,this.options=t,this.unit=bi(e)}lineAt(e,t=1){let i=this.state.doc.lineAt(e),{simulateBreak:r,simulateDoubleBreak:s}=this.options;return r!=null&&r>=i.from&&r<=i.to?s&&r==e?{text:"",from:e}:(t<0?r-1&&(s+=o-this.countColumn(i,i.search(/\S|$/))),s}countColumn(e,t=e.length){return et(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:i,from:r}=this.lineAt(e,t),s=this.options.overrideIndentation;if(s){let o=s(r);if(o>-1)return o}return this.countColumn(i,i.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const Jt=new M;function nS(n,e,t){let i=e.resolveStack(t),r=e.resolveInner(t,-1).resolve(t,0).enterUnfinishedNodesBefore(t);if(r!=i.node){let s=[];for(let o=r;o&&!(o.fromi.node.to||o.from==i.node.from&&o.type==i.node.type);o=o.parent)s.push(o);for(let o=s.length-1;o>=0;o--)i={node:s[o],next:i}}return xu(i,n,t)}function xu(n,e,t){for(let i=n;i;i=i.next){let r=sS(i.node);if(r)return r(da.create(e,t,i))}return 0}function rS(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function sS(n){let e=n.type.prop(Jt);if(e)return e;let t=n.firstChild,i;if(t&&(i=t.type.prop(M.closedBy))){let r=n.lastChild,s=r&&i.indexOf(r.name)>-1;return o=>wu(o,!0,1,void 0,s&&!rS(o)?r.from:void 0)}return n.parent==null?oS:null}function oS(){return 0}class da extends Xs{constructor(e,t,i){super(e.state,e.options),this.base=e,this.pos=t,this.context=i}get node(){return this.context.node}static create(e,t,i){return new da(e,t,i)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let t=this.state.doc.lineAt(e.from);for(;;){let i=e.resolve(t.from);for(;i.parent&&i.parent.from==i.from;)i=i.parent;if(lS(i,e))break;t=this.state.doc.lineAt(i.from)}return this.lineIndent(t.from)}continue(){return xu(this.context.next,this.base,this.pos)}}function lS(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function aS(n){let e=n.node,t=e.childAfter(e.from),i=e.lastChild;if(!t)return null;let r=n.options.simulateBreak,s=n.state.doc.lineAt(t.from),o=r==null||r<=s.from?s.to:Math.min(s.to,r);for(let l=t.to;;){let a=e.childAfter(l);if(!a||a==i)return null;if(!a.type.isSkipped){if(a.from>=o)return null;let h=/^ */.exec(s.text.slice(t.to-s.from))[0].length;return{from:t.from,to:t.to+h}}l=a.to}}function Mr({closing:n,align:e=!0,units:t=1}){return i=>wu(i,e,t,n)}function wu(n,e,t,i,r){let s=n.textAfter,o=s.match(/^\s*/)[0].length,l=i&&s.slice(o,o+i.length)==i||r==n.pos+o,a=e?aS(n):null;return a?l?n.column(a.from):n.column(a.to):n.baseIndent+(l?0:n.unit*t)}const hS=n=>n.baseIndent;function qi({except:n,units:e=1}={}){return t=>{let i=n&&n.test(t.textAfter);return t.baseIndent+(i?0:e*t.unit)}}const cS=200;function fS(){return Y.transactionFilter.of(n=>{if(!n.docChanged||!n.isUserEvent("input.type")&&!n.isUserEvent("input.complete"))return n;let e=n.startState.languageDataAt("indentOnInput",n.startState.selection.main.head);if(!e.length)return n;let t=n.newDoc,{head:i}=n.newSelection.main,r=t.lineAt(i);if(i>r.from+cS)return n;let s=t.sliceString(r.from,i);if(!e.some(h=>h.test(s)))return n;let{state:o}=n,l=-1,a=[];for(let{head:h}of o.selection.ranges){let c=o.doc.lineAt(h);if(c.from==l)continue;l=c.from;let f=ua(o,c.from);if(f==null)continue;let O=/^\s*/.exec(c.text)[0],u=qn(o,f);O!=u&&a.push({from:c.from,to:c.from+O.length,insert:u})}return a.length?[n,{changes:a,sequential:!0}]:n})}const $u=C.define(),ei=new M;function Zs(n){let e=n.firstChild,t=n.lastChild;return e&&e.tot)continue;if(s&&l.from=e&&h.to>t&&(s=h)}}return s}function uS(n){let e=n.lastChild;return e&&e.to==n.to&&e.type.isError}function ns(n,e,t){for(let i of n.facet($u)){let r=i(n,e,t);if(r)return r}return OS(n,e,t)}function Pu(n,e){let t=e.mapPos(n.from,1),i=e.mapPos(n.to,-1);return t>=i?void 0:{from:t,to:i}}const Rs=z.define({map:Pu}),Fn=z.define({map:Pu});function vu(n){let e=[];for(let{head:t}of n.state.selection.ranges)e.some(i=>i.from<=t&&i.to>=t)||e.push(n.lineBlockAt(t));return e}const Nt=be.define({create(){return R.none},update(n,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((t,i)=>n=cc(n,t,i)),n=n.map(e.changes);for(let t of e.effects)if(t.is(Rs)&&!dS(n,t.value.from,t.value.to)){let{preparePlaceholder:i}=e.state.facet(Xu),r=i?R.replace({widget:new yS(i(e.state,t.value))}):fc;n=n.update({add:[r.range(t.value.from,t.value.to)]})}else t.is(Fn)&&(n=n.update({filter:(i,r)=>t.value.from!=i||t.value.to!=r,filterFrom:t.value.from,filterTo:t.value.to}));return e.selection&&(n=cc(n,e.selection.main.head)),n},provide:n=>v.decorations.from(n),toJSON(n,e){let t=[];return n.between(0,e.doc.length,(i,r)=>{t.push(i,r)}),t},fromJSON(n){if(!Array.isArray(n)||n.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let t=0;t{re&&(i=!0)}),i?n.update({filterFrom:e,filterTo:t,filter:(r,s)=>r>=t||s<=e}):n}function LP(n){return n.field(Nt,!1)||j.empty}function rs(n,e,t){var i;let r=null;return(i=n.field(Nt,!1))===null||i===void 0||i.between(e,t,(s,o)=>{(!r||r.from>s)&&(r={from:s,to:o})}),r}function dS(n,e,t){let i=!1;return n.between(e,e,(r,s)=>{r==e&&s==t&&(i=!0)}),i}function Tu(n,e){return n.field(Nt,!1)?e:e.concat(z.appendConfig.of(Zu()))}const pS=n=>{for(let e of vu(n)){let t=ns(n.state,e.from,e.to);if(t)return n.dispatch({effects:Tu(n.state,[Rs.of(t),Cu(n,t)])}),!0}return!1},mS=n=>{if(!n.state.field(Nt,!1))return!1;let e=[];for(let t of vu(n)){let i=rs(n.state,t.from,t.to);i&&e.push(Fn.of(i),Cu(n,i,!1))}return e.length&&n.dispatch({effects:e}),e.length>0};function Cu(n,e,t=!0){let i=n.state.doc.lineAt(e.from).number,r=n.state.doc.lineAt(e.to).number;return v.announce.of(`${n.state.phrase(t?"Folded lines":"Unfolded lines")} ${i} ${n.state.phrase("to")} ${r}.`)}const gS=n=>{let{state:e}=n,t=[];for(let i=0;i{let e=n.state.field(Nt,!1);if(!e||!e.size)return!1;let t=[];return e.between(0,n.state.doc.length,(i,r)=>{t.push(Fn.of({from:i,to:r}))}),n.dispatch({effects:t}),!0},SS=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:pS},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:mS},{key:"Ctrl-Alt-[",run:gS},{key:"Ctrl-Alt-]",run:QS}],bS={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},Xu=C.define({combine(n){return yt(n,bS)}});function Zu(n){return[Nt,wS]}function Ru(n,e){let{state:t}=n,i=t.facet(Xu),r=o=>{let l=n.lineBlockAt(n.posAtDOM(o.target)),a=rs(n.state,l.from,l.to);a&&n.dispatch({effects:Fn.of(a)}),o.preventDefault()};if(i.placeholderDOM)return i.placeholderDOM(n,r,e);let s=document.createElement("span");return s.textContent=i.placeholderText,s.setAttribute("aria-label",t.phrase("folded code")),s.title=t.phrase("unfold"),s.className="cm-foldPlaceholder",s.onclick=r,s}const fc=R.replace({widget:new class extends it{toDOM(n){return Ru(n,null)}}});class yS extends it{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return Ru(e,this.value)}}const kS={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class ao extends At{constructor(e,t){super(),this.config=e,this.open=t}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let t=document.createElement("span");return t.textContent=this.open?this.config.openText:this.config.closedText,t.title=e.state.phrase(this.open?"Fold line":"Unfold line"),t}}function xS(n={}){let e={...kS,...n},t=new ao(e,!0),i=new ao(e,!1),r=se.fromClass(class{constructor(o){this.from=o.viewport.from,this.markers=this.buildMarkers(o)}update(o){(o.docChanged||o.viewportChanged||o.startState.facet(Ut)!=o.state.facet(Ut)||o.startState.field(Nt,!1)!=o.state.field(Nt,!1)||F(o.startState)!=F(o.state)||e.foldingChanged(o))&&(this.markers=this.buildMarkers(o.view))}buildMarkers(o){let l=new Zt;for(let a of o.viewportLineBlocks){let h=rs(o.state,a.from,a.to)?i:ns(o.state,a.from,a.to)?t:null;h&&l.add(a.from,a.from,h)}return l.finish()}}),{domEventHandlers:s}=e;return[r,kQ({class:"cm-foldGutter",markers(o){var l;return((l=o.plugin(r))===null||l===void 0?void 0:l.markers)||j.empty},initialSpacer(){return new ao(e,!1)},domEventHandlers:{...s,click:(o,l,a)=>{if(s.click&&s.click(o,l,a))return!0;let h=rs(o.state,l.from,l.to);if(h)return o.dispatch({effects:Fn.of(h)}),!0;let c=ns(o.state,l.from,l.to);return c?(o.dispatch({effects:Rs.of(c)}),!0):!1}}}),Zu()]}const wS=v.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class Hn{constructor(e,t){this.specs=e;let i;function r(l){let a=Yt.newName();return(i||(i=Object.create(null)))["."+a]=l,a}const s=typeof t.all=="string"?t.all:t.all?r(t.all):void 0,o=t.scope;this.scope=o instanceof De?l=>l.prop(jt)==o.data:o?l=>l==o:void 0,this.style=yu(e.map(l=>({tag:l.tag,class:l.class||r(Object.assign({},l,{tag:null}))})),{all:s}).style,this.module=i?new Yt(i):null,this.themeType=t.themeType}static define(e,t){return new Hn(e,t||{})}}const wl=C.define(),Au=C.define({combine(n){return n.length?[n[0]]:null}});function zr(n){let e=n.facet(wl);return e.length?e:n.facet(Au)}function qu(n,e){let t=[PS],i;return n instanceof Hn&&(n.module&&t.push(v.styleModule.of(n.module)),i=n.themeType),e?.fallback?t.push(Au.of(n)):i?t.push(wl.computeN([v.darkTheme],r=>r.facet(v.darkTheme)==(i=="dark")?[n]:[])):t.push(wl.of(n)),t}function YP(n,e,t){let i=zr(n),r=null;if(i){for(let s of i)if(!s.scope||t){let o=s.style(e);o&&(r=r?r+" "+o:o)}}return r}class $S{constructor(e){this.markCache=Object.create(null),this.tree=F(e.state),this.decorations=this.buildDeco(e,zr(e.state)),this.decoratedTo=e.viewport.to}update(e){let t=F(e.state),i=zr(e.state),r=i!=zr(e.startState),{viewport:s}=e.view,o=e.changes.mapPos(this.decoratedTo,1);t.length=s.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=o):(t!=this.tree||e.viewportChanged||r)&&(this.tree=t,this.decorations=this.buildDeco(e.view,i),this.decoratedTo=s.to)}buildDeco(e,t){if(!t||!this.tree.length)return R.none;let i=new Zt;for(let{from:r,to:s}of e.visibleRanges)HQ(this.tree,t,(o,l,a)=>{i.add(o,l,this.markCache[a]||(this.markCache[a]=R.mark({class:a})))},r,s);return i.finish()}}const PS=qt.high(se.fromClass($S,{decorations:n=>n.decorations})),vS=Hn.define([{tag:p.meta,color:"#404740"},{tag:p.link,textDecoration:"underline"},{tag:p.heading,textDecoration:"underline",fontWeight:"bold"},{tag:p.emphasis,fontStyle:"italic"},{tag:p.strong,fontWeight:"bold"},{tag:p.strikethrough,textDecoration:"line-through"},{tag:p.keyword,color:"#708"},{tag:[p.atom,p.bool,p.url,p.contentSeparator,p.labelName],color:"#219"},{tag:[p.literal,p.inserted],color:"#164"},{tag:[p.string,p.deleted],color:"#a11"},{tag:[p.regexp,p.escape,p.special(p.string)],color:"#e40"},{tag:p.definition(p.variableName),color:"#00f"},{tag:p.local(p.variableName),color:"#30a"},{tag:[p.typeName,p.namespace],color:"#085"},{tag:p.className,color:"#167"},{tag:[p.special(p.variableName),p.macroName],color:"#256"},{tag:p.definition(p.propertyName),color:"#00c"},{tag:p.comment,color:"#940"},{tag:p.invalid,color:"#f00"}]),TS=v.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),Mu=1e4,zu="()[]{}",Wu=C.define({combine(n){return yt(n,{afterCursor:!0,brackets:zu,maxScanDistance:Mu,renderMatch:ZS})}}),CS=R.mark({class:"cm-matchingBracket"}),XS=R.mark({class:"cm-nonmatchingBracket"});function ZS(n){let e=[],t=n.matched?CS:XS;return e.push(t.range(n.start.from,n.start.to)),n.end&&e.push(t.range(n.end.from,n.end.to)),e}function Oc(n){let e=[],t=n.facet(Wu);for(let i of n.selection.ranges){if(!i.empty)continue;let r=mt(n,i.head,-1,t)||i.head>0&&mt(n,i.head-1,1,t)||t.afterCursor&&(mt(n,i.head,1,t)||i.headn.decorations}),AS=[RS,TS];function qS(n={}){return[Wu.of(n),AS]}const _u=new M;function $l(n,e,t){let i=n.prop(e<0?M.openedBy:M.closedBy);if(i)return i;if(n.name.length==1){let r=t.indexOf(n.name);if(r>-1&&r%2==(e<0?1:0))return[t[r+e]]}return null}function Pl(n){let e=n.type.prop(_u);return e?e(n.node):n}function mt(n,e,t,i={}){let r=i.maxScanDistance||Mu,s=i.brackets||zu,o=F(n),l=o.resolveInner(e,t);for(let a=l;a;a=a.parent){let h=$l(a.type,t,s);if(h&&a.from0?e>=c.from&&ec.from&&e<=c.to))return MS(n,e,t,a,c,h,s)}}return zS(n,e,t,o,l.type,r,s)}function MS(n,e,t,i,r,s,o){let l=i.parent,a={from:r.from,to:r.to},h=0,c=l?.cursor();if(c&&(t<0?c.childBefore(i.from):c.childAfter(i.to)))do if(t<0?c.to<=i.from:c.from>=i.to){if(h==0&&s.indexOf(c.type.name)>-1&&c.from0)return null;let h={from:t<0?e-1:e,to:t>0?e+1:e},c=n.doc.iterRange(e,t>0?n.doc.length:0),f=0;for(let O=0;!c.next().done&&O<=s;){let u=c.value;t<0&&(O+=u.length);let d=e+O*t;for(let m=t>0?0:u.length-1,g=t>0?u.length:-1;m!=g;m+=t){let Q=o.indexOf(u[m]);if(!(Q<0||i.resolveInner(d+m,1).type!=r))if(Q%2==0==t>0)f++;else{if(f==1)return{start:h,end:{from:d+m,to:d+m+1},matched:Q>>1==a>>1};f--}}t>0&&(O+=u.length)}return c.done?{start:h,matched:!1}:null}function uc(n,e,t,i=0,r=0){e==null&&(e=n.search(/[^\s\u00a0]/),e==-1&&(e=n.length));let s=r;for(let o=i;o=this.string.length}sol(){return this.pos==0}peek(){return this.string.charAt(this.pos)||void 0}next(){if(this.post}eatSpace(){let e=this.pos;for(;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e}skipToEnd(){this.pos=this.string.length}skipTo(e){let t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0}backUp(e){this.pos-=e}column(){return this.lastColumnPosi?o.toLowerCase():o,s=this.string.substr(this.pos,e.length);return r(s)==r(e)?(t!==!1&&(this.pos+=e.length),!0):null}else{let r=this.string.slice(this.pos).match(e);return r&&r.index>0?null:(r&&t!==!1&&(this.pos+=r[0].length),r)}}current(){return this.string.slice(this.start,this.pos)}}function WS(n){return{name:n.name||"",token:n.token,blankLine:n.blankLine||(()=>{}),startState:n.startState||(()=>!0),copyState:n.copyState||_S,indent:n.indent||(()=>null),languageData:n.languageData||{},tokenTable:n.tokenTable||ma,mergeTokens:n.mergeTokens!==!1}}function _S(n){if(typeof n!="object")return n;let e={};for(let t in n){let i=n[t];e[t]=i instanceof Array?i.slice():i}return e}const dc=new WeakMap;class ju extends De{constructor(e){let t=Cs(e.languageData),i=WS(e),r,s=new class extends Ts{createParse(o,l,a){return new jS(r,o,l,a)}};super(t,s,[],e.name),this.topNode=YS(t,this),r=this,this.streamParser=i,this.stateAfter=new M({perNode:!0}),this.tokenTable=e.tokenTable?new Du(i.tokenTable):LS}static define(e){return new ju(e)}getIndent(e){let t,{overrideIndentation:i}=e.options;i&&(t=dc.get(e.state),t!=null&&t1e4)return null;for(;s=i&&t+e.length<=r&&e.prop(n.stateAfter);if(s)return{state:n.streamParser.copyState(s),pos:t+e.length};for(let o=e.children.length-1;o>=0;o--){let l=e.children[o],a=t+e.positions[o],h=l instanceof V&&a=e.length)return e;!r&&t==0&&e.type==n.topNode&&(r=!0);for(let s=e.children.length-1;s>=0;s--){let o=e.positions[s],l=e.children[s],a;if(ot&&pa(n,s.tree,0-s.offset,t,l),h;if(a&&a.pos<=i&&(h=Vu(n,s.tree,t+s.offset,a.pos+s.offset,!1)))return{state:a.state,tree:h}}return{state:n.streamParser.startState(r?bi(r):4),tree:V.empty}}let jS=class{constructor(e,t,i,r){this.lang=e,this.input=t,this.fragments=i,this.ranges=r,this.stoppedAt=null,this.chunks=[],this.chunkPos=[],this.chunk=[],this.chunkReused=void 0,this.rangeIndex=0,this.to=r[r.length-1].to;let s=Qi.get(),o=r[0].from,{state:l,tree:a}=ES(e,i,o,this.to,s?.state);this.state=l,this.parsedPos=this.chunkStart=o+a.length;for(let h=0;hh.from<=s.viewport.from&&h.to>=s.viewport.from)&&(this.state=this.lang.streamParser.startState(bi(s.state)),s.skipUntilInView(this.parsedPos,s.viewport.from),this.parsedPos=s.viewport.from),this.moveRangeIndex()}advance(){let e=Qi.get(),t=this.stoppedAt==null?this.to:Math.min(this.to,this.stoppedAt),i=Math.min(t,this.chunkStart+512);for(e&&(i=Math.min(i,e.viewport.to));this.parsedPos=t?this.finish():e&&this.parsedPos>=e.viewport.to?(e.skipUntilInView(this.parsedPos,t),this.finish()):null}stopAt(e){this.stoppedAt=e}lineAfter(e){let t=this.input.chunk(e);if(this.input.lineChunks)t==` +`&&(t="");else{let i=t.indexOf(` +`);i>-1&&(t=t.slice(0,i))}return e+t.length<=this.to?t:t.slice(0,this.to-e)}nextLine(){let e=this.parsedPos,t=this.lineAfter(e),i=e+t.length;for(let r=this.rangeIndex;;){let s=this.ranges[r].to;if(s>=i||(t=t.slice(0,s-(i-t.length)),r++,r==this.ranges.length))break;let o=this.ranges[r].from,l=this.lineAfter(o);t+=l,i=o+l.length}return{line:t,end:i}}skipGapsTo(e,t,i){for(;;){let r=this.ranges[this.rangeIndex].to,s=e+t;if(i>0?r>s:r>=s)break;let o=this.ranges[++this.rangeIndex].from;t+=o-r}return t}moveRangeIndex(){for(;this.ranges[this.rangeIndex].to1){r=this.skipGapsTo(t,r,1),t+=r;let l=this.chunk.length;r=this.skipGapsTo(i,r,-1),i+=r,s+=this.chunk.length-l}let o=this.chunk.length-4;return this.lang.streamParser.mergeTokens&&s==4&&o>=0&&this.chunk[o]==e&&this.chunk[o+2]==t?this.chunk[o+2]=i:this.chunk.push(e,t,i,s),r}parseLine(e){let{line:t,end:i}=this.nextLine(),r=0,{streamParser:s}=this.lang,o=new Eu(t,e?e.state.tabSize:4,e?bi(e.state):2);if(o.eol())s.blankLine(this.state,o.indentUnit);else for(;!o.eol();){let l=Lu(s.token,o,this.state);if(l&&(r=this.emitToken(this.lang.tokenTable.resolve(l),this.parsedPos+o.start,this.parsedPos+o.pos,r)),o.start>1e4)break}this.parsedPos=i,this.moveRangeIndex(),this.parsedPose.start)return r}throw new Error("Stream parser failed to advance stream.")}const ma=Object.create(null),Mn=[he.none],VS=new Ni(Mn),pc=[],mc=Object.create(null),Yu=Object.create(null);for(let[n,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])Yu[n]=Bu(ma,e);class Du{constructor(e){this.extra=e,this.table=Object.assign(Object.create(null),Yu)}resolve(e){return e?this.table[e]||(this.table[e]=Bu(this.extra,e)):0}}const LS=new Du(ma);function ho(n,e){pc.indexOf(n)>-1||(pc.push(n),console.warn(e))}function Bu(n,e){let t=[];for(let l of e.split(" ")){let a=[];for(let h of l.split(".")){let c=n[h]||p[h];c?typeof c=="function"?a.length?a=a.map(c):ho(h,`Modifier ${h} used at start of tag`):a.length?ho(h,`Tag ${h} used as modifier`):a=Array.isArray(c)?c:[c]:ho(h,`Unknown highlighting tag ${h}`)}for(let h of a)t.push(h)}if(!t.length)return 0;let i=e.replace(/ /g,"_"),r=i+" "+t.map(l=>l.id),s=mc[r];if(s)return s.id;let o=mc[r]=he.define({id:Mn.length,name:i,props:[Kt({[i]:t})]});return Mn.push(o),o.id}function YS(n,e){let t=he.define({id:Mn.length,name:"Document",props:[jt.add(()=>n),Jt.add(()=>i=>e.getIndent(i))],top:!0});return Mn.push(t),t}J.RTL,J.LTR;var gc={};class ss{constructor(e,t,i,r,s,o,l,a,h,c=0,f){this.p=e,this.stack=t,this.state=i,this.reducePos=r,this.pos=s,this.score=o,this.buffer=l,this.bufferBase=a,this.curContext=h,this.lookAhead=c,this.parent=f}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,i=0){let r=e.parser.context;return new ss(e,[],t,i,i,0,[],0,r?new Qc(r,r.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var t;let i=e>>19,r=e&65535,{parser:s}=this.p,o=this.reducePos=2e3&&!(!((t=this.p.parser.nodeSet.types[r])===null||t===void 0)&&t.isAnonymous)&&(h==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=c):this.p.lastBigReductionSizea;)this.stack.pop();this.reduceContext(r,h)}storeNode(e,t,i,r=4,s=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&this.buffer[o-4]==0&&this.buffer[o-1]>-1){if(t==i)return;if(this.buffer[o-2]>=t){this.buffer[o-2]=i;return}}}if(!s||this.pos==i)this.buffer.push(e,t,i,r);else{let o=this.buffer.length;if(o>0&&(this.buffer[o-4]!=0||this.buffer[o-1]<0)){let l=!1;for(let a=o;a>0&&this.buffer[a-2]>i;a-=4)if(this.buffer[a-1]>=0){l=!0;break}if(l)for(;o>0&&this.buffer[o-2]>i;)this.buffer[o]=this.buffer[o-4],this.buffer[o+1]=this.buffer[o-3],this.buffer[o+2]=this.buffer[o-2],this.buffer[o+3]=this.buffer[o-1],o-=4,r>4&&(r-=4)}this.buffer[o]=e,this.buffer[o+1]=t,this.buffer[o+2]=i,this.buffer[o+3]=r}}shift(e,t,i,r){if(e&131072)this.pushState(e&65535,this.pos);else if((e&262144)==0){let s=e,{parser:o}=this.p;this.pos=r;let l=o.stateFlag(s,1);!l&&(r>i||t<=o.maxNode)&&(this.reducePos=r),this.pushState(s,l?i:Math.min(i,this.reducePos)),this.shiftContext(t,i),t<=o.maxNode&&this.buffer.push(t,i,r,4)}else this.pos=r,this.shiftContext(t,i),t<=this.p.parser.maxNode&&this.buffer.push(t,i,r,4)}apply(e,t,i,r){e&65536?this.reduce(e):this.shift(e,t,i,r)}useNode(e,t){let i=this.p.reused.length-1;(i<0||this.p.reused[i]!=e)&&(this.p.reused.push(e),i++);let r=this.pos;this.reducePos=this.pos=r+e.length,this.pushState(t,r),this.buffer.push(i,r,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,t=e.buffer.length;for(t&&e.buffer[t-4]==0&&(t-=4);t>0&&e.buffer[t-2]>e.reducePos;)t-=4;let i=e.buffer.slice(t),r=e.bufferBase+t;for(;e&&r==e.bufferBase;)e=e.parent;return new ss(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,i,r,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let i=e<=this.p.parser.maxNode;i&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,i?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new DS(this);;){let i=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(i==0)return!1;if((i&65536)==0)return!0;t.reduce(i)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let r=[];for(let s=0,o;sa&1&&l==o)||r.push(t[s],o)}t=r}let i=[];for(let r=0;r>19,r=t&65535,s=this.stack.length-i*3;if(s<0||e.getGoto(this.stack[s],r,!1)<0){let o=this.findForcedReduction();if(o==null)return!1;t=o}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(t),!0}findForcedReduction(){let{parser:e}=this.p,t=[],i=(r,s)=>{if(!t.includes(r))return t.push(r),e.allActions(r,o=>{if(!(o&393216))if(o&65536){let l=(o>>19)-s;if(l>1){let a=o&65535,h=this.stack.length-l*3;if(h>=0&&e.getGoto(this.stack[h],a,!1)>=0)return l<<19|65536|a}}else{let l=i(o,s+1);if(l!=null)return l}})};return i(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let t=0;t0&&this.emitLookAhead()}}class Qc{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}class DS{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=e&65535,i=e>>19;i==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(i-1)*3;let r=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=r}}class os{constructor(e,t,i){this.stack=e,this.pos=t,this.index=i,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new os(e,t,t-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new os(this.stack,this.pos,this.index)}}function dn(n,e=Uint16Array){if(typeof n!="string")return n;let t=null;for(let i=0,r=0;i=92&&o--,o>=34&&o--;let a=o-32;if(a>=46&&(a-=46,l=!0),s+=a,l)break;s*=46}t?t[r++]=s:t=new e(s)}return t}class Wr{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const Sc=new Wr;class BS{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=Sc,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let i=this.range,r=this.rangeIndex,s=this.pos+e;for(;si.to:s>=i.to;){if(r==this.ranges.length-1)return null;let o=this.ranges[++r];s+=o.from-i.to,i=o}return s}clipPos(e){if(e>=this.range.from&&ee)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,i,r;if(t>=0&&t=this.chunk2Pos&&il.to&&(this.chunk2=this.chunk2.slice(0,l.to-i)),r=this.chunk2.charCodeAt(0)}}return i>=this.token.lookAhead&&(this.token.lookAhead=i+1),r}acceptToken(e,t=0){let i=t?this.resolveOffset(t,-1):this.pos;if(i==null||i=this.chunk2Pos&&this.posthis.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,t){if(t?(this.token=t,t.start=e,t.lookAhead=e+1,t.value=t.extended=-1):this.token=Sc,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.chunk2Pos&&t<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,t-this.chunk2Pos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let i="";for(let r of this.ranges){if(r.from>=t)break;r.to>e&&(i+=this.input.read(Math.max(r.from,e),Math.min(r.to,t)))}return i}}class Mi{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:i}=t.p;Iu(this.data,e,t,this.id,i.data,i.tokenPrecTable)}}Mi.prototype.contextual=Mi.prototype.fallback=Mi.prototype.extend=!1;class ls{constructor(e,t,i){this.precTable=t,this.elseToken=i,this.data=typeof e=="string"?dn(e):e}token(e,t){let i=e.pos,r=0;for(;;){let s=e.next<0,o=e.resolveOffset(1,1);if(Iu(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(s||r++,o==null)break;e.reset(o,e.token)}r&&(e.reset(i,e.token),e.acceptToken(this.elseToken,r))}}ls.prototype.contextual=Mi.prototype.fallback=Mi.prototype.extend=!1;class ye{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function Iu(n,e,t,i,r,s){let o=0,l=1<0){let d=n[u];if(a.allows(d)&&(e.token.value==-1||e.token.value==d||IS(d,e.token.value,r,s))){e.acceptToken(d);break}}let c=e.next,f=0,O=n[o+2];if(e.next<0&&O>f&&n[h+O*3-3]==65535){o=n[h+O*3-1];continue e}for(;f>1,d=h+u+(u<<1),m=n[d],g=n[d+1]||65536;if(c=g)f=u+1;else{o=n[d+2],e.advance();continue e}}break}}function bc(n,e,t){for(let i=e,r;(r=n[i])!=65535;i++)if(r==t)return i-e;return-1}function IS(n,e,t,i){let r=bc(t,i,e);return r<0||bc(t,i,n)e)&&!i.type.isError)return t<0?Math.max(0,Math.min(i.to-1,e-25)):Math.min(n.length,Math.max(i.from+1,e+25));if(t<0?i.prevSibling():i.nextSibling())break;if(!i.parent())return t<0?0:n.length}}let GS=class{constructor(e,t){this.fragments=e,this.nodeSet=t,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?yc(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?yc(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(ee)return this.nextStart=o,null;if(s instanceof V){if(o==e){if(o=Math.max(this.safeFrom,e)&&(this.trees.push(s),this.start.push(o),this.index.push(0))}else this.index[t]++,this.nextStart=o+s.length}}};class US{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(i=>new Wr)}getActions(e){let t=0,i=null,{parser:r}=e.p,{tokenizers:s}=r,o=r.stateSlot(e.state,3),l=e.curContext?e.curContext.hash:0,a=0;for(let h=0;hf.end+25&&(a=Math.max(f.lookAhead,a)),f.value!=0)){let O=t;if(f.extended>-1&&(t=this.addActions(e,f.extended,f.end,t)),t=this.addActions(e,f.value,f.end,t),!c.extend&&(i=f,t>O))break}}for(;this.actions.length>t;)this.actions.pop();return a&&e.setLookAhead(a),!i&&e.pos==this.stream.end&&(i=new Wr,i.value=e.p.parser.eofTerm,i.start=i.end=e.pos,t=this.addActions(e,i.value,i.end,t)),this.mainToken=i,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new Wr,{pos:i,p:r}=e;return t.start=i,t.end=Math.min(i+1,r.stream.end),t.value=i==r.stream.end?r.parser.eofTerm:0,t}updateCachedToken(e,t,i){let r=this.stream.clipPos(i.pos);if(t.token(this.stream.reset(r,e),i),e.value>-1){let{parser:s}=i.p;for(let o=0;o=0&&i.p.parser.dialect.allows(l>>1)){(l&1)==0?e.value=l>>1:e.extended=l>>1;break}}}else e.value=0,e.end=this.stream.clipPos(r+1)}putAction(e,t,i,r){for(let s=0;se.bufferLength*4?new GS(i,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,i=this.stacks=[],r,s;if(this.bigReductionCount>300&&e.length==1){let[o]=e;for(;o.forceReduce()&&o.stack.length&&o.stack[o.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let o=0;ot)i.push(l);else{if(this.advanceStack(l,i,e))continue;{r||(r=[],s=[]),r.push(l);let a=this.tokens.getMainToken(l);s.push(a.value,a.end)}}break}}if(!i.length){let o=r&&HS(r);if(o)return _e&&console.log("Finish with "+this.stackID(o)),this.stackToTree(o);if(this.parser.strict)throw _e&&r&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+t);this.recovering||(this.recovering=5)}if(this.recovering&&r){let o=this.stoppedAt!=null&&r[0].pos>this.stoppedAt?r[0]:this.runRecovery(r,s,i);if(o)return _e&&console.log("Force-finish "+this.stackID(o)),this.stackToTree(o.forceAll())}if(this.recovering){let o=this.recovering==1?1:this.recovering*3;if(i.length>o)for(i.sort((l,a)=>a.score-l.score);i.length>o;)i.pop();i.some(l=>l.reducePos>t)&&this.recovering--}else if(i.length>1){e:for(let o=0;o500&&h.buffer.length>500)if((l.score-h.score||l.buffer.length-h.buffer.length)>0)i.splice(a--,1);else{i.splice(o--,1);continue e}}}i.length>12&&(i.sort((o,l)=>l.score-o.score),i.splice(12,i.length-12))}this.minStackPos=i[0].pos;for(let o=1;o ":"";if(this.stoppedAt!=null&&r>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let h=e.curContext&&e.curContext.tracker.strict,c=h?e.curContext.hash:0;for(let f=this.fragments.nodeAt(r);f;){let O=this.parser.nodeSet.types[f.type.id]==f.type?s.getGoto(e.state,f.type.id):-1;if(O>-1&&f.length&&(!h||(f.prop(M.contextHash)||0)==c))return e.useNode(f,O),_e&&console.log(o+this.stackID(e)+` (via reuse of ${s.getName(f.type.id)})`),!0;if(!(f instanceof V)||f.children.length==0||f.positions[0]>0)break;let u=f.children[0];if(u instanceof V&&f.positions[0]==0)f=u;else break}}let l=s.stateSlot(e.state,4);if(l>0)return e.reduce(l),_e&&console.log(o+this.stackID(e)+` (via always-reduce ${s.getName(l&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let a=this.tokens.getActions(e);for(let h=0;hr?t.push(d):i.push(d)}return!1}advanceFully(e,t){let i=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>i)return kc(e,t),!0}}runRecovery(e,t,i){let r=null,s=!1;for(let o=0;o ":"";if(l.deadEnd&&(s||(s=!0,l.restart(),_e&&console.log(c+this.stackID(l)+" (restarted)"),this.advanceFully(l,i))))continue;let f=l.split(),O=c;for(let u=0;u<10&&f.forceReduce()&&(_e&&console.log(O+this.stackID(f)+" (via force-reduce)"),!this.advanceFully(f,i));u++)_e&&(O=this.stackID(f)+" -> ");for(let u of l.recoverByInsert(a))_e&&console.log(c+this.stackID(u)+" (via recover-insert)"),this.advanceFully(u,i);this.stream.end>l.pos?(h==l.pos&&(h++,a=0),l.recoverByDelete(a,h),_e&&console.log(c+this.stackID(l)+` (via recover-delete ${this.parser.getName(a)})`),kc(l,i)):(!r||r.scoren;class ga{constructor(e){this.start=e.start,this.shift=e.shift||fo,this.reduce=e.reduce||fo,this.reuse=e.reuse||fo,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class Ft extends Ts{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let t=e.nodeNames.split(" ");this.minRepeatTerm=t.length;for(let l=0;le.topRules[l][1]),r=[];for(let l=0;l=0)s(c,a,l[h++]);else{let f=l[h+-c];for(let O=-c;O>0;O--)s(l[h++],a,f);h++}}}this.nodeSet=new Ni(t.map((l,a)=>he.define({name:a>=this.minRepeatTerm?void 0:l,id:a,props:r[a],top:i.indexOf(a)>-1,error:a==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(a)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=pu;let o=dn(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let l=0;ltypeof l=="number"?new Mi(o,l):l),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,t,i){let r=new NS(this,e,t,i);for(let s of this.wrappers)r=s(r,e,t,i);return r}getGoto(e,t,i=!1){let r=this.goto;if(t>=r[0])return-1;for(let s=r[t+1];;){let o=r[s++],l=o&1,a=r[s++];if(l&&i)return a;for(let h=s+(o>>1);s0}validAction(e,t){return!!this.allActions(e,i=>i==t?!0:null)}allActions(e,t){let i=this.stateSlot(e,4),r=i?t(i):void 0;for(let s=this.stateSlot(e,1);r==null;s+=3){if(this.data[s]==65535)if(this.data[s+1]==1)s=vt(this.data,s+2);else break;r=t(vt(this.data,s+1))}return r}nextStates(e){let t=[];for(let i=this.stateSlot(e,1);;i+=3){if(this.data[i]==65535)if(this.data[i+1]==1)i=vt(this.data,i+2);else break;if((this.data[i+2]&1)==0){let r=this.data[i+1];t.some((s,o)=>o&1&&s==r)||t.push(this.data[i],r)}}return t}configure(e){let t=Object.assign(Object.create(Ft.prototype),this);if(e.props&&(t.nodeSet=this.nodeSet.extend(...e.props)),e.top){let i=this.topRules[e.top];if(!i)throw new RangeError(`Invalid top rule name ${e.top}`);t.top=i}return e.tokenizers&&(t.tokenizers=this.tokenizers.map(i=>{let r=e.tokenizers.find(s=>s.from==i);return r?r.to:i})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((i,r)=>{let s=e.specializers.find(l=>l.from==i.external);if(!s)return i;let o=Object.assign(Object.assign({},i),{external:s.to});return t.specializers[r]=xc(o),o})),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),e.bufferLength!=null&&(t.bufferLength=e.bufferLength),t}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let t=this.dynamicPrecedences;return t==null?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),i=t.map(()=>!1);if(e)for(let s of e.split(" ")){let o=t.indexOf(s);o>=0&&(i[o]=!0)}let r=null;for(let s=0;si)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.scoren.external(t,i)<<1|e}return n.get}const KS=135,wc=1,JS=136,e1=137,Gu=2,t1=138,i1=3,n1=4,Uu=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],r1=58,s1=40,Nu=95,o1=91,_r=45,l1=46,a1=35,h1=37,c1=38,f1=92,O1=10,u1=42;function zn(n){return n>=65&&n<=90||n>=97&&n<=122||n>=161}function Qa(n){return n>=48&&n<=57}function $c(n){return Qa(n)||n>=97&&n<=102||n>=65&&n<=70}const Fu=(n,e,t)=>(i,r)=>{for(let s=!1,o=0,l=0;;l++){let{next:a}=i;if(zn(a)||a==_r||a==Nu||s&&Qa(a))!s&&(a!=_r||l>0)&&(s=!0),o===l&&a==_r&&o++,i.advance();else if(a==f1&&i.peek(1)!=O1){if(i.advance(),$c(i.next)){do i.advance();while($c(i.next));i.next==32&&i.advance()}else i.next>-1&&i.advance();s=!0}else{s&&i.acceptToken(o==2&&r.canShift(Gu)?e:a==s1?t:n);break}}},d1=new ye(Fu(JS,Gu,e1),{contextual:!0}),p1=new ye(Fu(t1,i1,n1),{contextual:!0}),m1=new ye(n=>{if(Uu.includes(n.peek(-1))){let{next:e}=n;(zn(e)||e==Nu||e==a1||e==l1||e==u1||e==o1||e==r1&&zn(n.peek(1))||e==_r||e==c1)&&n.acceptToken(KS)}}),g1=new ye(n=>{if(!Uu.includes(n.peek(-1))){let{next:e}=n;if(e==h1&&(n.advance(),n.acceptToken(wc)),zn(e)){do n.advance();while(zn(n.next)||Qa(n.next));n.acceptToken(wc)}}}),Q1=Kt({"AtKeyword import charset namespace keyframes media supports font-feature-values":p.definitionKeyword,"from to selector scope MatchFlag":p.keyword,NamespaceName:p.namespace,KeyframeName:p.labelName,KeyframeRangeName:p.operatorKeyword,TagName:p.tagName,ClassName:p.className,PseudoClassName:p.constant(p.className),IdName:p.labelName,"FeatureName PropertyName":p.propertyName,AttributeName:p.attributeName,NumberLiteral:p.number,KeywordQuery:p.keyword,UnaryQueryOp:p.operatorKeyword,"CallTag ValueName FontName":p.atom,VariableName:p.variableName,Callee:p.operatorKeyword,Unit:p.unit,"UniversalSelector NestingSelector":p.definitionOperator,"MatchOp CompareOp":p.compareOperator,"ChildOp SiblingOp, LogicOp":p.logicOperator,BinOp:p.arithmeticOperator,Important:p.modifier,Comment:p.blockComment,ColorLiteral:p.color,"ParenthesizedContent StringLiteral":p.string,":":p.punctuation,"PseudoOp #":p.derefOperator,"; , |":p.separator,"( )":p.paren,"[ ]":p.squareBracket,"{ }":p.brace}),S1={__proto__:null,lang:44,"nth-child":44,"nth-last-child":44,"nth-of-type":44,"nth-last-of-type":44,dir:44,"host-context":44,if:90,url:132,"url-prefix":132,domain:132,regexp:132},b1={__proto__:null,or:104,and:104,not:112,only:112,layer:186},y1={__proto__:null,selector:118,layer:182},k1={__proto__:null,"@import":178,"@media":190,"@charset":194,"@namespace":198,"@keyframes":204,"@supports":216,"@scope":220,"@font-feature-values":226},x1={__proto__:null,to:223},w1=Ft.deserialize({version:14,states:"IpQYQdOOO#}QdOOP$UO`OOO%OQaO'#CfOOQP'#Ce'#CeO%VQdO'#CgO%[Q`O'#CgO%aQaO'#FdO&XQdO'#CkO&xQaO'#CcO'SQdO'#CnO'_QdO'#DtO'dQdO'#DvO'oQdO'#D}O'oQdO'#EQOOQP'#Fd'#FdO)OQhO'#EsOOQS'#Fc'#FcOOQS'#Ev'#EvQYQdOOO)VQdO'#EWO*cQhO'#E^O)VQdO'#E`O*jQdO'#EbO*uQdO'#EeO)zQhO'#EkO*}QdO'#EmO+YQdO'#EpO+_QaO'#CfO+fQ`O'#ETO+kQ`O'#FnO+vQdO'#FnQOQ`OOP,QO&jO'#CaPOOO)CAR)CAROOQP'#Ci'#CiOOQP,59R,59RO%VQdO,59ROOQP'#Cm'#CmOOQP,59V,59VO&XQdO,59VO,]QdO,59YO'_QdO,5:`O'dQdO,5:bO'oQdO,5:iO'oQdO,5:kO'oQdO,5:lO'oQdO'#E}O,hQ`O,58}O,pQdO'#ESOOQS,58},58}OOQP'#Cq'#CqOOQO'#Dr'#DrOOQP,59Y,59YO,wQ`O,59YO,|Q`O,59YOOQP'#Du'#DuOOQP,5:`,5:`O-RQpO'#DwO-^QdO'#DxO-cQ`O'#DxO-hQpO,5:bO.RQaO,5:iO.iQaO,5:lOOQW'#D^'#D^O/eQhO'#DgO/xQhO,5;_O)zQhO'#DeO0VQ`O'#DkO0[QhO'#DnOOQW'#Fj'#FjOOQS,5;_,5;_O0aQ`O'#DhOOQS-E8t-E8tOOQ['#Cv'#CvO0fQdO'#CwO0|QdO'#C}O1dQdO'#DQO1zQ!pO'#DSO4TQ!jO,5:rOOQO'#DX'#DXO,|Q`O'#DWO4eQ!nO'#FgO6hQ`O'#DYO6mQ`O'#DoOOQ['#Fg'#FgO6rQhO'#FqO7QQ`O,5:xO7VQ!bO,5:zOOQS'#Ed'#EdO7_Q`O,5:|O7dQdO,5:|OOQO'#Eg'#EgO7lQ`O,5;PO7qQhO,5;VO'oQdO'#DjOOQS,5;X,5;XO0aQ`O,5;XO7yQdO,5;XOOQS'#FU'#FUO8RQdO'#ErO7QQ`O,5;[O8ZQdO,5:oO8kQdO'#FPO8xQ`O,5QQhO'#DlOOQW,5:V,5:VOOQW,5:Y,5:YOOQW,5:S,5:SO>[Q!fO'#FhOOQS'#Fh'#FhOOQS'#Ex'#ExO?lQdO,59cOOQ[,59c,59cO@SQdO,59iOOQ[,59i,59iO@jQdO,59lOOQ[,59l,59lOOQ[,59n,59nO)VQdO,59pOAQQhO'#EYOOQW'#EY'#EYOAlQ`O1G0^O4^QhO1G0^OOQ[,59r,59rO)zQhO'#D[OOQ[,59t,59tOAqQ#tO,5:ZOA|QhO'#FROBZQ`O,5<]OOQS1G0d1G0dOOQS1G0f1G0fOOQS1G0h1G0hOBfQ`O1G0hOBkQdO'#EhOOQS1G0k1G0kOOQS1G0q1G0qOBvQaO,5:UO7QQ`O1G0sOOQS1G0s1G0sO0aQ`O1G0sOOQS-E9S-E9SOOQS1G0v1G0vOB}Q!fO1G0ZOCeQ`O'#EVOOQO1G0Z1G0ZOOQO,5;k,5;kOCjQdO,5;kOOQO-E8}-E8}OCwQ`O1G1tPOOO-E8s-E8sPOOO1G.g1G.gOOQP7+$`7+$`OOQP7+%h7+%hO)VQdO7+%hOOQS1G0Y1G0YODSQaO'#FmOD^Q`O,5:_ODcQ!fO'#EwOEaQdO'#FfOEkQ`O,59aOOQO1G0O1G0OOEpQ!bO7+%hO)VQdO1G/eOE{QhO1G/iOOQW1G/m1G/mOOQW1G/g1G/gOF^QhO,5;qOOQW-E9T-E9TOOQS7+&e7+&eOGRQhO'#D^OGaQhO'#FlOGlQ`O'#FlOGqQ`O,5:WOOQS-E8v-E8vOOQ[1G.}1G.}OOQ[1G/T1G/TOOQ[1G/W1G/WOOQ[1G/[1G/[OGvQdO,5:tOOQS7+%x7+%xOG{Q`O7+%xOHQQhO'#D]OHYQ`O,59vO)zQhO,59vOOQ[1G/u1G/uOHbQ`O1G/uOHgQhO,5;mOOQO-E9P-E9POOQS7+&S7+&SOHuQbO'#DSOOQO'#Ej'#EjOITQ`O'#EiOOQO'#Ei'#EiOI`Q`O'#FSOIhQdO,5;SOOQS,5;S,5;SOOQ[1G/p1G/pOOQS7+&_7+&_O7QQ`O7+&_OIsQ!fO'#FOO)VQdO'#FOOJzQdO7+%uOOQO7+%u7+%uOOQO,5:q,5:qOOQO1G1V1G1VOK_Q!bO<nAN>nO! bQ`OAN>nO! gQaO,5;hOOQO-E8z-E8zO! qQdO,5;gOOQO-E8y-E8yOOQW<ZO)VQdO1G1QO!#nQ`O7+'^OOQO,5;l,5;lOOQO-E9O-E9OOOQW<Q!]!^>|!^!_?_!_!`@Z!`!a@n!a!b%Z!b!cAo!c!k%Z!k!lC|!l!u%Z!u!vC|!v!}%Z!}#OD_#O#P%Z#P#QDp#Q#R2X#R#]%Z#]#^ER#^#g%Z#g#hC|#h#o%Z#o#pIf#p#qIw#q#rJ`#r#sJq#s#y%Z#y#z&R#z$f%Z$f$g&R$g#BY%Z#BY#BZ&R#BZ$IS%Z$IS$I_&R$I_$I|%Z$I|$JO&R$JO$JT%Z$JT$JU&R$JU$KV%Z$KV$KW&R$KW&FU%Z&FU&FV&R&FV;'S%Z;'S;=`KY<%lO%Z`%^SOy%jz;'S%j;'S;=`%{<%lO%j`%oS!e`Oy%jz;'S%j;'S;=`%{<%lO%j`&OP;=`<%l%j~&Wh$Q~OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%j~'yh$Q~!e`OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%jj)jS$dYOy%jz;'S%j;'S;=`%{<%lO%j~)yWOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d<%lO)v~*hOw~~*kRO;'S)v;'S;=`*t;=`O)v~*wXOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d;=`<%l)v<%lO)v~+gP;=`<%l)vj+oYmYOy%jz!Q%j!Q![,_![!c%j!c!i,_!i#T%j#T#Z,_#Z;'S%j;'S;=`%{<%lO%jj,dY!e`Oy%jz!Q%j!Q![-S![!c%j!c!i-S!i#T%j#T#Z-S#Z;'S%j;'S;=`%{<%lO%jj-XY!e`Oy%jz!Q%j!Q![-w![!c%j!c!i-w!i#T%j#T#Z-w#Z;'S%j;'S;=`%{<%lO%jj.OYuY!e`Oy%jz!Q%j!Q![.n![!c%j!c!i.n!i#T%j#T#Z.n#Z;'S%j;'S;=`%{<%lO%jj.uYuY!e`Oy%jz!Q%j!Q![/e![!c%j!c!i/e!i#T%j#T#Z/e#Z;'S%j;'S;=`%{<%lO%jj/jY!e`Oy%jz!Q%j!Q![0Y![!c%j!c!i0Y!i#T%j#T#Z0Y#Z;'S%j;'S;=`%{<%lO%jj0aYuY!e`Oy%jz!Q%j!Q![1P![!c%j!c!i1P!i#T%j#T#Z1P#Z;'S%j;'S;=`%{<%lO%jj1UY!e`Oy%jz!Q%j!Q![1t![!c%j!c!i1t!i#T%j#T#Z1t#Z;'S%j;'S;=`%{<%lO%jj1{SuY!e`Oy%jz;'S%j;'S;=`%{<%lO%jd2[UOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jd2uS!oS!e`Oy%jz;'S%j;'S;=`%{<%lO%jb3WS^QOy%jz;'S%j;'S;=`%{<%lO%j~3gWOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{<%lO3d~4SRO;'S3d;'S;=`4];=`O3d~4`XOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{;=`<%l3d<%lO3d~5OP;=`<%l3dj5WShYOy%jz;'S%j;'S;=`%{<%lO%j~5iOg~n5pUWQyWOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jj6ZWyW!uQOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj6xU!e`Oy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%jj7cY!e`$]YOy%jz!Q%j!Q![7[![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj8WY!e`Oy%jz{%j{|8v|}%j}!O8v!O!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj8{U!e`Oy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj9fU!e`$]YOy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj:P[!e`$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj:zS!aYOy%jz;'S%j;'S;=`%{<%lO%jj;]WyWOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj;zU`YOy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%j~VUcYOy%jz![%j![!]>i!];'S%j;'S;=`%{<%lO%jj>pSdY!e`Oy%jz;'S%j;'S;=`%{<%lO%jj?RSnYOy%jz;'S%j;'S;=`%{<%lO%jh?dU!WWOy%jz!_%j!_!`?v!`;'S%j;'S;=`%{<%lO%jh?}S!WW!e`Oy%jz;'S%j;'S;=`%{<%lO%jl@bS!WW!oSOy%jz;'S%j;'S;=`%{<%lO%jj@uV!rQ!WWOy%jz!_%j!_!`?v!`!aA[!a;'S%j;'S;=`%{<%lO%jbAcS!rQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjArYOy%jz}%j}!OBb!O!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjBgW!e`Oy%jz!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjCW[lY!e`Oy%jz}%j}!OCP!O!Q%j!Q![CP![!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jhDRS!pWOy%jz;'S%j;'S;=`%{<%lO%jjDdSpYOy%jz;'S%j;'S;=`%{<%lO%jnDuSo^Oy%jz;'S%j;'S;=`%{<%lO%jjEWU!pWOy%jz#a%j#a#bEj#b;'S%j;'S;=`%{<%lO%jbEoU!e`Oy%jz#d%j#d#eFR#e;'S%j;'S;=`%{<%lO%jbFWU!e`Oy%jz#c%j#c#dFj#d;'S%j;'S;=`%{<%lO%jbFoU!e`Oy%jz#f%j#f#gGR#g;'S%j;'S;=`%{<%lO%jbGWU!e`Oy%jz#h%j#h#iGj#i;'S%j;'S;=`%{<%lO%jbGoU!e`Oy%jz#T%j#T#UHR#U;'S%j;'S;=`%{<%lO%jbHWU!e`Oy%jz#b%j#b#cHj#c;'S%j;'S;=`%{<%lO%jbHoU!e`Oy%jz#h%j#h#iIR#i;'S%j;'S;=`%{<%lO%jbIYS$cQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjIkSsYOy%jz;'S%j;'S;=`%{<%lO%jfI|U$XUOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jjJeSrYOy%jz;'S%j;'S;=`%{<%lO%jfJvU!uQOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%j`K]P;=`<%l%Z",tokenizers:[m1,g1,d1,p1,1,2,3,4,new ls("m~RRYZ[z{a~~g~aO$T~~dP!P!Qg~lO$U~~",28,142)],topRules:{StyleSheet:[0,6],Styles:[1,116]},dynamicPrecedences:{84:1},specialized:[{term:137,get:n=>S1[n]||-1},{term:138,get:n=>b1[n]||-1},{term:4,get:n=>y1[n]||-1},{term:28,get:n=>k1[n]||-1},{term:136,get:n=>x1[n]||-1}],tokenPrec:2256});let Oo=null;function uo(){if(!Oo&&typeof document=="object"&&document.body){let{style:n}=document.body,e=[],t=new Set;for(let i in n)i!="cssText"&&i!="cssFloat"&&typeof n[i]=="string"&&(/[A-Z]/.test(i)&&(i=i.replace(/[A-Z]/g,r=>"-"+r.toLowerCase())),t.has(i)||(e.push(i),t.add(i)));Oo=e.sort().map(i=>({type:"property",label:i,apply:i+": "}))}return Oo||[]}const Pc=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(n=>({type:"class",label:n})),vc=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(n=>({type:"keyword",label:n})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(n=>({type:"constant",label:n}))),$1=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(n=>({type:"type",label:n})),P1=["@charset","@color-profile","@container","@counter-style","@font-face","@font-feature-values","@font-palette-values","@import","@keyframes","@layer","@media","@namespace","@page","@position-try","@property","@scope","@starting-style","@supports","@view-transition"].map(n=>({type:"keyword",label:n})),kt=/^(\w[\w-]*|-\w[\w-]*|)$/,v1=/^-(-[\w-]*)?$/;function T1(n,e){var t;if((n.name=="("||n.type.isError)&&(n=n.parent||n),n.name!="ArgList")return!1;let i=(t=n.parent)===null||t===void 0?void 0:t.firstChild;return i?.name!="Callee"?!1:e.sliceString(i.from,i.to)=="var"}const Tc=new fa,C1=["Declaration"];function X1(n){for(let e=n;;){if(e.type.isTop)return e;if(!(e=e.parent))return n}}function Hu(n,e,t){if(e.to-e.from>4096){let i=Tc.get(e);if(i)return i;let r=[],s=new Set,o=e.cursor(U.IncludeAnonymous);if(o.firstChild())do for(let l of Hu(n,o.node,t))s.has(l.label)||(s.add(l.label),r.push(l));while(o.nextSibling());return Tc.set(e,r),r}else{let i=[],r=new Set;return e.cursor().iterate(s=>{var o;if(t(s)&&s.matchContext(C1)&&((o=s.node.nextSibling)===null||o===void 0?void 0:o.name)==":"){let l=n.sliceString(s.from,s.to);r.has(l)||(r.add(l),i.push({label:l,type:"variable"}))}}),i}}const Z1=n=>e=>{let{state:t,pos:i}=e,r=F(t).resolveInner(i,-1),s=r.type.isError&&r.from==r.to-1&&t.doc.sliceString(r.from,r.to)=="-";if(r.name=="PropertyName"||(s||r.name=="TagName")&&/^(Block|Styles)$/.test(r.resolve(r.to).name))return{from:r.from,options:uo(),validFor:kt};if(r.name=="ValueName")return{from:r.from,options:vc,validFor:kt};if(r.name=="PseudoClassName")return{from:r.from,options:Pc,validFor:kt};if(n(r)||(e.explicit||s)&&T1(r,t.doc))return{from:n(r)||s?r.from:i,options:Hu(t.doc,X1(r),n),validFor:v1};if(r.name=="TagName"){for(let{parent:a}=r;a;a=a.parent)if(a.name=="Block")return{from:r.from,options:uo(),validFor:kt};return{from:r.from,options:$1,validFor:kt}}if(r.name=="AtKeyword")return{from:r.from,options:P1,validFor:kt};if(!e.explicit)return null;let o=r.resolve(i),l=o.childBefore(i);return l&&l.name==":"&&o.name=="PseudoClassSelector"?{from:i,options:Pc,validFor:kt}:l&&l.name==":"&&o.name=="Declaration"||o.name=="ArgList"?{from:i,options:vc,validFor:kt}:o.name=="Block"||o.name=="Styles"?{from:i,options:uo(),validFor:kt}:null},R1=Z1(n=>n.name=="VariableName"),as=Gt.define({name:"css",parser:w1.configure({props:[Jt.add({Declaration:qi()}),ei.add({"Block KeyframeList":Zs})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function A1(){return new Si(as,as.data.of({autocomplete:R1}))}const q1=55,M1=1,z1=56,W1=2,_1=57,E1=3,Cc=4,j1=5,Sa=6,Ku=7,Ju=8,ed=9,td=10,V1=11,L1=12,Y1=13,po=58,D1=14,B1=15,Xc=59,id=21,I1=23,nd=24,G1=25,vl=27,rd=28,U1=29,N1=32,F1=35,H1=37,K1=38,J1=0,eb=1,tb={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},ib={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},Zc={dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}};function nb(n){return n==45||n==46||n==58||n>=65&&n<=90||n==95||n>=97&&n<=122||n>=161}let Rc=null,Ac=null,qc=0;function Tl(n,e){let t=n.pos+e;if(qc==t&&Ac==n)return Rc;let i=n.peek(e),r="";for(;nb(i);)r+=String.fromCharCode(i),i=n.peek(++e);return Ac=n,qc=t,Rc=r?r.toLowerCase():i==rb||i==sb?void 0:null}const sd=60,hs=62,ba=47,rb=63,sb=33,ob=45;function Mc(n,e){this.name=n,this.parent=e}const lb=[Sa,td,Ku,Ju,ed],ab=new ga({start:null,shift(n,e,t,i){return lb.indexOf(e)>-1?new Mc(Tl(i,1)||"",n):n},reduce(n,e){return e==id&&n?n.parent:n},reuse(n,e,t,i){let r=e.type.id;return r==Sa||r==H1?new Mc(Tl(i,1)||"",n):n},strict:!1}),hb=new ye((n,e)=>{if(n.next!=sd){n.next<0&&e.context&&n.acceptToken(po);return}n.advance();let t=n.next==ba;t&&n.advance();let i=Tl(n,0);if(i===void 0)return;if(!i)return n.acceptToken(t?B1:D1);let r=e.context?e.context.name:null;if(t){if(i==r)return n.acceptToken(V1);if(r&&ib[r])return n.acceptToken(po,-2);if(e.dialectEnabled(J1))return n.acceptToken(L1);for(let s=e.context;s;s=s.parent)if(s.name==i)return;n.acceptToken(Y1)}else{if(i=="script")return n.acceptToken(Ku);if(i=="style")return n.acceptToken(Ju);if(i=="textarea")return n.acceptToken(ed);if(tb.hasOwnProperty(i))return n.acceptToken(td);r&&Zc[r]&&Zc[r][i]?n.acceptToken(po,-1):n.acceptToken(Sa)}},{contextual:!0}),cb=new ye(n=>{for(let e=0,t=0;;t++){if(n.next<0){t&&n.acceptToken(Xc);break}if(n.next==ob)e++;else if(n.next==hs&&e>=2){t>=3&&n.acceptToken(Xc,-2);break}else e=0;n.advance()}});function fb(n){for(;n;n=n.parent)if(n.name=="svg"||n.name=="math")return!0;return!1}const Ob=new ye((n,e)=>{if(n.next==ba&&n.peek(1)==hs){let t=e.dialectEnabled(eb)||fb(e.context);n.acceptToken(t?j1:Cc,2)}else n.next==hs&&n.acceptToken(Cc,1)});function ya(n,e,t){let i=2+n.length;return new ye(r=>{for(let s=0,o=0,l=0;;l++){if(r.next<0){l&&r.acceptToken(e);break}if(s==0&&r.next==sd||s==1&&r.next==ba||s>=2&&so?r.acceptToken(e,-o):r.acceptToken(t,-(o-2));break}else if((r.next==10||r.next==13)&&l){r.acceptToken(e,1);break}else s=o=0;r.advance()}})}const ub=ya("script",q1,M1),db=ya("style",z1,W1),pb=ya("textarea",_1,E1),mb=Kt({"Text RawText IncompleteTag IncompleteCloseTag":p.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":p.angleBracket,TagName:p.tagName,"MismatchedCloseTag/TagName":[p.tagName,p.invalid],AttributeName:p.attributeName,"AttributeValue UnquotedAttributeValue":p.attributeValue,Is:p.definitionOperator,"EntityReference CharacterReference":p.character,Comment:p.blockComment,ProcessingInst:p.processingInstruction,DoctypeDecl:p.documentMeta}),gb=Ft.deserialize({version:14,states:",xOVO!rOOO!ZQ#tO'#CrO!`Q#tO'#C{O!eQ#tO'#DOO!jQ#tO'#DRO!oQ#tO'#DTO!tOaO'#CqO#PObO'#CqO#[OdO'#CqO$kO!rO'#CqOOO`'#Cq'#CqO$rO$fO'#DUO$zQ#tO'#DWO%PQ#tO'#DXOOO`'#Dl'#DlOOO`'#DZ'#DZQVO!rOOO%UQ&rO,59^O%aQ&rO,59gO%lQ&rO,59jO%wQ&rO,59mO&SQ&rO,59oOOOa'#D_'#D_O&_OaO'#CyO&jOaO,59]OOOb'#D`'#D`O&rObO'#C|O&}ObO,59]OOOd'#Da'#DaO'VOdO'#DPO'bOdO,59]OOO`'#Db'#DbO'jO!rO,59]O'qQ#tO'#DSOOO`,59],59]OOOp'#Dc'#DcO'vO$fO,59pOOO`,59p,59pO(OQ#|O,59rO(TQ#|O,59sOOO`-E7X-E7XO(YQ&rO'#CtOOQW'#D['#D[O(hQ&rO1G.xOOOa1G.x1G.xOOO`1G/Z1G/ZO(sQ&rO1G/ROOOb1G/R1G/RO)OQ&rO1G/UOOOd1G/U1G/UO)ZQ&rO1G/XOOO`1G/X1G/XO)fQ&rO1G/ZOOOa-E7]-E7]O)qQ#tO'#CzOOO`1G.w1G.wOOOb-E7^-E7^O)vQ#tO'#C}OOOd-E7_-E7_O){Q#tO'#DQOOO`-E7`-E7`O*QQ#|O,59nOOOp-E7a-E7aOOO`1G/[1G/[OOO`1G/^1G/^OOO`1G/_1G/_O*VQ,UO,59`OOQW-E7Y-E7YOOOa7+$d7+$dOOO`7+$u7+$uOOOb7+$m7+$mOOOd7+$p7+$pOOO`7+$s7+$sO*bQ#|O,59fO*gQ#|O,59iO*lQ#|O,59lOOO`1G/Y1G/YO*qO7[O'#CwO+SOMhO'#CwOOQW1G.z1G.zOOO`1G/Q1G/QOOO`1G/T1G/TOOO`1G/W1G/WOOOO'#D]'#D]O+eO7[O,59cOOQW,59c,59cOOOO'#D^'#D^O+vOMhO,59cOOOO-E7Z-E7ZOOQW1G.}1G.}OOOO-E7[-E7[",stateData:",c~O!_OS~OUSOVPOWQOXROYTO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O|_O!eZO~OgaO~OgbO~OgcO~OgdO~OgeO~O!XfOPmP![mP~O!YiOQpP![pP~O!ZlORsP![sP~OUSOVPOWQOXROYTOZqO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O!eZO~O![rO~P#gO!]sO!fuO~OgvO~OgwO~OS|OT}OiyO~OS!POT}OiyO~OS!ROT}OiyO~OS!TOT}OiyO~OS}OT}OiyO~O!XfOPmX![mX~OP!WO![!XO~O!YiOQpX![pX~OQ!ZO![!XO~O!ZlORsX![sX~OR!]O![!XO~O![!XO~P#gOg!_O~O!]sO!f!aO~OS!bO~OS!cO~Oj!dOShXThXihX~OS!fOT!gOiyO~OS!hOT!gOiyO~OS!iOT!gOiyO~OS!jOT!gOiyO~OS!gOT!gOiyO~Og!kO~Og!lO~Og!mO~OS!nO~Ol!qO!a!oO!c!pO~OS!rO~OS!sO~OS!tO~Ob!uOc!uOd!uO!a!wO!b!uO~Ob!xOc!xOd!xO!c!wO!d!xO~Ob!uOc!uOd!uO!a!{O!b!uO~Ob!xOc!xOd!xO!c!{O!d!xO~OT~cbd!ey|!e~",goto:"%q!aPPPPPPPPPPPPPPPPPPPPP!b!hP!nPP!zP!}#Q#T#Z#^#a#g#j#m#s#y!bP!b!bP$P$V$m$s$y%P%V%]%cPPPPPPPP%iX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:"⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:68,context:ab,nodeProps:[["closedBy",-10,1,2,3,7,8,9,10,11,12,13,"EndTag",6,"EndTag SelfClosingEndTag",-4,22,31,34,37,"CloseTag"],["openedBy",4,"StartTag StartCloseTag",5,"StartTag",-4,30,33,36,38,"OpenTag"],["group",-10,14,15,18,19,20,21,40,41,42,43,"Entity",17,"Entity TextContent",-3,29,32,35,"TextContent Entity"],["isolate",-11,22,30,31,33,34,36,37,38,39,42,43,"ltr",-3,27,28,40,""]],propSources:[mb],skippedNodes:[0],repeatNodeCount:9,tokenData:"!]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zblWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOb!R!R7tP;=`<%l7S!Z8OYlWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{iiSlWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbiSlWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VP<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXiSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TalWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOc!R!RAwP;=`<%lAY!ZBRYlWc!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbiSlWc!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbiSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXiSc!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!cxaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYliSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_kiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_XaP!b`!dp!fQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZiSgQaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!b`!dpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!b`!dp!ePOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!b`!dpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!b`!dpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!b`!dpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!b`!dpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!b`!dpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!b`!dpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!b`!dpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!dpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO|PP!-nP;=`<%l!-Sq!-xS!dp|POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!b`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!b`|POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!b`!dp|POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!b`!dpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!b`!dpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!b`!dpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!b`!dpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!b`!dpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!b`!dpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!dpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOyPP!7TP;=`<%l!6Vq!7]V!dpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!dpyPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!b`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!b`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!b`yPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!b`!dpyPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!{let h=l.type.id;if(h==U1)return mo(l,a,t);if(h==N1)return mo(l,a,i);if(h==F1)return mo(l,a,r);if(h==id&&s.length){let c=l.node,f=c.firstChild,O=f&&zc(f,a),u;if(O){for(let d of s)if(d.tag==O&&(!d.attrs||d.attrs(u||(u=od(f,a))))){let m=c.lastChild,g=m.type.id==K1?m.from:c.to;if(g>f.to)return{parser:d.parser,overlay:[{from:f.to,to:g}]}}}}if(o&&h==nd){let c=l.node,f;if(f=c.firstChild){let O=o[a.read(f.from,f.to)];if(O)for(let u of O){if(u.tagName&&u.tagName!=zc(c.parent,a))continue;let d=c.lastChild;if(d.type.id==vl){let m=d.from+1,g=d.lastChild,Q=d.to-(g&&g.isError?0:1);if(Q>m)return{parser:u.parser,overlay:[{from:m,to:Q}],bracketed:!0}}else if(d.type.id==rd)return{parser:u.parser,overlay:[{from:d.from,to:d.to}]}}}}return null})}const Qb=316,Sb=317,Wc=1,bb=2,yb=3,kb=4,xb=318,wb=320,$b=321,Pb=5,vb=6,Tb=0,Cl=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],ad=125,Cb=59,Xl=47,Xb=42,Zb=43,Rb=45,Ab=60,qb=44,Mb=63,zb=46,Wb=91,_b=new ga({start:!1,shift(n,e){return e==Pb||e==vb||e==wb?n:e==$b},strict:!1}),Eb=new ye((n,e)=>{let{next:t}=n;(t==ad||t==-1||e.context)&&n.acceptToken(xb)},{contextual:!0,fallback:!0}),jb=new ye((n,e)=>{let{next:t}=n,i;Cl.indexOf(t)>-1||t==Xl&&((i=n.peek(1))==Xl||i==Xb)||t!=ad&&t!=Cb&&t!=-1&&!e.context&&n.acceptToken(Qb)},{contextual:!0}),Vb=new ye((n,e)=>{n.next==Wb&&!e.context&&n.acceptToken(Sb)},{contextual:!0}),Lb=new ye((n,e)=>{let{next:t}=n;if(t==Zb||t==Rb){if(n.advance(),t==n.next){n.advance();let i=!e.context&&e.canShift(Wc);n.acceptToken(i?Wc:bb)}}else t==Mb&&n.peek(1)==zb&&(n.advance(),n.advance(),(n.next<48||n.next>57)&&n.acceptToken(yb))},{contextual:!0});function go(n,e){return n>=65&&n<=90||n>=97&&n<=122||n==95||n>=192||!e&&n>=48&&n<=57}const Yb=new ye((n,e)=>{if(n.next!=Ab||!e.dialectEnabled(Tb)||(n.advance(),n.next==Xl))return;let t=0;for(;Cl.indexOf(n.next)>-1;)n.advance(),t++;if(go(n.next,!0)){for(n.advance(),t++;go(n.next,!1);)n.advance(),t++;for(;Cl.indexOf(n.next)>-1;)n.advance(),t++;if(n.next==qb)return;for(let i=0;;i++){if(i==7){if(!go(n.next,!0))return;break}if(n.next!="extends".charCodeAt(i))break;n.advance(),t++}}n.acceptToken(kb,-t)}),Db=Kt({"get set async static":p.modifier,"for while do if else switch try catch finally return throw break continue default case defer":p.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":p.operatorKeyword,"let var const using function class extends":p.definitionKeyword,"import export from":p.moduleKeyword,"with debugger new":p.keyword,TemplateString:p.special(p.string),super:p.atom,BooleanLiteral:p.bool,this:p.self,null:p.null,Star:p.modifier,VariableName:p.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":p.function(p.variableName),VariableDefinition:p.definition(p.variableName),Label:p.labelName,PropertyName:p.propertyName,PrivatePropertyName:p.special(p.propertyName),"CallExpression/MemberExpression/PropertyName":p.function(p.propertyName),"FunctionDeclaration/VariableDefinition":p.function(p.definition(p.variableName)),"ClassDeclaration/VariableDefinition":p.definition(p.className),"NewExpression/VariableName":p.className,PropertyDefinition:p.definition(p.propertyName),PrivatePropertyDefinition:p.definition(p.special(p.propertyName)),UpdateOp:p.updateOperator,"LineComment Hashbang":p.lineComment,BlockComment:p.blockComment,Number:p.number,String:p.string,Escape:p.escape,ArithOp:p.arithmeticOperator,LogicOp:p.logicOperator,BitOp:p.bitwiseOperator,CompareOp:p.compareOperator,RegExp:p.regexp,Equals:p.definitionOperator,Arrow:p.function(p.punctuation),": Spread":p.punctuation,"( )":p.paren,"[ ]":p.squareBracket,"{ }":p.brace,"InterpolationStart InterpolationEnd":p.special(p.brace),".":p.derefOperator,", ;":p.separator,"@":p.meta,TypeName:p.typeName,TypeDefinition:p.definition(p.typeName),"type enum interface implements namespace module declare":p.definitionKeyword,"abstract global Privacy readonly override":p.modifier,"is keyof unique infer asserts":p.operatorKeyword,JSXAttributeValue:p.attributeValue,JSXText:p.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":p.angleBracket,"JSXIdentifier JSXNameSpacedName":p.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":p.attributeName,"JSXBuiltin/JSXIdentifier":p.standard(p.tagName)}),Bb={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,in:52,out:55,const:56,extends:60,this:64,true:72,false:72,null:84,void:88,typeof:92,super:108,new:142,delete:154,yield:163,await:167,class:172,public:235,private:235,protected:235,readonly:237,instanceof:256,satisfies:259,import:292,keyof:349,unique:353,infer:359,asserts:395,is:397,abstract:417,implements:419,type:421,let:424,var:426,using:429,interface:435,enum:439,namespace:445,module:447,declare:451,global:455,defer:471,for:476,of:485,while:488,with:492,do:496,if:500,else:502,switch:506,case:512,try:518,catch:522,finally:526,return:530,throw:534,break:538,continue:542,debugger:546},Ib={__proto__:null,async:129,get:131,set:133,declare:195,public:197,private:197,protected:197,static:199,abstract:201,override:203,readonly:209,accessor:211,new:401},Gb={__proto__:null,"<":193},Ub=Ft.deserialize({version:14,states:"$F|Q%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#DaO.QQlO'#DgO.bQlO'#DrO%[QlO'#DzO0fQlO'#ESOOQ!0Lf'#E['#E[O1PQ`O'#EXOOQO'#Ep'#EpOOQO'#Il'#IlO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JrO6[Q!0MxO'#JsO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO9XQMhO'#F|O9`Q`O'#F{OOQ!0Lf'#Js'#JsOOQ!0Lb'#Jr'#JrO9eQ`O'#GwOOQ['#K_'#K_O9pQ`O'#IYO9uQ!0LrO'#IZOOQ['#J`'#J`OOQ['#I_'#I_Q`QlOOQ`QlOOO9}Q!L^O'#DvO:UQlO'#EOO:]QlO'#EQO9kQ`O'#GsO:dQMhO'#CoO:rQ`O'#EnO:}Q`O'#EyO;hQMhO'#FeO;xQ`O'#GsOOQO'#K`'#K`O;}Q`O'#K`O<]Q`O'#G{O<]Q`O'#G|O<]Q`O'#HOO9kQ`O'#HRO=SQ`O'#HUO>kQ`O'#CeO>{Q`O'#HcO?TQ`O'#HiO?TQ`O'#HkO`QlO'#HmO?TQ`O'#HoO?TQ`O'#HrO?YQ`O'#HxO?_Q!0LsO'#IOO%[QlO'#IQO?jQ!0LsO'#ISO?uQ!0LsO'#IUO9uQ!0LrO'#IWO@QQ!0MxO'#CiOASQpO'#DlQOQ`OOO%[QlO'#EQOAjQ`O'#ETO:dQMhO'#EnOAuQ`O'#EnOBQQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Jv'#JvO%[QlO'#JvOOQO'#Jy'#JyOOQO'#Ih'#IhOCQQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J}'#J}OC|Q!0MSO'#EgODWQpO'#EWOOQO'#Jx'#JxODlQpO'#JyOEyQpO'#EWODWQpO'#EgPFWO&2DjO'#CbPOOO)CD})CD}OOOO'#I`'#I`OFcO#tO,59UOOQ!0Lh,59U,59UOOOO'#Ia'#IaOFqO&jO,59UOGPQ!L^O'#DcOOOO'#Ic'#IcOGWO#@ItO,59{OOQ!0Lf,59{,59{OGfQlO'#IdOGyQ`O'#JtOIxQ!fO'#JtO+}QlO'#JtOJPQ`O,5:ROJgQ`O'#EpOJtQ`O'#KTOKPQ`O'#KSOKPQ`O'#KSOKXQ`O,5;^OK^Q`O'#KROOQ!0Ln,5:^,5:^OKeQlO,5:^OMcQ!0MxO,5:fONSQ`O,5:nONmQ!0LrO'#KQONtQ`O'#KPO9eQ`O'#KPO! YQ`O'#KPO! bQ`O,5;]O! gQ`O'#KPO!#lQ!fO'#JsOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$[Q!fO,5:sOOQS'#Jz'#JzOOQO-EtOOQ['#Jh'#JhOOQ[,5>u,5>uOOQ[-E<]-E<]O!TO`QlO,5>VO!LOQ`O,5>XO`QlO,5>ZO!LTQ`O,5>^O!LYQlO,5>dOOQ[,5>j,5>jO%[QlO,5>jO9uQ!0LrO,5>lOOQ[,5>n,5>nO#!dQ`O,5>nOOQ[,5>p,5>pO#!dQ`O,5>pOOQ[,5>r,5>rO##QQpO'#D_O%[QlO'#JvO##sQpO'#JvO##}QpO'#DmO#$`QpO'#DmO#&qQlO'#DmO#&xQ`O'#JuO#'QQ`O,5:WO#'VQ`O'#EtO#'eQ`O'#KUO#'mQ`O,5;_O#'rQpO'#DmO#(PQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#(WQ`O,5:oO?YQ`O,5;YO!CUQpO,5;YO!C^QMhO,5;YO:dQMhO,5;YO#(`Q`O,5@bO#(eQ07dO,5:sOOQO-EPO$6^Q`O,5>POOQ[1G3i1G3iO`QlO1G3iOOQ[1G3o1G3oOOQ[1G3q1G3qO?TQ`O1G3sO$6cQlO1G3uO$:gQlO'#HtOOQ[1G3x1G3xO$:tQ`O'#HzO?YQ`O'#H|OOQ[1G4O1G4OO$:|QlO1G4OO9uQ!0LrO1G4UOOQ[1G4W1G4WOOQ!0Lb'#G_'#G_O9uQ!0LrO1G4YO9uQ!0LrO1G4[O$?TQ`O,5@bO!)[QlO,5;`O9eQ`O,5;`O?YQ`O,5:XO!)[QlO,5:XO!CUQpO,5:XO$?YQ?MtO,5:XOOQO,5;`,5;`O$?dQpO'#IeO$?zQ`O,5@aOOQ!0Lf1G/r1G/rO$@SQpO'#IkO$@^Q`O,5@pOOQ!0Lb1G0y1G0yO#$`QpO,5:XOOQO'#Ig'#IgO$@fQpO,5:qOOQ!0Ln,5:q,5:qO#(ZQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO?YQ`O1G0tO!CUQpO1G0tO!C^QMhO1G0tOOQ!0Lb1G5|1G5|O!ByQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$@mQ!0LrO1G0mO$@xQ!0LrO1G0mO!CUQpO1G0^ODWQpO1G0^O$AWQ!0LrO1G0mOOQO1G0^1G0^O$AlQ!0MxO1G0mPOOO-E<[-E<[POOO1G.h1G.hOOOO1G/i1G/iO$AvQ!bO,5QQpO,5@}OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@zQ`O7+$VO9uQ!0LrO7+$VO%>]Q`O7+$VO%[QlO1G6lO%[QlO1G6mO%>bQ!0LrO1G6lO%>lQlO1G3kO%>sQ`O1G3kO%>xQlO1G3kOOQ[7+)T7+)TO9uQ!0LrO7+)_O`QlO7+)aOOQ['#Kh'#KhOOQ['#JS'#JSO%?PQlO,5>`OOQ[,5>`,5>`O%[QlO'#HuO%?^Q`O'#HwOOQ[,5>f,5>fO9eQ`O,5>fOOQ[,5>h,5>hOOQ[7+)j7+)jOOQ[7+)p7+)pOOQ[7+)t7+)tOOQ[7+)v7+)vO%?cQpO1G5|O%?}Q?MtO1G0zO%@XQ`O1G0zOOQO1G/s1G/sO%@dQ?MtO1G/sO?YQ`O1G/sO!)[QlO'#DmOOQO,5?P,5?POOQO-ERQ`O7+,WO&>WQ`O7+,XO%[QlO7+,WO%[QlO7+,XOOQ[7+)V7+)VO&>]Q`O7+)VO&>bQlO7+)VO&>iQ`O7+)VOOQ[<nQ`O,5>aOOQ[,5>c,5>cO&>sQ`O1G4QO9eQ`O7+&fO!)[QlO7+&fOOQO7+%_7+%_O&>xQ?MtO1G6ZO?YQ`O7+%_OOQ!0Lf<yQ?MvO,5?aO'@|Q?MvO,5?cO'CPQ?MvO7+'|O'DuQMjOG27TOOQO<VO!l$xO#jROe!iOpkOrPO(T)]O(VTO(YUO(aVO(o[O~O!]$_Oa$qa'z$qa'w$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)dO~P!&zOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Og(pP~P!,TO!Q)iO!g)hO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)hO!_({X$Z({X$]({X$_({X$f({X~O!Q)iO~P!.^O!Q)iO!_({X$Z({X$]({X$_({X$f({X~O!_)kO$Z)oO$])jO$_)jO$f)pO~O![)sO~P!)[O$]$hO$_$gO$f)wO~On$zX!Q$zX#S$zX'y$zX(y$zX(z$zX~OgmXg$zXnmX!]mX#`mX~P!0SOx)yO(b)zO(c)|O~On*VO!Q*OO'y*PO(y$}O(z%PO~Og)}O~P!1WOg*WO~Oh%VOr%XOs$tOt$tOz%YO|%ZO!OVO!l$xO#jVO!l$xO#jROe!iOpkOrPO(VTO(YUO(aVO(o[O~O(T=QO~P#$qO!]-]O!^(iX~O!^-_O~O!g-VO#`-UO!]#hX!^#hX~O!]-`O!^(xX~O!^-bO~O!c-cO!d-cO(U!lO~P#$`O!^-fO~P'_On-iO!_'`O~O!Y-nO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(U!{a(V!{a(Y!{a(e!{a(o!{a~P!#vO!p-sO#`-qO~PChO!c-uO!d-uO(U!lO~PDWOa%nO#`-qO'z%nO~Oa%nO!g#vO#`-qO'z%nO~Oa%nO!g#vO!p-sO#`-qO'z%nO(r'pO~O(P'xO(Q'xO(R-zO~Ov-{O~O!Y'Wa!]'Wa~P!:tO![.PO!Y'WX!]'WX~P%[O!](VO!Y(ha~O!Y(ha~PHRO!](^O!Y(va~O!S%hO![.TO!_%iO(T%gO!Y'^X!]'^X~O#`.VO!](ta!k(taa(ta'z(ta~O!g#vO~P#,wO!](jO!k(sa~O!S%hO!_%iO#j.ZO(T%gO~Op.`O!S%hO![.]O!_%iO!|]O#i._O#j.]O(T%gO!]'aX!k'aX~OR.dO!l#xO~Oh%VOn.gO!_'`O%i.fO~Oa#ci!]#ci'z#ci'w#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:tOn>]O!Q*OO'y*PO(y$}O(z%PO~O#k#_aa#_a#`#_a'z#_a!]#_a!k#_a!_#_a!Y#_a~P#/sO#k(`XP(`XR(`X[(`Xa(`Xj(`Xr(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X'z(`X(a(`X(r(`X!k(`X!Y(`X'w(`Xv(`X!_(`X%i(`X!g(`X~P!6kO!].tO!k(kX~P!:tO!k.wO~O!Y.yO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mia#mij#mir#mi!]#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#3cO#n$OO~P#3cOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#6QO#r$QO~P#6QOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO(aVOa#mi!]#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO(aVO(z#}Oa#mi!]#mi#z#mi#{#mi'z#mi(r#mi(y#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#;VO#x#mi~P#;VO#v$SO~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO(aVO(y#|O(z#}Oa#mi!]#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#={O#z$WO~P#={OP]XR]X[]Xj]Xr]X!Q]X!S]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X!]]X!^]X~O$O]X~P#@jOP$[OR#zO[]O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P#EyO!]/POg(pX~P!1WOg/RO~Oa$Pi!]$Pi'z$Pi'w$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:tO$]/SO$_/SO~O$]/TO$_/TO~O!g)hO#`/UO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/VO~O!_)kO$Z/XO$])jO$_)jO$f/YO~O!]VO!l$xO#j^O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P&,QO#S$dOP(`XR(`X[(`Xj(`Xn(`Xr(`X!Q(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X$O(`X'y(`X(a(`X(r(`X(y(`X(z(`X!](`X!^(`X~O$O$Pi!]$Pi!^$Pi~P#BwO$O!ri!^!ri~P$+oOg']a!]']a~P!1WO!^7nO~O!]'da!^'da~P#BwO!Y7oO~P#/sO!g#vO(r'pO!]'ea!k'ea~O!]/pO!k)Oi~O!]/pO!g#vO!k)Oi~Og$|q!]$|q#`$|q$O$|q~P!1WO!Y'ga!]'ga~P#/sO!g7vO~O!]/yO!Y)Pi~P#/sO!]/yO!Y)Pi~O!Y7yO~Oh%VOr8OO!l%eO(r'pO~Oj8QO!g#vO~Or8TO!g#vO(r'pO~O!Q*OO'y*PO(z%POn'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P&5RO!Q*OO'y*POn'la(y'la(z'la!]'la#`'la~Og'la$O'la~P&5tOg(_q!](_q~P!1WO#`8VOg(_q!](_q~P!1WO!Y8WO~Og%Oq!]%Oq#`%Oq$O%Oq~P!1WOa$oy!]$oy'z$oy'w$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:tO!g6rO~O!]5[O!_)Qa~O!_'`OP$TaR$Ta[$Taj$Tar$Ta!Q$Ta!S$Ta!]$Ta!l$Ta!p$Ta#R$Ta#n$Ta#o$Ta#p$Ta#q$Ta#r$Ta#s$Ta#t$Ta#u$Ta#v$Ta#x$Ta#z$Ta#{$Ta(a$Ta(r$Ta(y$Ta(z$Ta~O%i7WO~P&8fO%^8[Oa%[i!_%[i'z%[i!]%[i~Oa#cy!]#cy'z#cy'w#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:tO[8^O~Ob8`O(T+qO(VTO(YUO~O!]1TO!^)Xi~O`8dO~O(e(|O!]'pX!^'pX~O!]5uO!^)Ua~O!^8nO~P%;eO(o!sO~P$&YO#[8oO~O!_1oO~O!_1oO%i8qO~On8tO!_1oO%i8qO~O[8yO!]'sa!^'sa~O!]1zO!^)Vi~O!k8}O~O!k9OO~O!k9RO~O!k9RO~P%[Oa9TO~O!g9UO~O!k9VO~O!](wi!^(wi~P#BwOa%nO#`9_O'z%nO~O!](ty!k(tya(ty'z(ty~P!:tO!](jO!k(sy~O%i9bO~P&8fO!_'`O%i9bO~O#k$|qP$|qR$|q[$|qa$|qj$|qr$|q!S$|q!]$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q'z$|q(a$|q(r$|q!k$|q!Y$|q'w$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/sO#k'jaP'jaR'ja['jaa'jaj'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja'z'ja(a'ja(r'ja!k'ja!Y'ja'w'jav'ja!_'ja%i'ja!g'ja~P&5RO#k'laP'laR'la['laa'laj'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la'z'la(a'la(r'la!k'la!Y'la'w'lav'la!_'la%i'la!g'la~P&5tO#k%OqP%OqR%Oq[%Oqa%Oqj%Oqr%Oq!S%Oq!]%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq'z%Oq(a%Oq(r%Oq!k%Oq!Y%Oq'w%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/sO!]'Yi!k'Yi~P!:tO$O#cq!]#cq!^#cq~P#BwO(y$}OP%aaR%aa[%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa$O%aa(a%aa(r%aa!]%aa!^%aa~On%aa!Q%aa'y%aa(z%aa~P&IyO(z%POP%caR%ca[%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca$O%ca(a%ca(r%ca!]%ca!^%ca~On%ca!Q%ca'y%ca(y%ca~P&LQOn>^O!Q*OO'y*PO(z%PO~P&IyOn>^O!Q*OO'y*PO(y$}O~P&LQOR0kO!Q0kO!S0lO#S$dOP}a[}aj}an}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a$O}a'y}a(a}a(r}a(y}a(z}a!]}a!^}a~O!Q*OO'y*POP$saR$sa[$saj$san$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa$O$sa(a$sa(r$sa(y$sa(z$sa!]$sa!^$sa~O!Q*OO'y*POP$uaR$ua[$uaj$uan$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua$O$ua(a$ua(r$ua(y$ua(z$ua!]$ua!^$ua~On>^O!Q*OO'y*PO(y$}O(z%PO~OP%TaR%Ta[%Taj%Tar%Ta!S%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta$O%Ta(a%Ta(r%Ta!]%Ta!^%Ta~P''VO$O$mq!]$mq!^$mq~P#BwO$O$oq!]$oq!^$oq~P#BwO!^9oO~O$O9pO~P!1WO!g#vO!]'ei!k'ei~O!g#vO(r'pO!]'ei!k'ei~O!]/pO!k)Oq~O!Y'gi!]'gi~P#/sO!]/yO!Y)Pq~Or9wO!g#vO(r'pO~O[9yO!Y9xO~P#/sO!Y9xO~Oj:PO!g#vO~Og(_y!](_y~P!1WO!]'na!_'na~P#/sOa%[q!_%[q'z%[q!]%[q~P#/sO[:UO~O!]1TO!^)Xq~O`:YO~O#`:ZO!]'pa!^'pa~O!]5uO!^)Ui~P#BwO!S:]O~O!_1oO%i:`O~O(VTO(YUO(e:eO~O!]1zO!^)Vq~O!k:hO~O!k:iO~O!k:jO~O!k:jO~P%[O#`:mO!]#hy!^#hy~O!]#hy!^#hy~P#BwO%i:rO~P&8fO!_'`O%i:rO~O$O#|y!]#|y!^#|y~P#BwOP$|iR$|i[$|ij$|ir$|i!S$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i$O$|i(a$|i(r$|i!]$|i!^$|i~P''VO!Q*OO'y*PO(z%POP'iaR'ia['iaj'ian'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia$O'ia(a'ia(r'ia(y'ia!]'ia!^'ia~O!Q*OO'y*POP'kaR'ka['kaj'kan'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka$O'ka(a'ka(r'ka(y'ka(z'ka!]'ka!^'ka~O(y$}OP%aiR%ai[%aij%ain%air%ai!Q%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai$O%ai'y%ai(a%ai(r%ai(z%ai!]%ai!^%ai~O(z%POP%ciR%ci[%cij%cin%cir%ci!Q%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci$O%ci'y%ci(a%ci(r%ci(y%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#BwO$O#cy!]#cy!^#cy~P#BwO!g#vO!]'eq!k'eq~O!]/pO!k)Oy~O!Y'gq!]'gq~P#/sOr:|O!g#vO(r'pO~O[;QO!Y;PO~P#/sO!Y;PO~Og(_!R!](_!R~P!1WOa%[y!_%[y'z%[y!]%[y~P#/sO!]1TO!^)Xy~O!]5uO!^)Uq~O(T;XO~O!_1oO%i;[O~O!k;_O~O%i;dO~P&8fOP$|qR$|q[$|qj$|qr$|q!S$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q$O$|q(a$|q(r$|q!]$|q!^$|q~P''VO!Q*OO'y*PO(z%POP'jaR'ja['jaj'jan'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja$O'ja(a'ja(r'ja(y'ja!]'ja!^'ja~O!Q*OO'y*POP'laR'la['laj'lan'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la$O'la(a'la(r'la(y'la(z'la!]'la!^'la~OP%OqR%Oq[%Oqj%Oqr%Oq!S%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq$O%Oq(a%Oq(r%Oq!]%Oq!^%Oq~P''VOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!1WO!Y;hO~P#/sOr;iO!g#vO(r'pO~O[;kO!Y;hO~P#/sO!]'pq!^'pq~P#BwO!]#h!Z!^#h!Z~P#BwO#k%e!ZP%e!ZR%e!Z[%e!Za%e!Zj%e!Zr%e!Z!S%e!Z!]%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z'z%e!Z(a%e!Z(r%e!Z!k%e!Z!Y%e!Z'w%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/sOr;tO!g#vO(r'pO~O!Y;uO~P#/sOr;|O!g#vO(r'pO~O!Y;}O~P#/sOP%e!ZR%e!Z[%e!Zj%e!Zr%e!Z!S%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z$O%e!Z(a%e!Z(r%e!Z!]%e!Z!^%e!Z~P''VOrROe!iOpkOrPO(T)]O(VTO(YUO(aVO(o[O~O!]WO!l$xO#jgPPP!>oI[PPPPPPPPP!BOP!C]PPI[!DnPI[PI[I[I[I[I[PI[!FQP!I[P!LbP!Lf!Lp!Lt!LtP!IXP!Lx!LxP#!OP#!SI[PI[#!Y#%_CjA^PA^PA^A^P#&lA^A^#)OA^#+vA^#.SA^A^#.r#1W#1W#1]#1f#1W#1qPP#1WPA^#2ZA^#6YA^A^6mPPP#:_PPP#:x#:xP#:xP#;`#:xPP#;fP#;]P#;]#;y#;]#P#>V#>]#>k#>q#>{#?R#?]#?c#?s#?y#@k#@}#AT#AZ#Ai#BO#Cs#DR#DY#Et#FS#Gt#HS#HY#H`#Hf#Hp#Hv#H|#IW#Ij#IpPPPPPPPPPPP#IvPPPPPPP#Jk#Mx$ b$ i$ qPPP$']P$'f$*_$0x$0{$1O$1}$2Q$2X$2aP$2g$2jP$3W$3[$4S$5b$5g$5}PP$6S$6Y$6^$6a$6e$6i$7e$7|$8e$8i$8l$8o$8y$8|$9Q$9UR!|RoqOXst!Z#d%m&r&t&u&w,s,x2[2_Y!vQ'`-e1o5{Q%tvQ%|yQ&T|Q&j!VS'W!e-]Q'f!iS'l!r!yU*k$|*Z*oQ+o%}S+|&V&WQ,d&dQ-c'_Q-m'gQ-u'mQ0[*qQ1b,OQ1y,eR<{SU+P%]S!S!nQ!r!v!y!z$|'W'_'`'l'm'n*k*o*q*r-]-c-e-u0[0_1o5{5}%[$ti#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;kP>X>Y>]>^Q&X|Q'U!eS'[%i-`Q+t&PQ,P&WQ,f&gQ0n+SQ1Y+uQ1_+{Q2Q,jQ2R,kQ5f1TQ5o1aQ6[1zQ6_1|Q6`2PQ8`5gQ8c5lQ8|6bQ:X8dQ:f8yQ;V:YR<}*ZrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R,h&k&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'b'r(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:mR>S[#]WZ#W#Z'X(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ%wxQ%{yW&Q|&V&W,OQ&_!TQ'c!hQ'e!iQ(q#sS+n%|%}Q+r&PQ,_&bQ,c&dS-l'f'gQ.i(rQ1R+oQ1X+uQ1Z+vQ1^+zQ1t,`S1x,d,eQ2|-mQ5e1TQ5i1WQ5n1`Q6Z1yQ8_5gQ8b5kQ8f5pQ:T8^R;T:U!U$zi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y!^%yy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{Q+h%wQ,T&[Q,W&]Q,b&dQ.h(qQ1s,_U1w,c,d,eQ3e.iQ6U1tS6Y1x1yQ8x6Z#f>T#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k]>^o>UPS&[!Q&iQ&]!RQ&^!SU*}%[%d=sR,R&Y%]%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;kP>X>Y>]>^T)z$u){V+P%]S$i$^c#Y#e%q%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.|.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`SQ'Y!eR2q-]!W!nQ!e!r!v!y!z$|'W'_'`'l'm'n*Z*k*o*q*r-]-c-e-u0[0_1o5{5}R1l,ZnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&y!^Q'v!xS(s#u<^Q+l%zQ,]&_Q,^&aQ-j'dQ-w'oS.r(x=PS0q+X=ZQ1P+mQ1n,[Q2c,zQ2e,{Q2m-WQ2z-kQ2}-oS5Y0r=eQ5a1QS5d1S=fQ6t2oQ6x2{Q6}3SQ8]5bQ9Y6vQ9Z6yQ9^7OR:l9V$d$]c#Y#e%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`SS#q]SU$fd)_,mS(p#p'iU*v%R(w4OU0m+O.n7gQ5^0xQ7V3`Q9d7YR:s9em!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}Q't!uS(f#g2US-s'k'wQ/s*]Q0R*jQ3U-vQ4f/tQ4r0TQ4s0UQ4x0^Q7r4`S7}4t4vS8R4y4{Q9r7sQ9v7yQ9{8OQ:Q8TS:{9w9xS;g:|;PS;s;h;iS;{;t;uSSR=o>R%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Q%fj!^%xy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{S&Oz!jQ+k%yQ,a&dW1v,b,c,d,eU6X1w1x1yS8w6Y6ZQ:d8x!r=j$Z$n'X)s-U-X/V2p4T5w6s:Z:mSQ=t>QR=u>R%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Y#bWZ#W#Z(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ,n&o!p=k$Z$n)s-U-X/V2p4T5w6s:Z:mSR=n'XU']!e%i*ZR2s-`%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:mSQ,m&oQ0x+gQ3`.gQ7Y3dR9e7[!b$Tc#Y%q(S(Y(t(y)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:oS)^)q-Z.|2k2n3p4P4X6u7b7k7l8k9X9g9m9n;W;`=vQ>X>ZR>Y>['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:mSS$oh$pR4U/U'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:mST$kf$qQ$ifS)j$l)nR)v$qT$jf$qT)l$l)n'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:mST$oh$pQ$rhR)u$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_!s>Q$Z$n'X)s-U-X/V2p4T5w6s:Z:mS#glOPXZst!Z!`!o#S#d#o#{$n%m&k&n&o&r&t&u&w&{'T'b)O)s*i+]+g,p,s,x-i.g/V/n0]0l1r2S2T2V2X2[2_2a3d4T4z6T6e6f6i7[8t9T!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k]>^Q+T%aQ/c*Oo4OP>X>YQ*c$zU*l$|*Z*oQ+U%bQ0W*m#f=q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k]>^n=rTQ=x>UQ=y>VR=z>W!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k]>^o4OP>X>Y>]>^Q,U&]Q1h,WQ5s1gR8h5tV*n$|*Z*oU*n$|*Z*oT5z1o5{S0P*i/nQ4w0]T8S4z:]Q+j%xQ0V*lQ1O+kQ1u,aQ6W1vQ8v6XQ:c8wR;^:d!U%Oi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Yx*R$v)e*S*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>OS0`*t0a#f]>^nZ>[`=T3}7c7f7j9h:t:w;yS=_.l3iT=`7e9k!U%Qi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y|*T$v)e*U*t+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>OS0b*u0c#f]>^nZ>[d=V3}7d7e7j9h9i:t:u:w;yS=a.m3jT=b7f9lrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q&f!UR,p&ornOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R&f!UQ,Y&^R1d,RsnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q1p,_S6R1s1tU8p6P6Q6US:_8r8sS;Y:^:aQ;m;ZR;w;nQ&m!VR,i&iR6_1|R:f8yW&Q|&V&W,OR1Z+vQ&r!WR,s&sR,y&xT2],x2_R,}&yQ,|&yR2f,}Q'y!{R-y'ySsOtQ#dXT%ps#dQ#OTR'{#OQ#RUR'}#RQ){$uR/`){Q#UVR(Q#UQ#XWU(W#X(X.QQ(X#YR.Q(YQ-^'YR2r-^Q.u(yS3m.u3nR3n.vQ-e'`R2v-eY!rQ'`-e1o5{R'j!rQ/Q)eR4S/QU#_W%h*YU(_#_(`.RQ(`#`R.R(ZQ-a']R2t-at`OXst!V!Z#d%m&i&k&r&t&u&w,s,x2[2_S#hZ%eU#r`#h.[R.[(jQ(k#jQ.X(gW.a(k.X3X7RQ3X.YR7R3YQ)n$lR/W)nQ$phR)t$pQ$`cU)a$`-|O>Z>[Q/z*eU4k/z4m7xQ4m/|R7x4lS*o$|*ZR0Y*ox*S$v)e*t*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>O!d.j(u)c*[*e.l.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/h*S.j7ca7c3}7e7f7j9h:t:w;yQ0a*tQ3i.lU4}0a3i9kR9k7e|*U$v)e*t*u+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>O!h.k(u)c*[*e.l.m.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/j*U.k7de7d3}7e7f7j9h9i:t:u:w;yQ0c*uQ3j.mU5P0c3j9lR9l7fQ*z%UR0g*zQ5]0vR8Y5]Q+_%kR0u+_Q5v1jS8j5v:[R:[8kQ,[&_R1m,[Q5{1oR8m5{Q1{,fS6]1{8zR8z6_Q1U+rW5h1U5j8a:VQ5j1XQ8a5iR:V8bQ+w&QR1[+wQ2_,xR6m2_YrOXst#dQ&v!ZQ+a%mQ,r&rQ,t&tQ,u&uQ,w&wQ2Y,sS2],x2_R6l2[Q%opQ&z!_Q&}!aQ'P!bQ'R!cQ'q!uQ+`%lQ+l%zQ,Q&XQ,h&mQ-P&|W-p'k's't'wQ-w'oQ0X*nQ1P+mQ1c,PS2O,i,lQ2g-OQ2h-RQ2i-SQ2}-oW3P-r-s-v-xQ5a1QQ5m1_Q5q1eQ6V1uQ6a2QQ6k2ZU6z3O3R3UQ6}3SQ8]5bQ8e5oQ8g5rQ8l5zQ8u6WQ8{6`S9[6{7PQ9^7OQ:W8cQ:b8vQ:g8|Q:n9]Q;U:XQ;]:cQ;a:oQ;l;VR;o;^Q%zyQ'd!iQ'o!uU+m%{%|%}Q-W'VU-k'e'f'gS-o'k'uQ0Q*jS1Q+n+oQ2o-YS2{-l-mQ3S-tS4p0R0UQ5b1RQ6v2uQ6y2|Q7O3TU7{4r4s4vQ9z7}R;O9{S$wi>PR*{%VU%Ui%V>PR0f*yQ$viS(u#v+iS)c$b$cQ)e$dQ*[$xS*e${*YQ*t%OQ*u%QQ+Q%^Q+R%_Q+V%cQ.lPQ=}>XQ>O>YQ>Z>]R>[>^Q+O%]Q.nSR#[WR'Z!el!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}S'V!e-]U*j$|*Z*oS-Y'W'_S0U*k*qQ0^*rQ2u-cQ4v0[R4{0_R({#xQ!fQT-d'`-e]!qQ!r'`-e1o5{Q#p]R'i < TypeParamList in out const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration defer ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:380,context:_b,nodeProps:[["isolate",-8,5,6,14,37,39,51,53,55,""],["group",-26,9,17,19,68,207,211,215,216,218,221,224,234,237,243,245,247,249,252,258,264,266,268,270,272,274,275,"Statement",-34,13,14,32,35,36,42,51,54,55,57,62,70,72,76,80,82,84,85,110,111,120,121,136,139,141,142,143,144,145,147,148,167,169,171,"Expression",-23,31,33,37,41,43,45,173,175,177,178,180,181,182,184,185,186,188,189,190,201,203,205,206,"Type",-3,88,103,109,"ClassItem"],["openedBy",23,"<",38,"InterpolationStart",56,"[",60,"{",73,"(",160,"JSXStartCloseTag"],["closedBy",-2,24,168,">",40,"InterpolationEnd",50,"]",61,"}",74,")",165,"JSXEndTag"]],propSources:[Db],skippedNodes:[0,5,6,278],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$i&j(Wp(Z!b'|0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(X#S$i&j'}0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Wp(Z!b'}0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$i&j!p),Q(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(V':f$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$i&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$d`$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$d``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$d`$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Wp(Z!bOY%ZYZ&cZq%Zqr`#P#o`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$i&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(Z!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$i&j(WpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(WpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Wp(Z!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l^!Q^$i&j!X7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!X7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!X7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c^!Ezl$i&j(Z!b!X7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(Z!b!X7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(Z!b!X7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(Z!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$i&j(Z!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!^!LYP;=`<%l!KS>^!L`P;=`<%l!_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!g$b$i&j$O)Lv(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#R-v$?V_!^(CdvBr$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!q7`$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$i&j(Wp(Z!b'|0/l$]#t(T,2j(e$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$i&j(Wp(Z!b'}0/l$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr",tokenizers:[jb,Vb,Lb,Yb,2,3,4,5,6,7,8,9,10,11,12,13,14,Eb,new ls("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOx~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!U~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(c~~",141,340),new ls("j~RQYZXz{^~^O(Q~~aP!P!Qd~iO(R~~",25,323)],topRules:{Script:[0,7],SingleExpression:[1,276],SingleClassItem:[2,277]},dialects:{jsx:0,ts:15175},dynamicPrecedences:{80:1,82:1,94:1,169:1,199:1},specialized:[{term:327,get:n=>Bb[n]||-1},{term:343,get:n=>Ib[n]||-1},{term:95,get:n=>Gb[n]||-1}],tokenPrec:15201});class ka{constructor(e,t,i,r){this.state=e,this.pos=t,this.explicit=i,this.view=r,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let t=F(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),i=Math.max(t.from,this.pos-250),r=t.text.slice(i-t.from,this.pos-t.from),s=r.search(cd(e,!1));return s<0?null:{from:i+s,to:this.pos,text:r.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t,i){e=="abort"&&this.abortListeners&&(this.abortListeners.push(t),i&&i.onDocChange&&(this.abortOnDocChange=!0))}}function _c(n){let e=Object.keys(n).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function Nb(n){let e=Object.create(null),t=Object.create(null);for(let{label:r}of n){e[r[0]]=!0;for(let s=1;stypeof r=="string"?{label:r}:r),[t,i]=e.every(r=>/^\w+$/.test(r.label))?[/\w*$/,/\w+$/]:Nb(e);return r=>{let s=r.matchBefore(i);return s||r.explicit?{from:s?s.from:r.pos,options:e,validFor:t}:null}}function hd(n,e){return t=>{for(let i=F(t.state).resolveInner(t.pos,-1);i;i=i.parent){if(n.indexOf(i.name)>-1)return null;if(i.type.isTop)break}return e(t)}}class Ec{constructor(e,t,i,r){this.completion=e,this.source=t,this.match=i,this.score=r}}function di(n){return n.selection.main.from}function cd(n,e){var t;let{source:i}=n,r=e&&i[0]!="^",s=i[i.length-1]!="$";return!r&&!s?n:new RegExp(`${r?"^":""}(?:${i})${s?"$":""}`,(t=n.flags)!==null&&t!==void 0?t:n.ignoreCase?"i":"")}const wa=bt.define();function Fb(n,e,t,i){let{main:r}=n.selection,s=t-r.from,o=i-r.from;return{...n.changeByRange(l=>{if(l!=r&&t!=i&&n.sliceDoc(l.from+s,l.from+o)!=n.sliceDoc(t,i))return{range:l};let a=n.toText(e);return{changes:{from:l.from+s,to:i==r.from?l.to:l.from+o,insert:a},range:b.cursor(l.from+s+a.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}const jc=new WeakMap;function Hb(n){if(!Array.isArray(n))return n;let e=jc.get(n);return e||jc.set(n,e=xa(n)),e}const cs=z.define(),Wn=z.define();class Kb{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let t=0;t=48&&k<=57||k>=97&&k<=122?2:k>=65&&k<=90?1:0:(x=Yl(k))!=x.toLowerCase()?1:x!=x.toUpperCase()?2:0;(!S||$==1&&g||P==0&&$!=0)&&(t[f]==k||i[f]==k&&(O=!0)?o[f++]=S:o.length&&(Q=!1)),P=$,S+=Ot(k)}return f==a&&o[0]==0&&Q?this.result(-100+(O?-200:0),o,e):u==a&&d==0?this.ret(-200-e.length+(m==e.length?0:-100),[0,m]):l>-1?this.ret(-700-e.length,[l,l+this.pattern.length]):u==a?this.ret(-900-e.length,[d,m]):f==a?this.result(-100+(O?-200:0)+-700+(Q?0:-1100),o,e):t.length==2?null:this.result((r[0]?-700:0)+-200+-1100,r,e)}result(e,t,i){let r=[],s=0;for(let o of t){let l=o+(this.astral?Ot(Ze(i,o)):1);s&&r[s-1]==o?r[s-1]=l:(r[s++]=o,r[s++]=l)}return this.ret(e-i.length,r)}}class Jb{constructor(e){this.pattern=e,this.matched=[],this.score=0,this.folded=e.toLowerCase()}match(e){if(e.length!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:ey,filterStrict:!1,compareCompletions:(e,t)=>(e.sortText||e.label).localeCompare(t.sortText||t.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(e,t)=>e&&t,closeOnBlur:(e,t)=>e&&t,icons:(e,t)=>e&&t,tooltipClass:(e,t)=>i=>Vc(e(i),t(i)),optionClass:(e,t)=>i=>Vc(e(i),t(i)),addToOptions:(e,t)=>e.concat(t),filterStrict:(e,t)=>e||t})}});function Vc(n,e){return n?e?n+" "+e:n:e}function ey(n,e,t,i,r,s){let o=n.textDirection==J.RTL,l=o,a=!1,h="top",c,f,O=e.left-r.left,u=r.right-e.right,d=i.right-i.left,m=i.bottom-i.top;if(l&&O=m||S>e.top?c=t.bottom-e.top:(h="bottom",c=e.bottom-t.top)}let g=(e.bottom-e.top)/s.offsetHeight,Q=(e.right-e.left)/s.offsetWidth;return{style:`${h}: ${c/g}px; max-width: ${f/Q}px`,class:"cm-completionInfo-"+(a?o?"left-narrow":"right-narrow":l?"left":"right")}}const $a=z.define();function ty(n){let e=n.addToOptions.slice();return n.icons&&e.push({render(t){let i=document.createElement("div");return i.classList.add("cm-completionIcon"),t.type&&i.classList.add(...t.type.split(/\s+/g).map(r=>"cm-completionIcon-"+r)),i.setAttribute("aria-hidden","true"),i},position:20}),e.push({render(t,i,r,s){let o=document.createElement("span");o.className="cm-completionLabel";let l=t.displayLabel||t.label,a=0;for(let h=0;ha&&o.appendChild(document.createTextNode(l.slice(a,c)));let O=o.appendChild(document.createElement("span"));O.appendChild(document.createTextNode(l.slice(c,f))),O.className="cm-completionMatchedText",a=f}return at.position-i.position).map(t=>t.render)}function Qo(n,e,t){if(n<=t)return{from:0,to:n};if(e<0&&(e=0),e<=n>>1){let r=Math.floor(e/t);return{from:r*t,to:(r+1)*t}}let i=Math.ceil((n-e)/t);return{from:n-i*t,to:n-(i-1)*t}}class iy{constructor(e,t,i){this.view=e,this.stateField=t,this.applyCompletion=i,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:a=>this.placeInfo(a),key:this},this.space=null,this.currentClass="";let r=e.state.field(t),{options:s,selected:o}=r.open,l=e.state.facet(Oe);this.optionContent=ty(l),this.optionClass=l.optionClass,this.tooltipClass=l.tooltipClass,this.range=Qo(s.length,o,l.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",a=>{let{options:h}=e.state.field(t).open;for(let c=a.target,f;c&&c!=this.dom;c=c.parentNode)if(c.nodeName=="LI"&&(f=/-(\d+)$/.exec(c.id))&&+f[1]this.list.lastChild.getBoundingClientRect().bottom?this.range.to:null;c!=null&&(e.dispatch({effects:$a.of(c)}),a.preventDefault())}}),this.dom.addEventListener("focusout",a=>{let h=e.state.field(this.stateField,!1);h&&h.tooltip&&e.state.facet(Oe).closeOnBlur&&a.relatedTarget!=e.contentDOM&&e.dispatch({effects:Wn.of(null)})}),this.showOptions(s,r.id)}mount(){this.updateSel()}showOptions(e,t){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(e,t,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(e){var t;let i=e.state.field(this.stateField),r=e.startState.field(this.stateField);if(this.updateTooltipClass(e.state),i!=r){let{options:s,selected:o,disabled:l}=i.open;(!r.open||r.open.options!=s)&&(this.range=Qo(s.length,o,e.state.facet(Oe).maxRenderedOptions),this.showOptions(s,i.id)),this.updateSel(),l!=((t=r.open)===null||t===void 0?void 0:t.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!l)}}updateTooltipClass(e){let t=this.tooltipClass(e);if(t!=this.currentClass){for(let i of this.currentClass.split(" "))i&&this.dom.classList.remove(i);for(let i of t.split(" "))i&&this.dom.classList.add(i);this.currentClass=t}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),t=e.open;(t.selected>-1&&t.selected=this.range.to)&&(this.range=Qo(t.options.length,t.selected,this.view.state.facet(Oe).maxRenderedOptions),this.showOptions(t.options,e.id));let i=this.updateSelectedOption(t.selected);if(i){this.destroyInfo();let{completion:r}=t.options[t.selected],{info:s}=r;if(!s)return;let o=typeof s=="string"?document.createTextNode(s):s(r);if(!o)return;"then"in o?o.then(l=>{l&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(l,r)}).catch(l=>qe(this.view.state,l,"completion info")):(this.addInfoPane(o,r),i.setAttribute("aria-describedby",this.info.id))}}addInfoPane(e,t){this.destroyInfo();let i=this.info=document.createElement("div");if(i.className="cm-tooltip cm-completionInfo",i.id="cm-completionInfo-"+Math.floor(Math.random()*65535).toString(16),e.nodeType!=null)i.appendChild(e),this.infoDestroy=null;else{let{dom:r,destroy:s}=e;i.appendChild(r),this.infoDestroy=s||null}this.dom.appendChild(i),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let t=null;for(let i=this.list.firstChild,r=this.range.from;i;i=i.nextSibling,r++)i.nodeName!="LI"||!i.id?r--:r==e?i.hasAttribute("aria-selected")||(i.setAttribute("aria-selected","true"),t=i):i.hasAttribute("aria-selected")&&(i.removeAttribute("aria-selected"),i.removeAttribute("aria-describedby"));return t&&ry(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),i=this.info.getBoundingClientRect(),r=e.getBoundingClientRect(),s=this.space;if(!s){let o=this.dom.ownerDocument.documentElement;s={left:0,top:0,right:o.clientWidth,bottom:o.clientHeight}}return r.top>Math.min(s.bottom,t.bottom)-10||r.bottom{o.target==r&&o.preventDefault()});let s=null;for(let o=i.from;oi.from||i.from==0))if(s=O,typeof h!="string"&&h.header)r.appendChild(h.header(h));else{let u=r.appendChild(document.createElement("completion-section"));u.textContent=O}}const c=r.appendChild(document.createElement("li"));c.id=t+"-"+o,c.setAttribute("role","option");let f=this.optionClass(l);f&&(c.className=f);for(let O of this.optionContent){let u=O(l,this.view.state,this.view,a);u&&c.appendChild(u)}}return i.from&&r.classList.add("cm-completionListIncompleteTop"),i.tonew iy(t,n,e)}function ry(n,e){let t=n.getBoundingClientRect(),i=e.getBoundingClientRect(),r=t.height/n.offsetHeight;i.topt.bottom&&(n.scrollTop+=(i.bottom-t.bottom)/r)}function Lc(n){return(n.boost||0)*100+(n.apply?10:0)+(n.info?5:0)+(n.type?1:0)}function sy(n,e){let t=[],i=null,r=null,s=c=>{t.push(c);let{section:f}=c.completion;if(f){i||(i=[]);let O=typeof f=="string"?f:f.name;i.some(u=>u.name==O)||i.push(typeof f=="string"?{name:O}:f)}},o=e.facet(Oe);for(let c of n)if(c.hasResult()){let f=c.result.getMatch;if(c.result.filter===!1)for(let O of c.result.options)s(new Ec(O,c.source,f?f(O):[],1e9-t.length));else{let O=e.sliceDoc(c.from,c.to),u,d=o.filterStrict?new Jb(O):new Kb(O);for(let m of c.result.options)if(u=d.match(m.label)){let g=m.displayLabel?f?f(m,u.matched):[]:u.matched,Q=u.score+(m.boost||0);if(s(new Ec(m,c.source,g,Q)),typeof m.section=="object"&&m.section.rank==="dynamic"){let{name:S}=m.section;r||(r=Object.create(null)),r[S]=Math.max(Q,r[S]||-1e9)}}}}if(i){let c=Object.create(null),f=0,O=(u,d)=>(u.rank==="dynamic"&&d.rank==="dynamic"?r[d.name]-r[u.name]:0)||(typeof u.rank=="number"?u.rank:1e9)-(typeof d.rank=="number"?d.rank:1e9)||(u.nameO.score-f.score||h(f.completion,O.completion))){let f=c.completion;!a||a.label!=f.label||a.detail!=f.detail||a.type!=null&&f.type!=null&&a.type!=f.type||a.apply!=f.apply||a.boost!=f.boost?l.push(c):Lc(c.completion)>Lc(a)&&(l[l.length-1]=c),a=c.completion}return l}class Ti{constructor(e,t,i,r,s,o){this.options=e,this.attrs=t,this.tooltip=i,this.timestamp=r,this.selected=s,this.disabled=o}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new Ti(this.options,Yc(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,i,r,s,o){if(r&&!o&&e.some(h=>h.isPending))return r.setDisabled();let l=sy(e,t);if(!l.length)return r&&e.some(h=>h.isPending)?r.setDisabled():null;let a=t.facet(Oe).selectOnOpen?0:-1;if(r&&r.selected!=a&&r.selected!=-1){let h=r.options[r.selected].completion;for(let c=0;cc.hasResult()?Math.min(h,c.from):h,1e8),create:fy,above:s.aboveCursor},r?r.timestamp:Date.now(),a,!1)}map(e){return new Ti(this.options,this.attrs,{...this.tooltip,pos:e.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new Ti(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}}class fs{constructor(e,t,i){this.active=e,this.id=t,this.open=i}static start(){return new fs(hy,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,i=t.facet(Oe),s=(i.override||t.languageDataAt("autocomplete",di(t)).map(Hb)).map(a=>(this.active.find(c=>c.source==a)||new Ge(a,this.active.some(c=>c.state!=0)?1:0)).update(e,i));s.length==this.active.length&&s.every((a,h)=>a==this.active[h])&&(s=this.active);let o=this.open,l=e.effects.some(a=>a.is(Pa));o&&e.docChanged&&(o=o.map(e.changes)),e.selection||s.some(a=>a.hasResult()&&e.changes.touchesRange(a.from,a.to))||!oy(s,this.active)||l?o=Ti.build(s,t,this.id,o,i,l):o&&o.disabled&&!s.some(a=>a.isPending)&&(o=null),!o&&s.every(a=>!a.isPending)&&s.some(a=>a.hasResult())&&(s=s.map(a=>a.hasResult()?new Ge(a.source,0):a));for(let a of e.effects)a.is($a)&&(o=o&&o.setSelected(a.value,this.id));return s==this.active&&o==this.open?this:new fs(s,this.id,o)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?ly:ay}}function oy(n,e){if(n==e)return!0;for(let t=0,i=0;;){for(;t-1&&(t["aria-activedescendant"]=n+"-"+e),t}const hy=[];function fd(n,e){if(n.isUserEvent("input.complete")){let i=n.annotation(wa);if(i&&e.activateOnCompletion(i))return 12}let t=n.isUserEvent("input.type");return t&&e.activateOnTyping?5:t?1:n.isUserEvent("delete.backward")?2:n.selection?8:n.docChanged?16:0}class Ge{constructor(e,t,i=!1){this.source=e,this.state=t,this.explicit=i}hasResult(){return!1}get isPending(){return this.state==1}update(e,t){let i=fd(e,t),r=this;(i&8||i&16&&this.touches(e))&&(r=new Ge(r.source,0)),i&4&&r.state==0&&(r=new Ge(this.source,1)),r=r.updateFor(e,i);for(let s of e.effects)if(s.is(cs))r=new Ge(r.source,1,s.value);else if(s.is(Wn))r=new Ge(r.source,0);else if(s.is(Pa))for(let o of s.value)o.source==r.source&&(r=o);return r}updateFor(e,t){return this.map(e.changes)}map(e){return this}touches(e){return e.changes.touchesRange(di(e.state))}}class zi extends Ge{constructor(e,t,i,r,s,o){super(e,3,t),this.limit=i,this.result=r,this.from=s,this.to=o}hasResult(){return!0}updateFor(e,t){var i;if(!(t&3))return this.map(e.changes);let r=this.result;r.map&&!e.changes.empty&&(r=r.map(r,e.changes));let s=e.changes.mapPos(this.from),o=e.changes.mapPos(this.to,1),l=di(e.state);if(l>o||!r||t&2&&(di(e.startState)==this.from||lt.map(e))}}),Re=be.define({create(){return fs.start()},update(n,e){return n.update(e)},provide:n=>[oa.from(n,e=>e.tooltip),v.contentAttributes.from(n,e=>e.attrs)]});function va(n,e){const t=e.completion.apply||e.completion.label;let i=n.state.field(Re).active.find(r=>r.source==e.source);return i instanceof zi?(typeof t=="string"?n.dispatch({...Fb(n.state,t,i.from,i.to),annotations:wa.of(e.completion)}):t(n,e.completion,i.from,i.to),!0):!1}const fy=ny(Re,va);function br(n,e="option"){return t=>{let i=t.state.field(Re,!1);if(!i||!i.open||i.open.disabled||Date.now()-i.open.timestamp-1?i.open.selected+r*(n?1:-1):n?0:o-1;return l<0?l=e=="page"?0:o-1:l>=o&&(l=e=="page"?o-1:0),t.dispatch({effects:$a.of(l)}),!0}}const Oy=n=>{let e=n.state.field(Re,!1);return n.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestampn.state.field(Re,!1)?(n.dispatch({effects:cs.of(!0)}),!0):!1,uy=n=>{let e=n.state.field(Re,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(n.dispatch({effects:Wn.of(null)}),!0)};class dy{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const py=50,my=1e3,gy=se.fromClass(class{constructor(n){this.view=n,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let e of n.state.field(Re).active)e.isPending&&this.startQuery(e)}update(n){let e=n.state.field(Re),t=n.state.facet(Oe);if(!n.selectionSet&&!n.docChanged&&n.startState.field(Re)==e)return;let i=n.transactions.some(s=>{let o=fd(s,t);return o&8||(s.selection||s.docChanged)&&!(o&3)});for(let s=0;spy&&Date.now()-o.time>my){for(let l of o.context.abortListeners)try{l()}catch(a){qe(this.view.state,a)}o.context.abortListeners=null,this.running.splice(s--,1)}else o.updates.push(...n.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),n.transactions.some(s=>s.effects.some(o=>o.is(cs)))&&(this.pendingStart=!0);let r=this.pendingStart?50:t.activateOnTypingDelay;if(this.debounceUpdate=e.active.some(s=>s.isPending&&!this.running.some(o=>o.active.source==s.source))?setTimeout(()=>this.startUpdate(),r):-1,this.composing!=0)for(let s of n.transactions)s.isUserEvent("input.type")?this.composing=2:this.composing==2&&s.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:n}=this.view,e=n.field(Re);for(let t of e.active)t.isPending&&!this.running.some(i=>i.active.source==t.source)&&this.startQuery(t);this.running.length&&e.open&&e.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Oe).updateSyncTime))}startQuery(n){let{state:e}=this.view,t=di(e),i=new ka(e,t,n.explicit,this.view),r=new dy(n,i);this.running.push(r),Promise.resolve(n.source(i)).then(s=>{r.context.aborted||(r.done=s||null,this.scheduleAccept())},s=>{this.view.dispatch({effects:Wn.of(null)}),qe(this.view.state,s)})}scheduleAccept(){this.running.every(n=>n.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Oe).updateSyncTime))}accept(){var n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(Oe),i=this.view.state.field(Re);for(let r=0;rl.source==s.active.source);if(o&&o.isPending)if(s.done==null){let l=new Ge(s.active.source,0);for(let a of s.updates)l=l.update(a,t);l.isPending||e.push(l)}else this.startQuery(o)}(e.length||i.open&&i.open.disabled)&&this.view.dispatch({effects:Pa.of(e)})}},{eventHandlers:{blur(n){let e=this.view.state.field(Re,!1);if(e&&e.tooltip&&this.view.state.facet(Oe).closeOnBlur){let t=e.open&&hu(this.view,e.open.tooltip);(!t||!t.dom.contains(n.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:Wn.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:cs.of(!1)}),20),this.composing=0}}}),Qy=typeof navigator=="object"&&/Win/.test(navigator.platform),Sy=qt.highest(v.domEventHandlers({keydown(n,e){let t=e.state.field(Re,!1);if(!t||!t.open||t.open.disabled||t.open.selected<0||n.key.length>1||n.ctrlKey&&!(Qy&&n.altKey)||n.metaKey)return!1;let i=t.open.options[t.open.selected],r=t.active.find(o=>o.source==i.source),s=i.completion.commitCharacters||r.result.commitCharacters;return s&&s.indexOf(n.key)>-1&&va(e,i),!1}})),Od=v.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center",cursor:"pointer"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class by{constructor(e,t,i,r){this.field=e,this.line=t,this.from=i,this.to=r}}class Ta{constructor(e,t,i){this.field=e,this.from=t,this.to=i}map(e){let t=e.mapPos(this.from,-1,Qe.TrackDel),i=e.mapPos(this.to,1,Qe.TrackDel);return t==null||i==null?null:new Ta(this.field,t,i)}}class Ca{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let i=[],r=[t],s=e.doc.lineAt(t),o=/^\s*/.exec(s.text)[0];for(let a of this.lines){if(i.length){let h=o,c=/^\t*/.exec(a)[0].length;for(let f=0;fnew Ta(a.field,r[a.line]+a.from,r[a.line]+a.to));return{text:i,ranges:l}}static parse(e){let t=[],i=[],r=[],s;for(let o of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^{}]*))?|((?:\\[{}]|[^{}])*))\}/.exec(o);){let l=s[1]?+s[1]:null,a=s[2]||s[3]||"",h=-1,c=a.replace(/\\[{}]/g,f=>f[1]);for(let f=0;f=h&&O.field++}for(let f of r)if(f.line==i.length&&f.from>s.index){let O=s[2]?3+(s[1]||"").length:2;f.from-=O,f.to-=O}r.push(new by(h,i.length,s.index,s.index+c.length)),o=o.slice(0,s.index)+a+o.slice(s.index+s[0].length)}o=o.replace(/\\([{}])/g,(l,a,h)=>{for(let c of r)c.line==i.length&&c.from>h&&(c.from--,c.to--);return a}),i.push(o)}return new Ca(i,r)}}let yy=R.widget({widget:new class extends it{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),ky=R.mark({class:"cm-snippetField"});class Hi{constructor(e,t){this.ranges=e,this.active=t,this.deco=R.set(e.map(i=>(i.from==i.to?yy:ky).range(i.from,i.to)),!0)}map(e){let t=[];for(let i of this.ranges){let r=i.map(e);if(!r)return null;t.push(r)}return new Hi(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(i=>i.field==this.active&&i.from<=t.from&&i.to>=t.to))}}const Kn=z.define({map(n,e){return n&&n.map(e)}}),xy=z.define(),_n=be.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(Kn))return t.value;if(t.is(xy)&&n)return new Hi(n.ranges,t.value)}return n&&e.docChanged&&(n=n.map(e.changes)),n&&e.selection&&!n.selectionInsideField(e.selection)&&(n=null),n},provide:n=>v.decorations.from(n,e=>e?e.deco:R.none)});function Xa(n,e){return b.create(n.filter(t=>t.field==e).map(t=>b.range(t.from,t.to)))}function wy(n){let e=Ca.parse(n);return(t,i,r,s)=>{let{text:o,ranges:l}=e.instantiate(t.state,r),{main:a}=t.state.selection,h={changes:{from:r,to:s==a.from?a.to:s,insert:B.of(o)},scrollIntoView:!0,annotations:i?[wa.of(i),ae.userEvent.of("input.complete")]:void 0};if(l.length&&(h.selection=Xa(l,0)),l.some(c=>c.field>0)){let c=new Hi(l,0),f=h.effects=[Kn.of(c)];t.state.field(_n,!1)===void 0&&f.push(z.appendConfig.of([_n,Cy,Xy,Od]))}t.dispatch(t.state.update(h))}}function ud(n){return({state:e,dispatch:t})=>{let i=e.field(_n,!1);if(!i||n<0&&i.active==0)return!1;let r=i.active+n,s=n>0&&!i.ranges.some(o=>o.field==r+n);return t(e.update({selection:Xa(i.ranges,r),effects:Kn.of(s?null:new Hi(i.ranges,r)),scrollIntoView:!0})),!0}}const $y=({state:n,dispatch:e})=>n.field(_n,!1)?(e(n.update({effects:Kn.of(null)})),!0):!1,Py=ud(1),vy=ud(-1),Ty=[{key:"Tab",run:Py,shift:vy},{key:"Escape",run:$y}],Dc=C.define({combine(n){return n.length?n[0]:Ty}}),Cy=qt.highest(Ui.compute([Dc],n=>n.facet(Dc)));function ne(n,e){return{...e,apply:wy(n)}}const Xy=v.domEventHandlers({mousedown(n,e){let t=e.state.field(_n,!1),i;if(!t||(i=e.posAtCoords({x:n.clientX,y:n.clientY}))==null)return!1;let r=t.ranges.find(s=>s.from<=i&&s.to>=i);return!r||r.field==t.active?!1:(e.dispatch({selection:Xa(t.ranges,r.field),effects:Kn.of(t.ranges.some(s=>s.field>r.field)?new Hi(t.ranges,r.field):null),scrollIntoView:!0}),!0)}}),En={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},Oi=z.define({map(n,e){let t=e.mapPos(n,-1,Qe.TrackAfter);return t??void 0}}),Za=new class extends Lt{};Za.startSide=1;Za.endSide=-1;const dd=be.define({create(){return j.empty},update(n,e){if(n=n.map(e.changes),e.selection){let t=e.state.doc.lineAt(e.selection.main.head);n=n.update({filter:i=>i>=t.from&&i<=t.to})}for(let t of e.effects)t.is(Oi)&&(n=n.update({add:[Za.range(t.value,t.value+1)]}));return n}});function Zy(){return[Ay,dd]}const bo="()[]{}<>«»»«[]{}";function pd(n){for(let e=0;e{if((Ry?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let r=n.state.selection.main;if(i.length>2||i.length==2&&Ot(Ze(i,0))==1||e!=r.from||t!=r.to)return!1;let s=zy(n.state,i);return s?(n.dispatch(s),!0):!1}),qy=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let i=md(n,n.selection.main.head).brackets||En.brackets,r=null,s=n.changeByRange(o=>{if(o.empty){let l=Wy(n.doc,o.head);for(let a of i)if(a==l&&As(n.doc,o.head)==pd(Ze(a,0)))return{changes:{from:o.head-a.length,to:o.head+a.length},range:b.cursor(o.head-a.length)}}return{range:r=o}});return r||e(n.update(s,{scrollIntoView:!0,userEvent:"delete.backward"})),!r},My=[{key:"Backspace",run:qy}];function zy(n,e){let t=md(n,n.selection.main.head),i=t.brackets||En.brackets;for(let r of i){let s=pd(Ze(r,0));if(e==r)return s==r?jy(n,r,i.indexOf(r+r+r)>-1,t):_y(n,r,s,t.before||En.before);if(e==s&&gd(n,n.selection.main.from))return Ey(n,r,s)}return null}function gd(n,e){let t=!1;return n.field(dd).between(0,n.doc.length,i=>{i==e&&(t=!0)}),t}function As(n,e){let t=n.sliceString(e,e+2);return t.slice(0,Ot(Ze(t,0)))}function Wy(n,e){let t=n.sliceString(e-2,e);return Ot(Ze(t,0))==t.length?t:t.slice(1)}function _y(n,e,t,i){let r=null,s=n.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:t,from:o.to}],effects:Oi.of(o.to+e.length),range:b.range(o.anchor+e.length,o.head+e.length)};let l=As(n.doc,o.head);return!l||/\s/.test(l)||i.indexOf(l)>-1?{changes:{insert:e+t,from:o.head},effects:Oi.of(o.head+e.length),range:b.cursor(o.head+e.length)}:{range:r=o}});return r?null:n.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function Ey(n,e,t){let i=null,r=n.changeByRange(s=>s.empty&&As(n.doc,s.head)==t?{changes:{from:s.head,to:s.head+t.length,insert:t},range:b.cursor(s.head+t.length)}:i={range:s});return i?null:n.update(r,{scrollIntoView:!0,userEvent:"input.type"})}function jy(n,e,t,i){let r=i.stringPrefixes||En.stringPrefixes,s=null,o=n.changeByRange(l=>{if(!l.empty)return{changes:[{insert:e,from:l.from},{insert:e,from:l.to}],effects:Oi.of(l.to+e.length),range:b.range(l.anchor+e.length,l.head+e.length)};let a=l.head,h=As(n.doc,a),c;if(h==e){if(Bc(n,a))return{changes:{insert:e+e,from:a},effects:Oi.of(a+e.length),range:b.cursor(a+e.length)};if(gd(n,a)){let O=t&&n.sliceDoc(a,a+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:a,to:a+O.length,insert:O},range:b.cursor(a+O.length)}}}else{if(t&&n.sliceDoc(a-2*e.length,a)==e+e&&(c=Ic(n,a-2*e.length,r))>-1&&Bc(n,c))return{changes:{insert:e+e+e+e,from:a},effects:Oi.of(a+e.length),range:b.cursor(a+e.length)};if(n.charCategorizer(a)(h)!=te.Word&&Ic(n,a,r)>-1&&!Vy(n,a,e,r))return{changes:{insert:e+e,from:a},effects:Oi.of(a+e.length),range:b.cursor(a+e.length)}}return{range:s=l}});return s?null:n.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function Bc(n,e){let t=F(n).resolveInner(e+1);return t.parent&&t.from==e}function Vy(n,e,t,i){let r=F(n).resolveInner(e,-1),s=i.reduce((o,l)=>Math.max(o,l.length),0);for(let o=0;o<5;o++){let l=n.sliceDoc(r.from,Math.min(r.to,r.from+t.length+s)),a=l.indexOf(t);if(!a||a>-1&&i.indexOf(l.slice(0,a))>-1){let c=r.firstChild;for(;c&&c.from==r.from&&c.to-c.from>t.length+a;){if(n.sliceDoc(c.to-t.length,c.to)==t)return!1;c=c.firstChild}return!0}let h=r.to==e&&r.parent;if(!h)break;r=h}return!1}function Ic(n,e,t){let i=n.charCategorizer(e);if(i(n.sliceDoc(e-1,e))!=te.Word)return e;for(let r of t){let s=e-r.length;if(n.sliceDoc(s,e)==r&&i(n.sliceDoc(s-1,s))!=te.Word)return s}return-1}function Ly(n={}){return[Sy,Re,Oe.of(n),gy,Yy,Od]}const Qd=[{key:"Ctrl-Space",run:So},{mac:"Alt-`",run:So},{mac:"Alt-i",run:So},{key:"Escape",run:uy},{key:"ArrowDown",run:br(!0)},{key:"ArrowUp",run:br(!1)},{key:"PageDown",run:br(!0,"page")},{key:"PageUp",run:br(!1,"page")},{key:"Enter",run:Oy}],Yy=qt.highest(Ui.computeN([Oe],n=>n.facet(Oe).defaultKeymap?[Qd]:[])),Sd=[ne("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),ne("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),ne("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),ne("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),ne("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),ne(`try { + \${} +} catch (\${error}) { + \${} +}`,{label:"try",detail:"/ catch block",type:"keyword"}),ne("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),ne(`if (\${}) { + \${} +} else { + \${} +}`,{label:"if",detail:"/ else block",type:"keyword"}),ne(`class \${name} { + constructor(\${params}) { + \${} + } +}`,{label:"class",detail:"definition",type:"keyword"}),ne('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),ne('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],Dy=Sd.concat([ne("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),ne("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),ne("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),Gc=new fa,bd=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function ln(n){return(e,t)=>{let i=e.node.getChild("VariableDefinition");return i&&t(i,n),!0}}const By=["FunctionDeclaration"],Iy={FunctionDeclaration:ln("function"),ClassDeclaration:ln("class"),ClassExpression:()=>!0,EnumDeclaration:ln("constant"),TypeAliasDeclaration:ln("type"),NamespaceDeclaration:ln("namespace"),VariableDefinition(n,e){n.matchContext(By)||e(n,"variable")},TypeDefinition(n,e){e(n,"type")},__proto__:null};function yd(n,e){let t=Gc.get(e);if(t)return t;let i=[],r=!0;function s(o,l){let a=n.sliceString(o.from,o.to);i.push({label:a,type:l})}return e.cursor(U.IncludeAnonymous).iterate(o=>{if(r)r=!1;else if(o.name){let l=Iy[o.name];if(l&&l(o,s)||bd.has(o.name))return!1}else if(o.to-o.from>8192){for(let l of yd(n,o.node))i.push(l);return!1}}),Gc.set(e,i),i}const Uc=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,kd=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function Gy(n){let e=F(n.state).resolveInner(n.pos,-1);if(kd.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&Uc.test(n.state.sliceDoc(e.from,e.to));if(!t&&!n.explicit)return null;let i=[];for(let r=e;r;r=r.parent)bd.has(r.name)&&(i=i.concat(yd(n.state.doc,r)));return{options:i,from:t?e.from:n.pos,validFor:Uc}}const St=Gt.define({name:"javascript",parser:Ub.configure({props:[Jt.add({IfStatement:qi({except:/^\s*({|else\b)/}),TryStatement:qi({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:hS,SwitchBody:n=>{let e=n.textAfter,t=/^\s*\}/.test(e),i=/^\s*(case|default)\b/.test(e);return n.baseIndent+(t?0:i?1:2)*n.unit},Block:Mr({closing:"}"}),ArrowFunction:n=>n.baseIndent+n.unit,"TemplateString BlockComment":()=>null,"Statement Property":qi({except:/^\s*{/}),JSXElement(n){let e=/^\s*<\//.test(n.textAfter);return n.lineIndent(n.node.from)+(e?0:n.unit)},JSXEscape(n){let e=/\s*\}/.test(n.textAfter);return n.lineIndent(n.node.from)+(e?0:n.unit)},"JSXOpenTag JSXSelfClosingTag"(n){return n.column(n.node.from)+n.unit}}),ei.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":Zs,BlockComment(n){return{from:n.from+2,to:n.to-2}},JSXElement(n){let e=n.firstChild;if(!e||e.name=="JSXSelfClosingTag")return null;let t=n.lastChild;return{from:e.to,to:t.type.isError?n.to:t.from}},"JSXSelfClosingTag JSXOpenTag"(n){var e;let t=(e=n.firstChild)===null||e===void 0?void 0:e.nextSibling,i=n.lastChild;return!t||t.type.isError?null:{from:t.to,to:i.type.isError?n.to:i.from}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),xd={test:n=>/^JSX/.test(n.name),facet:Cs({commentTokens:{block:{open:"{/*",close:"*/}"}}})},wd=St.configure({dialect:"ts"},"typescript"),$d=St.configure({dialect:"jsx",props:[Oa.add(n=>n.isTop?[xd]:void 0)]}),Pd=St.configure({dialect:"jsx ts",props:[Oa.add(n=>n.isTop?[xd]:void 0)]},"typescript");let vd=n=>({label:n,type:"keyword"});const Td="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(vd),Uy=Td.concat(["declare","implements","private","protected","public"].map(vd));function Ny(n={}){let e=n.jsx?n.typescript?Pd:$d:n.typescript?wd:St,t=n.typescript?Dy.concat(Uy):Sd.concat(Td);return new Si(e,[St.data.of({autocomplete:hd(kd,xa(t))}),St.data.of({autocomplete:Gy}),n.jsx?Ky:[]])}function Fy(n){for(;;){if(n.name=="JSXOpenTag"||n.name=="JSXSelfClosingTag"||n.name=="JSXFragmentTag")return n;if(n.name=="JSXEscape"||!n.parent)return null;n=n.parent}}function Nc(n,e,t=n.length){for(let i=e?.firstChild;i;i=i.nextSibling)if(i.name=="JSXIdentifier"||i.name=="JSXBuiltin"||i.name=="JSXNamespacedName"||i.name=="JSXMemberExpression")return n.sliceString(i.from,Math.min(i.to,t));return""}const Hy=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),Ky=v.inputHandler.of((n,e,t,i,r)=>{if((Hy?n.composing:n.compositionStarted)||n.state.readOnly||e!=t||i!=">"&&i!="/"||!St.isActiveAt(n.state,e,-1))return!1;let s=r(),{state:o}=s,l=o.changeByRange(a=>{var h;let{head:c}=a,f=F(o).resolveInner(c-1,-1),O;if(f.name=="JSXStartTag"&&(f=f.parent),!(o.doc.sliceString(c-1,c)!=i||f.name=="JSXAttributeValue"&&f.to>c)){if(i==">"&&f.name=="JSXFragmentTag")return{range:a,changes:{from:c,insert:""}};if(i=="/"&&f.name=="JSXStartCloseTag"){let u=f.parent,d=u.parent;if(d&&u.from==c-2&&((O=Nc(o.doc,d.firstChild,c))||((h=d.firstChild)===null||h===void 0?void 0:h.name)=="JSXFragmentTag")){let m=`${O}>`;return{range:b.cursor(c+m.length,-1),changes:{from:c,insert:m}}}}else if(i==">"){let u=Fy(f);if(u&&u.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(o.doc.sliceString(c,c+2))&&(O=Nc(o.doc,u,c)))return{range:a,changes:{from:c,insert:``}}}}return{range:a}});return l.changes.empty?!1:(n.dispatch([s,o.update(l,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),an=["_blank","_self","_top","_parent"],yo=["ascii","utf-8","utf-16","latin1","latin1"],ko=["get","post","put","delete"],xo=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],Ee=["true","false"],Z={},Jy={a:{attrs:{href:null,ping:null,type:null,media:null,target:an,hreflang:null}},abbr:Z,address:Z,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:Z,aside:Z,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:Z,base:{attrs:{href:null,target:an}},bdi:Z,bdo:Z,blockquote:{attrs:{cite:null}},body:Z,br:Z,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:xo,formmethod:ko,formnovalidate:["novalidate"],formtarget:an,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:Z,center:Z,cite:Z,code:Z,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:Z,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:Z,div:Z,dl:Z,dt:Z,em:Z,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:Z,figure:Z,footer:Z,form:{attrs:{action:null,name:null,"accept-charset":yo,autocomplete:["on","off"],enctype:xo,method:ko,novalidate:["novalidate"],target:an}},h1:Z,h2:Z,h3:Z,h4:Z,h5:Z,h6:Z,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:Z,hgroup:Z,hr:Z,html:{attrs:{manifest:null}},i:Z,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:xo,formmethod:ko,formnovalidate:["novalidate"],formtarget:an,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:Z,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:Z,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:Z,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:yo,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:Z,noscript:Z,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:Z,param:{attrs:{name:null,value:null}},pre:Z,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:Z,rt:Z,ruby:Z,samp:Z,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:yo}},section:Z,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:Z,source:{attrs:{src:null,type:null,media:null}},span:Z,strong:Z,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:Z,summary:Z,sup:Z,table:Z,tbody:Z,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:Z,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:Z,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:Z,time:{attrs:{datetime:null}},title:Z,tr:Z,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:Z,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:Z},Cd={accesskey:null,class:null,contenteditable:Ee,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:Ee,autocorrect:Ee,autocapitalize:Ee,style:null,tabindex:null,title:null,translate:["yes","no"],rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":Ee,"aria-autocomplete":["inline","list","both","none"],"aria-busy":Ee,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":Ee,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":Ee,"aria-hidden":Ee,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":Ee,"aria-multiselectable":Ee,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":Ee,"aria-relevant":null,"aria-required":Ee,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},Xd="beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map(n=>"on"+n);for(let n of Xd)Cd[n]=null;class jn{constructor(e,t){this.tags={...Jy,...e},this.globalAttrs={...Cd,...t},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}}jn.default=new jn;function Di(n,e,t=n.length){if(!e)return"";let i=e.firstChild,r=i&&i.getChild("TagName");return r?n.sliceString(r.from,Math.min(r.to,t)):""}function Bi(n,e=!1){for(;n;n=n.parent)if(n.name=="Element")if(e)e=!1;else return n;return null}function Zd(n,e,t){let i=t.tags[Di(n,Bi(e))];return i?.children||t.allTags}function Ra(n,e){let t=[];for(let i=Bi(e);i&&!i.type.isTop;i=Bi(i.parent)){let r=Di(n,i);if(r&&i.lastChild.name=="CloseTag")break;r&&t.indexOf(r)<0&&(e.name=="EndTag"||e.from>=i.firstChild.to)&&t.push(r)}return t}const Rd=/^[:\-\.\w\u00b7-\uffff]*$/;function Fc(n,e,t,i,r){let s=/\s*>/.test(n.sliceDoc(r,r+5))?"":">",o=Bi(t,t.name=="StartTag"||t.name=="TagName");return{from:i,to:r,options:Zd(n.doc,o,e).map(l=>({label:l,type:"type"})).concat(Ra(n.doc,t).map((l,a)=>({label:"/"+l,apply:"/"+l+s,type:"type",boost:99-a}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function Hc(n,e,t,i){let r=/\s*>/.test(n.sliceDoc(i,i+5))?"":">";return{from:t,to:i,options:Ra(n.doc,e).map((s,o)=>({label:s,apply:s+r,type:"type",boost:99-o})),validFor:Rd}}function ek(n,e,t,i){let r=[],s=0;for(let o of Zd(n.doc,t,e))r.push({label:"<"+o,type:"type"});for(let o of Ra(n.doc,t))r.push({label:"",type:"type",boost:99-s++});return{from:i,to:i,options:r,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function tk(n,e,t,i,r){let s=Bi(t),o=s?e.tags[Di(n.doc,s)]:null,l=o&&o.attrs?Object.keys(o.attrs):[],a=o&&o.globalAttrs===!1?l:l.length?l.concat(e.globalAttrNames):e.globalAttrNames;return{from:i,to:r,options:a.map(h=>({label:h,type:"property"})),validFor:Rd}}function ik(n,e,t,i,r){var s;let o=(s=t.parent)===null||s===void 0?void 0:s.getChild("AttributeName"),l=[],a;if(o){let h=n.sliceDoc(o.from,o.to),c=e.globalAttrs[h];if(!c){let f=Bi(t),O=f?e.tags[Di(n.doc,f)]:null;c=O?.attrs&&O.attrs[h]}if(c){let f=n.sliceDoc(i,r).toLowerCase(),O='"',u='"';/^['"]/.test(f)?(a=f[0]=='"'?/^[^"]*$/:/^[^']*$/,O="",u=n.sliceDoc(r,r+1)==f[0]?"":f[0],f=f.slice(1),i++):a=/^[^\s<>='"]*$/;for(let d of c)l.push({label:d,apply:O+d+u,type:"constant"})}}return{from:i,to:r,options:l,validFor:a}}function Ad(n,e){let{state:t,pos:i}=e,r=F(t).resolveInner(i,-1),s=r.resolve(i);for(let o=i,l;s==r&&(l=r.childBefore(o));){let a=l.lastChild;if(!a||!a.type.isError||a.fromAd(i,r)}const sk=St.parser.configure({top:"SingleExpression"}),qd=[{tag:"script",attrs:n=>n.type=="text/typescript"||n.lang=="ts",parser:wd.parser},{tag:"script",attrs:n=>n.type=="text/babel"||n.type=="text/jsx",parser:$d.parser},{tag:"script",attrs:n=>n.type=="text/typescript-jsx",parser:Pd.parser},{tag:"script",attrs(n){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(n.type)},parser:sk},{tag:"script",attrs(n){return!n.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(n.type)},parser:St.parser},{tag:"style",attrs(n){return(!n.lang||n.lang=="css")&&(!n.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(n.type))},parser:as.parser}],Md=[{name:"style",parser:as.parser.configure({top:"Styles"})}].concat(Xd.map(n=>({name:n,parser:St.parser}))),zd=Gt.define({name:"html",parser:gb.configure({props:[Jt.add({Element(n){let e=/^(\s*)(<\/)?/.exec(n.textAfter);return n.node.to<=n.pos+e[0].length?n.continue():n.lineIndent(n.node.from)+(e[2]?0:n.unit)},"OpenTag CloseTag SelfClosingTag"(n){return n.column(n.node.from)+n.unit},Document(n){if(n.pos+/\s*/.exec(n.textAfter)[0].lengthn.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:""}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-_"}}),Er=zd.configure({wrap:ld(qd,Md)});function ok(n={}){let e="",t;n.matchClosingTags===!1&&(e="noMatch"),n.selfClosingTags===!0&&(e=(e?e+" ":"")+"selfClosing"),(n.nestedLanguages&&n.nestedLanguages.length||n.nestedAttributes&&n.nestedAttributes.length)&&(t=ld((n.nestedLanguages||[]).concat(qd),(n.nestedAttributes||[]).concat(Md)));let i=t?zd.configure({wrap:t,dialect:e}):e?Er.configure({dialect:e}):Er;return new Si(i,[Er.data.of({autocomplete:rk(n)}),n.autoCloseTags!==!1?lk:[],Ny().support,A1().support])}const Kc=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),lk=v.inputHandler.of((n,e,t,i,r)=>{if(n.composing||n.state.readOnly||e!=t||i!=">"&&i!="/"||!Er.isActiveAt(n.state,e,-1))return!1;let s=r(),{state:o}=s,l=o.changeByRange(a=>{var h,c,f;let O=o.doc.sliceString(a.from-1,a.to)==i,{head:u}=a,d=F(o).resolveInner(u,-1),m;if(O&&i==">"&&d.name=="EndTag"){let g=d.parent;if(((c=(h=g.parent)===null||h===void 0?void 0:h.lastChild)===null||c===void 0?void 0:c.name)!="CloseTag"&&(m=Di(o.doc,g.parent,u))&&!Kc.has(m)){let Q=u+(o.doc.sliceString(u,u+1)===">"?1:0),S=``;return{range:a,changes:{from:u,to:Q,insert:S}}}}else if(O&&i=="/"&&d.name=="IncompleteCloseTag"){let g=d.parent;if(d.from==u-2&&((f=g.lastChild)===null||f===void 0?void 0:f.name)!="CloseTag"&&(m=Di(o.doc,g,u))&&!Kc.has(m)){let Q=u+(o.doc.sliceString(u,u+1)===">"?1:0),S=`${m}>`;return{range:b.cursor(u+S.length,-1),changes:{from:u,to:Q,insert:S}}}}return{range:a}});return l.changes.empty?!1:(n.dispatch([s,o.update(l,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),ak=Kt({String:p.string,Number:p.number,"True False":p.bool,PropertyName:p.propertyName,Null:p.null,", :":p.separator,"[ ]":p.squareBracket,"{ }":p.brace}),hk=Ft.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[ak],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),ck=Gt.define({name:"json",parser:hk.configure({props:[Jt.add({Object:qi({except:/^\s*\}/}),Array:qi({except:/^\s*\]/})}),ei.add({"Object Array":Zs})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function IP(){return new Si(ck)}class Os{static create(e,t,i,r,s){let o=r+(r<<8)+e+(t<<4)|0;return new Os(e,t,i,o,s,[],[])}constructor(e,t,i,r,s,o,l){this.type=e,this.value=t,this.from=i,this.hash=r,this.end=s,this.children=o,this.positions=l,this.hashProp=[[M.contextHash,r]]}addChild(e,t){e.prop(M.contextHash)!=this.hash&&(e=new V(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(t)}toTree(e,t=this.end){let i=this.children.length-1;return i>=0&&(t=Math.max(t,this.positions[i]+this.children[i].length+this.from)),new V(e.types[this.type],this.children,this.positions,t-this.from).balance({makeTree:(r,s,o)=>new V(he.none,r,s,o,this.hashProp)})}}var w;(function(n){n[n.Document=1]="Document",n[n.CodeBlock=2]="CodeBlock",n[n.FencedCode=3]="FencedCode",n[n.Blockquote=4]="Blockquote",n[n.HorizontalRule=5]="HorizontalRule",n[n.BulletList=6]="BulletList",n[n.OrderedList=7]="OrderedList",n[n.ListItem=8]="ListItem",n[n.ATXHeading1=9]="ATXHeading1",n[n.ATXHeading2=10]="ATXHeading2",n[n.ATXHeading3=11]="ATXHeading3",n[n.ATXHeading4=12]="ATXHeading4",n[n.ATXHeading5=13]="ATXHeading5",n[n.ATXHeading6=14]="ATXHeading6",n[n.SetextHeading1=15]="SetextHeading1",n[n.SetextHeading2=16]="SetextHeading2",n[n.HTMLBlock=17]="HTMLBlock",n[n.LinkReference=18]="LinkReference",n[n.Paragraph=19]="Paragraph",n[n.CommentBlock=20]="CommentBlock",n[n.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",n[n.Escape=22]="Escape",n[n.Entity=23]="Entity",n[n.HardBreak=24]="HardBreak",n[n.Emphasis=25]="Emphasis",n[n.StrongEmphasis=26]="StrongEmphasis",n[n.Link=27]="Link",n[n.Image=28]="Image",n[n.InlineCode=29]="InlineCode",n[n.HTMLTag=30]="HTMLTag",n[n.Comment=31]="Comment",n[n.ProcessingInstruction=32]="ProcessingInstruction",n[n.Autolink=33]="Autolink",n[n.HeaderMark=34]="HeaderMark",n[n.QuoteMark=35]="QuoteMark",n[n.ListMark=36]="ListMark",n[n.LinkMark=37]="LinkMark",n[n.EmphasisMark=38]="EmphasisMark",n[n.CodeMark=39]="CodeMark",n[n.CodeText=40]="CodeText",n[n.CodeInfo=41]="CodeInfo",n[n.LinkTitle=42]="LinkTitle",n[n.LinkLabel=43]="LinkLabel",n[n.URL=44]="URL"})(w||(w={}));class fk{constructor(e,t){this.start=e,this.content=t,this.marks=[],this.parsers=[]}}class Ok{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return kn(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,t=0,i=0){for(let r=t;r=e.stack[t.depth+1].value+t.baseIndent)return!0;if(t.indent>=t.baseIndent+4)return!1;let i=(n.type==w.OrderedList?Ma:qa)(t,e,!1);return i>0&&(n.type!=w.BulletList||Aa(t,e,!1)<0)&&t.text.charCodeAt(t.pos+i-1)==n.value}const Wd={[w.Blockquote](n,e,t){return t.next!=62?!1:(t.markers.push(D(w.QuoteMark,e.lineStart+t.pos,e.lineStart+t.pos+1)),t.moveBase(t.pos+(Ne(t.text.charCodeAt(t.pos+1))?2:1)),n.end=e.lineStart+t.text.length,!0)},[w.ListItem](n,e,t){return t.indent-1?!1:(t.moveBaseColumn(t.baseIndent+n.value),!0)},[w.OrderedList]:Jc,[w.BulletList]:Jc,[w.Document](){return!0}};function Ne(n){return n==32||n==9||n==10||n==13}function kn(n,e=0){for(;et&&Ne(n.charCodeAt(e-1));)e--;return e}function _d(n){if(n.next!=96&&n.next!=126)return-1;let e=n.pos+1;for(;e-1&&n.depth==e.stack.length&&e.parser.leafBlockParsers.indexOf(Id.SetextHeading)>-1||i<3?-1:1}function jd(n,e){for(let t=n.stack.length-1;t>=0;t--)if(n.stack[t].type==e)return!0;return!1}function qa(n,e,t){return(n.next==45||n.next==43||n.next==42)&&(n.pos==n.text.length-1||Ne(n.text.charCodeAt(n.pos+1)))&&(!t||jd(e,w.BulletList)||n.skipSpace(n.pos+2)=48&&r<=57;){i++;if(i==n.text.length)return-1;r=n.text.charCodeAt(i)}return i==n.pos||i>n.pos+9||r!=46&&r!=41||in.pos+1||n.next!=49)?-1:i+1-n.pos}function Vd(n){if(n.next!=35)return-1;let e=n.pos+1;for(;e6?-1:t}function Ld(n){if(n.next!=45&&n.next!=61||n.indent>=n.baseIndent+4)return-1;let e=n.pos+1;for(;e/,Dd=/\?>/,Rl=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*/i.exec(i);if(s)return n.append(D(w.Comment,t,t+1+s[0].length));let o=/^\?[^]*?\?>/.exec(i);if(o)return n.append(D(w.ProcessingInstruction,t,t+1+o[0].length));let l=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(i);return l?n.append(D(w.HTMLTag,t,t+1+l[0].length)):-1},Emphasis(n,e,t){if(e!=95&&e!=42)return-1;let i=t+1;for(;n.char(i)==e;)i++;let r=n.slice(t-1,t),s=n.slice(i,i+1),o=Ln.test(r),l=Ln.test(s),a=/\s|^$/.test(r),h=/\s|^$/.test(s),c=!h&&(!l||a||o),f=!a&&(!o||h||l),O=c&&(e==42||!f||o),u=f&&(e==42||!c||l);return n.append(new Le(e==95?Hd:Kd,t,i,(O?1:0)|(u?2:0)))},HardBreak(n,e,t){if(e==92&&n.char(t+1)==10)return n.append(D(w.HardBreak,t,t+2));if(e==32){let i=t+1;for(;n.char(i)==32;)i++;if(n.char(i)==10&&i>=t+2)return n.append(D(w.HardBreak,t,i+1))}return-1},Link(n,e,t){return e==91?n.append(new Le(ai,t,t+1,1)):-1},Image(n,e,t){return e==33&&n.char(t+1)==91?n.append(new Le(us,t,t+2,1)):-1},LinkEnd(n,e,t){if(e!=93)return-1;for(let i=n.parts.length-1;i>=0;i--){let r=n.parts[i];if(r instanceof Le&&(r.type==ai||r.type==us)){if(!r.side||n.skipSpace(r.to)==t&&!/[(\[]/.test(n.slice(t+1,t+2)))return n.parts[i]=null,-1;let s=n.takeContent(i),o=n.parts[i]=Qk(n,s,r.type==ai?w.Link:w.Image,r.from,t+1);if(r.type==ai)for(let l=0;le?D(w.URL,e+t,s+t):s==n.length?null:!1}}function ep(n,e,t){let i=n.charCodeAt(e);if(i!=39&&i!=34&&i!=40)return!1;let r=i==40?41:i;for(let s=e+1,o=!1;s=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,t){return this.text.slice(e-this.offset,t-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,t,i,r,s){return this.append(new Le(e,t,i,(r?1:0)|(s?2:0)))}get hasOpenLink(){for(let e=this.parts.length-1;e>=0;e--){let t=this.parts[e];if(t instanceof Le&&(t.type==ai||t.type==us))return!0}return!1}addElement(e){return this.append(e)}resolveMarkers(e){for(let i=e;i=e;a--){let m=this.parts[a];if(m instanceof Le&&m.side&1&&m.type==r.type&&!(s&&(r.side&1||m.side&2)&&(m.to-m.from+o)%3==0&&((m.to-m.from)%3||o%3))){l=m;break}}if(!l)continue;let h=r.type.resolve,c=[],f=l.from,O=r.to;if(s){let m=Math.min(2,l.to-l.from,o);f=l.to-m,O=r.from+m,h=m==1?"Emphasis":"StrongEmphasis"}l.type.mark&&c.push(this.elt(l.type.mark,f,l.to));for(let m=a+1;m=0;t--){let i=this.parts[t];if(i instanceof Le&&i.type==e&&i.side&1)return t}return null}takeContent(e){let t=this.resolveMarkers(e);return this.parts.length=e,t}getDelimiterAt(e){let t=this.parts[e];return t instanceof Le?t:null}skipSpace(e){return kn(this.text,e-this.offset)+this.offset}elt(e,t,i,r){return typeof e=="string"?D(this.parser.getNodeType(e),t,i,r):new Fd(e,t)}}za.linkStart=ai;za.imageStart=us;function ql(n,e){if(!e.length)return n;if(!n.length)return e;let t=n.slice(),i=0;for(let r of e){for(;i(e?e-1:0))return!1;if(this.fragmentEnd<0){let s=this.fragment.to;for(;s>0&&this.input.read(s-1,s)!=` +`;)s--;this.fragmentEnd=s?s-1:0}let i=this.cursor;i||(i=this.cursor=this.fragment.tree.cursor(),i.firstChild());let r=e+this.fragment.offset;for(;i.to<=r;)if(!i.parent())return!1;for(;;){if(i.from>=r)return this.fragment.from<=t;if(!i.childAfter(r))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(M.contextHash)==e}takeNodes(e){let t=this.cursor,i=this.fragment.offset,r=this.fragmentEnd-(this.fragment.openEnd?1:0),s=e.absoluteLineStart,o=s,l=e.block.children.length,a=o,h=l;for(;;){if(t.to-i>r){if(t.type.isAnonymous&&t.firstChild())continue;break}let c=ip(t.from-i,e.ranges);if(t.to-i<=e.ranges[e.rangeI].to)e.addNode(t.tree,c);else{let f=new V(e.parser.nodeSet.types[w.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(f,t.tree),e.addNode(f,c)}if(t.type.is("Block")&&(Sk.indexOf(t.type.id)<0?(o=t.to-i,l=e.block.children.length):(o=a,l=h),a=t.to-i,h=e.block.children.length),!t.nextSibling())break}for(;e.block.children.length>l;)e.block.children.pop(),e.block.positions.pop();return o-s}}function ip(n,e){let t=n;for(let i=1;iyr[n]),Object.keys(yr).map(n=>Id[n]),Object.keys(yr),pk,Wd,Object.keys($o).map(n=>$o[n]),Object.keys($o),[]);function xk(n,e,t){let i=[];for(let r=n.firstChild,s=e;;r=r.nextSibling){let o=r?r.from:t;if(o>s&&i.push({from:s,to:o}),!r)break;s=r.to}return i}function wk(n){let{codeParser:e,htmlParser:t}=n;return{wrap:Su((r,s)=>{let o=r.type.id;if(e&&(o==w.CodeBlock||o==w.FencedCode)){let l="";if(o==w.FencedCode){let h=r.node.getChild(w.CodeInfo);h&&(l=s.read(h.from,h.to))}let a=e(l);if(a)return{parser:a,overlay:h=>h.type.id==w.CodeText,bracketed:o==w.FencedCode}}else if(t&&(o==w.HTMLBlock||o==w.HTMLTag||o==w.CommentBlock))return{parser:t,overlay:xk(r.node,r.from,r.to)};return null})}}const $k={resolve:"Strikethrough",mark:"StrikethroughMark"},Pk={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":p.strikethrough}},{name:"StrikethroughMark",style:p.processingInstruction}],parseInline:[{name:"Strikethrough",parse(n,e,t){if(e!=126||n.char(t+1)!=126||n.char(t+2)==126)return-1;let i=n.slice(t-1,t),r=n.slice(t+2,t+3),s=/\s|^$/.test(i),o=/\s|^$/.test(r),l=Ln.test(i),a=Ln.test(r);return n.addDelimiter($k,t,t+2,!o&&(!a||s||l),!s&&(!l||o||a))},after:"Emphasis"}]};function xn(n,e,t=0,i,r=0){let s=0,o=!0,l=-1,a=-1,h=!1,c=()=>{i.push(n.elt("TableCell",r+l,r+a,n.parser.parseInline(e.slice(l,a),r+l)))};for(let f=t;f-1)&&s++,o=!1,i&&(l>-1&&c(),i.push(n.elt("TableDelimiter",f+r,f+r+1))),l=a=-1):(h||O!=32&&O!=9)&&(l<0&&(l=f),a=f+1),h=!h&&O==92}return l>-1&&(s++,i&&c()),s}function rf(n,e){for(let t=e;tr instanceof sf)||!rf(e.text,e.basePos))return!1;let i=n.peekLine();return np.test(i)&&xn(n,e.text,e.basePos)==xn(n,i,e.basePos)},before:"SetextHeading"}]};class Tk{nextLine(){return!1}finish(e,t){return e.addLeafElement(t,e.elt("Task",t.start,t.start+t.content.length,[e.elt("TaskMarker",t.start,t.start+3),...e.parser.parseInline(t.content.slice(3),t.start+3)])),!0}}const Ck={defineNodes:[{name:"Task",block:!0,style:p.list},{name:"TaskMarker",style:p.atom}],parseBlock:[{name:"TaskList",leaf(n,e){return/^\[[ xX]\][ \t]/.test(e.content)&&n.parentType().name=="ListItem"?new Tk:null},after:"SetextHeading"}]},of=/(www\.)|(https?:\/\/)|([\w.+-]{1,100}@)|(mailto:|xmpp:)/gy,lf=/[\w-]+(\.[\w-]+)+(:\d+)?(\/[^\s<]*)?/gy,Xk=/[\w-]+\.[\w-]+($|[/:])/,af=/[\w.+-]+@[\w-]+(\.[\w.-]+)+/gy,hf=/\/[a-zA-Z\d@.]+/gy;function cf(n,e,t,i){let r=0;for(let s=e;s-1)return-1;let i=e+t[0].length;for(;;){let r=n[i-1],s;if(/[?!.,:*_~]/.test(r)||r==")"&&cf(n,e,i,")")>cf(n,e,i,"("))i--;else if(r==";"&&(s=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(n.slice(e,i))))i=e+s.index;else break}return i}function ff(n,e){af.lastIndex=e;let t=af.exec(n);if(!t)return-1;let i=t[0][t[0].length-1];return i=="_"||i=="-"?-1:e+t[0].length-(i=="."?1:0)}const Rk={parseInline:[{name:"Autolink",parse(n,e,t){let i=t-n.offset;if(i&&/\w/.test(n.text[i-1]))return-1;of.lastIndex=i;let r=of.exec(n.text),s=-1;if(!r)return-1;if(r[1]||r[2]){if(s=Zk(n.text,i+r[0].length),s>-1&&n.hasOpenLink){let o=/([^\[\]]|\[[^\]]*\])*/.exec(n.text.slice(i,s));s=i+o[0].length}}else r[3]?s=ff(n.text,i):(s=ff(n.text,i+r[0].length),s>-1&&r[0]=="xmpp:"&&(hf.lastIndex=s,r=hf.exec(n.text),r&&(s=r.index+r[0].length)));return s<0?-1:(n.addElement(n.elt("URL",t,s+n.offset)),s+n.offset)}}]},Ak=[vk,Ck,Pk,Rk];function rp(n,e,t){return(i,r,s)=>{if(r!=n||i.char(s+1)==n)return-1;let o=[i.elt(t,s,s+1)];for(let l=s+1;l"}}}),op=new M,lp=kk.configure({props:[ei.add(n=>!n.is("Block")||n.is("Document")||Ml(n)!=null||Wk(n)?void 0:(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})),op.add(Ml),Jt.add({Document:()=>null}),jt.add({Document:sp})]});function Ml(n){let e=/^(?:ATX|Setext)Heading(\d)$/.exec(n.name);return e?+e[1]:void 0}function Wk(n){return n.name=="OrderedList"||n.name=="BulletList"}function _k(n,e){let t=n;for(;;){let i=t.nextSibling,r;if(!i||(r=Ml(i.type))!=null&&r<=e)break;t=i}return t.to}const Ek=$u.of((n,e,t)=>{for(let i=F(n).resolveInner(t,-1);i&&!(i.fromt)return{from:t,to:s}}return null});function Wa(n){return new De(sp,n,[],"markdown")}const jk=Wa(lp),Vk=lp.configure([Ak,Mk,qk,zk,{props:[ei.add({Table:(n,e)=>({from:e.doc.lineAt(n.from).to,to:n.to})})]}]),ds=Wa(Vk);function Lk(n,e){return t=>{if(t&&n){let i=null;if(t=/\S*/.exec(t)[0],typeof n=="function"?i=n(t):i=is.matchLanguageName(n,t,!0),i instanceof is)return i.support?i.support.language.parser:Qi.getSkippingParser(i.load());if(i)return i.parser}return e?e.parser:null}}let Po=class{constructor(e,t,i,r,s,o,l){this.node=e,this.from=t,this.to=i,this.spaceBefore=r,this.spaceAfter=s,this.type=o,this.item=l}blank(e,t=!0){let i=this.spaceBefore+(this.node.name=="Blockquote"?">":"");if(e!=null){for(;i.length0;r--)i+=" ";return i+(t?this.spaceAfter:"")}}marker(e,t){let i=this.node.name=="OrderedList"?String(+hp(this.item,e)[2]+t):"";return this.spaceBefore+i+this.type+this.spaceAfter}};function ap(n,e){let t=[],i=[];for(let r=n;r;r=r.parent){if(r.name=="FencedCode")return i;(r.name=="ListItem"||r.name=="Blockquote")&&t.push(r)}for(let r=t.length-1;r>=0;r--){let s=t[r],o,l=e.lineAt(s.from),a=s.from-l.from;if(s.name=="Blockquote"&&(o=/^ *>( ?)/.exec(l.text.slice(a))))i.push(new Po(s,a,a+o[0].length,"",o[1],">",null));else if(s.name=="ListItem"&&s.parent.name=="OrderedList"&&(o=/^( *)\d+([.)])( *)/.exec(l.text.slice(a)))){let h=o[3],c=o[0].length;h.length>=4&&(h=h.slice(0,h.length-4),c-=4),i.push(new Po(s.parent,a,a+c,o[1],h,o[2],s))}else if(s.name=="ListItem"&&s.parent.name=="BulletList"&&(o=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(l.text.slice(a)))){let h=o[4],c=o[0].length;h.length>4&&(h=h.slice(0,h.length-4),c-=4);let f=o[2];o[3]&&(f+=o[3].replace(/[xX]/," ")),i.push(new Po(s.parent,a,a+c,o[1],h,f,s))}}return i}function hp(n,e){return/^(\s*)(\d+)(?=[.)])/.exec(e.sliceString(n.from,n.from+10))}function vo(n,e,t,i=0){for(let r=-1,s=n;;){if(s.name=="ListItem"){let l=hp(s,e),a=+l[2];if(r>=0){if(a!=r+1)return;t.push({from:s.from+l[1].length,to:s.from+l[0].length,insert:String(r+2+i)})}r=a}let o=s.nextSibling;if(!o)break;s=o}}function _a(n,e){let t=/^[ \t]*/.exec(n)[0].length;if(!t||e.facet(Fi)!=" ")return n;let i=et(n,4,t),r="";for(let s=i;s>0;)s>=4?(r+=" ",s-=4):(r+=" ",s--);return r+n.slice(t)}const Yk=(n={})=>({state:e,dispatch:t})=>{let i=F(e),{doc:r}=e,s=null,o=e.changeByRange(l=>{if(!l.empty||!ds.isActiveAt(e,l.from,-1)&&!ds.isActiveAt(e,l.from,1))return s={range:l};let a=l.from,h=r.lineAt(a),c=ap(i.resolveInner(a,-1),r);for(;c.length&&c[c.length-1].from>a-h.from;)c.pop();if(!c.length)return s={range:l};let f=c[c.length-1];if(f.to-f.spaceAfter.length>a-h.from)return s={range:l};let O=a>=f.to-f.spaceAfter.length&&!/\S/.test(h.text.slice(f.to));if(f.item&&O){let Q=f.node.firstChild,S=f.node.getChild("ListItem","ListItem");if(Q.to>=a||S&&S.to0&&!/[^\s>]/.test(r.lineAt(h.from-1).text)||n.nonTightLists===!1){let y=c.length>1?c[c.length-2]:null,P,k="";y&&y.item?(P=h.from+y.from,k=y.marker(r,1)):P=h.from+(y?y.to:0);let x=[{from:P,to:a,insert:k}];return f.node.name=="OrderedList"&&vo(f.item,r,x,-2),y&&y.node.name=="OrderedList"&&vo(y.item,r,x),{range:b.cursor(P+k.length),changes:x}}else{let y=uf(c,e,h);return{range:b.cursor(a+y.length+1),changes:{from:h.from,insert:y+e.lineBreak}}}}if(f.node.name=="Blockquote"&&O&&h.from){let Q=r.lineAt(h.from-1),S=/>\s*$/.exec(Q.text);if(S&&S.index==f.from){let y=e.changes([{from:Q.from+S.index,to:Q.to},{from:h.from+f.from,to:h.to}]);return{range:l.map(y),changes:y}}}let u=[];f.node.name=="OrderedList"&&vo(f.item,r,u);let d=f.item&&f.item.from]*/.exec(h.text)[0].length>=f.to)for(let Q=0,S=c.length-1;Q<=S;Q++)m+=Q==S&&!d?c[Q].marker(r,1):c[Q].blank(Qh.from&&/\s/.test(h.text.charAt(g-h.from-1));)g--;return m=_a(m,e),Bk(f.node,e.doc)&&(m=uf(c,e,h)+e.lineBreak+m),u.push({from:g,to:a,insert:e.lineBreak+m}),{range:b.cursor(g+m.length+1),changes:u}});return s?!1:(t(e.update(o,{scrollIntoView:!0,userEvent:"input"})),!0)},Dk=Yk();function Of(n){return n.name=="QuoteMark"||n.name=="ListMark"}function Bk(n,e){if(n.name!="OrderedList"&&n.name!="BulletList")return!1;let t=n.firstChild,i=n.getChild("ListItem","ListItem");if(!i)return!1;let r=e.lineAt(t.to),s=e.lineAt(i.from),o=/^[\s>]*$/.test(r.text);return r.number+(o?0:1){let t=F(n),i=null,r=n.changeByRange(s=>{let o=s.from,{doc:l}=n;if(s.empty&&ds.isActiveAt(n,s.from)){let a=l.lineAt(o),h=ap(Ik(t,o),l);if(h.length){let c=h[h.length-1],f=c.to-c.spaceAfter.length+(c.spaceAfter?1:0);if(o-a.from>f&&!/\S/.test(a.text.slice(f,o-a.from)))return{range:b.cursor(a.from+f),changes:{from:a.from+f,to:o}};if(o-a.from==f&&(!c.item||a.from<=c.item.from||!/\S/.test(a.text.slice(0,c.to)))){let O=a.from+c.from;if(c.item&&c.node.from{var t;let{main:i}=e.state.selection;if(i.empty)return!1;let r=(t=n.clipboardData)===null||t===void 0?void 0:t.getData("text/plain");if(!r||!/^(https?:\/\/|mailto:|xmpp:|www\.)/.test(r)||(/^www\./.test(r)&&(r="https://"+r),!ds.isActiveAt(e.state,i.from,1)))return!1;let s=F(e.state),o=!1;return s.iterate({from:i.from,to:i.to,enter:l=>{(l.from>i.from||Hk.test(l.name))&&(o=!0)},leave:l=>{l.to=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102}const Kx=new ye((n,e)=>{let t;if(n.next<0)n.acceptToken(ix);else if(e.context.flags&jr)Co(n.next)&&n.acceptToken(tx,1);else if(((t=n.peek(-1))<0||Co(t))&&e.canShift(df)){let i=0;for(;n.next==Ea||n.next==Ms;)n.advance(),i++;(n.next==yi||n.next==Yn||n.next==ja)&&n.acceptToken(df,-i)}else Co(n.next)&&n.acceptToken(ex,1)},{contextual:!0}),Jx=new ye((n,e)=>{let t=e.context;if(t.flags)return;let i=n.peek(-1);if(i==yi||i==Yn){let r=0,s=0;for(;;){if(n.next==Ea)r++;else if(n.next==Ms)r+=8-r%8;else break;n.advance(),s++}r!=t.indent&&n.next!=yi&&n.next!=Yn&&n.next!=ja&&(r[n,e|gp])),iw=new ga({start:ew,reduce(n,e,t,i){return n.flags&jr&&Hx.has(e)||(e==Sx||e==dp)&&n.flags&gp?n.parent:n},shift(n,e,t,i){return e==fp?new Vr(n,tw(i.read(i.pos,t.pos)),0):e==Op?n.parent:e==sx||e==hx||e==Ox||e==up?new Vr(n,0,jr):Qf.has(e)?new Vr(n,0,Qf.get(e)|n.flags&jr):n},hash(n){return n.hash}}),nw=new ye(n=>{for(let e=0;e<5;e++){if(n.next!="print".charCodeAt(e))return;n.advance()}if(!/\w/.test(String.fromCharCode(n.next)))for(let e=0;;e++){let t=n.peek(e);if(!(t==Ea||t==Ms)){t!=Dx&&t!=Bx&&t!=yi&&t!=Yn&&t!=ja&&n.acceptToken(Jk);return}}}),rw=new ye((n,e)=>{let{flags:t}=e.context,i=t&xt?mp:pp,r=(t&wt)>0,s=!(t&$t),o=(t&Pt)>0,l=n.pos;for(;!(n.next<0);)if(o&&n.next==zl)if(n.peek(1)==zl)n.advance(2);else{if(n.pos==l){n.acceptToken(up,1);return}break}else if(s&&n.next==gf){if(n.pos==l){n.advance();let a=n.next;a>=0&&(n.advance(),sw(n,a)),n.acceptToken(rx);return}break}else if(n.next==gf&&!s&&n.peek(1)>-1)n.advance(2);else if(n.next==i&&(!r||n.peek(1)==i&&n.peek(2)==i)){if(n.pos==l){n.acceptToken(pf,r?3:1);return}break}else if(n.next==yi){if(r)n.advance();else if(n.pos==l){n.acceptToken(pf);return}break}else n.advance();n.pos>l&&n.acceptToken(nx)});function sw(n,e){if(e==Ix)for(let t=0;t<2&&n.next>=48&&n.next<=55;t++)n.advance();else if(e==Gx)for(let t=0;t<2&&Xo(n.next);t++)n.advance();else if(e==Nx)for(let t=0;t<4&&Xo(n.next);t++)n.advance();else if(e==Fx)for(let t=0;t<8&&Xo(n.next);t++)n.advance();else if(e==Ux&&n.next==zl){for(n.advance();n.next>=0&&n.next!=mf&&n.next!=pp&&n.next!=mp&&n.next!=yi;)n.advance();n.next==mf&&n.advance()}}const ow=Kt({'async "*" "**" FormatConversion FormatSpec':p.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield match case":p.controlKeyword,"in not and or is del":p.operatorKeyword,"from def class global nonlocal lambda":p.definitionKeyword,import:p.moduleKeyword,"with as print":p.keyword,Boolean:p.bool,None:p.null,VariableName:p.variableName,"CallExpression/VariableName":p.function(p.variableName),"FunctionDefinition/VariableName":p.function(p.definition(p.variableName)),"ClassDefinition/VariableName":p.definition(p.className),PropertyName:p.propertyName,"CallExpression/MemberExpression/PropertyName":p.function(p.propertyName),Comment:p.lineComment,Number:p.number,String:p.string,FormatString:p.special(p.string),Escape:p.escape,UpdateOp:p.updateOperator,"ArithOp!":p.arithmeticOperator,BitOp:p.bitwiseOperator,CompareOp:p.compareOperator,AssignOp:p.definitionOperator,Ellipsis:p.punctuation,At:p.meta,"( )":p.paren,"[ ]":p.squareBracket,"{ }":p.brace,".":p.derefOperator,", ;":p.separator}),lw={__proto__:null,await:44,or:54,and:56,in:60,not:62,is:64,if:70,else:72,lambda:76,yield:94,from:96,async:102,for:104,None:162,True:164,False:164,del:178,pass:182,break:186,continue:190,return:194,raise:202,import:206,as:208,global:212,nonlocal:214,assert:218,type:223,elif:236,while:240,try:246,except:248,finally:250,with:254,def:258,class:268,match:279,case:285},aw=Ft.deserialize({version:14,states:"##jQ`QeOOP$}OSOOO&WQtO'#HUOOQS'#Co'#CoOOQS'#Cp'#CpO'vQdO'#CnO*UQtO'#HTOOQS'#HU'#HUOOQS'#DU'#DUOOQS'#HT'#HTO*rQdO'#D_O+VQdO'#DfO+gQdO'#DjO+zOWO'#DuO,VOWO'#DvO.[QtO'#GuOOQS'#Gu'#GuO'vQdO'#GtO0ZQtO'#GtOOQS'#Eb'#EbO0rQdO'#EcOOQS'#Gs'#GsO0|QdO'#GrOOQV'#Gr'#GrO1XQdO'#FYOOQS'#G^'#G^O1^QdO'#FXOOQV'#IS'#ISOOQV'#Gq'#GqOOQV'#Fq'#FqQ`QeOOO'vQdO'#CqO1lQdO'#C}O1sQdO'#DRO2RQdO'#HYO2cQtO'#EVO'vQdO'#EWOOQS'#EY'#EYOOQS'#E['#E[OOQS'#E^'#E^O2wQdO'#E`O3_QdO'#EdO3rQdO'#EfO3zQtO'#EfO1XQdO'#EiO0rQdO'#ElO1XQdO'#EnO0rQdO'#EtO0rQdO'#EwO4VQdO'#EyO4^QdO'#FOO4iQdO'#EzO0rQdO'#FOO1XQdO'#FQO1XQdO'#FVO4nQdO'#F[P4uOdO'#GpPOOO)CBd)CBdOOQS'#Ce'#CeOOQS'#Cf'#CfOOQS'#Cg'#CgOOQS'#Ch'#ChOOQS'#Ci'#CiOOQS'#Cj'#CjOOQS'#Cl'#ClO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO5TQdO'#DoOOQS,5:Y,5:YO5hQdO'#HdOOQS,5:],5:]O5uQ!fO,5:]O5zQtO,59YO1lQdO,59bO1lQdO,59bO1lQdO,59bO8jQdO,59bO8oQdO,59bO8vQdO,59jO8}QdO'#HTO:TQdO'#HSOOQS'#HS'#HSOOQS'#D['#D[O:lQdO,59aO'vQdO,59aO:zQdO,59aOOQS,59y,59yO;PQdO,5:RO'vQdO,5:ROOQS,5:Q,5:QO;_QdO,5:QO;dQdO,5:XO'vQdO,5:XO'vQdO,5:VOOQS,5:U,5:UO;uQdO,5:UO;zQdO,5:WOOOW'#Fy'#FyOOOOQS'#Ds'#DsOOQS1G/w1G/wOOQS1G.|1G.|O!/[QtO1G.|O!/cQtO1G.|O1lQdO1G.|O!0OQdO1G/UOOQS'#DZ'#DZO0rQdO,59tOOQS1G.{1G.{O!0VQdO1G/eO!0gQdO1G/eO!0oQdO1G/fO'vQdO'#H[O!0tQdO'#H[O!0yQtO1G.{O!1ZQdO,59iO!2aQdO,5=zO!2qQdO,5=zO!2yQdO1G/mO!3OQtO1G/mOOQS1G/l1G/lO!3`QdO,5=uO!4VQdO,5=uO0rQdO1G/qO!4tQdO1G/sO!4yQtO1G/sO!5ZQtO1G/qOOQS1G/p1G/pOOQS1G/r1G/rOOOW-E9w-E9wOOQS1G/{1G/{O!5kQdO'#HxO0rQdO'#HxO!5|QdO,5>cOOOW-E9x-E9xOOQS1G/|1G/|OOQS-E9{-E9{O!6[Q#xO1G2zO!6{QtO1G2zO'vQdO,5kOOQS1G1`1G1`O!8RQdO1G1`OOQS'#DV'#DVO0rQdO,5=qOOQS,5=q,5=qO!8WQdO'#FrO!8cQdO,59oO!8kQdO1G/XO!8uQtO,5=uOOQS1G3`1G3`OOQS,5:m,5:mO!9fQdO'#GtOOQS,5jO!;ZQdO,5>jO1XQdO,5>jO!;lQdO,5>iOOQS-E:R-E:RO!;qQdO1G0lO!;|QdO1G0lO!lO!lO!hO!=VQdO,5>hO!=hQdO'#EpO0rQdO1G0tO!=sQdO1G0tO!=xQgO1G0zO!AvQgO1G0}O!EqQdO,5>oO!E{QdO,5>oO!FTQtO,5>oO0rQdO1G1PO!F_QdO1G1PO4iQdO1G1UO!!vQdO1G1WOOQV,5;a,5;aO!FdQfO,5;aO!FiQgO1G1QO!JjQdO'#GZO4iQdO1G1QO4iQdO1G1QO!JzQdO,5>pO!KXQdO,5>pO1XQdO,5>pOOQV1G1U1G1UO!KaQdO'#FSO!KrQ!fO1G1WO!KzQdO1G1WOOQV1G1]1G1]O4iQdO1G1]O!LPQdO1G1]O!LXQdO'#F^OOQV1G1b1G1bO!#ZQtO1G1bPOOO1G2v1G2vP!L^OSO1G2vOOQS,5=},5=}OOQS'#Dp'#DpO0rQdO,5=}O!LfQdO,5=|O!LyQdO,5=|OOQS1G/u1G/uO!MRQdO,5>PO!McQdO,5>PO!MkQdO,5>PO!NOQdO,5>PO!N`QdO,5>POOQS1G3j1G3jOOQS7+$h7+$hO!8kQdO7+$pO#!RQdO1G.|O#!YQdO1G.|OOQS1G/`1G/`OOQS,5<`,5<`O'vQdO,5<`OOQS7+%P7+%PO#!aQdO7+%POOQS-E9r-E9rOOQS7+%Q7+%QO#!qQdO,5=vO'vQdO,5=vOOQS7+$g7+$gO#!vQdO7+%PO##OQdO7+%QO##TQdO1G3fOOQS7+%X7+%XO##eQdO1G3fO##mQdO7+%XOOQS,5<_,5<_O'vQdO,5<_O##rQdO1G3aOOQS-E9q-E9qO#$iQdO7+%]OOQS7+%_7+%_O#$wQdO1G3aO#%fQdO7+%_O#%kQdO1G3gO#%{QdO1G3gO#&TQdO7+%]O#&YQdO,5>dO#&sQdO,5>dO#&sQdO,5>dOOQS'#Dx'#DxO#'UO&jO'#DzO#'aO`O'#HyOOOW1G3}1G3}O#'fQdO1G3}O#'nQdO1G3}O#'yQ#xO7+(fO#(jQtO1G2UP#)TQdO'#GOOOQS,5nQdO,5sQdO1G4OOOQS-E9y-E9yO#?^QdO1G4OO<[QdO'#H{OOOO'#D{'#D{OOOO'#F|'#F|O#?oO&jO,5:fOOOW,5>e,5>eOOOW7+)i7+)iO#?zQdO7+)iO#@SQdO1G2zO#@mQdO1G2zP'vQdO'#FuO0rQdO<mO#BQQdO,5>mOOQS1G0v1G0vOOQS<rO#KgQdO,5>rO#KrQdO,5>rO#K}QdO,5>qO#L`QdO,5>qOOQS1G1Y1G1YOOQS,5;p,5;pOOQV<VAN>VO$ oQdO<cAN>cO0rQdO1G1|O$!PQtO1G1|P$!ZQdO'#FvOOQS1G2R1G2RP$!hQdO'#F{O$!uQdO7+)jO$#`QdO,5>gOOOO-E9z-E9zOOOW<tO$4{QdO,5>tO1XQdO,5vO$)nQdO,5>vOOQS1G1p1G1pOOQS,5<[,5<[OOQU7+'P7+'PO$+zQdO1G/iO$)nQdO,5wO$8zQdO,5>wOOQS1G1s1G1sOOQS7+'S7+'SP$)nQdO'#GdO$9SQdO1G4bO$9^QdO1G4bO$9fQdO1G4bOOQS7+%T7+%TO$9tQdO1G1tO$:SQtO'#FaO$:ZQdO,5<}OOQS,5<},5<}O$:iQdO1G4cOOQS-E:a-E:aO$)nQdO,5<|O$:pQdO,5<|O$:uQdO7+)|OOQS-E:`-E:`O$;PQdO7+)|O$)nQdO,5S~O%cOS%^OSSOS%]PQ~OPdOVaOfoOhYOopOs!POvqO!PrO!Q{O!T!SO!U!RO!XZO!][O!h`O!r`O!s`O!t`O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#l!QO#o!TO#s!UO#u!VO#z!WO#}hO$P!XO%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~O%]!YO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%j![O%k!]O%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aO~Ok%xXl%xXm%xXn%xXo%xXp%xXs%xXz%xX{%xX!x%xX#g%xX%[%xX%_%xX%z%xXg%xX!T%xX!U%xX%{%xX!W%xX![%xX!Q%xX#[%xXt%xX!m%xX~P%SOfoOhYO!XZO!][O!h`O!r`O!s`O!t`O%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~Oz%wX{%wX#g%wX%[%wX%_%wX%z%wX~Ok!pOl!qOm!oOn!oOo!rOp!sOs!tO!x%wX~P)pOV!zOg!|Oo0cOv0qO!PrO~P'vOV#OOo0cOv0qO!W#PO~P'vOV#SOa#TOo0cOv0qO![#UO~P'vOQ#XO%`#XO%a#ZO~OQ#^OR#[O%`#^O%a#`O~OV%iX_%iXa%iXh%iXk%iXl%iXm%iXn%iXo%iXp%iXs%iXz%iX!X%iX!f%iX%j%iX%k%iX%l%iX%m%iX%n%iX%o%iX%p%iX%q%iX%r%iX%s%iXg%iX!T%iX!U%iX~O&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O{%iX!x%iX#g%iX%[%iX%_%iX%z%iX%{%iX!W%iX![%iX!Q%iX#[%iXt%iX!m%iX~P,eOz#dO{%hX!x%hX#g%hX%[%hX%_%hX%z%hX~Oo0cOv0qO~P'vO#g#gO%[#iO%_#iO~O%uWO~O!T#nO#u!VO#z!WO#}hO~OopO~P'vOV#sOa#tO%uWO{wP~OV#xOo0cOv0qO!Q#yO~P'vO{#{O!x$QO%z#|O#g!yX%[!yX%_!yX~OV#xOo0cOv0qO#g#SX%[#SX%_#SX~P'vOo0cOv0qO#g#WX%[#WX%_#WX~P'vOh$WO%uWO~O!f$YO!r$YO%uWO~OV$eO~P'vO!U$gO#s$hO#u$iO~O{$jO~OV$qO~P'vOS$sO%[$rO%_$rO%c$tO~OV$}Oa$}Og%POo0cOv0qO~P'vOo0cOv0qO{%SO~P'vO&Y%UO~Oa!bOh!iO!X!kO!f!mOVba_bakbalbambanbaobapbasbazba{ba!xba#gba%[ba%_ba%jba%kba%lba%mba%nba%oba%pba%qba%rba%sba%zbagba!Tba!Uba%{ba!Wba![ba!Qba#[batba!mba~On%ZO~Oo%ZO~P'vOo0cO~P'vOk0eOl0fOm0dOn0dOo0mOp0nOs0rOg%wX!T%wX!U%wX%{%wX!W%wX![%wX!Q%wX#[%wX!m%wX~P)pO%{%]Og%vXz%vX!T%vX!U%vX!W%vX{%vX~Og%_Oz%`O!T%dO!U%cO~Og%_O~Oz%gO!T%dO!U%cO!W&SX~O!W%kO~Oz%lO{%nO!T%dO!U%cO![%}X~O![%rO~O![%sO~OQ#XO%`#XO%a%uO~OV%wOo0cOv0qO!PrO~P'vOQ#^OR#[O%`#^O%a%zO~OV!qa_!qaa!qah!qak!qal!qam!qan!qao!qap!qas!qaz!qa{!qa!X!qa!f!qa!x!qa#g!qa%[!qa%_!qa%j!qa%k!qa%l!qa%m!qa%n!qa%o!qa%p!qa%q!qa%r!qa%s!qa%z!qag!qa!T!qa!U!qa%{!qa!W!qa![!qa!Q!qa#[!qat!qa!m!qa~P#yOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P%SOV&OOopOvqO{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P'vOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#g$zX%[$zX%_$zX~P'vO#g#gO%[&TO%_&TO~O!f&UOh&sX%[&sXz&sX#[&sX#g&sX%_&sX#Z&sXg&sX~Oh!iO%[&WO~Okealeameaneaoeapeaseazea{ea!xea#gea%[ea%_ea%zeagea!Tea!Uea%{ea!Wea![ea!Qea#[eatea!mea~P%SOsqazqa{qa#gqa%[qa%_qa%zqa~Ok!pOl!qOm!oOn!oOo!rOp!sO!xqa~PEcO%z&YOz%yX{%yX~O%uWOz%yX{%yX~Oz&]O{wX~O{&_O~Oz%lO#g%}X%[%}X%_%}Xg%}X{%}X![%}X!m%}X%z%}X~OV0lOo0cOv0qO!PrO~P'vO%z#|O#gUa%[Ua%_Ua~Oz&hO#g&PX%[&PX%_&PXn&PX~P%SOz&kO!Q&jO#g#Wa%[#Wa%_#Wa~Oz&lO#[&nO#g&rX%[&rX%_&rXg&rX~O!f$YO!r$YO#Z&qO%uWO~O#Z&qO~Oz&sO#g&tX%[&tX%_&tX~Oz&uO#g&pX%[&pX%_&pX{&pX~O!X&wO%z&xO~Oz&|On&wX~P%SOn'PO~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO%['UO~P'vOt'YO#p'WO#q'XOP#naV#naf#nah#nao#nas#nav#na!P#na!Q#na!T#na!U#na!X#na!]#na!h#na!r#na!s#na!t#na!{#na!}#na#P#na#R#na#T#na#X#na#Z#na#^#na#_#na#a#na#c#na#l#na#o#na#s#na#u#na#z#na#}#na$P#na%X#na%o#na%p#na%t#na%u#na&Z#na&[#na&]#na&^#na&_#na&`#na&a#na&b#na&c#na&d#na&e#na&f#na&g#na&h#na&i#na&j#na%Z#na%_#na~Oz'ZO#[']O{&xX~Oh'_O!X&wO~Oh!iO{$jO!X&wO~O{'eO~P%SO%['hO%_'hO~OS'iO%['hO%_'hO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%k!]O~P!#uO%kWi~P!#uOV!aO_!aOa!bOh!iO!X!kO!f!mO%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%m!_O%n!_O~P!&pO%mWi%nWi~P!&pOa!bOh!iO!X!kO!f!mOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%mWi%nWi%oWi%pWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~OV!aO_!aO%q!aO%r!aO%s!aO~P!)nOVWi_Wi%qWi%rWi%sWi~P!)nO!T%dO!U%cOg&VXz&VX~O%z'kO%{'kO~P,eOz'mOg&UX~Og'oO~Oz'pO{'rO!W&XX~Oo0cOv0qOz'pO{'sO!W&XX~P'vO!W'uO~Om!oOn!oOo!rOp!sOkjisjizji{ji!xji#gji%[ji%_ji%zji~Ol!qO~P!.aOlji~P!.aOk0eOl0fOm0dOn0dOo0mOp0nO~Ot'wO~P!/jOV'|Og'}Oo0cOv0qO~P'vOg'}Oz(OO~Og(QO~O!U(SO~Og(TOz(OO!T%dO!U%cO~P%SOk0eOl0fOm0dOn0dOo0mOp0nOgqa!Tqa!Uqa%{qa!Wqa![qa!Qqa#[qatqa!mqa~PEcOV'|Oo0cOv0qO!W&Sa~P'vOz(WO!W&Sa~O!W(XO~Oz(WO!T%dO!U%cO!W&Sa~P%SOV(]Oo0cOv0qO![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~P'vOz(^O![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~O![(aO~Oz(^O!T%dO!U%cO![%}a~P%SOz(dO!T%dO!U%cO![&Ta~P%SOz(gO{&lX![&lX!m&lX%z&lX~O{(kO![(mO!m(nO%z(jO~OV&OOopOvqO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~P'vOz(pO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~O!f&UOh&sa%[&saz&sa#[&sa#g&sa%_&sa#Z&sag&sa~O%[(uO~OV#sOa#tO%uWO~Oz&]O{wa~OopOvqO~P'vOz(^O#g%}a%[%}a%_%}ag%}a{%}a![%}a!m%}a%z%}a~P%SOz(zO#g%hX%[%hX%_%hX%z%hX~O%z#|O#gUi%[Ui%_Ui~O#g&Pa%[&Pa%_&Pan&Pa~P'vOz(}O#g&Pa%[&Pa%_&Pan&Pa~O%uWO#g&ra%[&ra%_&rag&ra~Oz)SO#g&ra%[&ra%_&rag&ra~Og)VO~OV)WOh$WO%uWO~O#Z)XO~O%uWO#g&ta%[&ta%_&ta~Oz)ZO#g&ta%[&ta%_&ta~Oo0cOv0qO#g&pa%[&pa%_&pa{&pa~P'vOz)^O#g&pa%[&pa%_&pa{&pa~OV)`Oa)`O%uWO~O%z)eO~Ot)hO#j)gOP#hiV#hif#hih#hio#his#hiv#hi!P#hi!Q#hi!T#hi!U#hi!X#hi!]#hi!h#hi!r#hi!s#hi!t#hi!{#hi!}#hi#P#hi#R#hi#T#hi#X#hi#Z#hi#^#hi#_#hi#a#hi#c#hi#l#hi#o#hi#s#hi#u#hi#z#hi#}#hi$P#hi%X#hi%o#hi%p#hi%t#hi%u#hi&Z#hi&[#hi&]#hi&^#hi&_#hi&`#hi&a#hi&b#hi&c#hi&d#hi&e#hi&f#hi&g#hi&h#hi&i#hi&j#hi%Z#hi%_#hi~Ot)iOP#kiV#kif#kih#kio#kis#kiv#ki!P#ki!Q#ki!T#ki!U#ki!X#ki!]#ki!h#ki!r#ki!s#ki!t#ki!{#ki!}#ki#P#ki#R#ki#T#ki#X#ki#Z#ki#^#ki#_#ki#a#ki#c#ki#l#ki#o#ki#s#ki#u#ki#z#ki#}#ki$P#ki%X#ki%o#ki%p#ki%t#ki%u#ki&Z#ki&[#ki&]#ki&^#ki&_#ki&`#ki&a#ki&b#ki&c#ki&d#ki&e#ki&f#ki&g#ki&h#ki&i#ki&j#ki%Z#ki%_#ki~OV)kOn&wa~P'vOz)lOn&wa~Oz)lOn&wa~P%SOn)pO~O%Y)tO~Ot)wO#p'WO#q)vOP#niV#nif#nih#nio#nis#niv#ni!P#ni!Q#ni!T#ni!U#ni!X#ni!]#ni!h#ni!r#ni!s#ni!t#ni!{#ni!}#ni#P#ni#R#ni#T#ni#X#ni#Z#ni#^#ni#_#ni#a#ni#c#ni#l#ni#o#ni#s#ni#u#ni#z#ni#}#ni$P#ni%X#ni%o#ni%p#ni%t#ni%u#ni&Z#ni&[#ni&]#ni&^#ni&_#ni&`#ni&a#ni&b#ni&c#ni&d#ni&e#ni&f#ni&g#ni&h#ni&i#ni&j#ni%Z#ni%_#ni~OV)zOo0cOv0qO{$jO~P'vOo0cOv0qO{&xa~P'vOz*OO{&xa~OV*SOa*TOg*WO%q*UO%uWO~O{$jO&{*YO~Oh'_O~Oh!iO{$jO~O%[*_O~O%[*aO%_*aO~OV$}Oa$}Oo0cOv0qOg&Ua~P'vOz*dOg&Ua~Oo0cOv0qO{*gO!W&Xa~P'vOz*hO!W&Xa~Oo0cOv0qOz*hO{*kO!W&Xa~P'vOo0cOv0qOz*hO!W&Xa~P'vOz*hO{*kO!W&Xa~Om0dOn0dOo0mOp0nOgjikjisjizji!Tji!Uji%{ji!Wji{ji![ji#gji%[ji%_ji!Qji#[jitji!mji%zji~Ol0fO~P!NkOlji~P!NkOV'|Og*pOo0cOv0qO~P'vOn*rO~Og*pOz*tO~Og*uO~OV'|Oo0cOv0qO!W&Si~P'vOz*vO!W&Si~O!W*wO~OV(]Oo0cOv0qO![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~P'vOz*zO!T%dO!U%cO![&Ti~Oz*}O![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~O![+OO~Oa+QOo0cOv0qO![&Ti~P'vOz*zO![&Ti~O![+SO~OV+UOo0cOv0qO{&la![&la!m&la%z&la~P'vOz+VO{&la![&la!m&la%z&la~O!]+YO&n+[O![!nX~O![+^O~O{(kO![+_O~O{(kO![+_O!m+`O~OV&OOopOvqO{%hq!x%hq#g%hq%[%hq%_%hq%z%hq~P'vOz$ri{$ri!x$ri#g$ri%[$ri%_$ri%z$ri~P%SOV&OOopOvqO~P'vOV&OOo0cOv0qO#g%ha%[%ha%_%ha%z%ha~P'vOz+aO#g%ha%[%ha%_%ha%z%ha~Oz$ia#g$ia%[$ia%_$ian$ia~P%SO#g&Pi%[&Pi%_&Pin&Pi~P'vOz+dO#g#Wq%[#Wq%_#Wq~O#[+eOz$va#g$va%[$va%_$vag$va~O%uWO#g&ri%[&ri%_&rig&ri~Oz+gO#g&ri%[&ri%_&rig&ri~OV+iOh$WO%uWO~O%uWO#g&ti%[&ti%_&ti~Oo0cOv0qO#g&pi%[&pi%_&pi{&pi~P'vO{#{Oz#eX!W#eX~Oz+mO!W&uX~O!W+oO~Ot+rO#j)gOP#hqV#hqf#hqh#hqo#hqs#hqv#hq!P#hq!Q#hq!T#hq!U#hq!X#hq!]#hq!h#hq!r#hq!s#hq!t#hq!{#hq!}#hq#P#hq#R#hq#T#hq#X#hq#Z#hq#^#hq#_#hq#a#hq#c#hq#l#hq#o#hq#s#hq#u#hq#z#hq#}#hq$P#hq%X#hq%o#hq%p#hq%t#hq%u#hq&Z#hq&[#hq&]#hq&^#hq&_#hq&`#hq&a#hq&b#hq&c#hq&d#hq&e#hq&f#hq&g#hq&h#hq&i#hq&j#hq%Z#hq%_#hq~On$|az$|a~P%SOV)kOn&wi~P'vOz+yOn&wi~Oz,TO{$jO#[,TO~O#q,VOP#nqV#nqf#nqh#nqo#nqs#nqv#nq!P#nq!Q#nq!T#nq!U#nq!X#nq!]#nq!h#nq!r#nq!s#nq!t#nq!{#nq!}#nq#P#nq#R#nq#T#nq#X#nq#Z#nq#^#nq#_#nq#a#nq#c#nq#l#nq#o#nq#s#nq#u#nq#z#nq#}#nq$P#nq%X#nq%o#nq%p#nq%t#nq%u#nq&Z#nq&[#nq&]#nq&^#nq&_#nq&`#nq&a#nq&b#nq&c#nq&d#nq&e#nq&f#nq&g#nq&h#nq&i#nq&j#nq%Z#nq%_#nq~O#[,WOz%Oa{%Oa~Oo0cOv0qO{&xi~P'vOz,YO{&xi~O{#{O%z,[Og&zXz&zX~O%uWOg&zXz&zX~Oz,`Og&yX~Og,bO~O%Y,eO~O!T%dO!U%cOg&Viz&Vi~OV$}Oa$}Oo0cOv0qOg&Ui~P'vO{,hOz$la!W$la~Oo0cOv0qO{,iOz$la!W$la~P'vOo0cOv0qO{*gO!W&Xi~P'vOz,lO!W&Xi~Oo0cOv0qOz,lO!W&Xi~P'vOz,lO{,oO!W&Xi~Og$hiz$hi!W$hi~P%SOV'|Oo0cOv0qO~P'vOn,qO~OV'|Og,rOo0cOv0qO~P'vOV'|Oo0cOv0qO!W&Sq~P'vOz$gi![$gi#g$gi%[$gi%_$gig$gi{$gi!m$gi%z$gi~P%SOV(]Oo0cOv0qO~P'vOa+QOo0cOv0qO![&Tq~P'vOz,sO![&Tq~O![,tO~OV(]Oo0cOv0qO![%}q#g%}q%[%}q%_%}qg%}q{%}q!m%}q%z%}q~P'vO{,uO~OV+UOo0cOv0qO{&li![&li!m&li%z&li~P'vOz,zO{&li![&li!m&li%z&li~O!]+YO&n+[O![!na~O{(kO![,}O~OV&OOo0cOv0qO#g%hi%[%hi%_%hi%z%hi~P'vOz-OO#g%hi%[%hi%_%hi%z%hi~O%uWO#g&rq%[&rq%_&rqg&rq~Oz-RO#g&rq%[&rq%_&rqg&rq~OV)`Oa)`O%uWO!W&ua~Oz-TO!W&ua~On$|iz$|i~P%SOV)kO~P'vOV)kOn&wq~P'vOt-XOP#myV#myf#myh#myo#mys#myv#my!P#my!Q#my!T#my!U#my!X#my!]#my!h#my!r#my!s#my!t#my!{#my!}#my#P#my#R#my#T#my#X#my#Z#my#^#my#_#my#a#my#c#my#l#my#o#my#s#my#u#my#z#my#}#my$P#my%X#my%o#my%p#my%t#my%u#my&Z#my&[#my&]#my&^#my&_#my&`#my&a#my&b#my&c#my&d#my&e#my&f#my&g#my&h#my&i#my&j#my%Z#my%_#my~O%Z-]O%_-]O~P`O#q-^OP#nyV#nyf#nyh#nyo#nys#nyv#ny!P#ny!Q#ny!T#ny!U#ny!X#ny!]#ny!h#ny!r#ny!s#ny!t#ny!{#ny!}#ny#P#ny#R#ny#T#ny#X#ny#Z#ny#^#ny#_#ny#a#ny#c#ny#l#ny#o#ny#s#ny#u#ny#z#ny#}#ny$P#ny%X#ny%o#ny%p#ny%t#ny%u#ny&Z#ny&[#ny&]#ny&^#ny&_#ny&`#ny&a#ny&b#ny&c#ny&d#ny&e#ny&f#ny&g#ny&h#ny&i#ny&j#ny%Z#ny%_#ny~Oz-aO{$jO#[-aO~Oo0cOv0qO{&xq~P'vOz-dO{&xq~O%z,[Og&zaz&za~O{#{Og&zaz&za~OV*SOa*TO%q*UO%uWOg&ya~Oz-hOg&ya~O$S-lO~OV$}Oa$}Oo0cOv0qO~P'vOo0cOv0qO{-mOz$li!W$li~P'vOo0cOv0qOz$li!W$li~P'vO{-mOz$li!W$li~Oo0cOv0qO{*gO~P'vOo0cOv0qO{*gO!W&Xq~P'vOz-pO!W&Xq~Oo0cOv0qOz-pO!W&Xq~P'vOs-sO!T%dO!U%cOg&Oq!W&Oq![&Oqz&Oq~P!/jOa+QOo0cOv0qO![&Ty~P'vOz$ji![$ji~P%SOa+QOo0cOv0qO~P'vOV+UOo0cOv0qO~P'vOV+UOo0cOv0qO{&lq![&lq!m&lq%z&lq~P'vO{(kO![-xO!m-yO%z-wO~OV&OOo0cOv0qO#g%hq%[%hq%_%hq%z%hq~P'vO%uWO#g&ry%[&ry%_&ryg&ry~OV)`Oa)`O%uWO!W&ui~Ot-}OP#m!RV#m!Rf#m!Rh#m!Ro#m!Rs#m!Rv#m!R!P#m!R!Q#m!R!T#m!R!U#m!R!X#m!R!]#m!R!h#m!R!r#m!R!s#m!R!t#m!R!{#m!R!}#m!R#P#m!R#R#m!R#T#m!R#X#m!R#Z#m!R#^#m!R#_#m!R#a#m!R#c#m!R#l#m!R#o#m!R#s#m!R#u#m!R#z#m!R#}#m!R$P#m!R%X#m!R%o#m!R%p#m!R%t#m!R%u#m!R&Z#m!R&[#m!R&]#m!R&^#m!R&_#m!R&`#m!R&a#m!R&b#m!R&c#m!R&d#m!R&e#m!R&f#m!R&g#m!R&h#m!R&i#m!R&j#m!R%Z#m!R%_#m!R~Oo0cOv0qO{&xy~P'vOV*SOa*TO%q*UO%uWOg&yi~O$S-lO%Z.VO%_.VO~OV.aOh._O!X.^O!].`O!h.YO!s.[O!t.[O%p.XO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O~Oo0cOv0qOz$lq!W$lq~P'vO{.fOz$lq!W$lq~Oo0cOv0qO{*gO!W&Xy~P'vOz.gO!W&Xy~Oo0cOv.kO~P'vOs-sO!T%dO!U%cOg&Oy!W&Oy![&Oyz&Oy~P!/jO{(kO![.nO~O{(kO![.nO!m.oO~OV*SOa*TO%q*UO%uWO~Oh.tO!f.rOz$TX#[$TX%j$TXg$TX~Os$TX{$TX!W$TX![$TX~P$-bO%o.vO%p.vOs$UXz$UX{$UX#[$UX%j$UX!W$UXg$UX![$UX~O!h.xO~Oz.|O#[/OO%j.yOs&|X{&|X!W&|Xg&|X~Oa/RO~P$)zOh.tOs&}Xz&}X{&}X#[&}X%j&}X!W&}Xg&}X![&}X~Os/VO{$jO~Oo0cOv0qOz$ly!W$ly~P'vOo0cOv0qO{*gO!W&X!R~P'vOz/ZO!W&X!R~Og&RXs&RX!T&RX!U&RX!W&RX![&RXz&RX~P!/jOs-sO!T%dO!U%cOg&Qa!W&Qa![&Qaz&Qa~O{(kO![/^O~O!f.rOh$[as$[az$[a{$[a#[$[a%j$[a!W$[ag$[a![$[a~O!h/eO~O%o.vO%p.vOs$Uaz$Ua{$Ua#[$Ua%j$Ua!W$Uag$Ua![$Ua~O%j.yOs$Yaz$Ya{$Ya#[$Ya!W$Yag$Ya![$Ya~Os&|a{&|a!W&|ag&|a~P$)nOz/jOs&|a{&|a!W&|ag&|a~O!W/mO~Og/mO~O{/oO~O![/pO~Oo0cOv0qO{*gO!W&X!Z~P'vO{/sO~O%z/tO~P$-bOz/uO#[/OO%j.yOg'PX~Oz/uOg'PX~Og/wO~O!h/xO~O#[/OOs%Saz%Sa{%Sa%j%Sa!W%Sag%Sa![%Sa~O#[/OO%j.yOs%Waz%Wa{%Wa!W%Wag%Wa~Os&|i{&|i!W&|ig&|i~P$)nOz/zO#[/OO%j.yO!['Oa~Og'Pa~P$)nOz0SOg'Pa~Oa0UO!['Oi~P$)zOz0WO!['Oi~Oz0WO#[/OO%j.yO!['Oi~O#[/OO%j.yOg$biz$bi~O%z0ZO~P$-bO#[/OO%j.yOg%Vaz%Va~Og'Pi~P$)nO{0^O~Oa0UO!['Oq~P$)zOz0`O!['Oq~O#[/OO%j.yOz%Ui![%Ui~Oa0UO~P$)zOa0UO!['Oy~P$)zO#[/OO%j.yOg$ciz$ci~O#[/OO%j.yOz%Uq![%Uq~Oz+aO#g%ha%[%ha%_%ha%z%ha~P%SOV&OOo0cOv0qO~P'vOn0hO~Oo0hO~P'vO{0iO~Ot0jO~P!/jO&]&Z&j&h&i&g&f&d&e&c&b&`&a&_&^&[%u~",goto:"!=j'QPPPPPP'RP'Z*s+[+t,_,y-fP.SP'Z.r.r'ZPPP'Z2[PPPPPP2[5PPP5PP7b7k=sPP=v>h>kPP'Z'ZPP>zPP'Z'ZPP'Z'Z'Z'Z'Z?O?w'ZP?zP@QDXGuGyPG|HWH['ZPPPH_Hk'RP'R'RP'RP'RP'RP'RP'R'R'RP'RPP'RPP'RP'RPHqH}IVPI^IdPI^PI^I^PPPI^PKrPK{LVL]KrPI^LfPI^PLmLsPLwM]MzNeLwLwNkNxLwLwLwLw! ^! d! g! l! o! y!!P!!]!!o!!u!#P!#V!#s!#y!$P!$Z!$a!$g!$y!%T!%Z!%a!%k!%q!%w!%}!&T!&Z!&e!&k!&u!&{!'U!'[!'k!'s!'}!(UPPPPPPPPPPP!([!(_!(e!(n!(x!)TPPPPPPPPPPPP!-u!/Z!3^!6oPP!6w!7W!7a!8Y!8P!8c!8i!8l!8o!8r!8z!9jPPPPPPPPPPPPPPPPP!9m!9q!9wP!:]!:a!:m!:v!;S!;j!;m!;p!;v!;|!_![!]Do!]!^Es!^!_FZ!_!`Gk!`!aHX!a!b%T!b!cIf!c!dJU!d!eK^!e!hJU!h!i!#f!i!tJU!t!u!,|!u!wJU!w!x!.t!x!}JU!}#O!0S#O#P&o#P#Q!0j#Q#R!1Q#R#SJU#S#T%T#T#UJU#U#VK^#V#YJU#Y#Z!#f#Z#fJU#f#g!,|#g#iJU#i#j!.t#j#oJU#o#p!1n#p#q!1s#q#r!2a#r#s!2f#s$g%T$g;'SJU;'S;=`KW<%lOJU`%YT&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T`%lP;=`<%l%To%v]&n`%c_OX%TXY%oY[%T[]%o]p%Tpq%oq#O%T#O#P&o#P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To&tX&n`OY%TYZ%oZ]%T]^%o^#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc'f[&n`O!_%T!_!`([!`#T%T#T#U(r#U#f%T#f#g(r#g#h(r#h#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(cTmR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(yT!mR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk)aV&n`&[ZOr%Trs)vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk){V&n`Or%Trs*bs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk*iT&n`&^ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To+PZS_&n`OY*xYZ%TZ]*x]^%T^#o*x#o#p+r#p#q*x#q#r+r#r;'S*x;'S;=`,^<%lO*x_+wTS_OY+rZ]+r^;'S+r;'S;=`,W<%lO+r_,ZP;=`<%l+ro,aP;=`<%l*xj,kV%rQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-XT!xY&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-oV%lQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.]V&n`&ZZOw%Twx.rx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.wV&n`Ow%Twx/^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/eT&n`&]ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/{ThZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc0cTgR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk0yXVZ&n`Oz%Tz{1f{!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk1mVaR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk2ZV%oZ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc2wTzR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To3_W%pZ&n`O!_%T!_!`-Q!`!a3w!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Td4OT&{S&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk4fX!fQ&n`O!O%T!O!P5R!P!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5WV&n`O!O%T!O!P5m!P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5tT!rZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti6[a!hX&n`O!Q%T!Q![6T![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S6T#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti7fZ&n`O{%T{|8X|}%T}!O8X!O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8^V&n`O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8z]!hX&n`O!Q%T!Q![8s![!l%T!l!m9s!m#R%T#R#S8s#S#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti9zT!hX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk:bX%qR&n`O!P%T!P!Q:}!Q!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj;UV%sQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti;ro!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!d%T!d!e?q!e!g%T!g!h7a!h!l%T!l!m9s!m!q%T!q!rA]!r!z%T!z!{Bq!{#R%T#R#S>_#S#U%T#U#V?q#V#X%T#X#Y7a#Y#^%T#^#_9s#_#c%T#c#dA]#d#l%T#l#mBq#m#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti=xV&n`O!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti>fc!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S>_#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti?vY&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti@mY!hX&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiAbX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBUX!hX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBv]&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiCv]!hX&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToDvV{_&n`O!_%T!_!`E]!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TcEdT%{R&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkEzT#gZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkFbXmR&n`O!^%T!^!_F}!_!`([!`!a([!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjGUV%mQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkGrV%zZ&n`O!_%T!_!`([!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkH`WmR&n`O!_%T!_!`([!`!aHx!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjIPV%nQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkIoV_Q#}P&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToJ_]&n`&YS%uZO!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoKZP;=`<%lJUoKge&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!tJU!t!uLx!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#gLx#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoMRa&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUkN_V&n`&`ZOr%TrsNts#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkNyV&n`Or%Trs! `s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! gT&n`&bZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! }V&n`&_ZOw%Twx!!dx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!!iV&n`Ow%Twx!#Ox#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!#VT&n`&aZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!#oe&n`&YS%uZOr%Trs!%Qsw%Twx!&px!Q%T!Q![JU![!c%T!c!tJU!t!u!(`!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#g!(`#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!%XV&n`&dZOr%Trs!%ns#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!%sV&n`Or%Trs!&Ys#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&aT&n`&fZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&wV&n`&cZOw%Twx!'^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!'cV&n`Ow%Twx!'xx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!(PT&n`&eZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!(ia&n`&YS%uZOr%Trs!)nsw%Twx!+^x!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!)uV&n`&hZOr%Trs!*[s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*aV&n`Or%Trs!*vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*}T&n`&jZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!+eV&n`&gZOw%Twx!+zx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,PV&n`Ow%Twx!,fx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,mT&n`&iZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!-Vi&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!dJU!d!eLx!e!hJU!h!i!(`!i!}JU!}#R%T#R#SJU#S#T%T#T#UJU#U#VLx#V#YJU#Y#Z!(`#Z#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUo!.}a&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!0ZT!XZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc!0qT!WR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj!1XV%kQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!1sO!]~k!1zV%jR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!2fO![~i!2mT%tX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T",tokenizers:[nw,Jx,Kx,rw,0,1,2,3,4],topRules:{Script:[0,5]},specialized:[{term:221,get:n=>lw[n]||-1}],tokenPrec:7668}),Sf=new fa,Qp=new Set(["Script","Body","FunctionDefinition","ClassDefinition","LambdaExpression","ForStatement","MatchClause"]);function xr(n){return(e,t,i)=>{if(i)return!1;let r=e.node.getChild("VariableName");return r&&t(r,n),!0}}const hw={FunctionDefinition:xr("function"),ClassDefinition:xr("class"),ForStatement(n,e,t){if(t){for(let i=n.node.firstChild;i;i=i.nextSibling)if(i.name=="VariableName")e(i,"variable");else if(i.name=="in")break}},ImportStatement(n,e){var t,i;let{node:r}=n,s=((t=r.firstChild)===null||t===void 0?void 0:t.name)=="from";for(let o=r.getChild("import");o;o=o.nextSibling)o.name=="VariableName"&&((i=o.nextSibling)===null||i===void 0?void 0:i.name)!="as"&&e(o,s?"variable":"namespace")},AssignStatement(n,e){for(let t=n.node.firstChild;t;t=t.nextSibling)if(t.name=="VariableName")e(t,"variable");else if(t.name==":"||t.name=="AssignOp")break},ParamList(n,e){for(let t=null,i=n.node.firstChild;i;i=i.nextSibling)i.name=="VariableName"&&(!t||!/\*|AssignOp/.test(t.name))&&e(i,"variable"),t=i},CapturePattern:xr("variable"),AsPattern:xr("variable"),__proto__:null};function Sp(n,e){let t=Sf.get(e);if(t)return t;let i=[],r=!0;function s(o,l){let a=n.sliceString(o.from,o.to);i.push({label:a,type:l})}return e.cursor(U.IncludeAnonymous).iterate(o=>{if(o.name){let l=hw[o.name];if(l&&l(o,s,r)||!r&&Qp.has(o.name))return!1;r=!1}else if(o.to-o.from>8192){for(let l of Sp(n,o.node))i.push(l);return!1}}),Sf.set(e,i),i}const bf=/^[\w\xa1-\uffff][\w\d\xa1-\uffff]*$/,bp=["String","FormatString","Comment","PropertyName"];function cw(n){let e=F(n.state).resolveInner(n.pos,-1);if(bp.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&bf.test(n.state.sliceDoc(e.from,e.to));if(!t&&!n.explicit)return null;let i=[];for(let r=e;r;r=r.parent)Qp.has(r.name)&&(i=i.concat(Sp(n.state.doc,r)));return{options:i,from:t?e.from:n.pos,validFor:bf}}const fw=["__annotations__","__builtins__","__debug__","__doc__","__import__","__name__","__loader__","__package__","__spec__","False","None","True"].map(n=>({label:n,type:"constant"})).concat(["ArithmeticError","AssertionError","AttributeError","BaseException","BlockingIOError","BrokenPipeError","BufferError","BytesWarning","ChildProcessError","ConnectionAbortedError","ConnectionError","ConnectionRefusedError","ConnectionResetError","DeprecationWarning","EOFError","Ellipsis","EncodingWarning","EnvironmentError","Exception","FileExistsError","FileNotFoundError","FloatingPointError","FutureWarning","GeneratorExit","IOError","ImportError","ImportWarning","IndentationError","IndexError","InterruptedError","IsADirectoryError","KeyError","KeyboardInterrupt","LookupError","MemoryError","ModuleNotFoundError","NameError","NotADirectoryError","NotImplemented","NotImplementedError","OSError","OverflowError","PendingDeprecationWarning","PermissionError","ProcessLookupError","RecursionError","ReferenceError","ResourceWarning","RuntimeError","RuntimeWarning","StopAsyncIteration","StopIteration","SyntaxError","SyntaxWarning","SystemError","SystemExit","TabError","TimeoutError","TypeError","UnboundLocalError","UnicodeDecodeError","UnicodeEncodeError","UnicodeError","UnicodeTranslateError","UnicodeWarning","UserWarning","ValueError","Warning","ZeroDivisionError"].map(n=>({label:n,type:"type"}))).concat(["bool","bytearray","bytes","classmethod","complex","float","frozenset","int","list","map","memoryview","object","range","set","staticmethod","str","super","tuple","type"].map(n=>({label:n,type:"class"}))).concat(["abs","aiter","all","anext","any","ascii","bin","breakpoint","callable","chr","compile","delattr","dict","dir","divmod","enumerate","eval","exec","exit","filter","format","getattr","globals","hasattr","hash","help","hex","id","input","isinstance","issubclass","iter","len","license","locals","max","min","next","oct","open","ord","pow","print","property","quit","repr","reversed","round","setattr","slice","sorted","sum","vars","zip"].map(n=>({label:n,type:"function"}))),Ow=[ne("def ${name}(${params}):\n ${}",{label:"def",detail:"function",type:"keyword"}),ne("for ${name} in ${collection}:\n ${}",{label:"for",detail:"loop",type:"keyword"}),ne("while ${}:\n ${}",{label:"while",detail:"loop",type:"keyword"}),ne("try:\n ${}\nexcept ${error}:\n ${}",{label:"try",detail:"/ except block",type:"keyword"}),ne(`if \${}: + +`,{label:"if",detail:"block",type:"keyword"}),ne("if ${}:\n ${}\nelse:\n ${}",{label:"if",detail:"/ else block",type:"keyword"}),ne("class ${name}:\n def __init__(self, ${params}):\n ${}",{label:"class",detail:"definition",type:"keyword"}),ne("import ${module}",{label:"import",detail:"statement",type:"keyword"}),ne("from ${module} import ${names}",{label:"from",detail:"import",type:"keyword"})],uw=hd(bp,xa(fw.concat(Ow)));function Zo(n){let{node:e,pos:t}=n,i=n.lineIndent(t,-1),r=null;for(;;){let s=e.childBefore(t);if(s)if(s.name=="Comment")t=s.from;else if(s.name=="Body"||s.name=="MatchBody")n.baseIndentFor(s)+n.unit<=i&&(r=s),e=s;else if(s.name=="MatchClause")e=s;else if(s.type.is("Statement"))e=s;else break;else break}return r}function Ro(n,e){let t=n.baseIndentFor(e),i=n.lineAt(n.pos,-1),r=i.from+i.text.length;return/^\s*($|#)/.test(i.text)&&n.node.tot?null:t+n.unit}const Ao=Gt.define({name:"python",parser:aw.configure({props:[Jt.add({Body:n=>{var e;let t=/^\s*(#|$)/.test(n.textAfter)&&Zo(n)||n.node;return(e=Ro(n,t))!==null&&e!==void 0?e:n.continue()},MatchBody:n=>{var e;let t=Zo(n);return(e=Ro(n,t||n.node))!==null&&e!==void 0?e:n.continue()},IfStatement:n=>/^\s*(else:|elif )/.test(n.textAfter)?n.baseIndent:n.continue(),"ForStatement WhileStatement":n=>/^\s*else:/.test(n.textAfter)?n.baseIndent:n.continue(),TryStatement:n=>/^\s*(except[ :]|finally:|else:)/.test(n.textAfter)?n.baseIndent:n.continue(),MatchStatement:n=>/^\s*case /.test(n.textAfter)?n.baseIndent+n.unit:n.continue(),"TupleExpression ComprehensionExpression ParamList ArgList ParenthesizedExpression":Mr({closing:")"}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":Mr({closing:"}"}),"ArrayExpression ArrayComprehensionExpression":Mr({closing:"]"}),MemberExpression:n=>n.baseIndent+n.unit,"String FormatString":()=>null,Script:n=>{var e;let t=Zo(n);return(e=t&&Ro(n,t))!==null&&e!==void 0?e:n.continue()}}),ei.add({"ArrayExpression DictionaryExpression SetExpression TupleExpression":Zs,Body:(n,e)=>({from:n.from+1,to:n.to-(n.to==e.doc.length?0:1)}),"String FormatString":(n,e)=>({from:e.doc.lineAt(n.from).to,to:n.to})})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""'],stringPrefixes:["f","fr","rf","r","u","b","br","rb","F","FR","RF","R","U","B","BR","RB"]},commentTokens:{line:"#"},indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:|case\s+[^:]*:?)$/}});function NP(){return new Si(Ao,[Ao.data.of({autocomplete:cw}),Ao.data.of({autocomplete:uw})])}class yf{constructor(e,t,i){this.from=e,this.to=t,this.diagnostic=i}}class hi{constructor(e,t,i){this.diagnostics=e,this.panel=t,this.selected=i}static init(e,t,i){let r=i.facet(Dn).markerFilter;r&&(e=r(e,i));let s=e.slice().sort((u,d)=>u.from-d.from||u.to-d.to),o=new Zt,l=[],a=0,h=i.doc.iter(),c=0,f=i.doc.length;for(let u=0;;){let d=u==s.length?null:s[u];if(!d&&!l.length)break;let m,g;if(l.length)m=a,g=l.reduce((y,P)=>Math.min(y,P.to),d&&d.from>m?d.from:1e8);else{if(m=d.from,m>f)break;g=d.to,l.push(d),u++}for(;uy.from||y.to==m))l.push(y),u++,g=Math.min(y.to,g);else{g=Math.min(y.from,g);break}}g=Math.min(g,f);let Q=!1;if(l.some(y=>y.from==m&&(y.to==g||g==f))&&(Q=m==g,!Q&&g-m<10)){let y=m-(c+h.value.length);y>0&&(h.next(y),c=m);for(let P=m;;){if(P>=g){Q=!0;break}if(!h.lineBreak&&c+h.value.length>P)break;P=c+h.value.length,c+=h.value.length,h.next()}}let S=Pw(l);if(Q)o.add(m,m,R.widget({widget:new kw(S),diagnostics:l.slice()}));else{let y=l.reduce((P,k)=>k.markClass?P+" "+k.markClass:P,"");o.add(m,g,R.mark({class:"cm-lintRange cm-lintRange-"+S+y,diagnostics:l.slice(),inclusiveEnd:l.some(P=>P.to>g)}))}if(a=g,a==f)break;for(let y=0;y{if(!(e&&o.diagnostics.indexOf(e)<0))if(!i)i=new yf(r,s,e||o.diagnostics[0]);else{if(o.diagnostics.indexOf(i.diagnostic)<0)return!1;i=new yf(i.from,s,i.diagnostic)}}),i}function dw(n,e){let t=e.pos,i=e.end||t,r=n.state.facet(Dn).hideOn(n,t,i);if(r!=null)return r;let s=n.startState.doc.lineAt(e.pos);return!!(n.effects.some(o=>o.is(yp))||n.changes.touchesRange(s.from,Math.max(s.to,i)))}function pw(n,e){return n.field(Ce,!1)?e:e.concat(z.appendConfig.of(vw))}const yp=z.define(),Va=z.define(),kp=z.define(),Ce=be.define({create(){return new hi(R.none,null,null)},update(n,e){if(e.docChanged&&n.diagnostics.size){let t=n.diagnostics.map(e.changes),i=null,r=n.panel;if(n.selected){let s=e.changes.mapPos(n.selected.from,1);i=Ht(t,n.selected.diagnostic,s)||Ht(t,null,s)}!t.size&&r&&e.state.facet(Dn).autoPanel&&(r=null),n=new hi(t,r,i)}for(let t of e.effects)if(t.is(yp)){let i=e.state.facet(Dn).autoPanel?t.value.length?Bn.open:null:n.panel;n=hi.init(t.value,i,e.state)}else t.is(Va)?n=new hi(n.diagnostics,t.value?Bn.open:null,n.selected):t.is(kp)&&(n=new hi(n.diagnostics,n.panel,t.value));return n},provide:n=>[Zn.from(n,e=>e.panel),v.decorations.from(n,e=>e.diagnostics)]});function FP(n){let e=n.field(Ce,!1);return e?e.diagnostics.size:0}const mw=R.mark({class:"cm-lintRange cm-lintRange-active"});function gw(n,e,t){let{diagnostics:i}=n.state.field(Ce),r,s=-1,o=-1;i.between(e-(t<0?1:0),e+(t>0?1:0),(a,h,{spec:c})=>{if(e>=a&&e<=h&&(a==h||(e>a||t>0)&&(ewp(n,t,!1)))}const Sw=n=>{let e=n.state.field(Ce,!1);(!e||!e.panel)&&n.dispatch({effects:pw(n.state,[Va.of(!0)])});let t=la(n,Bn.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},kf=n=>{let e=n.state.field(Ce,!1);return!e||!e.panel?!1:(n.dispatch({effects:Va.of(!1)}),!0)},bw=n=>{let e=n.state.field(Ce,!1);if(!e)return!1;let t=n.state.selection.main,i=Ht(e.diagnostics,null,t.to+1);return!i&&(i=Ht(e.diagnostics,null,0),!i||i.from==t.from&&i.to==t.to)?!1:(n.dispatch({selection:{anchor:i.from,head:i.to},scrollIntoView:!0}),mQ(n,i.from,1,{tooltip:$p,until:r=>r.docChanged||r.newSelection.main.headi.to}),!0)},yw=[{key:"Mod-Shift-m",run:Sw,preventDefault:!0},{key:"F8",run:bw}],Dn=C.define({combine(n){return{sources:n.map(e=>e.source).filter(e=>e!=null),...yt(n.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:xf,tooltipFilter:xf,needsRefresh:(e,t)=>e?t?i=>e(i)||t(i):e:t,hideOn:(e,t)=>e?t?(i,r,s)=>e(i,r,s)||t(i,r,s):e:t,autoPanel:(e,t)=>e||t})}}});function xf(n,e){return n?e?(t,i)=>e(n(t,i),i):n:e}function xp(n){let e=[];if(n)e:for(let{name:t}of n){for(let i=0;is.toLowerCase()==r.toLowerCase())){e.push(r);continue e}}e.push("")}return e}function wp(n,e,t){var i;let r=t?xp(e.actions):[];return N("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},N("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(n):e.message),(i=e.actions)===null||i===void 0?void 0:i.map((s,o)=>{let l=!1,a=u=>{if(u.preventDefault(),l)return;l=!0;let d=Ht(n.state.field(Ce).diagnostics,e);d&&s.apply(n,d.from,d.to)},{name:h}=s,c=r[o]?h.indexOf(r[o]):-1,f=c<0?h:[h.slice(0,c),N("u",h.slice(c,c+1)),h.slice(c+1)],O=s.markClass?" "+s.markClass:"";return N("button",{type:"button",class:"cm-diagnosticAction"+O,onclick:a,onmousedown:a,"aria-label":` Action: ${h}${c<0?"":` (access key "${r[o]})"`}.`},f)}),e.source&&N("div",{class:"cm-diagnosticSource"},e.source))}class kw extends it{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return N("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class wf{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=wp(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class Bn{constructor(e){this.view=e,this.items=[];let t=r=>{if(!(r.ctrlKey||r.altKey||r.metaKey)){if(r.keyCode==27)kf(this.view),this.view.focus();else if(r.keyCode==38||r.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(r.keyCode==40||r.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(r.keyCode==36)this.moveSelection(0);else if(r.keyCode==35)this.moveSelection(this.items.length-1);else if(r.keyCode==13)this.view.focus();else if(r.keyCode>=65&&r.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:s}=this.items[this.selectedIndex],o=xp(s.actions);for(let l=0;l{for(let s=0;skf(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(Ce).selected;if(!e)return-1;for(let t=0;t{for(let c of h.diagnostics){if(o.has(c))continue;o.add(c);let f=-1,O;for(let u=i;ui&&(this.items.splice(i,f-i),r=!0)),t&&O.diagnostic==t.diagnostic?O.dom.hasAttribute("aria-selected")||(O.dom.setAttribute("aria-selected","true"),s=O):O.dom.hasAttribute("aria-selected")&&O.dom.removeAttribute("aria-selected"),i++}});i({sel:s.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:l,panel:a})=>{let h=a.height/this.list.offsetHeight;l.topa.bottom&&(this.list.scrollTop+=(l.bottom-a.bottom)/h)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),r&&this.sync()}sync(){let e=this.list.firstChild;function t(){let i=e;e=i.nextSibling,i.remove()}for(let i of this.items)if(i.dom.parentNode==this.list){for(;e!=i.dom;)t();e=i.dom.nextSibling}else this.list.insertBefore(i.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=this.view.state.field(Ce),i=Ht(t.diagnostics,this.items[e].diagnostic);i&&this.view.dispatch({selection:{anchor:i.from,head:i.to},scrollIntoView:!0,effects:kp.of(i)})}static open(e){return new Bn(e)}}function xw(n,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,${encodeURIComponent(n)}')`}function wr(n){return xw(``,'width="6" height="3"')}const ww=v.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:wr("#f11")},".cm-lintRange-warning":{backgroundImage:wr("orange")},".cm-lintRange-info":{backgroundImage:wr("#999")},".cm-lintRange-hint":{backgroundImage:wr("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:"#86714a80"},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:"#2e343e"}}});function $w(n){return n=="error"?4:n=="warning"?3:n=="info"?2:1}function Pw(n){let e="hint",t=1;for(let i of n){let r=$w(i.severity);r>t&&(t=r,e=i.severity)}return e}const $p=pQ(gw,{hideOn:dw}),vw=[Ce,v.decorations.compute([Ce],n=>{let{selected:e,panel:t}=n.field(Ce);return!e||!t||e.from==e.to?R.none:R.set([mw.range(e.from,e.to)])}),$p,ww];function HP(n,e){let t=n.field(Ce,!1);if(t&&t.diagnostics.size){let i=[],r=[],s=-1;for(let o=j.iter([t.diagnostics]);;o.next()){for(let l=0;l{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),i=Ya(n.state,t.from);return i.line?Cw(n):i.block?Zw(n):!1};function La(n,e){return({state:t,dispatch:i})=>{if(t.readOnly)return!1;let r=n(e,t);return r?(i(t.update(r)),!0):!1}}const Cw=La(qw,0),Xw=La(Pp,0),Zw=La((n,e)=>Pp(n,e,Aw(e)),0);function Ya(n,e){let t=n.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}const cn=50;function Rw(n,{open:e,close:t},i,r){let s=n.sliceDoc(i-cn,i),o=n.sliceDoc(r,r+cn),l=/\s*$/.exec(s)[0].length,a=/^\s*/.exec(o)[0].length,h=s.length-l;if(s.slice(h-e.length,h)==e&&o.slice(a,a+t.length)==t)return{open:{pos:i-l,margin:l&&1},close:{pos:r+a,margin:a&&1}};let c,f;r-i<=2*cn?c=f=n.sliceDoc(i,r):(c=n.sliceDoc(i,i+cn),f=n.sliceDoc(r-cn,r));let O=/^\s*/.exec(c)[0].length,u=/\s*$/.exec(f)[0].length,d=f.length-u-t.length;return c.slice(O,O+e.length)==e&&f.slice(d,d+t.length)==t?{open:{pos:i+O+e.length,margin:/\s/.test(c.charAt(O+e.length))?1:0},close:{pos:r-u-t.length,margin:/\s/.test(f.charAt(d-1))?1:0}}:null}function Aw(n){let e=[];for(let t of n.selection.ranges){let i=n.doc.lineAt(t.from),r=t.to<=i.to?i:n.doc.lineAt(t.to);r.from>i.from&&r.from==t.to&&(r=t.to==i.to+1?i:n.doc.lineAt(t.to-1));let s=e.length-1;s>=0&&e[s].to>i.from?e[s].to=r.to:e.push({from:i.from+/^\s*/.exec(i.text)[0].length,to:r.to})}return e}function Pp(n,e,t=e.selection.ranges){let i=t.map(s=>Ya(e,s.from).block);if(!i.every(s=>s))return null;let r=t.map((s,o)=>Rw(e,i[o],s.from,s.to));if(n!=2&&!r.every(s=>s))return{changes:e.changes(t.map((s,o)=>r[o]?[]:[{from:s.from,insert:i[o].open+" "},{from:s.to,insert:" "+i[o].close}]))};if(n!=1&&r.some(s=>s)){let s=[];for(let o=0,l;or&&(s==o||o>f.from)){r=f.from;let O=/^\s*/.exec(f.text)[0].length,u=O==f.length,d=f.text.slice(O,O+h.length)==h?O:-1;Os.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:l,token:a,indent:h,empty:c,single:f}of i)(f||!c)&&s.push({from:l.from+h,insert:a+" "});let o=e.changes(s);return{changes:o,selection:e.selection.map(o,1)}}else if(n!=1&&i.some(s=>s.comment>=0)){let s=[];for(let{line:o,comment:l,token:a}of i)if(l>=0){let h=o.from+l,c=h+a.length;o.text[c-o.from]==" "&&c++,s.push({from:h,to:c})}return{changes:s}}return null}const Wl=bt.define(),Mw=bt.define(),zw=C.define(),vp=C.define({combine(n){return yt(n,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(i,r)=>e(i,r)||t(i,r)})}}),Tp=be.define({create(){return gt.empty},update(n,e){let t=e.state.facet(vp),i=e.annotation(Wl);if(i){let a=Me.fromTransaction(e,i.selection),h=i.side,c=h==0?n.undone:n.done;return a?c=ps(c,c.length,t.minDepth,a):c=Zp(c,e.startState.selection),new gt(h==0?i.rest:c,h==0?c:i.rest)}let r=e.annotation(Mw);if((r=="full"||r=="before")&&(n=n.isolate()),e.annotation(ae.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let s=Me.fromTransaction(e),o=e.annotation(ae.time),l=e.annotation(ae.userEvent);return s?n=n.addChanges(s,o,l,t,e):e.selection&&(n=n.addSelection(e.startState.selection,o,l,t.newGroupDelay)),(r=="full"||r=="after")&&(n=n.isolate()),n},toJSON(n){return{done:n.done.map(e=>e.toJSON()),undone:n.undone.map(e=>e.toJSON())}},fromJSON(n){return new gt(n.done.map(Me.fromJSON),n.undone.map(Me.fromJSON))}});function Ww(n={}){return[Tp,vp.of(n),v.domEventHandlers({beforeinput(e,t){let i=e.inputType=="historyUndo"?Cp:e.inputType=="historyRedo"?_l:null;return i?(e.preventDefault(),i(t)):!1}})]}function zs(n,e){return function({state:t,dispatch:i}){if(!e&&t.readOnly)return!1;let r=t.field(Tp,!1);if(!r)return!1;let s=r.pop(n,t,e);return s?(i(s),!0):!1}}const Cp=zs(0,!1),_l=zs(1,!1),_w=zs(0,!0),Ew=zs(1,!0);class Me{constructor(e,t,i,r,s){this.changes=e,this.effects=t,this.mapped=i,this.startSelection=r,this.selectionsAfter=s}setSelAfter(e){return new Me(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,i;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=this.mapped)===null||t===void 0?void 0:t.toJSON(),startSelection:(i=this.startSelection)===null||i===void 0?void 0:i.toJSON(),selectionsAfter:this.selectionsAfter.map(r=>r.toJSON())}}static fromJSON(e){return new Me(e.changes&&ce.fromJSON(e.changes),[],e.mapped&&Qt.fromJSON(e.mapped),e.startSelection&&b.fromJSON(e.startSelection),e.selectionsAfter.map(b.fromJSON))}static fromTransaction(e,t){let i=Ue;for(let r of e.startState.facet(zw)){let s=r(e);s.length&&(i=i.concat(s))}return!i.length&&e.changes.empty?null:new Me(e.changes.invert(e.startState.doc),i,void 0,t||e.startState.selection,Ue)}static selection(e){return new Me(void 0,Ue,void 0,void 0,e)}}function ps(n,e,t,i){let r=e+1>t+20?e-t-1:0,s=n.slice(r,e);return s.push(i),s}function jw(n,e){let t=[],i=!1;return n.iterChangedRanges((r,s)=>t.push(r,s)),e.iterChangedRanges((r,s,o,l)=>{for(let a=0;a=h&&o<=c&&(i=!0)}}),i}function Vw(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,i)=>t.empty!=e.ranges[i].empty).length===0}function Xp(n,e){return n.length?e.length?n.concat(e):n:e}const Ue=[],Lw=200;function Zp(n,e){if(n.length){let t=n[n.length-1],i=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-Lw));return i.length&&i[i.length-1].eq(e)?n:(i.push(e),ps(n,n.length-1,1e9,t.setSelAfter(i)))}else return[Me.selection([e])]}function Yw(n){let e=n[n.length-1],t=n.slice();return t[n.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function qo(n,e){if(!n.length)return n;let t=n.length,i=Ue;for(;t;){let r=Dw(n[t-1],e,i);if(r.changes&&!r.changes.empty||r.effects.length){let s=n.slice(0,t);return s[t-1]=r,s}else e=r.mapped,t--,i=r.selectionsAfter}return i.length?[Me.selection(i)]:Ue}function Dw(n,e,t){let i=Xp(n.selectionsAfter.length?n.selectionsAfter.map(l=>l.map(e)):Ue,t);if(!n.changes)return Me.selection(i);let r=n.changes.map(e),s=e.mapDesc(n.changes,!0),o=n.mapped?n.mapped.composeDesc(s):s;return new Me(r,z.mapEffects(n.effects,e),o,n.startSelection.map(s),i)}const Bw=/^(input\.type|delete)($|\.)/;class gt{constructor(e,t,i=0,r=void 0){this.done=e,this.undone=t,this.prevTime=i,this.prevUserEvent=r}isolate(){return this.prevTime?new gt(this.done,this.undone):this}addChanges(e,t,i,r,s){let o=this.done,l=o[o.length-1];return l&&l.changes&&!l.changes.empty&&e.changes&&(!i||Bw.test(i))&&(!l.selectionsAfter.length&&t-this.prevTime0&&t-this.prevTimet.empty?n.moveByChar(t,e):Ws(t,e))}function we(n){return n.textDirectionAt(n.state.selection.main.head)==J.LTR}const Ap=n=>Rp(n,!we(n)),qp=n=>Rp(n,we(n));function Mp(n,e){return rt(n,t=>t.empty?n.moveByGroup(t,e):Ws(t,e))}const Gw=n=>Mp(n,!we(n)),Uw=n=>Mp(n,we(n));function Nw(n,e,t){if(e.type.prop(t))return!0;let i=e.to-e.from;return i&&(i>2||/[^\s,.;:]/.test(n.sliceDoc(e.from,e.to)))||e.firstChild}function _s(n,e,t){let i=F(n).resolveInner(e.head),r=t?M.closedBy:M.openedBy;for(let a=e.head;;){let h=t?i.childAfter(a):i.childBefore(a);if(!h)break;Nw(n,h,r)?i=h:a=t?h.to:h.from}let s=i.type.prop(r),o,l;return s&&(o=t?mt(n,i.from,1):mt(n,i.to,-1))&&o.matched?l=t?o.end.to:o.end.from:l=t?i.to:i.from,b.cursor(l,t?-1:1)}const Fw=n=>rt(n,e=>_s(n.state,e,!we(n))),Hw=n=>rt(n,e=>_s(n.state,e,we(n)));function zp(n,e){return rt(n,t=>{if(!t.empty)return Ws(t,e);let i=n.moveVertically(t,e);return i.head!=t.head?i:n.moveToLineBoundary(t,e)})}const Wp=n=>zp(n,!1),_p=n=>zp(n,!0);function Ep(n){let e=n.scrollDOM.clientHeighto.empty?n.moveVertically(o,e,t.height):Ws(o,e));if(r.eq(i.selection))return!1;let s;if(t.selfScroll){let o=n.coordsAtPos(i.selection.main.head),l=n.scrollDOM.getBoundingClientRect(),a=l.top+t.marginTop,h=l.bottom-t.marginBottom;o&&o.top>a&&o.bottomjp(n,!1),El=n=>jp(n,!0);function ti(n,e,t){let i=n.lineBlockAt(e.head),r=n.moveToLineBoundary(e,t);if(r.head==e.head&&r.head!=(t?i.to:i.from)&&(r=n.moveToLineBoundary(e,t,!1)),!t&&r.head==i.from&&i.length){let s=/^\s*/.exec(n.state.sliceDoc(i.from,Math.min(i.from+100,i.to)))[0].length;s&&e.head!=i.from+s&&(r=b.cursor(i.from+s))}return r}const Kw=n=>rt(n,e=>ti(n,e,!0)),Jw=n=>rt(n,e=>ti(n,e,!1)),e$=n=>rt(n,e=>ti(n,e,!we(n))),t$=n=>rt(n,e=>ti(n,e,we(n))),i$=n=>rt(n,e=>b.cursor(n.lineBlockAt(e.head).from,1)),n$=n=>rt(n,e=>b.cursor(n.lineBlockAt(e.head).to,-1));function r$(n,e,t){let i=!1,r=Ki(n.selection,s=>{let o=mt(n,s.head,-1)||mt(n,s.head,1)||s.head>0&&mt(n,s.head-1,1)||s.headr$(n,e);function Fe(n,e){let t=Ki(n.state.selection,i=>{let r=e(i);return b.range(i.anchor,r.head,r.goalColumn,r.bidiLevel||void 0,r.assoc)});return t.eq(n.state.selection)?!1:(n.dispatch(nt(n.state,t)),!0)}function Vp(n,e){return Fe(n,t=>n.moveByChar(t,e))}const Lp=n=>Vp(n,!we(n)),Yp=n=>Vp(n,we(n));function Dp(n,e){return Fe(n,t=>n.moveByGroup(t,e))}const o$=n=>Dp(n,!we(n)),l$=n=>Dp(n,we(n)),a$=n=>Fe(n,e=>_s(n.state,e,!we(n))),h$=n=>Fe(n,e=>_s(n.state,e,we(n)));function Bp(n,e){return Fe(n,t=>n.moveVertically(t,e))}const Ip=n=>Bp(n,!1),Gp=n=>Bp(n,!0);function Up(n,e){return Fe(n,t=>n.moveVertically(t,e,Ep(n).height))}const Pf=n=>Up(n,!1),vf=n=>Up(n,!0),c$=n=>Fe(n,e=>ti(n,e,!0)),f$=n=>Fe(n,e=>ti(n,e,!1)),O$=n=>Fe(n,e=>ti(n,e,!we(n))),u$=n=>Fe(n,e=>ti(n,e,we(n))),d$=n=>Fe(n,e=>b.cursor(n.lineBlockAt(e.head).from)),p$=n=>Fe(n,e=>b.cursor(n.lineBlockAt(e.head).to)),Tf=({state:n,dispatch:e})=>(e(nt(n,{anchor:0})),!0),Cf=({state:n,dispatch:e})=>(e(nt(n,{anchor:n.doc.length})),!0),Xf=({state:n,dispatch:e})=>(e(nt(n,{anchor:n.selection.main.anchor,head:0})),!0),Zf=({state:n,dispatch:e})=>(e(nt(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),m$=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),g$=({state:n,dispatch:e})=>{let t=Es(n).map(({from:i,to:r})=>b.range(i,Math.min(r+1,n.doc.length)));return e(n.update({selection:b.create(t),userEvent:"select"})),!0},Q$=({state:n,dispatch:e})=>{let t=Ki(n.selection,i=>{let r=F(n),s=r.resolveStack(i.from,1);if(i.empty){let o=r.resolveStack(i.from,-1);o.node.from>=s.node.from&&o.node.to<=s.node.to&&(s=o)}for(let o=s;o;o=o.next){let{node:l}=o;if((l.from=i.to||l.to>i.to&&l.from<=i.from)&&o.next)return b.range(l.to,l.from)}return i});return t.eq(n.selection)?!1:(e(nt(n,t)),!0)};function Np(n,e){let{state:t}=n,i=t.selection,r=t.selection.ranges.slice();for(let s of t.selection.ranges){let o=t.doc.lineAt(s.head);if(e?o.to0)for(let l=s;;){let a=n.moveVertically(l,e);if(a.heado.to){r.some(h=>h.head==a.head)||r.push(a);break}else{if(a.head==l.head)break;l=a}}}return r.length==i.ranges.length?!1:(n.dispatch(nt(t,b.create(r,r.length-1))),!0)}const S$=n=>Np(n,!1),b$=n=>Np(n,!0),y$=({state:n,dispatch:e})=>{let t=n.selection,i=null;return t.ranges.length>1?i=b.create([t.main]):t.main.empty||(i=b.create([b.cursor(t.main.head)])),i?(e(nt(n,i)),!0):!1};function Jn(n,e){if(n.state.readOnly)return!1;let t="delete.selection",{state:i}=n,r=i.changeByRange(s=>{let{from:o,to:l}=s;if(o==l){let a=e(s);ao&&(t="delete.forward",a=$r(n,a,!0)),o=Math.min(o,a),l=Math.max(l,a)}else o=$r(n,o,!1),l=$r(n,l,!0);return o==l?{range:s}:{changes:{from:o,to:l},range:b.cursor(o,or(n)))i.between(e,e,(r,s)=>{re&&(e=t?s:r)});return e}const Fp=(n,e,t)=>Jn(n,i=>{let r=i.from,{state:s}=n,o=s.doc.lineAt(r),l,a;if(t&&!e&&r>o.from&&rFp(n,!1,!0),Hp=n=>Fp(n,!0,!1),Kp=(n,e)=>Jn(n,t=>{let i=t.head,{state:r}=n,s=r.doc.lineAt(i),o=r.charCategorizer(i);for(let l=null;;){if(i==(e?s.to:s.from)){i==t.head&&s.number!=(e?r.doc.lines:1)&&(i+=e?1:-1);break}let a=ue(s.text,i-s.from,e)+s.from,h=s.text.slice(Math.min(i,a)-s.from,Math.max(i,a)-s.from),c=o(h);if(l!=null&&c!=l)break;(h!=" "||i!=t.head)&&(l=c),i=a}return i}),Jp=n=>Kp(n,!1),k$=n=>Kp(n,!0),x$=n=>Jn(n,e=>{let t=n.lineBlockAt(e.head).to;return e.headJn(n,e=>{let t=n.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),$$=n=>Jn(n,e=>{let t=n.moveToLineBoundary(e,!0).head;return e.head{if(n.readOnly)return!1;let t=n.changeByRange(i=>({changes:{from:i.from,to:i.to,insert:B.of(["",""])},range:b.cursor(i.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},v$=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(i=>{if(!i.empty||i.from==0||i.from==n.doc.length)return{range:i};let r=i.from,s=n.doc.lineAt(r),o=r==s.from?r-1:ue(s.text,r-s.from,!1)+s.from,l=r==s.to?r+1:ue(s.text,r-s.from,!0)+s.from;return{changes:{from:o,to:l,insert:n.doc.slice(r,l).append(n.doc.slice(o,r))},range:b.cursor(l)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Es(n){let e=[],t=-1;for(let i of n.selection.ranges){let r=n.doc.lineAt(i.from),s=n.doc.lineAt(i.to);if(!i.empty&&i.to==s.from&&(s=n.doc.lineAt(i.to-1)),t>=r.number){let o=e[e.length-1];o.to=s.to,o.ranges.push(i)}else e.push({from:r.from,to:s.to,ranges:[i]});t=s.number+1}return e}function em(n,e,t){if(n.readOnly)return!1;let i=[],r=[];for(let s of Es(n)){if(t?s.to==n.doc.length:s.from==0)continue;let o=n.doc.lineAt(t?s.to+1:s.from-1),l=o.length+1;if(t){i.push({from:s.to,to:o.to},{from:s.from,insert:o.text+n.lineBreak});for(let a of s.ranges)r.push(b.range(Math.min(n.doc.length,a.anchor+l),Math.min(n.doc.length,a.head+l)))}else{i.push({from:o.from,to:s.from},{from:s.to,insert:n.lineBreak+o.text});for(let a of s.ranges)r.push(b.range(a.anchor-l,a.head-l))}}return i.length?(e(n.update({changes:i,scrollIntoView:!0,selection:b.create(r,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}const T$=({state:n,dispatch:e})=>em(n,e,!1),C$=({state:n,dispatch:e})=>em(n,e,!0);function tm(n,e,t){if(n.readOnly)return!1;let i=[];for(let s of Es(n))t?i.push({from:s.from,insert:n.doc.slice(s.from,s.to)+n.lineBreak}):i.push({from:s.to,insert:n.lineBreak+n.doc.slice(s.from,s.to)});let r=n.changes(i);return e(n.update({changes:r,selection:n.selection.map(r,t?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}const X$=({state:n,dispatch:e})=>tm(n,e,!1),Z$=({state:n,dispatch:e})=>tm(n,e,!0),R$=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes(Es(e).map(({from:r,to:s})=>(r>0?r--:s{let s;if(n.lineWrapping){let o=n.lineBlockAt(r.head),l=n.coordsAtPos(r.head,r.assoc||1);l&&(s=o.bottom+n.documentTop-l.bottom+n.defaultLineHeight/2)}return n.moveVertically(r,!0,s)}).map(t);return n.dispatch({changes:t,selection:i,scrollIntoView:!0,userEvent:"delete.line"}),!0};function A$(n,e){if(/\(\)|\[\]|\{\}/.test(n.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=F(n).resolveInner(e),i=t.childBefore(e),r=t.childAfter(e),s;return i&&r&&i.to<=e&&r.from>=e&&(s=i.type.prop(M.closedBy))&&s.indexOf(r.name)>-1&&n.doc.lineAt(i.to).from==n.doc.lineAt(r.from).from&&!/\S/.test(n.sliceDoc(i.to,r.from))?{from:i.to,to:r.from}:null}const Rf=im(!1),q$=im(!0);function im(n){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let i=e.changeByRange(r=>{let{from:s,to:o}=r,l=e.doc.lineAt(s),a=!n&&s==o&&A$(e,s);n&&(s=o=(o<=l.to?l:e.doc.lineAt(o)).to);let h=new Xs(e,{simulateBreak:s,simulateDoubleBreak:!!a}),c=ua(h,s);for(c==null&&(c=et(/^\s*/.exec(e.doc.lineAt(s).text)[0],e.tabSize));ol.from&&s{let r=[];for(let o=i.from;o<=i.to;){let l=n.doc.lineAt(o);l.number>t&&(i.empty||i.to>l.from)&&(e(l,r,i),t=l.number),o=l.to+1}let s=n.changes(r);return{changes:r,range:b.range(s.mapPos(i.anchor,1),s.mapPos(i.head,1))}})}const M$=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),i=new Xs(n,{overrideIndentation:s=>{let o=t[s];return o??-1}}),r=Da(n,(s,o,l)=>{let a=ua(i,s.from);if(a==null)return;/\S/.test(s.text)||(a=0);let h=/^\s*/.exec(s.text)[0],c=qn(n,a);(h!=c||l.fromn.readOnly?!1:(e(n.update(Da(n,(t,i)=>{i.push({from:t.from,insert:n.facet(Fi)})}),{userEvent:"input.indent"})),!0),rm=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(Da(n,(t,i)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let s=et(r,n.tabSize),o=0,l=qn(n,Math.max(0,s-bi(n)));for(;o(n.setTabFocusMode(),!0),W$=[{key:"Ctrl-b",run:Ap,shift:Lp,preventDefault:!0},{key:"Ctrl-f",run:qp,shift:Yp},{key:"Ctrl-p",run:Wp,shift:Ip},{key:"Ctrl-n",run:_p,shift:Gp},{key:"Ctrl-a",run:i$,shift:d$},{key:"Ctrl-e",run:n$,shift:p$},{key:"Ctrl-d",run:Hp},{key:"Ctrl-h",run:jl},{key:"Ctrl-k",run:x$},{key:"Ctrl-Alt-h",run:Jp},{key:"Ctrl-o",run:P$},{key:"Ctrl-t",run:v$},{key:"Ctrl-v",run:El}],_$=[{key:"ArrowLeft",run:Ap,shift:Lp,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:Gw,shift:o$,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:e$,shift:O$,preventDefault:!0},{key:"ArrowRight",run:qp,shift:Yp,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:Uw,shift:l$,preventDefault:!0},{mac:"Cmd-ArrowRight",run:t$,shift:u$,preventDefault:!0},{key:"ArrowUp",run:Wp,shift:Ip,preventDefault:!0},{mac:"Cmd-ArrowUp",run:Tf,shift:Xf},{mac:"Ctrl-ArrowUp",run:$f,shift:Pf},{key:"ArrowDown",run:_p,shift:Gp,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Cf,shift:Zf},{mac:"Ctrl-ArrowDown",run:El,shift:vf},{key:"PageUp",run:$f,shift:Pf},{key:"PageDown",run:El,shift:vf},{key:"Home",run:Jw,shift:f$,preventDefault:!0},{key:"Mod-Home",run:Tf,shift:Xf},{key:"End",run:Kw,shift:c$,preventDefault:!0},{key:"Mod-End",run:Cf,shift:Zf},{key:"Enter",run:Rf,shift:Rf},{key:"Mod-a",run:m$},{key:"Backspace",run:jl,shift:jl,preventDefault:!0},{key:"Delete",run:Hp,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:Jp,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:k$,preventDefault:!0},{mac:"Mod-Backspace",run:w$,preventDefault:!0},{mac:"Mod-Delete",run:$$,preventDefault:!0}].concat(W$.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),E$=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:Fw,shift:a$},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:Hw,shift:h$},{key:"Alt-ArrowUp",run:T$},{key:"Shift-Alt-ArrowUp",run:X$},{key:"Alt-ArrowDown",run:C$},{key:"Shift-Alt-ArrowDown",run:Z$},{key:"Mod-Alt-ArrowUp",run:S$},{key:"Mod-Alt-ArrowDown",run:b$},{key:"Escape",run:y$},{key:"Mod-Enter",run:q$},{key:"Alt-l",mac:"Ctrl-l",run:g$},{key:"Mod-i",run:Q$,preventDefault:!0},{key:"Mod-[",run:rm},{key:"Mod-]",run:nm},{key:"Mod-Alt-\\",run:M$},{key:"Shift-Mod-k",run:R$},{key:"Shift-Mod-\\",run:s$},{key:"Mod-/",run:Tw},{key:"Alt-A",run:Xw},{key:"Ctrl-m",mac:"Shift-Alt-m",run:z$}].concat(_$),j$={key:"Tab",run:nm,shift:rm},Af=typeof String.prototype.normalize=="function"?n=>n.normalize("NFKD"):n=>n;class Gi{constructor(e,t,i=0,r=e.length,s,o){this.test=o,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(i,r),this.bufferStart=i,this.normalize=s?l=>s(Af(l)):Af,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return Ze(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=Yl(e),i=this.bufferStart+this.bufferPos;this.bufferPos+=Ot(e);let r=this.normalize(t);if(r.length)for(let s=0,o=i,l=!0;;s++){let a=r.charCodeAt(s),h=this.match(a,o,l,this.bufferPos+this.bufferStart,s==r.length-1);if(h)return this.value=h,this;if(s==r.length-1)break;l&&sthis.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let i=this.curLineStart+t.index,r=i+t[0].length;if(this.matchPos=ms(this.text,r+(i==r?1:0)),i==this.curLineStart+this.curLine.length&&this.nextLine(),(ithis.value.to)&&(!this.test||this.test(i,r,t)))return this.value={from:i,to:r,precise:!0,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length=i||r.to<=t){let l=new Wi(t,e.sliceString(t,i));return Mo.set(e,l),l}if(r.from==t&&r.to==i)return r;let{text:s,from:o}=r;return o>t&&(s=e.sliceString(t,o)+s,o=t),r.to=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let i=this.flat.from+t.index,r=i+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(i,r,t)))return this.value={from:i,to:r,precise:!0,match:t},this.matchPos=ms(this.text,r+(i==r?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=Wi.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(om.prototype[Symbol.iterator]=lm.prototype[Symbol.iterator]=function(){return this});function V$(n){try{return new RegExp(n,Ba),!0}catch{return!1}}function ms(n,e){if(e>=n.length)return e;let t=n.lineAt(e),i;for(;e=56320&&i<57344;)e++;return e}const L$=n=>{let{state:e}=n,t=String(e.doc.lineAt(n.state.selection.main.head).number),{close:i,result:r}=QQ(n,{label:e.phrase("Go to line"),input:{type:"text",name:"line",value:t},focus:!0,submitLabel:e.phrase("go")});return r.then(s=>{let o=s&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(s.elements.line.value);if(!o){n.dispatch({effects:i});return}let l=e.doc.lineAt(e.selection.main.head),[,a,h,c,f]=o,O=c?+c.slice(1):0,u=h?+h:l.number;if(h&&f){let g=u/100;a&&(g=g*(a=="-"?-1:1)+l.number/e.doc.lines),u=Math.round(e.doc.lines*g)}else h&&a&&(u=u*(a=="-"?-1:1)+l.number);let d=e.doc.line(Math.max(1,Math.min(e.doc.lines,u))),m=b.cursor(d.from+Math.max(0,Math.min(O,d.length)));n.dispatch({effects:[i,v.scrollIntoView(m.from,{y:"center"})],selection:m})}),!0},Y$={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},D$=C.define({combine(n){return yt(n,Y$,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function B$(n){return[F$,N$]}const I$=R.mark({class:"cm-selectionMatch"}),G$=R.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function qf(n,e,t,i){return(t==0||n(e.sliceDoc(t-1,t))!=te.Word)&&(i==e.doc.length||n(e.sliceDoc(i,i+1))!=te.Word)}function U$(n,e,t,i){return n(e.sliceDoc(t,t+1))==te.Word&&n(e.sliceDoc(i-1,i))==te.Word}const N$=se.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.selectionSet||n.docChanged||n.viewportChanged)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=n.state.facet(D$),{state:t}=n,i=t.selection;if(i.ranges.length>1)return R.none;let r=i.main,s,o=null;if(r.empty){if(!e.highlightWordAroundCursor)return R.none;let a=t.wordAt(r.head);if(!a)return R.none;o=t.charCategorizer(r.head),s=t.sliceDoc(a.from,a.to)}else{let a=r.to-r.from;if(a200)return R.none;if(e.wholeWords){if(s=t.sliceDoc(r.from,r.to),o=t.charCategorizer(r.head),!(qf(o,t,r.from,r.to)&&U$(o,t,r.from,r.to)))return R.none}else if(s=t.sliceDoc(r.from,r.to),!s)return R.none}let l=[];for(let a of n.visibleRanges){let h=new Gi(t.doc,s,a.from,a.to);for(;!h.next().done;){let{from:c,to:f}=h.value;if((!o||qf(o,t,c,f))&&(r.empty&&c<=r.from&&f>=r.to?l.push(G$.range(c,f)):(c>=r.to||f<=r.from)&&l.push(I$.range(c,f)),l.length>e.maxMatches))return R.none}}return R.set(l)}},{decorations:n=>n.decorations}),F$=v.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),H$=({state:n,dispatch:e})=>{let{selection:t}=n,i=b.create(t.ranges.map(r=>n.wordAt(r.head)||b.cursor(r.head)),t.mainIndex);return i.eq(t)?!1:(e(n.update({selection:i})),!0)};function K$(n,e){let{main:t,ranges:i}=n.selection,r=n.wordAt(t.head),s=r&&r.from==t.from&&r.to==t.to;for(let o=!1,l=new Gi(n.doc,e,i[i.length-1].to);;)if(l.next(),l.done){if(o)return null;l=new Gi(n.doc,e,0,Math.max(0,i[i.length-1].from-1)),o=!0}else{if(o&&i.some(a=>a.from==l.value.from))continue;if(s){let a=n.wordAt(l.value.from);if(!a||a.from!=l.value.from||a.to!=l.value.to)continue}return l.value}}const J$=({state:n,dispatch:e})=>{let{ranges:t}=n.selection;if(t.some(s=>s.from===s.to))return H$({state:n,dispatch:e});let i=n.sliceDoc(t[0].from,t[0].to);if(n.selection.ranges.some(s=>n.sliceDoc(s.from,s.to)!=i))return!1;let r=K$(n,i);return r?(e(n.update({selection:n.selection.addRange(b.range(r.from,r.to),!1),effects:v.scrollIntoView(r.to)})),!0):!1},Ji=C.define({combine(n){return yt(n,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new uP(e),scrollToMatch:e=>v.scrollIntoView(e)})}});class am{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||V$(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(t,i)=>i=="n"?` +`:i=="r"?"\r":i=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new sP(this):new iP(this)}getCursor(e,t=0,i){let r=e.doc?e:Y.create({doc:e});return i==null&&(i=r.doc.length),this.regexp?$i(this,r,t,i):wi(this,r,t,i)}}class hm{constructor(e){this.spec=e}}function eP(n,e,t){return(i,r,s,o)=>{if(t&&!t(i,r,s,o))return!1;let l=i>=o&&r<=o+s.length?s.slice(i-o,r-o):e.doc.sliceString(i,r);return n(l,e,i,r)}}function wi(n,e,t,i){let r;return n.wholeWord&&(r=tP(e.doc,e.charCategorizer(e.selection.main.head))),n.test&&(r=eP(n.test,e,r)),new Gi(e.doc,n.unquoted,t,i,n.caseSensitive?void 0:s=>s.toLowerCase(),r)}function tP(n,e){return(t,i,r,s)=>((s>t||s+r.length=t)return null;r.push(i.value)}return r}highlight(e,t,i,r){let s=wi(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(i+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)r(s.value.from,s.value.to)}}function nP(n,e,t){return(i,r,s)=>(!t||t(i,r,s))&&n(s[0],e,i,r)}function $i(n,e,t,i){let r;return n.wholeWord&&(r=rP(e.charCategorizer(e.selection.main.head))),n.test&&(r=nP(n.test,e,r)),new om(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:r},t,i)}function gs(n,e){return n.slice(ue(n,e,!1),e)}function Qs(n,e){return n.slice(e,ue(n,e))}function rP(n){return(e,t,i)=>!i[0].length||(n(gs(i.input,i.index))!=te.Word||n(Qs(i.input,i.index))!=te.Word)&&(n(Qs(i.input,i.index+i[0].length))!=te.Word||n(gs(i.input,i.index+i[0].length))!=te.Word)}class sP extends hm{nextMatch(e,t,i){let r=$i(this.spec,e,i,e.doc.length).next();return r.done&&(r=$i(this.spec,e,0,t).next()),r.done?null:r.value}prevMatchInRange(e,t,i){for(let r=1;;r++){let s=Math.max(t,i-r*1e4),o=$i(this.spec,e,s,i),l=null;for(;!o.next().done;)l=o.value;if(l&&(s==t||l.from>s+10))return l;if(s==t)return null}}prevMatch(e,t,i){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,i,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,i)=>{if(i=="&")return e.match[0];if(i=="$")return"$";for(let r=i.length;r>0;r--){let s=+i.slice(0,r);if(s>0&&s=t)return null;r.push(i.value)}return r}highlight(e,t,i,r){let s=$i(this.spec,e,Math.max(0,t-250),Math.min(i+250,e.doc.length));for(;!s.next().done;)r(s.value.from,s.value.to)}}const In=z.define(),Ia=z.define(),Vt=be.define({create(n){return new zo(Vl(n).create(),null)},update(n,e){for(let t of e.effects)t.is(In)?n=new zo(t.value.create(),n.panel):t.is(Ia)&&(n=new zo(n.query,t.value?Ga:null));return n},provide:n=>Zn.from(n,e=>e.panel)});class zo{constructor(e,t){this.query=e,this.panel=t}}const oP=R.mark({class:"cm-searchMatch"}),lP=R.mark({class:"cm-searchMatch cm-searchMatch-selected"}),aP=se.fromClass(class{constructor(n){this.view=n,this.decorations=this.highlight(n.state.field(Vt))}update(n){let e=n.state.field(Vt);(e!=n.startState.field(Vt)||n.docChanged||n.selectionSet||n.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:n,panel:e}){if(!e||!n.spec.valid)return R.none;let{view:t}=this,i=new Zt;for(let r=0,s=t.visibleRanges,o=s.length;rs[r+1].from-500;)a=s[++r].to;n.highlight(t.state,l,a,(h,c)=>{let f=t.state.selection.ranges.some(O=>O.from==h&&O.to==c);i.add(h,c,f?lP:oP)})}return i.finish()}},{decorations:n=>n.decorations});function er(n){return e=>{let t=e.state.field(Vt,!1);return t&&t.query.spec.valid?n(e,t):Om(e)}}const Ss=er((n,{query:e})=>{let{to:t}=n.state.selection.main,i=e.nextMatch(n.state,t,t);if(!i)return!1;let r=b.single(i.from,i.to),s=n.state.facet(Ji);return n.dispatch({selection:r,effects:[Ua(n,i),s.scrollToMatch(r.main,n)],userEvent:"select.search"}),fm(n),!0}),bs=er((n,{query:e})=>{let{state:t}=n,{from:i}=t.selection.main,r=e.prevMatch(t,i,i);if(!r)return!1;let s=b.single(r.from,r.to),o=n.state.facet(Ji);return n.dispatch({selection:s,effects:[Ua(n,r),o.scrollToMatch(s.main,n)],userEvent:"select.search"}),fm(n),!0}),hP=er((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:b.create(t.map(i=>b.range(i.from,i.to))),userEvent:"select.search.matches"}),!0)}),cP=({state:n,dispatch:e})=>{let t=n.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:i,to:r}=t.main,s=[],o=0;for(let l=new Gi(n.doc,n.sliceDoc(i,r));!l.next().done;){if(s.length>1e3)return!1;l.value.from==i&&(o=s.length),s.push(b.range(l.value.from,l.value.to))}return e(n.update({selection:b.create(s,o),userEvent:"select.search.matches"})),!0},Mf=er((n,{query:e})=>{let{state:t}=n,{from:i,to:r}=t.selection.main;if(t.readOnly)return!1;let s=e.nextMatch(t,i,i);if(!s)return!1;let o=s,l=[],a,h,c=[];o.precise?o.from==i&&o.to==r&&(h=t.toText(e.getReplacement(o)),l.push({from:o.from,to:o.to,insert:h}),c.push(v.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(i).number)+"."))):o=e.nextMatch(t,o.from,o.to);let f=n.state.changes(l);return o&&(a=b.single(o.from,o.to).map(f),c.push(Ua(n,o)),c.push(t.facet(Ji).scrollToMatch(a.main,n))),n.dispatch({changes:f,selection:a,effects:c,userEvent:"input.replace"}),!0}),fP=er((n,{query:e})=>{if(n.state.readOnly)return!1;let t=[];for(let r of e.matchAll(n.state,1e9)){let{from:s,to:o,precise:l}=r;l&&t.push({from:s,to:o,insert:e.getReplacement(r)})}if(!t.length)return!1;let i=n.state.phrase("replaced $ matches",t.length)+".";return n.dispatch({changes:t,effects:v.announce.of(i),userEvent:"input.replace.all"}),!0});function Ga(n){return n.state.facet(Ji).createPanel(n)}function Vl(n,e){var t,i,r,s,o;let l=n.selection.main,a=l.empty||l.to>l.from+100?"":n.sliceDoc(l.from,l.to);if(e&&!a)return e;let h=n.facet(Ji);return new am({search:((t=e?.literal)!==null&&t!==void 0?t:h.literal)?a:a.replace(/\n/g,"\\n"),caseSensitive:(i=e?.caseSensitive)!==null&&i!==void 0?i:h.caseSensitive,literal:(r=e?.literal)!==null&&r!==void 0?r:h.literal,regexp:(s=e?.regexp)!==null&&s!==void 0?s:h.regexp,wholeWord:(o=e?.wholeWord)!==null&&o!==void 0?o:h.wholeWord})}function cm(n){let e=la(n,Ga);return e&&e.dom.querySelector("[main-field]")}function fm(n){let e=cm(n);e&&e==n.root.activeElement&&e.select()}const Om=n=>{let e=n.state.field(Vt,!1);if(e&&e.panel){let t=cm(n);if(t&&t!=n.root.activeElement){let i=Vl(n.state,e.query.spec);i.valid&&n.dispatch({effects:In.of(i)}),t.focus(),t.select()}}else n.dispatch({effects:[Ia.of(!0),e?In.of(Vl(n.state,e.query.spec)):z.appendConfig.of(pP)]});return!0},um=n=>{let e=n.state.field(Vt,!1);if(!e||!e.panel)return!1;let t=la(n,Ga);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:Ia.of(!1)}),!0},OP=[{key:"Mod-f",run:Om,scope:"editor search-panel"},{key:"F3",run:Ss,shift:bs,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:Ss,shift:bs,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:um,scope:"editor search-panel"},{key:"Mod-Shift-l",run:cP},{key:"Mod-Alt-g",run:L$},{key:"Mod-d",run:J$,preventDefault:!0}];class uP{constructor(e){this.view=e;let t=this.query=e.state.field(Vt).query.spec;this.commit=this.commit.bind(this),this.searchField=N("input",{value:t.search,placeholder:je(e,"Find"),"aria-label":je(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=N("input",{value:t.replace,placeholder:je(e,"Replace"),"aria-label":je(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=N("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=N("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=N("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function i(r,s,o){return N("button",{class:"cm-button",name:r,onclick:s,type:"button"},o)}this.dom=N("div",{onkeydown:r=>this.keydown(r),class:"cm-search"},[this.searchField,i("next",()=>Ss(e),[je(e,"next")]),i("prev",()=>bs(e),[je(e,"previous")]),i("select",()=>hP(e),[je(e,"all")]),N("label",null,[this.caseField,je(e,"match case")]),N("label",null,[this.reField,je(e,"regexp")]),N("label",null,[this.wordField,je(e,"by word")]),...e.state.readOnly?[]:[N("br"),this.replaceField,i("replace",()=>Mf(e),[je(e,"replace")]),i("replaceAll",()=>fP(e),[je(e,"replace all")])],N("button",{name:"close",onclick:()=>um(e),"aria-label":je(e,"close"),type:"button"},["×"])])}commit(){let e=new am({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:In.of(e)}))}keydown(e){v0(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?bs:Ss)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),Mf(this.view))}update(e){for(let t of e.transactions)for(let i of t.effects)i.is(In)&&!i.value.eq(this.query)&&this.setQuery(i.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(Ji).top}}function je(n,e){return n.state.phrase(e)}const Pr=30,vr=/[\s\.,:;?!]/;function Ua(n,{from:e,to:t}){let i=n.state.doc.lineAt(e),r=n.state.doc.lineAt(t).to,s=Math.max(i.from,e-Pr),o=Math.min(r,t+Pr),l=n.state.sliceDoc(s,o);if(s!=i.from){for(let a=0;al.length-Pr;a--)if(!vr.test(l[a-1])&&vr.test(l[a])){l=l.slice(0,a);break}}return v.announce.of(`${n.state.phrase("current match")}. ${l} ${n.state.phrase("on line")} ${i.number}.`)}const dP=v.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),pP=[Vt,qt.low(aP),dP];var zf=function(e){e===void 0&&(e={});var t=e,i=t.crosshairCursor,r=i===void 0?!1:i,s=[];e.closeBracketsKeymap!==!1&&(s=s.concat(My)),e.defaultKeymap!==!1&&(s=s.concat(E$)),e.searchKeymap!==!1&&(s=s.concat(OP)),e.historyKeymap!==!1&&(s=s.concat(Iw)),e.foldKeymap!==!1&&(s=s.concat(SS)),e.completionKeymap!==!1&&(s=s.concat(Qd)),e.lintKeymap!==!1&&(s=s.concat(yw));var o=[];return e.lineNumbers!==!1&&o.push(CQ()),e.highlightActiveLineGutter!==!1&&o.push(RQ()),e.highlightSpecialChars!==!1&&o.push(D0()),e.history!==!1&&o.push(Ww()),e.foldGutter!==!1&&o.push(xS()),e.drawSelection!==!1&&o.push(A0()),e.dropCursor!==!1&&o.push(_0()),e.allowMultipleSelections!==!1&&o.push(Y.allowMultipleSelections.of(!0)),e.indentOnInput!==!1&&o.push(fS()),e.syntaxHighlighting!==!1&&o.push(qu(vS,{fallback:!0})),e.bracketMatching!==!1&&o.push(qS()),e.closeBrackets!==!1&&o.push(Zy()),e.autocompletion!==!1&&o.push(Ly()),e.rectangularSelection!==!1&&o.push(rQ()),r!==!1&&o.push(lQ()),e.highlightActiveLine!==!1&&o.push(F0()),e.highlightSelectionMatches!==!1&&o.push(B$()),e.tabSize&&typeof e.tabSize=="number"&&o.push(Fi.of(" ".repeat(e.tabSize))),o.concat([Ui.of(s.flat())]).filter(Boolean)};const mP="#e5c07b",Wf="#e06c75",gP="#56b6c2",QP="#ffffff",Lr="#abb2bf",Ll="#7d8799",SP="#61afef",bP="#98c379",_f="#d19a66",yP="#c678dd",kP="#21252b",Ef="#2c313a",jf="#282c34",Wo="#353a42",xP="#3E4451",Vf="#528bff",wP=v.theme({"&":{color:Lr,backgroundColor:jf},".cm-content":{caretColor:Vf},".cm-cursor, .cm-dropCursor":{borderLeftColor:Vf},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:xP},".cm-panels":{backgroundColor:kP,color:Lr},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:jf,color:Ll,border:"none"},".cm-activeLineGutter":{backgroundColor:Ef},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:Wo},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:Wo,borderBottomColor:Wo},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:Ef,color:Lr}}},{dark:!0}),$P=Hn.define([{tag:p.keyword,color:yP},{tag:[p.name,p.deleted,p.character,p.propertyName,p.macroName],color:Wf},{tag:[p.function(p.variableName),p.labelName],color:SP},{tag:[p.color,p.constant(p.name),p.standard(p.name)],color:_f},{tag:[p.definition(p.name),p.separator],color:Lr},{tag:[p.typeName,p.className,p.number,p.changed,p.annotation,p.modifier,p.self,p.namespace],color:mP},{tag:[p.operator,p.operatorKeyword,p.url,p.escape,p.regexp,p.link,p.special(p.string)],color:gP},{tag:[p.meta,p.comment],color:Ll},{tag:p.strong,fontWeight:"bold"},{tag:p.emphasis,fontStyle:"italic"},{tag:p.strikethrough,textDecoration:"line-through"},{tag:p.link,color:Ll,textDecoration:"underline"},{tag:p.heading,fontWeight:"bold",color:Wf},{tag:[p.atom,p.bool,p.special(p.variableName)],color:_f},{tag:[p.processingInstruction,p.string,p.inserted],color:bP},{tag:p.invalid,color:QP}]),PP=[wP,qu($P)];var vP=v.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),TP=function(e){e===void 0&&(e={});var t=e,i=t.indentWithTab,r=i===void 0?!0:i,s=t.editable,o=s===void 0?!0:s,l=t.readOnly,a=l===void 0?!1:l,h=t.theme,c=h===void 0?"light":h,f=t.placeholder,O=f===void 0?"":f,u=t.basicSetup,d=u===void 0?!0:u,m=[];switch(r&&m.unshift(Ui.of([j$])),d&&(typeof d=="boolean"?m.unshift(zf()):m.unshift(zf(d))),O&&m.unshift(eQ(O)),c){case"light":m.push(vP);break;case"dark":m.push(PP);break;case"none":break;default:m.push(c);break}return o===!1&&m.push(v.editable.of(!1)),a&&m.push(Y.readOnly.of(!0)),[...m]},CP=n=>({line:n.state.doc.lineAt(n.state.selection.main.from),lineCount:n.state.doc.lines,lineBreak:n.state.lineBreak,length:n.state.doc.length,readOnly:n.state.readOnly,tabSize:n.state.tabSize,selection:n.state.selection,selectionAsSingle:n.state.selection.asSingle().main,ranges:n.state.selection.ranges,selectionCode:n.state.sliceDoc(n.state.selection.main.from,n.state.selection.main.to),selections:n.state.selection.ranges.map(e=>n.state.sliceDoc(e.from,e.to)),selectedText:n.state.selection.ranges.some(e=>!e.empty)});class XP{constructor(e,t){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=t,this.timeoutMS=t,this.callbacks.push(e)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var e=this.callbacks.slice();this.callbacks.length=0,e.forEach(t=>{try{t()}catch(i){console.error("TimeoutLatch callback error:",i)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class Lf{constructor(){this.interval=null,this.latches=new Set}add(e){this.latches.add(e),this.start()}remove(e){this.latches.delete(e),this.latches.size===0&&this.stop()}start(){this.interval===null&&(this.interval=setInterval(()=>{this.latches.forEach(e=>{e.tick(),e.isDone&&this.remove(e)})},1))}stop(){this.interval!==null&&(clearInterval(this.interval),this.interval=null)}}var _o=null,ZP=()=>typeof window>"u"?new Lf:(_o||(_o=new Lf),_o),Yf=bt.define(),RP=200,AP=[];function qP(n){var e=n.value,t=n.selection,i=n.onChange,r=n.onStatistics,s=n.onCreateEditor,o=n.onUpdate,l=n.extensions,a=l===void 0?AP:l,h=n.autoFocus,c=n.theme,f=c===void 0?"light":c,O=n.height,u=O===void 0?null:O,d=n.minHeight,m=d===void 0?null:d,g=n.maxHeight,Q=g===void 0?null:g,S=n.width,y=S===void 0?null:S,P=n.minWidth,k=P===void 0?null:P,x=n.maxWidth,$=x===void 0?null:x,q=n.placeholder,_=q===void 0?"":q,I=n.editable,W=I===void 0?!0:I,A=n.readOnly,L=A===void 0?!1:A,E=n.indentWithTab,G=E===void 0?!0:E,oe=n.basicSetup,fe=oe===void 0?!0:oe,$e=n.root,ie=n.initialState,de=ve.useState(),pe=de[0],Pe=de[1],We=ve.useState(),H=We[0],He=We[1],ii=ve.useState(),ki=ii[0],js=ii[1],st=ve.useState(()=>({current:null}))[0],tr=ve.useState(()=>({current:null}))[0],dm=v.theme({"&":{height:u,minHeight:m,maxHeight:Q,width:y,minWidth:k,maxWidth:$},"& .cm-scroller":{height:"100% !important"}}),pm=v.updateListener.of(ot=>{if(ot.docChanged&&typeof i=="function"&&!ot.transactions.some(Vs=>Vs.annotation(Yf))){st.current?st.current.reset():(st.current=new XP(()=>{if(tr.current){var Vs=tr.current;tr.current=null,Vs()}st.current=null},RP),ZP().add(st.current));var ni=ot.state.doc,ri=ni.toString();i(ri,ot)}r&&r(CP(ot))}),mm=TP({theme:f,editable:W,readOnly:L,placeholder:_,indentWithTab:G,basicSetup:fe}),en=[pm,dm,...mm];return o&&typeof o=="function"&&en.push(v.updateListener.of(o)),en=en.concat(a),ve.useLayoutEffect(()=>{if(pe&&!ki){var ot={doc:e,selection:t,extensions:en},ni=ie?Y.fromJSON(ie.json,ot,ie.fields):Y.create(ot);if(js(ni),!H){var ri=new v({state:ni,parent:pe,root:$e});He(ri),s&&s(ri,ni)}}return()=>{H&&(js(void 0),He(void 0))}},[pe,ki]),ve.useEffect(()=>{n.container&&Pe(n.container)},[n.container]),ve.useEffect(()=>()=>{H&&(H.destroy(),He(void 0)),st.current&&(st.current.cancel(),st.current=null)},[H]),ve.useEffect(()=>{h&&H&&H.focus()},[h,H]),ve.useEffect(()=>{H&&H.dispatch({effects:z.reconfigure.of(en)})},[f,a,u,m,Q,y,k,$,_,W,L,G,fe,i,o]),ve.useEffect(()=>{if(e!==void 0){var ot=H?H.state.doc.toString():"";if(H&&e!==ot){var ni=st.current&&!st.current.isDone,ri=()=>{H&&e!==H.state.doc.toString()&&H.dispatch({changes:{from:0,to:H.state.doc.toString().length,insert:e||""},annotations:[Yf.of(!0)]})};ni?tr.current=ri:ri()}}},[e,H]),{state:ki,setState:js,view:H,setView:He,container:pe,setContainer:Pe}}var MP=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],zP=ve.forwardRef((n,e)=>{var t=n.className,i=n.value,r=i===void 0?"":i,s=n.selection,o=n.extensions,l=o===void 0?[]:o,a=n.onChange,h=n.onStatistics,c=n.onCreateEditor,f=n.onUpdate,O=n.autoFocus,u=n.theme,d=u===void 0?"light":u,m=n.height,g=n.minHeight,Q=n.maxHeight,S=n.width,y=n.minWidth,P=n.maxWidth,k=n.basicSetup,x=n.placeholder,$=n.indentWithTab,q=n.editable,_=n.readOnly,I=n.root,W=n.initialState,A=ym(n,MP),L=ve.useRef(null),E=qP({root:I,value:r,autoFocus:O,theme:d,height:m,minHeight:g,maxHeight:Q,width:S,minWidth:y,maxWidth:P,basicSetup:k,placeholder:x,indentWithTab:$,editable:q,readOnly:_,selection:s,onChange:a,onStatistics:h,onCreateEditor:c,onUpdate:f,extensions:l,initialState:W}),G=E.state,oe=E.view,fe=E.container,$e=E.setContainer;ve.useImperativeHandle(e,()=>({editor:L.current,state:G,view:oe}),[L,fe,G,oe]);var ie=ve.useCallback(pe=>{L.current=pe,$e(pe)},[$e]);if(typeof r!="string")throw new Error("value must be typeof string but got "+typeof r);var de=typeof d=="string"?"cm-theme-"+d:"cm-theme";return bm.jsx("div",Eo({ref:ie,className:""+de+(t?" "+t:"")},A))});zP.displayName="CodeMirror";export{p as A,Fn as B,ce as C,R as D,v as E,C as F,At as G,Hn as H,qt as P,j as R,z as S,B as T,se as V,it as W,Eo as _,Zt as a,zP as b,be as c,ju as d,Xt as e,ym as f,yt as g,N as h,A1 as i,FP as j,Rs as k,LP as l,HP as m,kQ as n,HQ as o,YP as p,ok as q,Ny as r,IP as s,bm as t,Ut as u,UP as v,NP as w,yp as x,Zn as y,qu as z}; diff --git a/ui/dist.noauth.bak/assets/vendor-react-QREEBBIX.js b/ui/dist.noauth.bak/assets/vendor-react-QREEBBIX.js new file mode 100644 index 00000000..60126c66 --- /dev/null +++ b/ui/dist.noauth.bak/assets/vendor-react-QREEBBIX.js @@ -0,0 +1,8 @@ +function sd(o,f){for(var s=0;sy[g]})}}}return Object.freeze(Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}))}var cp=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Za(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}var Li={exports:{}},Y={};var Da;function ad(){if(Da)return Y;Da=1;var o=Symbol.for("react.element"),f=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),g=Symbol.for("react.profiler"),E=Symbol.for("react.provider"),_=Symbol.for("react.context"),L=Symbol.for("react.forward_ref"),P=Symbol.for("react.suspense"),j=Symbol.for("react.memo"),$=Symbol.for("react.lazy"),N=Symbol.iterator;function Q(p){return p===null||typeof p!="object"?null:(p=N&&p[N]||p["@@iterator"],typeof p=="function"?p:null)}var ne={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},b=Object.assign,H={};function T(p,S,K){this.props=p,this.context=S,this.refs=H,this.updater=K||ne}T.prototype.isReactComponent={},T.prototype.setState=function(p,S){if(typeof p!="object"&&typeof p!="function"&&p!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,p,S,"setState")},T.prototype.forceUpdate=function(p){this.updater.enqueueForceUpdate(this,p,"forceUpdate")};function re(){}re.prototype=T.prototype;function se(p,S,K){this.props=p,this.context=S,this.refs=H,this.updater=K||ne}var pe=se.prototype=new re;pe.constructor=se,b(pe,T.prototype),pe.isPureReactComponent=!0;var ve=Array.isArray,Oe=Object.prototype.hasOwnProperty,Me={current:null},Fe={key:!0,ref:!0,__self:!0,__source:!0};function Ze(p,S,K){var X,Z={},J=null,le=null;if(S!=null)for(X in S.ref!==void 0&&(le=S.ref),S.key!==void 0&&(J=""+S.key),S)Oe.call(S,X)&&!Fe.hasOwnProperty(X)&&(Z[X]=S[X]);var ee=arguments.length-2;if(ee===1)Z.children=K;else if(1>>1,S=z[p];if(0>>1;pg(Z,M))Jg(le,Z)?(z[p]=le,z[J]=M,p=J):(z[p]=Z,z[X]=M,p=X);else if(Jg(le,M))z[p]=le,z[J]=M,p=J;else break e}}return A}function g(z,A){var M=z.sortIndex-A.sortIndex;return M!==0?M:z.id-A.id}if(typeof performance=="object"&&typeof performance.now=="function"){var E=performance;o.unstable_now=function(){return E.now()}}else{var _=Date,L=_.now();o.unstable_now=function(){return _.now()-L}}var P=[],j=[],$=1,N=null,Q=3,ne=!1,b=!1,H=!1,T=typeof setTimeout=="function"?setTimeout:null,re=typeof clearTimeout=="function"?clearTimeout:null,se=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function pe(z){for(var A=s(j);A!==null;){if(A.callback===null)y(j);else if(A.startTime<=z)y(j),A.sortIndex=A.expirationTime,f(P,A);else break;A=s(j)}}function ve(z){if(H=!1,pe(z),!b)if(s(P)!==null)b=!0,je(Oe);else{var A=s(j);A!==null&&he(ve,A.startTime-z)}}function Oe(z,A){b=!1,H&&(H=!1,re(Ze),Ze=-1),ne=!0;var M=Q;try{for(pe(A),N=s(P);N!==null&&(!(N.expirationTime>A)||z&&!Xt());){var p=N.callback;if(typeof p=="function"){N.callback=null,Q=N.priorityLevel;var S=p(N.expirationTime<=A);A=o.unstable_now(),typeof S=="function"?N.callback=S:N===s(P)&&y(P),pe(A)}else y(P);N=s(P)}if(N!==null)var K=!0;else{var X=s(j);X!==null&&he(ve,X.startTime-A),K=!1}return K}finally{N=null,Q=M,ne=!1}}var Me=!1,Fe=null,Ze=-1,Nt=5,gt=-1;function Xt(){return!(o.unstable_now()-gtz||125p?(z.sortIndex=M,f(j,z),s(P)===null&&z===s(j)&&(H?(re(Ze),Ze=-1):H=!0,he(ve,M-p))):(z.sortIndex=S,f(P,z),b||ne||(b=!0,je(Oe))),z},o.unstable_shouldYield=Xt,o.unstable_wrapCallback=function(z){var A=Q;return function(){var M=Q;Q=A;try{return z.apply(this,arguments)}finally{Q=M}}}})(Mi)),Mi}var Ua;function pd(){return Ua||(Ua=1,Oi.exports=dd()),Oi.exports}var Ba;function hd(){if(Ba)return We;Ba=1;var o=Ja(),f=pd();function s(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),P=Object.prototype.hasOwnProperty,j=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,$={},N={};function Q(e){return P.call(N,e)?!0:P.call($,e)?!1:j.test(e)?N[e]=!0:($[e]=!0,!1)}function ne(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function b(e,t,n,r){if(t===null||typeof t>"u"||ne(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function H(e,t,n,r,l,u,i){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=l,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=u,this.removeEmptyString=i}var T={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){T[e]=new H(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];T[t]=new H(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){T[e]=new H(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){T[e]=new H(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){T[e]=new H(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){T[e]=new H(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){T[e]=new H(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){T[e]=new H(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){T[e]=new H(e,5,!1,e.toLowerCase(),null,!1,!1)});var re=/[\-:]([a-z])/g;function se(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(re,se);T[t]=new H(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(re,se);T[t]=new H(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(re,se);T[t]=new H(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){T[e]=new H(e,1,!1,e.toLowerCase(),null,!1,!1)}),T.xlinkHref=new H("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){T[e]=new H(e,1,!1,e.toLowerCase(),null,!0,!0)});function pe(e,t,n,r){var l=T.hasOwnProperty(t)?T[t]:null;(l!==null?l.type!==0:r||!(2a||l[i]!==u[a]){var c=` +`+l[i].replace(" at new "," at ");return e.displayName&&c.includes("")&&(c=c.replace("",e.displayName)),c}while(1<=i&&0<=a);break}}}finally{K=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?S(e):""}function Z(e){switch(e.tag){case 5:return S(e.type);case 16:return S("Lazy");case 13:return S("Suspense");case 19:return S("SuspenseList");case 0:case 2:case 15:return e=X(e.type,!1),e;case 11:return e=X(e.type.render,!1),e;case 1:return e=X(e.type,!0),e;default:return""}}function J(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Fe:return"Fragment";case Me:return"Portal";case Nt:return"Profiler";case Ze:return"StrictMode";case He:return"Suspense";case rt:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Xt:return(e.displayName||"Context")+".Consumer";case gt:return(e._context.displayName||"Context")+".Provider";case ft:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case dt:return t=e.displayName||null,t!==null?t:J(e.type)||"Memo";case je:t=e._payload,e=e._init;try{return J(e(t))}catch{}}return null}function le(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return J(t);case 8:return t===Ze?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function ee(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function ae(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Qe(e){var t=ae(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var l=n.get,u=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(i){r=""+i,u.call(this,i)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(i){r=""+i},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function _r(e){e._valueTracker||(e._valueTracker=Qe(e))}function Vi(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=ae(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Pr(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function jl(e,t){var n=t.checked;return M({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function $i(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=ee(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Ai(e,t){t=t.checked,t!=null&&pe(e,"checked",t,!1)}function Ul(e,t){Ai(e,t);var n=ee(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Bl(e,t.type,n):t.hasOwnProperty("defaultValue")&&Bl(e,t.type,ee(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Wi(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Bl(e,t,n){(t!=="number"||Pr(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var jn=Array.isArray;function cn(e,t,n,r){if(e=e.options,t){t={};for(var l=0;l"+t.valueOf().toString()+"",t=Nr.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Un(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Bn={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},fc=["Webkit","ms","Moz","O"];Object.keys(Bn).forEach(function(e){fc.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Bn[t]=Bn[e]})});function Gi(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Bn.hasOwnProperty(e)&&Bn[e]?(""+t).trim():t+"px"}function Zi(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,l=Gi(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,l):e[n]=l}}var dc=M({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Al(e,t){if(t){if(dc[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(s(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(s(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(s(61))}if(t.style!=null&&typeof t.style!="object")throw Error(s(62))}}function Wl(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Hl=null;function Ql(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Kl=null,fn=null,dn=null;function Ji(e){if(e=or(e)){if(typeof Kl!="function")throw Error(s(280));var t=e.stateNode;t&&(t=Zr(t),Kl(e.stateNode,e.type,t))}}function qi(e){fn?dn?dn.push(e):dn=[e]:fn=e}function bi(){if(fn){var e=fn,t=dn;if(dn=fn=null,Ji(e),t)for(e=0;e>>=0,e===0?32:31-(Cc(e)/xc|0)|0}var Or=64,Mr=4194304;function Wn(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ir(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,l=e.suspendedLanes,u=e.pingedLanes,i=n&268435455;if(i!==0){var a=i&~l;a!==0?r=Wn(a):(u&=i,u!==0&&(r=Wn(u)))}else i=n&~l,i!==0?r=Wn(i):u!==0&&(r=Wn(u));if(r===0)return 0;if(t!==0&&t!==r&&(t&l)===0&&(l=r&-r,u=t&-t,l>=u||l===16&&(u&4194240)!==0))return t;if((r&4)!==0&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Hn(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-lt(t),e[t]=n}function zc(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=qn),zo=" ",Ro=!1;function Lo(e,t){switch(e){case"keyup":return nf.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function To(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var mn=!1;function lf(e,t){switch(e){case"compositionend":return To(t);case"keypress":return t.which!==32?null:(Ro=!0,zo);case"textInput":return e=t.data,e===zo&&Ro?null:e;default:return null}}function uf(e,t){if(mn)return e==="compositionend"||!cu&&Lo(e,t)?(e=Eo(),Br=lu=Ot=null,mn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Uo(n)}}function Vo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Vo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function $o(){for(var e=window,t=Pr();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Pr(e.document)}return t}function pu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function mf(e){var t=$o(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Vo(n.ownerDocument.documentElement,n)){if(r!==null&&pu(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var l=n.textContent.length,u=Math.min(r.start,l);r=r.end===void 0?u:Math.min(r.end,l),!e.extend&&u>r&&(l=r,r=u,u=l),l=Bo(n,u);var i=Bo(n,r);l&&i&&(e.rangeCount!==1||e.anchorNode!==l.node||e.anchorOffset!==l.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&(t=t.createRange(),t.setStart(l.node,l.offset),e.removeAllRanges(),u>r?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,vn=null,hu=null,nr=null,mu=!1;function Ao(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;mu||vn==null||vn!==Pr(r)||(r=vn,"selectionStart"in r&&pu(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),nr&&tr(nr,r)||(nr=r,r=Yr(hu,"onSelect"),0kn||(e.current=Nu[kn],Nu[kn]=null,kn--)}function ue(e,t){kn++,Nu[kn]=e.current,e.current=t}var Ft={},ze=Dt(Ft),Ue=Dt(!1),Jt=Ft;function En(e,t){var n=e.type.contextTypes;if(!n)return Ft;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var l={},u;for(u in n)l[u]=t[u];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=l),l}function Be(e){return e=e.childContextTypes,e!=null}function Jr(){oe(Ue),oe(ze)}function rs(e,t,n){if(ze.current!==Ft)throw Error(s(168));ue(ze,t),ue(Ue,n)}function ls(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var l in r)if(!(l in t))throw Error(s(108,le(e)||"Unknown",l));return M({},n,r)}function qr(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Ft,Jt=ze.current,ue(ze,e),ue(Ue,Ue.current),!0}function us(e,t,n){var r=e.stateNode;if(!r)throw Error(s(169));n?(e=ls(e,t,Jt),r.__reactInternalMemoizedMergedChildContext=e,oe(Ue),oe(ze),ue(ze,e)):oe(Ue),ue(Ue,n)}var St=null,br=!1,zu=!1;function is(e){St===null?St=[e]:St.push(e)}function Nf(e){br=!0,is(e)}function jt(){if(!zu&&St!==null){zu=!0;var e=0,t=te;try{var n=St;for(te=1;e>=i,l-=i,kt=1<<32-lt(t)+l|n<W?(_e=V,V=null):_e=V.sibling;var q=w(h,V,m[W],x);if(q===null){V===null&&(V=_e);break}e&&V&&q.alternate===null&&t(h,V),d=u(q,d,W),B===null?F=q:B.sibling=q,B=q,V=_e}if(W===m.length)return n(h,V),ce&&bt(h,W),F;if(V===null){for(;WW?(_e=V,V=null):_e=V.sibling;var Kt=w(h,V,q.value,x);if(Kt===null){V===null&&(V=_e);break}e&&V&&Kt.alternate===null&&t(h,V),d=u(Kt,d,W),B===null?F=Kt:B.sibling=Kt,B=Kt,V=_e}if(q.done)return n(h,V),ce&&bt(h,W),F;if(V===null){for(;!q.done;W++,q=m.next())q=C(h,q.value,x),q!==null&&(d=u(q,d,W),B===null?F=q:B.sibling=q,B=q);return ce&&bt(h,W),F}for(V=r(h,V);!q.done;W++,q=m.next())q=R(V,h,W,q.value,x),q!==null&&(e&&q.alternate!==null&&V.delete(q.key===null?W:q.key),d=u(q,d,W),B===null?F=q:B.sibling=q,B=q);return e&&V.forEach(function(od){return t(h,od)}),ce&&bt(h,W),F}function ge(h,d,m,x){if(typeof m=="object"&&m!==null&&m.type===Fe&&m.key===null&&(m=m.props.children),typeof m=="object"&&m!==null){switch(m.$$typeof){case Oe:e:{for(var F=m.key,B=d;B!==null;){if(B.key===F){if(F=m.type,F===Fe){if(B.tag===7){n(h,B.sibling),d=l(B,m.props.children),d.return=h,h=d;break e}}else if(B.elementType===F||typeof F=="object"&&F!==null&&F.$$typeof===je&&ds(F)===B.type){n(h,B.sibling),d=l(B,m.props),d.ref=sr(h,B,m),d.return=h,h=d;break e}n(h,B);break}else t(h,B);B=B.sibling}m.type===Fe?(d=sn(m.props.children,h.mode,x,m.key),d.return=h,h=d):(x=Nl(m.type,m.key,m.props,null,h.mode,x),x.ref=sr(h,d,m),x.return=h,h=x)}return i(h);case Me:e:{for(B=m.key;d!==null;){if(d.key===B)if(d.tag===4&&d.stateNode.containerInfo===m.containerInfo&&d.stateNode.implementation===m.implementation){n(h,d.sibling),d=l(d,m.children||[]),d.return=h,h=d;break e}else{n(h,d);break}else t(h,d);d=d.sibling}d=_i(m,h.mode,x),d.return=h,h=d}return i(h);case je:return B=m._init,ge(h,d,B(m._payload),x)}if(jn(m))return I(h,d,m,x);if(A(m))return D(h,d,m,x);rl(h,m)}return typeof m=="string"&&m!==""||typeof m=="number"?(m=""+m,d!==null&&d.tag===6?(n(h,d.sibling),d=l(d,m),d.return=h,h=d):(n(h,d),d=xi(m,h.mode,x),d.return=h,h=d),i(h)):n(h,d)}return ge}var Pn=ps(!0),hs=ps(!1),ll=Dt(null),ul=null,Nn=null,Iu=null;function Du(){Iu=Nn=ul=null}function Fu(e){var t=ll.current;oe(ll),e._currentValue=t}function ju(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function zn(e,t){ul=e,Iu=Nn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&t)!==0&&(Ve=!0),e.firstContext=null)}function be(e){var t=e._currentValue;if(Iu!==e)if(e={context:e,memoizedValue:t,next:null},Nn===null){if(ul===null)throw Error(s(308));Nn=e,ul.dependencies={lanes:0,firstContext:e}}else Nn=Nn.next=e;return t}var en=null;function Uu(e){en===null?en=[e]:en.push(e)}function ms(e,t,n,r){var l=t.interleaved;return l===null?(n.next=n,Uu(t)):(n.next=l.next,l.next=n),t.interleaved=n,Ct(e,r)}function Ct(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Ut=!1;function Bu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function vs(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function xt(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Bt(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,(G&2)!==0){var l=r.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),r.pending=t,Ct(e,n)}return l=r.interleaved,l===null?(t.next=t,Uu(r)):(t.next=l.next,l.next=t),r.interleaved=t,Ct(e,n)}function il(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,bl(e,n)}}function ys(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var l=null,u=null;if(n=n.firstBaseUpdate,n!==null){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};u===null?l=u=i:u=u.next=i,n=n.next}while(n!==null);u===null?l=u=t:u=u.next=t}else l=u=t;n={baseState:r.baseState,firstBaseUpdate:l,lastBaseUpdate:u,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function ol(e,t,n,r){var l=e.updateQueue;Ut=!1;var u=l.firstBaseUpdate,i=l.lastBaseUpdate,a=l.shared.pending;if(a!==null){l.shared.pending=null;var c=a,v=c.next;c.next=null,i===null?u=v:i.next=v,i=c;var k=e.alternate;k!==null&&(k=k.updateQueue,a=k.lastBaseUpdate,a!==i&&(a===null?k.firstBaseUpdate=v:a.next=v,k.lastBaseUpdate=c))}if(u!==null){var C=l.baseState;i=0,k=v=c=null,a=u;do{var w=a.lane,R=a.eventTime;if((r&w)===w){k!==null&&(k=k.next={eventTime:R,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var I=e,D=a;switch(w=t,R=n,D.tag){case 1:if(I=D.payload,typeof I=="function"){C=I.call(R,C,w);break e}C=I;break e;case 3:I.flags=I.flags&-65537|128;case 0:if(I=D.payload,w=typeof I=="function"?I.call(R,C,w):I,w==null)break e;C=M({},C,w);break e;case 2:Ut=!0}}a.callback!==null&&a.lane!==0&&(e.flags|=64,w=l.effects,w===null?l.effects=[a]:w.push(a))}else R={eventTime:R,lane:w,tag:a.tag,payload:a.payload,callback:a.callback,next:null},k===null?(v=k=R,c=C):k=k.next=R,i|=w;if(a=a.next,a===null){if(a=l.shared.pending,a===null)break;w=a,a=w.next,w.next=null,l.lastBaseUpdate=w,l.shared.pending=null}}while(!0);if(k===null&&(c=C),l.baseState=c,l.firstBaseUpdate=v,l.lastBaseUpdate=k,t=l.shared.interleaved,t!==null){l=t;do i|=l.lane,l=l.next;while(l!==t)}else u===null&&(l.shared.lanes=0);rn|=i,e.lanes=i,e.memoizedState=C}}function gs(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=Hu.transition;Hu.transition={};try{e(!1),t()}finally{te=n,Hu.transition=r}}function js(){return et().memoizedState}function Tf(e,t,n){var r=Wt(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Us(e))Bs(t,n);else if(n=ms(e,t,n,r),n!==null){var l=De();ct(n,e,r,l),Vs(n,t,r)}}function Of(e,t,n){var r=Wt(e),l={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Us(e))Bs(t,l);else{var u=e.alternate;if(e.lanes===0&&(u===null||u.lanes===0)&&(u=t.lastRenderedReducer,u!==null))try{var i=t.lastRenderedState,a=u(i,n);if(l.hasEagerState=!0,l.eagerState=a,ut(a,i)){var c=t.interleaved;c===null?(l.next=l,Uu(t)):(l.next=c.next,c.next=l),t.interleaved=l;return}}catch{}n=ms(e,t,l,r),n!==null&&(l=De(),ct(n,e,r,l),Vs(n,t,r))}}function Us(e){var t=e.alternate;return e===de||t!==null&&t===de}function Bs(e,t){dr=cl=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Vs(e,t,n){if((n&4194240)!==0){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,bl(e,n)}}var pl={readContext:be,useCallback:Re,useContext:Re,useEffect:Re,useImperativeHandle:Re,useInsertionEffect:Re,useLayoutEffect:Re,useMemo:Re,useReducer:Re,useRef:Re,useState:Re,useDebugValue:Re,useDeferredValue:Re,useTransition:Re,useMutableSource:Re,useSyncExternalStore:Re,useId:Re,unstable_isNewReconciler:!1},Mf={readContext:be,useCallback:function(e,t){return vt().memoizedState=[e,t===void 0?null:t],e},useContext:be,useEffect:Rs,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,fl(4194308,4,Os.bind(null,t,e),n)},useLayoutEffect:function(e,t){return fl(4194308,4,e,t)},useInsertionEffect:function(e,t){return fl(4,2,e,t)},useMemo:function(e,t){var n=vt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=vt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Tf.bind(null,de,e),[r.memoizedState,e]},useRef:function(e){var t=vt();return e={current:e},t.memoizedState=e},useState:Ns,useDebugValue:Ju,useDeferredValue:function(e){return vt().memoizedState=e},useTransition:function(){var e=Ns(!1),t=e[0];return e=Lf.bind(null,e[1]),vt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=de,l=vt();if(ce){if(n===void 0)throw Error(s(407));n=n()}else{if(n=t(),xe===null)throw Error(s(349));(nn&30)!==0||Es(r,t,n)}l.memoizedState=n;var u={value:n,getSnapshot:t};return l.queue=u,Rs(xs.bind(null,r,u,e),[e]),r.flags|=2048,mr(9,Cs.bind(null,r,u,n,t),void 0,null),n},useId:function(){var e=vt(),t=xe.identifierPrefix;if(ce){var n=Et,r=kt;n=(r&~(1<<32-lt(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=pr++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=i.createElement(n,{is:r.is}):(e=i.createElement(n),n==="select"&&(i=e,r.multiple?i.multiple=!0:r.size&&(i.size=r.size))):e=i.createElementNS(e,n),e[ht]=t,e[ir]=r,ia(e,t,!1,!1),t.stateNode=e;e:{switch(i=Wl(n,r),n){case"dialog":ie("cancel",e),ie("close",e),l=r;break;case"iframe":case"object":case"embed":ie("load",e),l=r;break;case"video":case"audio":for(l=0;lMn&&(t.flags|=128,r=!0,vr(u,!1),t.lanes=4194304)}else{if(!r)if(e=sl(i),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),vr(u,!0),u.tail===null&&u.tailMode==="hidden"&&!i.alternate&&!ce)return Le(t),null}else 2*ye()-u.renderingStartTime>Mn&&n!==1073741824&&(t.flags|=128,r=!0,vr(u,!1),t.lanes=4194304);u.isBackwards?(i.sibling=t.child,t.child=i):(n=u.last,n!==null?n.sibling=i:t.child=i,u.last=i)}return u.tail!==null?(t=u.tail,u.rendering=t,u.tail=t.sibling,u.renderingStartTime=ye(),t.sibling=null,n=fe.current,ue(fe,r?n&1|2:n&1),t):(Le(t),null);case 22:case 23:return ki(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&(t.mode&1)!==0?(Ge&1073741824)!==0&&(Le(t),t.subtreeFlags&6&&(t.flags|=8192)):Le(t),null;case 24:return null;case 25:return null}throw Error(s(156,t.tag))}function $f(e,t){switch(Lu(t),t.tag){case 1:return Be(t.type)&&Jr(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Rn(),oe(Ue),oe(ze),Wu(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 5:return $u(t),null;case 13:if(oe(fe),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(s(340));_n()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return oe(fe),null;case 4:return Rn(),null;case 10:return Fu(t.type._context),null;case 22:case 23:return ki(),null;case 24:return null;default:return null}}var yl=!1,Te=!1,Af=typeof WeakSet=="function"?WeakSet:Set,O=null;function Tn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){me(e,t,r)}else n.current=null}function ai(e,t,n){try{n()}catch(r){me(e,t,r)}}var aa=!1;function Wf(e,t){if(ku=jr,e=$o(),pu(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,u=r.focusNode;r=r.focusOffset;try{n.nodeType,u.nodeType}catch{n=null;break e}var i=0,a=-1,c=-1,v=0,k=0,C=e,w=null;t:for(;;){for(var R;C!==n||l!==0&&C.nodeType!==3||(a=i+l),C!==u||r!==0&&C.nodeType!==3||(c=i+r),C.nodeType===3&&(i+=C.nodeValue.length),(R=C.firstChild)!==null;)w=C,C=R;for(;;){if(C===e)break t;if(w===n&&++v===l&&(a=i),w===u&&++k===r&&(c=i),(R=C.nextSibling)!==null)break;C=w,w=C.parentNode}C=R}n=a===-1||c===-1?null:{start:a,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Eu={focusedElem:e,selectionRange:n},jr=!1,O=t;O!==null;)if(t=O,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,O=e;else for(;O!==null;){t=O;try{var I=t.alternate;if((t.flags&1024)!==0)switch(t.tag){case 0:case 11:case 15:break;case 1:if(I!==null){var D=I.memoizedProps,ge=I.memoizedState,h=t.stateNode,d=h.getSnapshotBeforeUpdate(t.elementType===t.type?D:ot(t.type,D),ge);h.__reactInternalSnapshotBeforeUpdate=d}break;case 3:var m=t.stateNode.containerInfo;m.nodeType===1?m.textContent="":m.nodeType===9&&m.documentElement&&m.removeChild(m.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(s(163))}}catch(x){me(t,t.return,x)}if(e=t.sibling,e!==null){e.return=t.return,O=e;break}O=t.return}return I=aa,aa=!1,I}function yr(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var u=l.destroy;l.destroy=void 0,u!==void 0&&ai(t,n,u)}l=l.next}while(l!==r)}}function gl(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function ci(e){var t=e.ref;if(t!==null){var n=e.stateNode;e.tag,e=n,typeof t=="function"?t(e):t.current=e}}function ca(e){var t=e.alternate;t!==null&&(e.alternate=null,ca(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[ht],delete t[ir],delete t[Pu],delete t[_f],delete t[Pf])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function fa(e){return e.tag===5||e.tag===3||e.tag===4}function da(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||fa(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function fi(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Gr));else if(r!==4&&(e=e.child,e!==null))for(fi(e,t,n),e=e.sibling;e!==null;)fi(e,t,n),e=e.sibling}function di(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(di(e,t,n),e=e.sibling;e!==null;)di(e,t,n),e=e.sibling}var Pe=null,st=!1;function Vt(e,t,n){for(n=n.child;n!==null;)pa(e,t,n),n=n.sibling}function pa(e,t,n){if(pt&&typeof pt.onCommitFiberUnmount=="function")try{pt.onCommitFiberUnmount(Tr,n)}catch{}switch(n.tag){case 5:Te||Tn(n,t);case 6:var r=Pe,l=st;Pe=null,Vt(e,t,n),Pe=r,st=l,Pe!==null&&(st?(e=Pe,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Pe.removeChild(n.stateNode));break;case 18:Pe!==null&&(st?(e=Pe,n=n.stateNode,e.nodeType===8?_u(e.parentNode,n):e.nodeType===1&&_u(e,n),Gn(e)):_u(Pe,n.stateNode));break;case 4:r=Pe,l=st,Pe=n.stateNode.containerInfo,st=!0,Vt(e,t,n),Pe=r,st=l;break;case 0:case 11:case 14:case 15:if(!Te&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var u=l,i=u.destroy;u=u.tag,i!==void 0&&((u&2)!==0||(u&4)!==0)&&ai(n,t,i),l=l.next}while(l!==r)}Vt(e,t,n);break;case 1:if(!Te&&(Tn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){me(n,t,a)}Vt(e,t,n);break;case 21:Vt(e,t,n);break;case 22:n.mode&1?(Te=(r=Te)||n.memoizedState!==null,Vt(e,t,n),Te=r):Vt(e,t,n);break;default:Vt(e,t,n)}}function ha(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Af),t.forEach(function(r){var l=qf.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function at(e,t){var n=t.deletions;if(n!==null)for(var r=0;rl&&(l=i),r&=~u}if(r=l,r=ye()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Qf(r/1960))-r,10e?16:e,At===null)var r=!1;else{if(e=At,At=null,Cl=0,(G&6)!==0)throw Error(s(331));var l=G;for(G|=4,O=e.current;O!==null;){var u=O,i=u.child;if((O.flags&16)!==0){var a=u.deletions;if(a!==null){for(var c=0;cye()-mi?un(e,0):hi|=n),Ae(e,t)}function Na(e,t){t===0&&((e.mode&1)===0?t=1:(t=Mr,Mr<<=1,(Mr&130023424)===0&&(Mr=4194304)));var n=De();e=Ct(e,t),e!==null&&(Hn(e,t,n),Ae(e,n))}function Jf(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Na(e,n)}function qf(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(s(314))}r!==null&&r.delete(t),Na(e,n)}var za;za=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ue.current)Ve=!0;else{if((e.lanes&n)===0&&(t.flags&128)===0)return Ve=!1,Bf(e,t,n);Ve=(e.flags&131072)!==0}else Ve=!1,ce&&(t.flags&1048576)!==0&&os(t,tl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;vl(e,t),e=t.pendingProps;var l=En(t,ze.current);zn(t,n),l=Ku(null,t,r,e,l,n);var u=Yu();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Be(r)?(u=!0,qr(t)):u=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,Bu(t),l.updater=hl,t.stateNode=l,l._reactInternals=t,bu(t,r,e,n),t=ri(null,t,r,!0,u,n)):(t.tag=0,ce&&u&&Ru(t),Ie(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(vl(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=ed(r),e=ot(r,e),l){case 0:t=ni(null,t,r,e,n);break e;case 1:t=ea(null,t,r,e,n);break e;case 11:t=Gs(null,t,r,e,n);break e;case 14:t=Zs(null,t,r,ot(r.type,e),n);break e}throw Error(s(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ot(r,l),ni(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ot(r,l),ea(e,t,r,l,n);case 3:e:{if(ta(t),e===null)throw Error(s(387));r=t.pendingProps,u=t.memoizedState,l=u.element,vs(e,t),ol(t,r,null,n);var i=t.memoizedState;if(r=i.element,u.isDehydrated)if(u={element:r,isDehydrated:!1,cache:i.cache,pendingSuspenseBoundaries:i.pendingSuspenseBoundaries,transitions:i.transitions},t.updateQueue.baseState=u,t.memoizedState=u,t.flags&256){l=Ln(Error(s(423)),t),t=na(e,t,r,n,l);break e}else if(r!==l){l=Ln(Error(s(424)),t),t=na(e,t,r,n,l);break e}else for(Xe=It(t.stateNode.containerInfo.firstChild),Ye=t,ce=!0,it=null,n=hs(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(_n(),r===l){t=_t(e,t,n);break e}Ie(e,t,r,n)}t=t.child}return t;case 5:return ws(t),e===null&&Ou(t),r=t.type,l=t.pendingProps,u=e!==null?e.memoizedProps:null,i=l.children,Cu(r,l)?i=null:u!==null&&Cu(r,u)&&(t.flags|=32),bs(e,t),Ie(e,t,i,n),t.child;case 6:return e===null&&Ou(t),null;case 13:return ra(e,t,n);case 4:return Vu(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Pn(t,null,r,n):Ie(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ot(r,l),Gs(e,t,r,l,n);case 7:return Ie(e,t,t.pendingProps,n),t.child;case 8:return Ie(e,t,t.pendingProps.children,n),t.child;case 12:return Ie(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,u=t.memoizedProps,i=l.value,ue(ll,r._currentValue),r._currentValue=i,u!==null)if(ut(u.value,i)){if(u.children===l.children&&!Ue.current){t=_t(e,t,n);break e}}else for(u=t.child,u!==null&&(u.return=t);u!==null;){var a=u.dependencies;if(a!==null){i=u.child;for(var c=a.firstContext;c!==null;){if(c.context===r){if(u.tag===1){c=xt(-1,n&-n),c.tag=2;var v=u.updateQueue;if(v!==null){v=v.shared;var k=v.pending;k===null?c.next=c:(c.next=k.next,k.next=c),v.pending=c}}u.lanes|=n,c=u.alternate,c!==null&&(c.lanes|=n),ju(u.return,n,t),a.lanes|=n;break}c=c.next}}else if(u.tag===10)i=u.type===t.type?null:u.child;else if(u.tag===18){if(i=u.return,i===null)throw Error(s(341));i.lanes|=n,a=i.alternate,a!==null&&(a.lanes|=n),ju(i,n,t),i=u.sibling}else i=u.child;if(i!==null)i.return=u;else for(i=u;i!==null;){if(i===t){i=null;break}if(u=i.sibling,u!==null){u.return=i.return,i=u;break}i=i.return}u=i}Ie(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,zn(t,n),l=be(l),r=r(l),t.flags|=1,Ie(e,t,r,n),t.child;case 14:return r=t.type,l=ot(r,t.pendingProps),l=ot(r.type,l),Zs(e,t,r,l,n);case 15:return Js(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ot(r,l),vl(e,t),t.tag=1,Be(r)?(e=!0,qr(t)):e=!1,zn(t,n),As(t,r,l),bu(t,r,l,n),ri(null,t,r,!0,e,n);case 19:return ua(e,t,n);case 22:return qs(e,t,n)}throw Error(s(156,t.tag))};function Ra(e,t){return oo(e,t)}function bf(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function nt(e,t,n,r){return new bf(e,t,n,r)}function Ci(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ed(e){if(typeof e=="function")return Ci(e)?1:0;if(e!=null){if(e=e.$$typeof,e===ft)return 11;if(e===dt)return 14}return 2}function Qt(e,t){var n=e.alternate;return n===null?(n=nt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Nl(e,t,n,r,l,u){var i=2;if(r=e,typeof e=="function")Ci(e)&&(i=1);else if(typeof e=="string")i=5;else e:switch(e){case Fe:return sn(n.children,l,u,t);case Ze:i=8,l|=8;break;case Nt:return e=nt(12,n,t,l|2),e.elementType=Nt,e.lanes=u,e;case He:return e=nt(13,n,t,l),e.elementType=He,e.lanes=u,e;case rt:return e=nt(19,n,t,l),e.elementType=rt,e.lanes=u,e;case he:return zl(n,l,u,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case gt:i=10;break e;case Xt:i=9;break e;case ft:i=11;break e;case dt:i=14;break e;case je:i=16,r=null;break e}throw Error(s(130,e==null?e:typeof e,""))}return t=nt(i,n,t,l),t.elementType=e,t.type=r,t.lanes=u,t}function sn(e,t,n,r){return e=nt(7,e,r,t),e.lanes=n,e}function zl(e,t,n,r){return e=nt(22,e,r,t),e.elementType=he,e.lanes=n,e.stateNode={isHidden:!1},e}function xi(e,t,n){return e=nt(6,e,null,t),e.lanes=n,e}function _i(e,t,n){return t=nt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function td(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ql(0),this.expirationTimes=ql(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ql(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Pi(e,t,n,r,l,u,i,a,c){return e=new td(e,t,n,a,c),t===1?(t=1,u===!0&&(t|=8)):t=0,u=nt(3,null,null,t),e.current=u,u.stateNode=e,u.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Bu(u),e}function nd(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(f){console.error(f)}}return o(),Ti.exports=hd(),Ti.exports}var vd=md();const fp=Za(vd);function Er(){return Er=Object.assign?Object.assign.bind():function(o){for(var f=1;f"u")throw new Error(f)}function ji(o,f){if(!o){typeof console<"u"&&console.warn(f);try{throw new Error(f)}catch{}}}function gd(){return Math.random().toString(36).substr(2,8)}function Aa(o,f){return{usr:o.state,key:o.key,idx:f}}function Di(o,f,s,y){return s===void 0&&(s=null),Er({pathname:typeof o=="string"?o:o.pathname,search:"",hash:""},typeof f=="string"?Dn(f):f,{state:s,key:f&&f.key||y||gd()})}function qa(o){let{pathname:f="/",search:s="",hash:y=""}=o;return s&&s!=="?"&&(f+=s.charAt(0)==="?"?s:"?"+s),y&&y!=="#"&&(f+=y.charAt(0)==="#"?y:"#"+y),f}function Dn(o){let f={};if(o){let s=o.indexOf("#");s>=0&&(f.hash=o.substr(s),o=o.substr(0,s));let y=o.indexOf("?");y>=0&&(f.search=o.substr(y),o=o.substr(0,y)),o&&(f.pathname=o)}return f}function wd(o,f,s,y){y===void 0&&(y={});let{window:g=document.defaultView,v5Compat:E=!1}=y,_=g.history,L=Yt.Pop,P=null,j=$();j==null&&(j=0,_.replaceState(Er({},_.state,{idx:j}),""));function $(){return(_.state||{idx:null}).idx}function N(){L=Yt.Pop;let T=$(),re=T==null?null:T-j;j=T,P&&P({action:L,location:H.location,delta:re})}function Q(T,re){L=Yt.Push;let se=Di(H.location,T,re);j=$()+1;let pe=Aa(se,j),ve=H.createHref(se);try{_.pushState(pe,"",ve)}catch(Oe){if(Oe instanceof DOMException&&Oe.name==="DataCloneError")throw Oe;g.location.assign(ve)}E&&P&&P({action:L,location:H.location,delta:1})}function ne(T,re){L=Yt.Replace;let se=Di(H.location,T,re);j=$();let pe=Aa(se,j),ve=H.createHref(se);_.replaceState(pe,"",ve),E&&P&&P({action:L,location:H.location,delta:0})}function b(T){let re=g.location.origin!=="null"?g.location.origin:g.location.href,se=typeof T=="string"?T:qa(T);return se=se.replace(/ $/,"%20"),Se(re,"No window.location.(origin|href) available to create URL for href: "+se),new URL(se,re)}let H={get action(){return L},get location(){return o(g,_)},listen(T){if(P)throw new Error("A history only accepts one active listener");return g.addEventListener($a,N),P=T,()=>{g.removeEventListener($a,N),P=null}},createHref(T){return f(g,T)},createURL:b,encodeLocation(T){let re=b(T);return{pathname:re.pathname,search:re.search,hash:re.hash}},push:Q,replace:ne,go(T){return _.go(T)}};return H}var Wa;(function(o){o.data="data",o.deferred="deferred",o.redirect="redirect",o.error="error"})(Wa||(Wa={}));function Sd(o,f,s){return s===void 0&&(s="/"),kd(o,f,s)}function kd(o,f,s,y){let g=typeof f=="string"?Dn(f):f,E=rc(g.pathname||"/",s);if(E==null)return null;let _=ba(o);Ed(_);let L=null,P=nc(E);for(let j=0;L==null&&j<_.length;++j)L=Td(_[j],P);return L}function ba(o,f,s,y){f===void 0&&(f=[]),s===void 0&&(s=[]),y===void 0&&(y="");let g=(E,_,L)=>{let P={relativePath:L===void 0?E.path||"":L,caseSensitive:E.caseSensitive===!0,childrenIndex:_,route:E};P.relativePath.startsWith("/")&&(Se(P.relativePath.startsWith(y),'Absolute route path "'+P.relativePath+'" nested under path '+('"'+y+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),P.relativePath=P.relativePath.slice(y.length));let j=an([y,P.relativePath]),$=s.concat(P);E.children&&E.children.length>0&&(Se(E.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+j+'".')),ba(E.children,f,$,j)),!(E.path==null&&!E.index)&&f.push({path:j,score:Rd(j,E.index),routesMeta:$})};return o.forEach((E,_)=>{var L;if(E.path===""||!((L=E.path)!=null&&L.includes("?")))g(E,_);else for(let P of ec(E.path))g(E,_,P)}),f}function ec(o){let f=o.split("/");if(f.length===0)return[];let[s,...y]=f,g=s.endsWith("?"),E=s.replace(/\?$/,"");if(y.length===0)return g?[E,""]:[E];let _=ec(y.join("/")),L=[];return L.push(..._.map(P=>P===""?E:[E,P].join("/"))),g&&L.push(..._),L.map(P=>o.startsWith("/")&&P===""?"/":P)}function Ed(o){o.sort((f,s)=>f.score!==s.score?s.score-f.score:Ld(f.routesMeta.map(y=>y.childrenIndex),s.routesMeta.map(y=>y.childrenIndex)))}const Cd=/^:[\w-]+$/,xd=3,_d=2,Pd=1,Nd=10,zd=-2,Ha=o=>o==="*";function Rd(o,f){let s=o.split("/"),y=s.length;return s.some(Ha)&&(y+=zd),f&&(y+=_d),s.filter(g=>!Ha(g)).reduce((g,E)=>g+(Cd.test(E)?xd:E===""?Pd:Nd),y)}function Ld(o,f){return o.length===f.length&&o.slice(0,-1).every((y,g)=>y===f[g])?o[o.length-1]-f[f.length-1]:0}function Td(o,f,s){let{routesMeta:y}=o,g={},E="/",_=[];for(let L=0;L{let{paramName:Q,isOptional:ne}=$;if(Q==="*"){let H=L[N]||"";_=E.slice(0,E.length-H.length).replace(/(.)\/+$/,"$1")}const b=L[N];return ne&&!b?j[Q]=void 0:j[Q]=(b||"").replace(/%2F/g,"/"),j},{}),pathname:E,pathnameBase:_,pattern:o}}function Od(o,f,s){f===void 0&&(f=!1),s===void 0&&(s=!0),ji(o==="*"||!o.endsWith("*")||o.endsWith("/*"),'Route path "'+o+'" will be treated as if it were '+('"'+o.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+o.replace(/\*$/,"/*")+'".'));let y=[],g="^"+o.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(_,L,P)=>(y.push({paramName:L,isOptional:P!=null}),P?"/?([^\\/]+)?":"/([^\\/]+)"));return o.endsWith("*")?(y.push({paramName:"*"}),g+=o==="*"||o==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):s?g+="\\/*$":o!==""&&o!=="/"&&(g+="(?:(?=\\/|$))"),[new RegExp(g,f?void 0:"i"),y]}function nc(o){try{return o.split("/").map(f=>decodeURIComponent(f).replace(/\//g,"%2F")).join("/")}catch(f){return ji(!1,'The URL path "'+o+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+f+").")),o}}function rc(o,f){if(f==="/")return o;if(!o.toLowerCase().startsWith(f.toLowerCase()))return null;let s=f.endsWith("/")?f.length-1:f.length,y=o.charAt(s);return y&&y!=="/"?null:o.slice(s)||"/"}const Md=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Id=o=>Md.test(o);function Dd(o,f){f===void 0&&(f="/");let{pathname:s,search:y="",hash:g=""}=typeof o=="string"?Dn(o):o,E;if(s)if(Id(s))E=s;else{if(s.includes("//")){let _=s;s=lc(s),ji(!1,"Pathnames cannot have embedded double slashes - normalizing "+(_+" -> "+s))}s.startsWith("/")?E=Qa(s.substring(1),"/"):E=Qa(s,f)}else E=f;return{pathname:E,search:Vd(y),hash:$d(g)}}function Qa(o,f){let s=f.replace(/\/+$/,"").split("/");return o.split("/").forEach(g=>{g===".."?s.length>1&&s.pop():g!=="."&&s.push(g)}),s.length>1?s.join("/"):"/"}function Ii(o,f,s,y){return"Cannot include a '"+o+"' character in a manually specified "+("`to."+f+"` field ["+JSON.stringify(y)+"]. Please separate it out to the ")+("`to."+s+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function Fd(o){return o.filter((f,s)=>s===0||f.route.path&&f.route.path.length>0)}function jd(o,f){let s=Fd(o);return f?s.map((y,g)=>g===s.length-1?y.pathname:y.pathnameBase):s.map(y=>y.pathnameBase)}function Ud(o,f,s,y){y===void 0&&(y=!1);let g;typeof o=="string"?g=Dn(o):(g=Er({},o),Se(!g.pathname||!g.pathname.includes("?"),Ii("?","pathname","search",g)),Se(!g.pathname||!g.pathname.includes("#"),Ii("#","pathname","hash",g)),Se(!g.search||!g.search.includes("#"),Ii("#","search","hash",g)));let E=o===""||g.pathname==="",_=E?"/":g.pathname,L;if(_==null)L=s;else{let N=f.length-1;if(!y&&_.startsWith("..")){let Q=_.split("/");for(;Q[0]==="..";)Q.shift(),N-=1;g.pathname=Q.join("/")}L=N>=0?f[N]:"/"}let P=Dd(g,L),j=_&&_!=="/"&&_.endsWith("/"),$=(E||_===".")&&s.endsWith("/");return!P.pathname.endsWith("/")&&(j||$)&&(P.pathname+="/"),P}const lc=o=>o.replace(/\/\/+/g,"/"),an=o=>lc(o.join("/")),Bd=o=>o.replace(/\/+$/,"").replace(/^\/*/,"/"),Vd=o=>!o||o==="?"?"":o.startsWith("?")?o:"?"+o,$d=o=>!o||o==="#"?"":o.startsWith("#")?o:"#"+o;function Ad(o){return o!=null&&typeof o.status=="number"&&typeof o.statusText=="string"&&typeof o.internal=="boolean"&&"data"in o}const uc=["post","put","patch","delete"];new Set(uc);const Wd=["get",...uc];new Set(Wd);function Cr(){return Cr=Object.assign?Object.assign.bind():function(o){for(var f=1;ftc(o,nc(f)),[f,o])}function oc(o){U.useContext(Dl).static||U.useLayoutEffect(o)}function pp(){let{isDataRoute:o}=U.useContext(Fn);return o?rp():Qd()}function Qd(){xr()||Se(!1);let o=U.useContext(Ui),{basename:f,future:s,navigator:y}=U.useContext(Dl),{matches:g}=U.useContext(Fn),{pathname:E}=Bi(),_=JSON.stringify(jd(g,s.v7_relativeSplatPath)),L=U.useRef(!1);return oc(()=>{L.current=!0}),U.useCallback(function(j,$){if($===void 0&&($={}),!L.current)return;if(typeof j=="number"){y.go(j);return}let N=Ud(j,JSON.parse(_),E,$.relative==="path");o==null&&f!=="/"&&(N.pathname=N.pathname==="/"?f:an([f,N.pathname])),($.replace?y.replace:y.push)(N,$.state,$)},[f,y,_,E,o])}function Kd(o,f){return Yd(o,f)}function Yd(o,f,s,y){xr()||Se(!1);let{navigator:g}=U.useContext(Dl),{matches:E}=U.useContext(Fn),_=E[E.length-1],L=_?_.params:{};_&&_.pathname;let P=_?_.pathnameBase:"/";_&&_.route;let j=Bi(),$;if(f){var N;let T=typeof f=="string"?Dn(f):f;P==="/"||(N=T.pathname)!=null&&N.startsWith(P)||Se(!1),$=T}else $=j;let Q=$.pathname||"/",ne=Q;if(P!=="/"){let T=P.replace(/^\//,"").split("/");ne="/"+Q.replace(/^\//,"").split("/").slice(T.length).join("/")}let b=Sd(o,{pathname:ne}),H=qd(b&&b.map(T=>Object.assign({},T,{params:Object.assign({},L,T.params),pathname:an([P,g.encodeLocation?g.encodeLocation(T.pathname).pathname:T.pathname]),pathnameBase:T.pathnameBase==="/"?P:an([P,g.encodeLocation?g.encodeLocation(T.pathnameBase).pathname:T.pathnameBase])})),E,s,y);return f&&H?U.createElement(Fl.Provider,{value:{location:Cr({pathname:"/",search:"",hash:"",state:null,key:"default"},$),navigationType:Yt.Pop}},H):H}function Xd(){let o=np(),f=Ad(o)?o.status+" "+o.statusText:o instanceof Error?o.message:JSON.stringify(o),s=o instanceof Error?o.stack:null,g={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return U.createElement(U.Fragment,null,U.createElement("h2",null,"Unexpected Application Error!"),U.createElement("h3",{style:{fontStyle:"italic"}},f),s?U.createElement("pre",{style:g},s):null,null)}const Gd=U.createElement(Xd,null);class Zd extends U.Component{constructor(f){super(f),this.state={location:f.location,revalidation:f.revalidation,error:f.error}}static getDerivedStateFromError(f){return{error:f}}static getDerivedStateFromProps(f,s){return s.location!==f.location||s.revalidation!=="idle"&&f.revalidation==="idle"?{error:f.error,location:f.location,revalidation:f.revalidation}:{error:f.error!==void 0?f.error:s.error,location:s.location,revalidation:f.revalidation||s.revalidation}}componentDidCatch(f,s){console.error("React Router caught the following error during render",f,s)}render(){return this.state.error!==void 0?U.createElement(Fn.Provider,{value:this.props.routeContext},U.createElement(ic.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Jd(o){let{routeContext:f,match:s,children:y}=o,g=U.useContext(Ui);return g&&g.static&&g.staticContext&&(s.route.errorElement||s.route.ErrorBoundary)&&(g.staticContext._deepestRenderedBoundaryId=s.route.id),U.createElement(Fn.Provider,{value:f},y)}function qd(o,f,s,y){var g;if(f===void 0&&(f=[]),s===void 0&&(s=null),y===void 0&&(y=null),o==null){var E;if(!s)return null;if(s.errors)o=s.matches;else if((E=y)!=null&&E.v7_partialHydration&&f.length===0&&!s.initialized&&s.matches.length>0)o=s.matches;else return null}let _=o,L=(g=s)==null?void 0:g.errors;if(L!=null){let $=_.findIndex(N=>N.route.id&&L?.[N.route.id]!==void 0);$>=0||Se(!1),_=_.slice(0,Math.min(_.length,$+1))}let P=!1,j=-1;if(s&&y&&y.v7_partialHydration)for(let $=0;$<_.length;$++){let N=_[$];if((N.route.HydrateFallback||N.route.hydrateFallbackElement)&&(j=$),N.route.id){let{loaderData:Q,errors:ne}=s,b=N.route.loader&&Q[N.route.id]===void 0&&(!ne||ne[N.route.id]===void 0);if(N.route.lazy||b){P=!0,j>=0?_=_.slice(0,j+1):_=[_[0]];break}}}return _.reduceRight(($,N,Q)=>{let ne,b=!1,H=null,T=null;s&&(ne=L&&N.route.id?L[N.route.id]:void 0,H=N.route.errorElement||Gd,P&&(j<0&&Q===0?(lp("route-fallback"),b=!0,T=null):j===Q&&(b=!0,T=N.route.hydrateFallbackElement||null)));let re=f.concat(_.slice(0,Q+1)),se=()=>{let pe;return ne?pe=H:b?pe=T:N.route.Component?pe=U.createElement(N.route.Component,null):N.route.element?pe=N.route.element:pe=$,U.createElement(Jd,{match:N,routeContext:{outlet:$,matches:re,isDataRoute:s!=null},children:pe})};return s&&(N.route.ErrorBoundary||N.route.errorElement||Q===0)?U.createElement(Zd,{location:s.location,revalidation:s.revalidation,component:H,error:ne,children:se(),routeContext:{outlet:null,matches:re,isDataRoute:!0}}):se()},null)}var sc=(function(o){return o.UseBlocker="useBlocker",o.UseRevalidator="useRevalidator",o.UseNavigateStable="useNavigate",o})(sc||{}),ac=(function(o){return o.UseBlocker="useBlocker",o.UseLoaderData="useLoaderData",o.UseActionData="useActionData",o.UseRouteError="useRouteError",o.UseNavigation="useNavigation",o.UseRouteLoaderData="useRouteLoaderData",o.UseMatches="useMatches",o.UseRevalidator="useRevalidator",o.UseNavigateStable="useNavigate",o.UseRouteId="useRouteId",o})(ac||{});function bd(o){let f=U.useContext(Ui);return f||Se(!1),f}function ep(o){let f=U.useContext(Hd);return f||Se(!1),f}function tp(o){let f=U.useContext(Fn);return f||Se(!1),f}function cc(o){let f=tp(),s=f.matches[f.matches.length-1];return s.route.id||Se(!1),s.route.id}function np(){var o;let f=U.useContext(ic),s=ep(),y=cc();return f!==void 0?f:(o=s.errors)==null?void 0:o[y]}function rp(){let{router:o}=bd(sc.UseNavigateStable),f=cc(ac.UseNavigateStable),s=U.useRef(!1);return oc(()=>{s.current=!0}),U.useCallback(function(g,E){E===void 0&&(E={}),s.current&&(typeof g=="number"?o.navigate(g):o.navigate(g,Cr({fromRouteId:f},E)))},[o,f])}const Ka={};function lp(o,f,s){Ka[o]||(Ka[o]=!0)}function up(o,f){o?.v7_startTransition,o?.v7_relativeSplatPath}function ip(o){Se(!1)}function op(o){let{basename:f="/",children:s=null,location:y,navigationType:g=Yt.Pop,navigator:E,static:_=!1,future:L}=o;xr()&&Se(!1);let P=f.replace(/^\/*/,"/"),j=U.useMemo(()=>({basename:P,navigator:E,static:_,future:Cr({v7_relativeSplatPath:!1},L)}),[P,L,E,_]);typeof y=="string"&&(y=Dn(y));let{pathname:$="/",search:N="",hash:Q="",state:ne=null,key:b="default"}=y,H=U.useMemo(()=>{let T=rc($,P);return T==null?null:{location:{pathname:T,search:N,hash:Q,state:ne,key:b},navigationType:g}},[P,$,N,Q,ne,b,g]);return H==null?null:U.createElement(Dl.Provider,{value:j},U.createElement(Fl.Provider,{children:s,value:H}))}function hp(o){let{children:f,location:s}=o;return Kd(Fi(f),s)}new Promise(()=>{});function Fi(o,f){f===void 0&&(f=[]);let s=[];return U.Children.forEach(o,(y,g)=>{if(!U.isValidElement(y))return;let E=[...f,g];if(y.type===U.Fragment){s.push.apply(s,Fi(y.props.children,E));return}y.type!==ip&&Se(!1),!y.props.index||!y.props.children||Se(!1);let _={id:y.props.id||E.join("-"),caseSensitive:y.props.caseSensitive,element:y.props.element,Component:y.props.Component,index:y.props.index,path:y.props.path,loader:y.props.loader,action:y.props.action,errorElement:y.props.errorElement,ErrorBoundary:y.props.ErrorBoundary,hasErrorBoundary:y.props.ErrorBoundary!=null||y.props.errorElement!=null,shouldRevalidate:y.props.shouldRevalidate,handle:y.props.handle,lazy:y.props.lazy};y.props.children&&(_.children=Fi(y.props.children,E)),s.push(_)}),s}const sp="6";try{window.__reactRouterVersion=sp}catch{}const ap="startTransition",Ya=fd[ap];function mp(o){let{basename:f,children:s,future:y,window:g}=o,E=U.useRef();E.current==null&&(E.current=yd({window:g,v5Compat:!0}));let _=E.current,[L,P]=U.useState({action:_.action,location:_.location}),{v7_startTransition:j}=y||{},$=U.useCallback(N=>{j&&Ya?Ya(()=>P(N)):P(N)},[P,j]);return U.useLayoutEffect(()=>_.listen($),[_,$]),U.useEffect(()=>up(y),[y]),U.createElement(op,{basename:f,children:s,location:L.location,navigationType:L.action,navigator:_,future:y})}var Xa;(function(o){o.UseScrollRestoration="useScrollRestoration",o.UseSubmit="useSubmit",o.UseSubmitFetcher="useSubmitFetcher",o.UseFetcher="useFetcher",o.useViewTransitionState="useViewTransitionState"})(Xa||(Xa={}));var Ga;(function(o){o.UseFetcher="useFetcher",o.UseFetchers="useFetchers",o.UseScrollRestoration="useScrollRestoration"})(Ga||(Ga={}));export{mp as B,cd as R,fd as a,fp as b,ip as c,hp as d,cp as e,U as f,Za as g,Ja as h,md as i,pp as j,vd as r,dp as u}; diff --git a/ui/dist.noauth.bak/assets/vendor-xterm-BgHoLdPP.js b/ui/dist.noauth.bak/assets/vendor-xterm-BgHoLdPP.js new file mode 100644 index 00000000..d87ed7a3 --- /dev/null +++ b/ui/dist.noauth.bak/assets/vendor-xterm-BgHoLdPP.js @@ -0,0 +1,72 @@ +var Ni=2,zi=1,Lr=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let r=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(r._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let r=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,S=window.getComputedStyle(this._terminal.element.parentElement),k=parseInt(S.getPropertyValue("height")),b=Math.max(0,parseInt(S.getPropertyValue("width"))),O=window.getComputedStyle(this._terminal.element),R={top:parseInt(O.getPropertyValue("padding-top")),bottom:parseInt(O.getPropertyValue("padding-bottom")),right:parseInt(O.getPropertyValue("padding-right")),left:parseInt(O.getPropertyValue("padding-left"))},i=R.top+R.bottom,a=R.right+R.left,l=k-i,d=b-a-r;return{cols:Math.max(Ni,Math.floor(d/e.css.cell.width)),rows:Math.max(zi,Math.floor(l/e.css.cell.height))}}};var ji=(e,r,S,k)=>{for(var b=r,O=e.length-1,R;O>=0;O--)(R=e[O])&&(b=R(b)||b);return b},qi=(e,r)=>(S,k)=>r(S,k,e),Ki=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?$t.isErrorNoTelemetry(e)?new $t(e.message+` + +`+e.stack):new Error(e.message+` + +`+e.stack):e},0)}}addListener(e){return this.listeners.push(e),()=>{this._removeListener(e)}}emit(e){this.listeners.forEach(r=>{r(e)})}_removeListener(e){this.listeners.splice(this.listeners.indexOf(e),1)}setUnexpectedErrorHandler(e){this.unexpectedErrorHandler=e}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}},Vi=new Ki;function mt(e){Gi(e)||Vi.onUnexpectedError(e)}var Dt="Canceled";function Gi(e){return e instanceof Xi?!0:e instanceof Error&&e.name===Dt&&e.message===Dt}var Xi=class extends Error{constructor(){super(Dt),this.name=this.message}},$t=class Bt extends Error{constructor(r){super(r),this.name="CodeExpectedError"}static fromError(r){if(r instanceof Bt)return r;let S=new Bt;return S.message=r.message,S.stack=r.stack,S}static isErrorNoTelemetry(r){return r.name==="CodeExpectedError"}},Yi;(e=>{function r(O){return O<0}e.isLessThan=r;function S(O){return O<=0}e.isLessThanOrEqual=S;function k(O){return O>0}e.isGreaterThan=k;function b(O){return O===0}e.isNeitherLessOrGreaterThan=b,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(Yi||={});function Ji(e,r){let S=this,k=!1,b;return function(){return k||(k=!0,r||(b=e.apply(S,arguments))),b}}var fi;(e=>{function r(c){return c&&typeof c=="object"&&typeof c[Symbol.iterator]=="function"}e.is=r;let S=Object.freeze([]);function k(){return S}e.empty=k;function*b(c){yield c}e.single=b;function O(c){return r(c)?c:b(c)}e.wrap=O;function R(c){return c||S}e.from=R;function*i(c){for(let g=c.length-1;g>=0;g--)yield c[g]}e.reverse=i;function a(c){return!c||c[Symbol.iterator]().next().done===!0}e.isEmpty=a;function l(c){return c[Symbol.iterator]().next().value}e.first=l;function d(c,g){let p=0;for(let w of c)if(g(w,p++))return!0;return!1}e.some=d;function h(c,g){for(let p of c)if(g(p))return p}e.find=h;function*u(c,g){for(let p of c)g(p)&&(yield p)}e.filter=u;function*v(c,g){let p=0;for(let w of c)yield g(w,p++)}e.map=v;function*m(c,g){let p=0;for(let w of c)yield*g(w,p++)}e.flatMap=m;function*_(...c){for(let g of c)yield*g}e.concat=_;function n(c,g,p){let w=p;for(let f of c)w=g(w,f);return w}e.reduce=n;function*o(c,g,p=c.length){for(g<0&&(g+=c.length),p<0?p+=c.length:p>c.length&&(p=c.length);g1)throw new AggregateError(r,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function gi(...e){return de(()=>vi(e))}function de(e){return{dispose:Ji(()=>{e()})}}var pi=class mi{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{vi(this._toDispose)}finally{this._toDispose.clear()}}add(r){if(!r)return r;if(r===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?mi.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(r),r}delete(r){if(r){if(r===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(r),r.dispose()}}deleteAndLeak(r){r&&this._toDispose.has(r)&&(this._toDispose.delete(r),void 0)}};pi.DISABLE_DISPOSED_WARNING=!1;var Ve=pi,Ce=class{constructor(){this._store=new Ve,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)}};Ce.None=Object.freeze({dispose(){}});var Qe=class{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}clearAndLeak(){let e=this._value;return this._value=void 0,e}},Ft=typeof process<"u"&&"title"in process,vt=Ft?"node":navigator.userAgent,Zi=Ft?"node":navigator.platform,Qi=vt.includes("Firefox"),es=vt.includes("Edge"),Si=/^((?!chrome|android).)*safari/i.test(vt);function ts(){if(!Si)return 0;let e=vt.match(/Version\/(\d+)/);return e===null||e.length<2?0:parseInt(e[1])}Zi.indexOf("Linux")>=0;var is="",oe=0,ae=0,he=0,se=0,pe={css:"#00000000",rgba:0},_e;(e=>{function r(b,O,R,i){return i!==void 0?`#${Fe(b)}${Fe(O)}${Fe(R)}${Fe(i)}`:`#${Fe(b)}${Fe(O)}${Fe(R)}`}e.toCss=r;function S(b,O,R,i=255){return(b<<24|O<<16|R<<8|i)>>>0}e.toRgba=S;function k(b,O,R,i){return{css:e.toCss(b,O,R,i),rgba:e.toRgba(b,O,R,i)}}e.toColor=k})(_e||={});var st;(e=>{function r(a,l){if(se=(l.rgba&255)/255,se===1)return{css:l.css,rgba:l.rgba};let d=l.rgba>>24&255,h=l.rgba>>16&255,u=l.rgba>>8&255,v=a.rgba>>24&255,m=a.rgba>>16&255,_=a.rgba>>8&255;oe=v+Math.round((d-v)*se),ae=m+Math.round((h-m)*se),he=_+Math.round((u-_)*se);let n=_e.toCss(oe,ae,he),o=_e.toRgba(oe,ae,he);return{css:n,rgba:o}}e.blend=r;function S(a){return(a.rgba&255)===255}e.isOpaque=S;function k(a,l,d){let h=We.ensureContrastRatio(a.rgba,l.rgba,d);if(h)return _e.toColor(h>>24&255,h>>16&255,h>>8&255)}e.ensureContrastRatio=k;function b(a){let l=(a.rgba|255)>>>0;return[oe,ae,he]=We.toChannels(l),{css:_e.toCss(oe,ae,he),rgba:l}}e.opaque=b;function O(a,l){return se=Math.round(l*255),[oe,ae,he]=We.toChannels(a.rgba),{css:_e.toCss(oe,ae,he,se),rgba:_e.toRgba(oe,ae,he,se)}}e.opacity=O;function R(a,l){return se=a.rgba&255,O(a,se*l/255)}e.multiplyOpacity=R;function i(a){return[a.rgba>>24&255,a.rgba>>16&255,a.rgba>>8&255]}e.toColorRGB=i})(st||={});var ss;(e=>{let r,S;try{let b=document.createElement("canvas");b.width=1,b.height=1;let O=b.getContext("2d",{willReadFrequently:!0});O&&(r=O,r.globalCompositeOperation="copy",S=r.createLinearGradient(0,0,1,1))}catch{}function k(b){if(b.match(/#[\da-f]{3,8}/i))switch(b.length){case 4:return oe=parseInt(b.slice(1,2).repeat(2),16),ae=parseInt(b.slice(2,3).repeat(2),16),he=parseInt(b.slice(3,4).repeat(2),16),_e.toColor(oe,ae,he);case 5:return oe=parseInt(b.slice(1,2).repeat(2),16),ae=parseInt(b.slice(2,3).repeat(2),16),he=parseInt(b.slice(3,4).repeat(2),16),se=parseInt(b.slice(4,5).repeat(2),16),_e.toColor(oe,ae,he,se);case 7:return{css:b,rgba:(parseInt(b.slice(1),16)<<8|255)>>>0};case 9:return{css:b,rgba:parseInt(b.slice(1),16)>>>0}}let O=b.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(O)return oe=parseInt(O[1]),ae=parseInt(O[2]),he=parseInt(O[3]),se=Math.round((O[5]===void 0?1:parseFloat(O[5]))*255),_e.toColor(oe,ae,he,se);if(!r||!S)throw new Error("css.toColor: Unsupported css format");if(r.fillStyle=S,r.fillStyle=b,typeof r.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(r.fillRect(0,0,1,1),[oe,ae,he,se]=r.getImageData(0,0,1,1).data,se!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:_e.toRgba(oe,ae,he,se),css:b}}e.toColor=k})(ss||={});var ue;(e=>{function r(k){return S(k>>16&255,k>>8&255,k&255)}e.relativeLuminance=r;function S(k,b,O){let R=k/255,i=b/255,a=O/255,l=R<=.03928?R/12.92:Math.pow((R+.055)/1.055,2.4),d=i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4),h=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4);return l*.2126+d*.7152+h*.0722}e.relativeLuminance2=S})(ue||={});var We;(e=>{function r(R,i){if(se=(i&255)/255,se===1)return i;let a=i>>24&255,l=i>>16&255,d=i>>8&255,h=R>>24&255,u=R>>16&255,v=R>>8&255;return oe=h+Math.round((a-h)*se),ae=u+Math.round((l-u)*se),he=v+Math.round((d-v)*se),_e.toRgba(oe,ae,he)}e.blend=r;function S(R,i,a){let l=ue.relativeLuminance(R>>8),d=ue.relativeLuminance(i>>8);if(xe(l,d)>8));if(m>8));return m>n?v:_}return v}let h=b(R,i,a),u=xe(l,ue.relativeLuminance(h>>8));if(u>8));return u>m?h:v}return h}}e.ensureContrastRatio=S;function k(R,i,a){let l=R>>24&255,d=R>>16&255,h=R>>8&255,u=i>>24&255,v=i>>16&255,m=i>>8&255,_=xe(ue.relativeLuminance2(u,v,m),ue.relativeLuminance2(l,d,h));for(;_0||v>0||m>0);)u-=Math.max(0,Math.ceil(u*.1)),v-=Math.max(0,Math.ceil(v*.1)),m-=Math.max(0,Math.ceil(m*.1)),_=xe(ue.relativeLuminance2(u,v,m),ue.relativeLuminance2(l,d,h));return(u<<24|v<<16|m<<8|255)>>>0}e.reduceLuminance=k;function b(R,i,a){let l=R>>24&255,d=R>>16&255,h=R>>8&255,u=i>>24&255,v=i>>16&255,m=i>>8&255,_=xe(ue.relativeLuminance2(u,v,m),ue.relativeLuminance2(l,d,h));for(;_>>0}e.increaseLuminance=b;function O(R){return[R>>24&255,R>>16&255,R>>8&255,R&255]}e.toChannels=O})(We||={});function Fe(e){let r=e.toString(16);return r.length<2?"0"+r:r}function xe(e,r){return e=128512&&e<=128591||e>=127744&&e<=128511||e>=128640&&e<=128767||e>=9728&&e<=9983||e>=9984&&e<=10175||e>=65024&&e<=65039||e>=129280&&e<=129535||e>=127462&&e<=127487}function hs(e,r,S,k){return r===1&&S>Math.ceil(k*1.5)&&e!==void 0&&e>255&&!as(e)&&!Ht(e)&&!ns(e)}function Ci(e){return Ht(e)||os(e)}function ls(){return{css:{canvas:at(),cell:at()},device:{canvas:at(),cell:at(),char:{width:0,height:0,left:0,top:0}}}}function at(){return{width:0,height:0}}function cs(e,r,S=0){return(e-(Math.round(r)*2-S))%(Math.round(r)*2)}var le=0,ne=0,be=!1,Ee=!1,ht=!1,fe,St=0,ds=class{constructor(e,r,S,k,b,O){this._terminal=e,this._optionService=r,this._selectionRenderModel=S,this._decorationService=k,this._coreBrowserService=b,this._themeService=O,this.result={fg:0,bg:0,ext:0}}resolve(e,r,S,k){if(this.result.bg=e.bg,this.result.fg=e.fg,this.result.ext=e.bg&268435456?e.extended.ext:0,ne=0,le=0,Ee=!1,be=!1,ht=!1,fe=this._themeService.colors,St=0,e.getCode()!==0&&e.extended.underlineStyle===4){let b=Math.max(1,Math.floor(this._optionService.rawOptions.fontSize*this._coreBrowserService.dpr/15));St=r*k%(Math.round(b)*2)}if(this._decorationService.forEachDecorationAtCell(r,S,"bottom",b=>{b.backgroundColorRGB&&(ne=b.backgroundColorRGB.rgba>>8&16777215,Ee=!0),b.foregroundColorRGB&&(le=b.foregroundColorRGB.rgba>>8&16777215,be=!0)}),ht=this._selectionRenderModel.isCellSelected(this._terminal,r,S),ht){if(this.result.fg&67108864||(this.result.bg&50331648)!==0){if(this.result.fg&67108864)switch(this.result.fg&50331648){case 16777216:case 33554432:ne=this._themeService.colors.ansi[this.result.fg&255].rgba;break;case 50331648:ne=(this.result.fg&16777215)<<8|255;break;default:ne=this._themeService.colors.foreground.rgba}else switch(this.result.bg&50331648){case 16777216:case 33554432:ne=this._themeService.colors.ansi[this.result.bg&255].rgba;break;case 50331648:ne=(this.result.bg&16777215)<<8|255;break}ne=We.blend(ne,(this._coreBrowserService.isFocused?fe.selectionBackgroundOpaque:fe.selectionInactiveBackgroundOpaque).rgba&4294967040|128)>>8&16777215}else ne=(this._coreBrowserService.isFocused?fe.selectionBackgroundOpaque:fe.selectionInactiveBackgroundOpaque).rgba>>8&16777215;if(Ee=!0,fe.selectionForeground&&(le=fe.selectionForeground.rgba>>8&16777215,be=!0),Ci(e.getCode())){if(this.result.fg&67108864&&(this.result.bg&50331648)===0)le=(this._coreBrowserService.isFocused?fe.selectionBackgroundOpaque:fe.selectionInactiveBackgroundOpaque).rgba>>8&16777215;else{if(this.result.fg&67108864)switch(this.result.bg&50331648){case 16777216:case 33554432:le=this._themeService.colors.ansi[this.result.bg&255].rgba;break;case 50331648:le=(this.result.bg&16777215)<<8|255;break}else switch(this.result.fg&50331648){case 16777216:case 33554432:le=this._themeService.colors.ansi[this.result.fg&255].rgba;break;case 50331648:le=(this.result.fg&16777215)<<8|255;break;default:le=this._themeService.colors.foreground.rgba}le=We.blend(le,(this._coreBrowserService.isFocused?fe.selectionBackgroundOpaque:fe.selectionInactiveBackgroundOpaque).rgba&4294967040|128)>>8&16777215}be=!0}}this._decorationService.forEachDecorationAtCell(r,S,"top",b=>{b.backgroundColorRGB&&(ne=b.backgroundColorRGB.rgba>>8&16777215,Ee=!0),b.foregroundColorRGB&&(le=b.foregroundColorRGB.rgba>>8&16777215,be=!0)}),Ee&&(ht?ne=e.bg&-16777216&-134217729|ne|50331648:ne=e.bg&-16777216|ne|50331648),be&&(le=e.fg&-16777216&-67108865|le|50331648),this.result.fg&67108864&&(Ee&&!be&&((this.result.bg&50331648)===0?le=this.result.fg&-134217728|fe.background.rgba>>8&16777215&16777215|50331648:le=this.result.fg&-134217728|this.result.bg&67108863,be=!0),!Ee&&be&&((this.result.fg&50331648)===0?ne=this.result.bg&-67108864|fe.foreground.rgba>>8&16777215&16777215|50331648:ne=this.result.bg&-67108864|this.result.fg&67108863,Ee=!0)),fe=void 0,this.result.bg=Ee?ne:this.result.bg,this.result.fg=be?le:this.result.fg,this.result.ext&=536870911,this.result.ext|=St<<29&3758096384}},us=.5,wi=Qi||es?"bottom":"ideographic",_s={"▀":[{x:0,y:0,w:8,h:4}],"▁":[{x:0,y:7,w:8,h:1}],"▂":[{x:0,y:6,w:8,h:2}],"▃":[{x:0,y:5,w:8,h:3}],"▄":[{x:0,y:4,w:8,h:4}],"▅":[{x:0,y:3,w:8,h:5}],"▆":[{x:0,y:2,w:8,h:6}],"▇":[{x:0,y:1,w:8,h:7}],"█":[{x:0,y:0,w:8,h:8}],"▉":[{x:0,y:0,w:7,h:8}],"▊":[{x:0,y:0,w:6,h:8}],"▋":[{x:0,y:0,w:5,h:8}],"▌":[{x:0,y:0,w:4,h:8}],"▍":[{x:0,y:0,w:3,h:8}],"▎":[{x:0,y:0,w:2,h:8}],"▏":[{x:0,y:0,w:1,h:8}],"▐":[{x:4,y:0,w:4,h:8}],"▔":[{x:0,y:0,w:8,h:1}],"▕":[{x:7,y:0,w:1,h:8}],"▖":[{x:0,y:4,w:4,h:4}],"▗":[{x:4,y:4,w:4,h:4}],"▘":[{x:0,y:0,w:4,h:4}],"▙":[{x:0,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"▚":[{x:0,y:0,w:4,h:4},{x:4,y:4,w:4,h:4}],"▛":[{x:0,y:0,w:4,h:8},{x:4,y:0,w:4,h:4}],"▜":[{x:0,y:0,w:8,h:4},{x:4,y:0,w:4,h:8}],"▝":[{x:4,y:0,w:4,h:4}],"▞":[{x:4,y:0,w:4,h:4},{x:0,y:4,w:4,h:4}],"▟":[{x:4,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"🭰":[{x:1,y:0,w:1,h:8}],"🭱":[{x:2,y:0,w:1,h:8}],"🭲":[{x:3,y:0,w:1,h:8}],"🭳":[{x:4,y:0,w:1,h:8}],"🭴":[{x:5,y:0,w:1,h:8}],"🭵":[{x:6,y:0,w:1,h:8}],"🭶":[{x:0,y:1,w:8,h:1}],"🭷":[{x:0,y:2,w:8,h:1}],"🭸":[{x:0,y:3,w:8,h:1}],"🭹":[{x:0,y:4,w:8,h:1}],"🭺":[{x:0,y:5,w:8,h:1}],"🭻":[{x:0,y:6,w:8,h:1}],"🭼":[{x:0,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🭽":[{x:0,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭾":[{x:7,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭿":[{x:7,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🮀":[{x:0,y:0,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮁":[{x:0,y:0,w:8,h:1},{x:0,y:2,w:8,h:1},{x:0,y:4,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮂":[{x:0,y:0,w:8,h:2}],"🮃":[{x:0,y:0,w:8,h:3}],"🮄":[{x:0,y:0,w:8,h:5}],"🮅":[{x:0,y:0,w:8,h:6}],"🮆":[{x:0,y:0,w:8,h:7}],"🮇":[{x:6,y:0,w:2,h:8}],"🮈":[{x:5,y:0,w:3,h:8}],"🮉":[{x:3,y:0,w:5,h:8}],"🮊":[{x:2,y:0,w:6,h:8}],"🮋":[{x:1,y:0,w:7,h:8}],"🮕":[{x:0,y:0,w:2,h:2},{x:4,y:0,w:2,h:2},{x:2,y:2,w:2,h:2},{x:6,y:2,w:2,h:2},{x:0,y:4,w:2,h:2},{x:4,y:4,w:2,h:2},{x:2,y:6,w:2,h:2},{x:6,y:6,w:2,h:2}],"🮖":[{x:2,y:0,w:2,h:2},{x:6,y:0,w:2,h:2},{x:0,y:2,w:2,h:2},{x:4,y:2,w:2,h:2},{x:2,y:4,w:2,h:2},{x:6,y:4,w:2,h:2},{x:0,y:6,w:2,h:2},{x:4,y:6,w:2,h:2}],"🮗":[{x:0,y:2,w:8,h:2},{x:0,y:6,w:8,h:2}]},fs={"░":[[1,0,0,0],[0,0,0,0],[0,0,1,0],[0,0,0,0]],"▒":[[1,0],[0,0],[0,1],[0,0]],"▓":[[0,1],[1,1],[1,0],[1,1]]},vs={"─":{1:"M0,.5 L1,.5"},"━":{3:"M0,.5 L1,.5"},"│":{1:"M.5,0 L.5,1"},"┃":{3:"M.5,0 L.5,1"},"┌":{1:"M0.5,1 L.5,.5 L1,.5"},"┏":{3:"M0.5,1 L.5,.5 L1,.5"},"┐":{1:"M0,.5 L.5,.5 L.5,1"},"┓":{3:"M0,.5 L.5,.5 L.5,1"},"└":{1:"M.5,0 L.5,.5 L1,.5"},"┗":{3:"M.5,0 L.5,.5 L1,.5"},"┘":{1:"M.5,0 L.5,.5 L0,.5"},"┛":{3:"M.5,0 L.5,.5 L0,.5"},"├":{1:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┣":{3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┤":{1:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┫":{3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┬":{1:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┳":{3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┴":{1:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┻":{3:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┼":{1:"M0,.5 L1,.5 M.5,0 L.5,1"},"╋":{3:"M0,.5 L1,.5 M.5,0 L.5,1"},"╴":{1:"M.5,.5 L0,.5"},"╸":{3:"M.5,.5 L0,.5"},"╵":{1:"M.5,.5 L.5,0"},"╹":{3:"M.5,.5 L.5,0"},"╶":{1:"M.5,.5 L1,.5"},"╺":{3:"M.5,.5 L1,.5"},"╷":{1:"M.5,.5 L.5,1"},"╻":{3:"M.5,.5 L.5,1"},"═":{1:(e,r)=>`M0,${.5-r} L1,${.5-r} M0,${.5+r} L1,${.5+r}`},"║":{1:(e,r)=>`M${.5-e},0 L${.5-e},1 M${.5+e},0 L${.5+e},1`},"╒":{1:(e,r)=>`M.5,1 L.5,${.5-r} L1,${.5-r} M.5,${.5+r} L1,${.5+r}`},"╓":{1:(e,r)=>`M${.5-e},1 L${.5-e},.5 L1,.5 M${.5+e},.5 L${.5+e},1`},"╔":{1:(e,r)=>`M1,${.5-r} L${.5-e},${.5-r} L${.5-e},1 M1,${.5+r} L${.5+e},${.5+r} L${.5+e},1`},"╕":{1:(e,r)=>`M0,${.5-r} L.5,${.5-r} L.5,1 M0,${.5+r} L.5,${.5+r}`},"╖":{1:(e,r)=>`M${.5+e},1 L${.5+e},.5 L0,.5 M${.5-e},.5 L${.5-e},1`},"╗":{1:(e,r)=>`M0,${.5+r} L${.5-e},${.5+r} L${.5-e},1 M0,${.5-r} L${.5+e},${.5-r} L${.5+e},1`},"╘":{1:(e,r)=>`M.5,0 L.5,${.5+r} L1,${.5+r} M.5,${.5-r} L1,${.5-r}`},"╙":{1:(e,r)=>`M1,.5 L${.5-e},.5 L${.5-e},0 M${.5+e},.5 L${.5+e},0`},"╚":{1:(e,r)=>`M1,${.5-r} L${.5+e},${.5-r} L${.5+e},0 M1,${.5+r} L${.5-e},${.5+r} L${.5-e},0`},"╛":{1:(e,r)=>`M0,${.5+r} L.5,${.5+r} L.5,0 M0,${.5-r} L.5,${.5-r}`},"╜":{1:(e,r)=>`M0,.5 L${.5+e},.5 L${.5+e},0 M${.5-e},.5 L${.5-e},0`},"╝":{1:(e,r)=>`M0,${.5-r} L${.5-e},${.5-r} L${.5-e},0 M0,${.5+r} L${.5+e},${.5+r} L${.5+e},0`},"╞":{1:(e,r)=>`M.5,0 L.5,1 M.5,${.5-r} L1,${.5-r} M.5,${.5+r} L1,${.5+r}`},"╟":{1:(e,r)=>`M${.5-e},0 L${.5-e},1 M${.5+e},0 L${.5+e},1 M${.5+e},.5 L1,.5`},"╠":{1:(e,r)=>`M${.5-e},0 L${.5-e},1 M1,${.5+r} L${.5+e},${.5+r} L${.5+e},1 M1,${.5-r} L${.5+e},${.5-r} L${.5+e},0`},"╡":{1:(e,r)=>`M.5,0 L.5,1 M0,${.5-r} L.5,${.5-r} M0,${.5+r} L.5,${.5+r}`},"╢":{1:(e,r)=>`M0,.5 L${.5-e},.5 M${.5-e},0 L${.5-e},1 M${.5+e},0 L${.5+e},1`},"╣":{1:(e,r)=>`M${.5+e},0 L${.5+e},1 M0,${.5+r} L${.5-e},${.5+r} L${.5-e},1 M0,${.5-r} L${.5-e},${.5-r} L${.5-e},0`},"╤":{1:(e,r)=>`M0,${.5-r} L1,${.5-r} M0,${.5+r} L1,${.5+r} M.5,${.5+r} L.5,1`},"╥":{1:(e,r)=>`M0,.5 L1,.5 M${.5-e},.5 L${.5-e},1 M${.5+e},.5 L${.5+e},1`},"╦":{1:(e,r)=>`M0,${.5-r} L1,${.5-r} M0,${.5+r} L${.5-e},${.5+r} L${.5-e},1 M1,${.5+r} L${.5+e},${.5+r} L${.5+e},1`},"╧":{1:(e,r)=>`M.5,0 L.5,${.5-r} M0,${.5-r} L1,${.5-r} M0,${.5+r} L1,${.5+r}`},"╨":{1:(e,r)=>`M0,.5 L1,.5 M${.5-e},.5 L${.5-e},0 M${.5+e},.5 L${.5+e},0`},"╩":{1:(e,r)=>`M0,${.5+r} L1,${.5+r} M0,${.5-r} L${.5-e},${.5-r} L${.5-e},0 M1,${.5-r} L${.5+e},${.5-r} L${.5+e},0`},"╪":{1:(e,r)=>`M.5,0 L.5,1 M0,${.5-r} L1,${.5-r} M0,${.5+r} L1,${.5+r}`},"╫":{1:(e,r)=>`M0,.5 L1,.5 M${.5-e},0 L${.5-e},1 M${.5+e},0 L${.5+e},1`},"╬":{1:(e,r)=>`M0,${.5+r} L${.5-e},${.5+r} L${.5-e},1 M1,${.5+r} L${.5+e},${.5+r} L${.5+e},1 M0,${.5-r} L${.5-e},${.5-r} L${.5-e},0 M1,${.5-r} L${.5+e},${.5-r} L${.5+e},0`},"╱":{1:"M1,0 L0,1"},"╲":{1:"M0,0 L1,1"},"╳":{1:"M1,0 L0,1 M0,0 L1,1"},"╼":{1:"M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"╽":{1:"M.5,.5 L.5,0",3:"M.5,.5 L.5,1"},"╾":{1:"M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"╿":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┍":{1:"M.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┎":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┑":{1:"M.5,.5 L.5,1",3:"M.5,.5 L0,.5"},"┒":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┕":{1:"M.5,.5 L.5,0",3:"M.5,.5 L1,.5"},"┖":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┙":{1:"M.5,.5 L.5,0",3:"M.5,.5 L0,.5"},"┚":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,0"},"┝":{1:"M.5,0 L.5,1",3:"M.5,.5 L1,.5"},"┞":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┟":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┠":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1"},"┡":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"┢":{1:"M.5,.5 L.5,0",3:"M0.5,1 L.5,.5 L1,.5"},"┥":{1:"M.5,0 L.5,1",3:"M.5,.5 L0,.5"},"┦":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┧":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┨":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1"},"┩":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L0,.5"},"┪":{1:"M.5,.5 L.5,0",3:"M0,.5 L.5,.5 L.5,1"},"┭":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┮":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┯":{1:"M.5,.5 L.5,1",3:"M0,.5 L1,.5"},"┰":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"┱":{1:"M.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"┲":{1:"M.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"┵":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┶":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┷":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5"},"┸":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,0"},"┹":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"┺":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,.5 L1,.5"},"┽":{1:"M.5,0 L.5,1 M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┾":{1:"M.5,0 L.5,1 M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┿":{1:"M.5,0 L.5,1",3:"M0,.5 L1,.5"},"╀":{1:"M0,.5 L1,.5 M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"╁":{1:"M.5,.5 L.5,0 M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"╂":{1:"M0,.5 L1,.5",3:"M.5,0 L.5,1"},"╃":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"╄":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"╅":{1:"M.5,0 L.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"╆":{1:"M.5,0 L.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"╇":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0 M0,.5 L1,.5"},"╈":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"╉":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"╊":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"╌":{1:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"╍":{3:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"┄":{1:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┅":{3:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┈":{1:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"┉":{3:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"╎":{1:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"╏":{3:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"┆":{1:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┇":{3:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┊":{1:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"┋":{3:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"╭":{1:(e,r)=>`M.5,1 L.5,${.5+r/.15*.5} C.5,${.5+r/.15*.5},.5,.5,1,.5`},"╮":{1:(e,r)=>`M.5,1 L.5,${.5+r/.15*.5} C.5,${.5+r/.15*.5},.5,.5,0,.5`},"╯":{1:(e,r)=>`M.5,0 L.5,${.5-r/.15*.5} C.5,${.5-r/.15*.5},.5,.5,0,.5`},"╰":{1:(e,r)=>`M.5,0 L.5,${.5-r/.15*.5} C.5,${.5-r/.15*.5},.5,.5,1,.5`}},rt={"":{d:"M.3,1 L.03,1 L.03,.88 C.03,.82,.06,.78,.11,.73 C.15,.7,.2,.68,.28,.65 L.43,.6 C.49,.58,.53,.56,.56,.53 C.59,.5,.6,.47,.6,.43 L.6,.27 L.4,.27 L.69,.1 L.98,.27 L.78,.27 L.78,.46 C.78,.52,.76,.56,.72,.61 C.68,.66,.63,.67,.56,.7 L.48,.72 C.42,.74,.38,.76,.35,.78 C.32,.8,.31,.84,.31,.88 L.31,1 M.3,.5 L.03,.59 L.03,.09 L.3,.09 L.3,.655",type:0},"":{d:"M.7,.4 L.7,.47 L.2,.47 L.2,.03 L.355,.03 L.355,.4 L.705,.4 M.7,.5 L.86,.5 L.86,.95 L.69,.95 L.44,.66 L.46,.86 L.46,.95 L.3,.95 L.3,.49 L.46,.49 L.71,.78 L.69,.565 L.69,.5",type:0},"":{d:"M.25,.94 C.16,.94,.11,.92,.11,.87 L.11,.53 C.11,.48,.15,.455,.23,.45 L.23,.3 C.23,.25,.26,.22,.31,.19 C.36,.16,.43,.15,.51,.15 C.59,.15,.66,.16,.71,.19 C.77,.22,.79,.26,.79,.3 L.79,.45 C.87,.45,.91,.48,.91,.53 L.91,.87 C.91,.92,.86,.94,.77,.94 L.24,.94 M.53,.2 C.49,.2,.45,.21,.42,.23 C.39,.25,.38,.27,.38,.3 L.38,.45 L.68,.45 L.68,.3 C.68,.27,.67,.25,.64,.23 C.61,.21,.58,.2,.53,.2 M.58,.82 L.58,.66 C.63,.65,.65,.63,.65,.6 C.65,.58,.64,.57,.61,.56 C.58,.55,.56,.54,.52,.54 C.48,.54,.46,.55,.43,.56 C.4,.57,.39,.59,.39,.6 C.39,.63,.41,.64,.46,.66 L.46,.82 L.57,.82",type:0},"":{d:"M0,0 L1,.5 L0,1",type:0,rightPadding:2},"":{d:"M-1,-.5 L1,.5 L-1,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1,0 L0,.5 L1,1",type:0,leftPadding:2},"":{d:"M2,-.5 L0,.5 L2,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M0,0 L0,1 C0.552,1,1,0.776,1,.5 C1,0.224,0.552,0,0,0",type:0,rightPadding:1},"":{d:"M.2,1 C.422,1,.8,.826,.78,.5 C.8,.174,0.422,0,.2,0",type:1,rightPadding:1},"":{d:"M1,0 L1,1 C0.448,1,0,0.776,0,.5 C0,0.224,0.448,0,1,0",type:0,leftPadding:1},"":{d:"M.8,1 C0.578,1,0.2,.826,.22,.5 C0.2,0.174,0.578,0,0.8,0",type:1,leftPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L-.5,1.5",type:0},"":{d:"M-.5,-.5 L1.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1.5,-.5 L-.5,1.5 L1.5,1.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5 L-.5,-.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L1.5,-.5",type:0}};rt[""]=rt[""];rt[""]=rt[""];function gs(e,r,S,k,b,O,R,i){let a=_s[r];if(a)return ps(e,a,S,k,b,O),!0;let l=fs[r];if(l)return ms(e,l,S,k,b,O),!0;let d=vs[r];if(d)return Ss(e,d,S,k,b,O,i),!0;let h=rt[r];return h?(Cs(e,h,S,k,b,O,R,i),!0):!1}function ps(e,r,S,k,b,O){for(let R=0;R7&&parseInt(i.slice(7,9),16)||1;else if(i.startsWith("rgba"))[m,_,n,o]=i.substring(5,i.length-1).split(",").map(t=>parseFloat(t));else throw new Error(`Unexpected fillStyle color format "${i}" when drawing pattern glyph`);for(let t=0;te.bezierCurveTo(r[0],r[1],r[2],r[3],r[4],r[5]),L:(e,r)=>e.lineTo(r[0],r[1]),M:(e,r)=>e.moveTo(r[0],r[1])};function yi(e,r,S,k,b,O,R,i=0,a=0){let l=e.map(d=>parseFloat(d)||parseInt(d));if(l.length<2)throw new Error("Too few arguments for instruction");for(let d=0;db){k-r<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(k-r))}ms`),this._start();return}k=b}this.clear()}},ws=class extends Li{_requestCallback(e){return setTimeout(()=>e(this._createDeadline(16)))}_cancelCallback(e){clearTimeout(e)}_createDeadline(e){let r=performance.now()+e;return{timeRemaining:()=>Math.max(0,r-performance.now())}}},bs=class extends Li{_requestCallback(e){return requestIdleCallback(e)}_cancelCallback(e){cancelIdleCallback(e)}},ys=!Ft&&"requestIdleCallback"in window?bs:ws,qe=class xi{constructor(){this.fg=0,this.bg=0,this.extended=new Ei}static toColorRGB(r){return[r>>>16&255,r>>>8&255,r&255]}static fromColorRGB(r){return(r[0]&255)<<16|(r[1]&255)<<8|r[2]&255}clone(){let r=new xi;return r.fg=this.fg,r.bg=this.bg,r.extended=this.extended.clone(),r}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)===50331648}isBgRGB(){return(this.bg&50331648)===50331648}isFgPalette(){return(this.fg&50331648)===16777216||(this.fg&50331648)===33554432}isBgPalette(){return(this.bg&50331648)===16777216||(this.bg&50331648)===33554432}isFgDefault(){return(this.fg&50331648)===0}isBgDefault(){return(this.bg&50331648)===0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===16777216||(this.extended.underlineColor&50331648)===33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},Ei=class Ri{constructor(r=0,S=0){this._ext=0,this._urlId=0,this._ext=r,this._urlId=S}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(r){this._ext=r}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(r){this._ext&=-469762049,this._ext|=r<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(r){this._ext&=-67108864,this._ext|=r&67108863}get urlId(){return this._urlId}set urlId(r){this._urlId=r}get underlineVariantOffset(){let r=(this._ext&3758096384)>>29;return r<0?r^4294967288:r}set underlineVariantOffset(r){this._ext&=536870911,this._ext|=r<<29&3758096384}clone(){return new Ri(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},Ls=globalThis.performance&&typeof globalThis.performance.now=="function",xs=class ki{static create(r){return new ki(r)}constructor(r){this._now=Ls&&r===!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}},Ae;(e=>{e.None=()=>Ce.None;function r(D,L){return h(D,()=>{},0,void 0,!0,void 0,L)}e.defer=r;function S(D){return(L,P=null,F)=>{let $=!1,W;return W=D(H=>{if(!$)return W?W.dispose():$=!0,L.call(P,H)},null,F),$&&W.dispose(),W}}e.once=S;function k(D,L,P){return l((F,$=null,W)=>D(H=>F.call($,L(H)),null,W),P)}e.map=k;function b(D,L,P){return l((F,$=null,W)=>D(H=>{L(H),F.call($,H)},null,W),P)}e.forEach=b;function O(D,L,P){return l((F,$=null,W)=>D(H=>L(H)&&F.call($,H),null,W),P)}e.filter=O;function R(D){return D}e.signal=R;function i(...D){return(L,P=null,F)=>{let $=gi(...D.map(W=>W(H=>L.call(P,H))));return d($,F)}}e.any=i;function a(D,L,P,F){let $=P;return k(D,W=>($=L($,W),$),F)}e.reduce=a;function l(D,L){let P,F={onWillAddFirstListener(){P=D($.fire,$)},onDidRemoveLastListener(){P?.dispose()}},$=new Q(F);return L?.add($),$.event}function d(D,L){return L instanceof Array?L.push(D):L&&L.add(D),D}function h(D,L,P=100,F=!1,$=!1,W,H){let C,E,M,T=0,U,j={leakWarningThreshold:W,onWillAddFirstListener(){C=D(G=>{T++,E=L(E,G),F&&!M&&(V.fire(E),E=void 0),U=()=>{let I=E;E=void 0,M=void 0,(!F||T>1)&&V.fire(I),T=0},typeof P=="number"?(clearTimeout(M),M=setTimeout(U,P)):M===void 0&&(M=0,queueMicrotask(U))})},onWillRemoveListener(){$&&T>0&&U?.()},onDidRemoveLastListener(){U=void 0,C.dispose()}},V=new Q(j);return H?.add(V),V.event}e.debounce=h;function u(D,L=0,P){return e.debounce(D,(F,$)=>F?(F.push($),F):[$],L,void 0,!0,void 0,P)}e.accumulate=u;function v(D,L=(F,$)=>F===$,P){let F=!0,$;return O(D,W=>{let H=F||!L(W,$);return F=!1,$=W,H},P)}e.latch=v;function m(D,L,P){return[e.filter(D,L,P),e.filter(D,F=>!L(F),P)]}e.split=m;function _(D,L=!1,P=[],F){let $=P.slice(),W=D(E=>{$?$.push(E):C.fire(E)});F&&F.add(W);let H=()=>{$?.forEach(E=>C.fire(E)),$=null},C=new Q({onWillAddFirstListener(){W||(W=D(E=>C.fire(E)),F&&F.add(W))},onDidAddFirstListener(){$&&(L?setTimeout(H):H())},onDidRemoveLastListener(){W&&W.dispose(),W=null}});return F&&F.add(C),C.event}e.buffer=_;function n(D,L){return(P,F,$)=>{let W=L(new t);return D(function(H){let C=W.evaluate(H);C!==o&&P.call(F,C)},void 0,$)}}e.chain=n;let o=Symbol("HaltChainable");class t{constructor(){this.steps=[]}map(L){return this.steps.push(L),this}forEach(L){return this.steps.push(P=>(L(P),P)),this}filter(L){return this.steps.push(P=>L(P)?P:o),this}reduce(L,P){let F=P;return this.steps.push($=>(F=L(F,$),F)),this}latch(L=(P,F)=>P===F){let P=!0,F;return this.steps.push($=>{let W=P||!L($,F);return P=!1,F=$,W?$:o}),this}evaluate(L){for(let P of this.steps)if(L=P(L),L===o)break;return L}}function s(D,L,P=F=>F){let F=(...C)=>H.fire(P(...C)),$=()=>D.on(L,F),W=()=>D.removeListener(L,F),H=new Q({onWillAddFirstListener:$,onDidRemoveLastListener:W});return H.event}e.fromNodeEventEmitter=s;function c(D,L,P=F=>F){let F=(...C)=>H.fire(P(...C)),$=()=>D.addEventListener(L,F),W=()=>D.removeEventListener(L,F),H=new Q({onWillAddFirstListener:$,onDidRemoveLastListener:W});return H.event}e.fromDOMEventEmitter=c;function g(D){return new Promise(L=>S(D)(L))}e.toPromise=g;function p(D){let L=new Q;return D.then(P=>{L.fire(P)},()=>{L.fire(void 0)}).finally(()=>{L.dispose()}),L.event}e.fromPromise=p;function w(D,L){return D(P=>L.fire(P))}e.forward=w;function f(D,L,P){return L(P),D(F=>L(F))}e.runAndSubscribe=f;class y{constructor(L,P){this._observable=L,this._counter=0,this._hasChanged=!1;let F={onWillAddFirstListener:()=>{L.addObserver(this)},onDidRemoveLastListener:()=>{L.removeObserver(this)}};this.emitter=new Q(F),P&&P.add(this.emitter)}beginUpdate(L){this._counter++}handlePossibleChange(L){}handleChange(L,P){this._hasChanged=!0}endUpdate(L){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function B(D,L){return new y(D,L).emitter.event}e.fromObservable=B;function A(D){return(L,P,F)=>{let $=0,W=!1,H={beginUpdate(){$++},endUpdate(){$--,$===0&&(D.reportChanges(),W&&(W=!1,L.call(P)))},handlePossibleChange(){},handleChange(){W=!0}};D.addObserver(H),D.reportChanges();let C={dispose(){D.removeObserver(H)}};return F instanceof Ve?F.add(C):Array.isArray(F)&&F.push(C),C}}e.fromObservableLight=A})(Ae||={});var Tt=class Pt{constructor(r){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${r}_${Pt._idPool++}`,Pt.all.add(this)}start(r){this._stopWatch=new xs,this.listenerCount=r}stop(){if(this._stopWatch){let r=this._stopWatch.elapsed();this.durations.push(r),this.elapsedOverall+=r,this.invocationCount+=1,this._stopWatch=void 0}}};Tt.all=new Set,Tt._idPool=0;var Es=Tt,Rs=-1,Mi=class Ai{constructor(r,S,k=(Ai._idPool++).toString(16).padStart(3,"0")){this._errorHandler=r,this.threshold=S,this.name=k,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(r,S){let k=this.threshold;if(k<=0||S{let O=this._stacks.get(r.value)||0;this._stacks.set(r.value,O-1)}}getMostFrequentStack(){if(!this._stacks)return;let r,S=0;for(let[k,b]of this._stacks)(!r||S{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let R=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(R);let i=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],a=new Ds(`${R}. HINT: Stack shows most frequent listener (${i[1]}-times)`,i[0]);return(this._options?.onListenerError||mt)(a),Ce.None}if(this._disposed)return Ce.None;r&&(e=e.bind(r));let k=new Ct(e),b;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(k.stack=Ms.create(),b=this._leakageMon.check(k.stack,this._size+1)),this._listeners?this._listeners instanceof Ct?(this._deliveryQueue??=new Os,this._listeners=[this._listeners,k]):this._listeners.push(k):(this._options?.onWillAddFirstListener?.(this),this._listeners=k,this._options?.onDidAddFirstListener?.(this)),this._size++;let O=de(()=>{b?.(),this._removeListener(k)});return S instanceof Ve?S.add(O):Array.isArray(S)&&S.push(O),O},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}let r=this._listeners,S=r.indexOf(e);if(S===-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--,r[S]=void 0;let k=this._deliveryQueue.current===this;if(this._size*Ts<=r.length){let b=0;for(let O=0;O0}},Os=class{constructor(){this.i=-1,this.end=0}enqueue(e,r,S){this.i=0,this.end=S,this.current=e,this.value=r}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},qt={texturePage:0,texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},offset:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},et=2,tt,Oe=class je{constructor(r,S,k){this._document=r,this._config=S,this._unicodeService=k,this._didWarmUp=!1,this._cacheMap=new jt,this._cacheMapCombined=new jt,this._pages=[],this._activePages=[],this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new qe,this._textureSize=512,this._onAddTextureAtlasCanvas=new Q,this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=new Q,this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._requestClearModel=!1,this._createNewPage(),this._tmpCanvas=Bi(r,this._config.deviceCellWidth*4+et*2,this._config.deviceCellHeight+et*2),this._tmpCtx=re(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency,willReadFrequently:!0}))}get pages(){return this._pages}dispose(){this._tmpCanvas.remove();for(let r of this.pages)r.canvas.remove();this._onAddTextureAtlasCanvas.dispose()}warmUp(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)}_doWarmUp(){let r=new ys;for(let S=33;S<126;S++)r.enqueue(()=>{if(!this._cacheMap.get(S,0,0,0)){let k=this._drawToCache(S,0,0,0,!1,void 0);this._cacheMap.set(S,0,0,0,k)}})}beginFrame(){return this._requestClearModel}clearTexture(){if(!(this._pages[0].currentRow.x===0&&this._pages[0].currentRow.y===0)){for(let r of this._pages)r.clear();this._cacheMap.clear(),this._cacheMapCombined.clear(),this._didWarmUp=!1}}_createNewPage(){if(je.maxAtlasPages&&this._pages.length>=Math.max(4,je.maxAtlasPages)){let S=this._pages.filter(l=>l.canvas.width*2<=(je.maxTextureSize||4096)).sort((l,d)=>d.canvas.width!==l.canvas.width?d.canvas.width-l.canvas.width:d.percentageUsed-l.percentageUsed),k=-1,b=0;for(let l=0;ll.glyphs[0].texturePage).sort((l,d)=>l>d?1:-1),i=this.pages.length-O.length,a=this._mergePages(O,i);a.version++;for(let l=R.length-1;l>=0;l--)this._deletePage(R[l]);this.pages.push(a),this._requestClearModel=!0,this._onAddTextureAtlasCanvas.fire(a.canvas)}let r=new wt(this._document,this._textureSize);return this._pages.push(r),this._activePages.push(r),this._onAddTextureAtlasCanvas.fire(r.canvas),r}_mergePages(r,S){let k=r[0].canvas.width*2,b=new wt(this._document,k,r);for(let[O,R]of r.entries()){let i=O*R.canvas.width%k,a=Math.floor(O/2)*R.canvas.height;b.ctx.drawImage(R.canvas,i,a);for(let d of R.glyphs)d.texturePage=S,d.sizeClipSpace.x=d.size.x/k,d.sizeClipSpace.y=d.size.y/k,d.texturePosition.x+=i,d.texturePosition.y+=a,d.texturePositionClipSpace.x=d.texturePosition.x/k,d.texturePositionClipSpace.y=d.texturePosition.y/k;this._onRemoveTextureAtlasCanvas.fire(R.canvas);let l=this._activePages.indexOf(R);l!==-1&&this._activePages.splice(l,1)}return b}_deletePage(r){this._pages.splice(r,1);for(let S=r;S=this._config.colors.ansi.length)throw new Error("No color found for idx "+r);return this._config.colors.ansi[r]}_getBackgroundColor(r,S,k,b){if(this._config.allowTransparency)return pe;let O;switch(r){case 16777216:case 33554432:O=this._getColorFromAnsiIndex(S);break;case 50331648:let R=qe.toColorRGB(S);O=_e.toColor(R[0],R[1],R[2]);break;default:k?O=st.opaque(this._config.colors.foreground):O=this._config.colors.background;break}return this._config.allowTransparency||(O=st.opaque(O)),O}_getForegroundColor(r,S,k,b,O,R,i,a,l,d){let h=this._getMinimumContrastColor(r,S,k,b,O,R,i,l,a,d);if(h)return h;let u;switch(O){case 16777216:case 33554432:this._config.drawBoldTextInBrightColors&&l&&R<8&&(R+=8),u=this._getColorFromAnsiIndex(R);break;case 50331648:let v=qe.toColorRGB(R);u=_e.toColor(v[0],v[1],v[2]);break;default:i?u=this._config.colors.background:u=this._config.colors.foreground}return this._config.allowTransparency&&(u=st.opaque(u)),a&&(u=st.multiplyOpacity(u,us)),u}_resolveBackgroundRgba(r,S,k){switch(r){case 16777216:case 33554432:return this._getColorFromAnsiIndex(S).rgba;case 50331648:return S<<8;default:return k?this._config.colors.foreground.rgba:this._config.colors.background.rgba}}_resolveForegroundRgba(r,S,k,b){switch(r){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&b&&S<8&&(S+=8),this._getColorFromAnsiIndex(S).rgba;case 50331648:return S<<8;default:return k?this._config.colors.background.rgba:this._config.colors.foreground.rgba}}_getMinimumContrastColor(r,S,k,b,O,R,i,a,l,d){if(this._config.minimumContrastRatio===1||d)return;let h=this._getContrastCache(l),u=h.getColor(r,b);if(u!==void 0)return u||void 0;let v=this._resolveBackgroundRgba(S,k,i),m=this._resolveForegroundRgba(O,R,i,a),_=We.ensureContrastRatio(v,m,this._config.minimumContrastRatio/(l?2:1));if(!_){h.setColor(r,b,null);return}let n=_e.toColor(_>>24&255,_>>16&255,_>>8&255);return h.setColor(r,b,n),n}_getContrastCache(r){return r?this._config.colors.halfContrastCache:this._config.colors.contrastCache}_drawToCache(r,S,k,b,O,R){let i=typeof r=="number"?String.fromCharCode(r):r;R&&this._tmpCanvas.parentElement!==R&&(this._tmpCanvas.style.display="none",R.append(this._tmpCanvas));let a=Math.min(this._config.deviceCellWidth*Math.max(i.length,2)+et*2,this._config.deviceMaxTextureSize);this._tmpCanvas.width=E?E*2-G:E-G;G>=E||J===0?(this._tmpCtx.setLineDash([Math.round(E),Math.round(E)]),this._tmpCtx.moveTo(x+J,U),this._tmpCtx.lineTo(N,U)):(this._tmpCtx.setLineDash([Math.round(E),Math.round(E)]),this._tmpCtx.moveTo(x,U),this._tmpCtx.lineTo(x+J,U),this._tmpCtx.moveTo(x+J+E,U),this._tmpCtx.lineTo(N,U)),G=cs(N-x,E,G);break;case 5:let ee=.6,ce=.3,X=N-x,De=Math.floor(ee*X),Ue=Math.floor(ce*X),Xe=X-De-Ue;this._tmpCtx.setLineDash([De,Ue,Xe]),this._tmpCtx.moveTo(x,U),this._tmpCtx.lineTo(N,U);break;default:this._tmpCtx.moveTo(x,U),this._tmpCtx.lineTo(N,U);break}this._tmpCtx.stroke(),this._tmpCtx.restore()}if(this._tmpCtx.restore(),!D&&this._config.fontSize>=12&&!this._config.allowTransparency&&i!==" "){this._tmpCtx.save(),this._tmpCtx.textBaseline="alphabetic";let I=this._tmpCtx.measureText(i);if(this._tmpCtx.restore(),"actualBoundingBoxDescent"in I&&I.actualBoundingBoxDescent>0){this._tmpCtx.save();let x=new Path2D;x.rect(T,U-Math.ceil(E/2),this._config.deviceCellWidth*P,V-U+Math.ceil(E/2)),this._tmpCtx.clip(x),this._tmpCtx.lineWidth=this._config.devicePixelRatio*3,this._tmpCtx.strokeStyle=g.css,this._tmpCtx.strokeText(i,A,A+this._config.deviceCharHeight),this._tmpCtx.restore()}}}if(n){let E=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/15)),M=E%2===1?.5:0;this._tmpCtx.lineWidth=E,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(A,A+M),this._tmpCtx.lineTo(A+this._config.deviceCharWidth*P,A+M),this._tmpCtx.stroke()}if(D||this._tmpCtx.fillText(i,A,A+this._config.deviceCharHeight),i==="_"&&!this._config.allowTransparency){let E=bt(this._tmpCtx.getImageData(A,A,this._config.deviceCellWidth,this._config.deviceCellHeight),g,B,L);if(E)for(let M=1;M<=5&&(this._tmpCtx.save(),this._tmpCtx.fillStyle=g.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.restore(),this._tmpCtx.fillText(i,A,A+this._config.deviceCharHeight-M),E=bt(this._tmpCtx.getImageData(A,A,this._config.deviceCellWidth,this._config.deviceCellHeight),g,B,L),!!E);M++);}if(_){let E=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/10)),M=this._tmpCtx.lineWidth%2===1?.5:0;this._tmpCtx.lineWidth=E,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(A,A+Math.floor(this._config.deviceCharHeight/2)-M),this._tmpCtx.lineTo(A+this._config.deviceCharWidth*P,A+Math.floor(this._config.deviceCharHeight/2)-M),this._tmpCtx.stroke()}this._tmpCtx.restore();let F=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height),$;if(this._config.allowTransparency?$=Is(F):$=bt(F,g,B,L),$)return qt;let W=this._findGlyphBoundingBox(F,this._workBoundingBox,a,y,D,A),H,C;for(;;){if(this._activePages.length===0){let E=this._createNewPage();H=E,C=E.currentRow,C.height=W.size.y;break}H=this._activePages[this._activePages.length-1],C=H.currentRow;for(let E of this._activePages)W.size.y<=E.currentRow.height&&(H=E,C=E.currentRow);for(let E=this._activePages.length-1;E>=0;E--)for(let M of this._activePages[E].fixedRows)M.height<=C.height&&W.size.y<=M.height&&(H=this._activePages[E],C=M);if(W.size.x>this._textureSize){this._overflowSizePage||(this._overflowSizePage=new wt(this._document,this._config.deviceMaxTextureSize),this.pages.push(this._overflowSizePage),this._requestClearModel=!0,this._onAddTextureAtlasCanvas.fire(this._overflowSizePage.canvas)),H=this._overflowSizePage,C=this._overflowSizePage.currentRow,C.x+W.size.x>=H.canvas.width&&(C.x=0,C.y+=C.height,C.height=0);break}if(C.y+W.size.y>=H.canvas.height||C.height>W.size.y+2){let E=!1;if(H.currentRow.y+H.currentRow.height+W.size.y>=H.canvas.height){let M;for(let T of this._activePages)if(T.currentRow.y+T.currentRow.height+W.size.y=je.maxAtlasPages&&C.y+W.size.y<=H.canvas.height&&C.height>=W.size.y&&C.x+W.size.x<=H.canvas.width)E=!0;else{let T=this._createNewPage();H=T,C=T.currentRow,C.height=W.size.y,E=!0}}E||(H.currentRow.height>0&&H.fixedRows.push(H.currentRow),C={x:0,y:H.currentRow.y+H.currentRow.height,height:W.size.y},H.fixedRows.push(C),H.currentRow={x:0,y:C.y+C.height,height:0})}if(C.x+W.size.x<=H.canvas.width)break;C===H.currentRow?(C.x=0,C.y+=C.height,C.height=0):H.fixedRows.splice(H.fixedRows.indexOf(C),1)}return W.texturePage=this._pages.indexOf(H),W.texturePosition.x=C.x,W.texturePosition.y=C.y,W.texturePositionClipSpace.x=C.x/H.canvas.width,W.texturePositionClipSpace.y=C.y/H.canvas.height,W.sizeClipSpace.x/=H.canvas.width,W.sizeClipSpace.y/=H.canvas.height,C.height=Math.max(C.height,W.size.y),C.x+=W.size.x,H.ctx.putImageData(F,W.texturePosition.x-this._workBoundingBox.left,W.texturePosition.y-this._workBoundingBox.top,this._workBoundingBox.left,this._workBoundingBox.top,W.size.x,W.size.y),H.addGlyph(W),H.version++,W}_findGlyphBoundingBox(r,S,k,b,O,R){S.top=0;let i=b?this._config.deviceCellHeight:this._tmpCanvas.height,a=b?this._config.deviceCellWidth:k,l=!1;for(let d=0;d=R;d--){for(let h=0;h=0;d--){for(let h=0;h>>24,O=r.rgba>>>16&255,R=r.rgba>>>8&255,i=S.rgba>>>24,a=S.rgba>>>16&255,l=S.rgba>>>8&255,d=Math.floor((Math.abs(b-i)+Math.abs(O-a)+Math.abs(R-l))/12),h=!0;for(let u=0;u0)return!1;return!0}function Bi(e,r,S){let k=e.createElement("canvas");return k.width=r,k.height=S,k}function Fs(e,r,S,k,b,O,R,i){let a={foreground:O.foreground,background:O.background,cursor:pe,cursorAccent:pe,selectionForeground:pe,selectionBackgroundTransparent:pe,selectionBackgroundOpaque:pe,selectionInactiveBackgroundTransparent:pe,selectionInactiveBackgroundOpaque:pe,overviewRulerBorder:pe,scrollbarSliderBackground:pe,scrollbarSliderHoverBackground:pe,scrollbarSliderActiveBackground:pe,ansi:O.ansi.slice(),contrastCache:O.contrastCache,halfContrastCache:O.halfContrastCache};return{customGlyphs:b.customGlyphs,devicePixelRatio:R,deviceMaxTextureSize:i,letterSpacing:b.letterSpacing,lineHeight:b.lineHeight,deviceCellWidth:e,deviceCellHeight:r,deviceCharWidth:S,deviceCharHeight:k,fontFamily:b.fontFamily,fontSize:b.fontSize,fontWeight:b.fontWeight,fontWeightBold:b.fontWeightBold,allowTransparency:b.allowTransparency,drawBoldTextInBrightColors:b.drawBoldTextInBrightColors,minimumContrastRatio:b.minimumContrastRatio,colors:a}}function Kt(e,r){for(let S=0;S=0){if(Kt(v.config,l))return v.atlas;v.ownedBy.length===1?(v.atlas.dispose(),Se.splice(u,1)):v.ownedBy.splice(m,1);break}}for(let u=0;u{this._renderCallback(),this._animationFrame=void 0})))}_restartInterval(e=lt){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout=this._coreBrowserService.window.setTimeout(()=>{if(this._animationTimeRestarted){let r=lt-(Date.now()-this._animationTimeRestarted);if(this._animationTimeRestarted=void 0,r>0){this._restartInterval(r);return}}this.isCursorVisible=!1,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._renderCallback(),this._animationFrame=void 0}),this._blinkInterval=this._coreBrowserService.window.setInterval(()=>{if(this._animationTimeRestarted){let r=lt-(Date.now()-this._animationTimeRestarted);this._animationTimeRestarted=void 0,this._restartInterval(r);return}this.isCursorVisible=!this.isCursorVisible,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._renderCallback(),this._animationFrame=void 0})},lt)},e)}pause(){this.isCursorVisible=!0,this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}resume(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()}};function Gt(e,r,S){let k=new r.ResizeObserver(b=>{let O=b.find(a=>a.target===e);if(!O)return;if(!("devicePixelContentBoxSize"in O)){k?.disconnect(),k=void 0;return}let R=O.devicePixelContentBoxSize[0].inlineSize,i=O.devicePixelContentBoxSize[0].blockSize;R>0&&i>0&&S(R,i)});try{k.observe(e,{box:["device-pixel-content-box"]})}catch{k.disconnect(),k=void 0}return de(()=>k?.disconnect())}function $s(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}var Xt=class Pi extends qe{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new Ei,this.combinedData=""}static fromCharData(r){let S=new Pi;return S.setFromCharData(r),S}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?$s(this.content&2097151):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(r){this.fg=r[0],this.bg=0;let S=!1;if(r[1].length>2)S=!0;else if(r[1].length===2){let k=r[1].charCodeAt(0);if(55296<=k&&k<=56319){let b=r[1].charCodeAt(1);56320<=b&&b<=57343?this.content=(k-55296)*1024+b-56320+65536|r[2]<<22:S=!0}else S=!0}else this.content=r[1].charCodeAt(0)|r[2]<<22;S&&(this.combinedData=r[1],this.content=2097152|r[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},Oi=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]);function Ii(e,r,S){let k=re(e.createProgram());if(e.attachShader(k,re(Yt(e,e.VERTEX_SHADER,r))),e.attachShader(k,re(Yt(e,e.FRAGMENT_SHADER,S))),e.linkProgram(k),e.getProgramParameter(k,e.LINK_STATUS))return k;console.error(e.getProgramInfoLog(k)),e.deleteProgram(k)}function Yt(e,r,S){let k=re(e.createShader(r));if(e.shaderSource(k,S),e.compileShader(k),e.getShaderParameter(k,e.COMPILE_STATUS))return k;console.error(e.getShaderInfoLog(k)),e.deleteShader(k)}function Us(e,r){let S=Math.min(e.length*2,r),k=new Float32Array(S);for(let b=0;bb.deleteProgram(this._program))),this._projectionLocation=re(b.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=re(b.getUniformLocation(this._program,"u_resolution")),this._textureLocation=re(b.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=b.createVertexArray(),b.bindVertexArray(this._vertexArrayObject);let O=new Float32Array([0,0,1,0,0,1,1,1]),R=b.createBuffer();this._register(de(()=>b.deleteBuffer(R))),b.bindBuffer(b.ARRAY_BUFFER,R),b.bufferData(b.ARRAY_BUFFER,O,b.STATIC_DRAW),b.enableVertexAttribArray(0),b.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);let i=new Uint8Array([0,1,2,3]),a=b.createBuffer();this._register(de(()=>b.deleteBuffer(a))),b.bindBuffer(b.ELEMENT_ARRAY_BUFFER,a),b.bufferData(b.ELEMENT_ARRAY_BUFFER,i,b.STATIC_DRAW),this._attributesBuffer=re(b.createBuffer()),this._register(de(()=>b.deleteBuffer(this._attributesBuffer))),b.bindBuffer(b.ARRAY_BUFFER,this._attributesBuffer),b.enableVertexAttribArray(2),b.vertexAttribPointer(2,2,b.FLOAT,!1,Ne,0),b.vertexAttribDivisor(2,1),b.enableVertexAttribArray(3),b.vertexAttribPointer(3,2,b.FLOAT,!1,Ne,2*Float32Array.BYTES_PER_ELEMENT),b.vertexAttribDivisor(3,1),b.enableVertexAttribArray(4),b.vertexAttribPointer(4,1,b.FLOAT,!1,Ne,4*Float32Array.BYTES_PER_ELEMENT),b.vertexAttribDivisor(4,1),b.enableVertexAttribArray(5),b.vertexAttribPointer(5,2,b.FLOAT,!1,Ne,5*Float32Array.BYTES_PER_ELEMENT),b.vertexAttribDivisor(5,1),b.enableVertexAttribArray(6),b.vertexAttribPointer(6,2,b.FLOAT,!1,Ne,7*Float32Array.BYTES_PER_ELEMENT),b.vertexAttribDivisor(6,1),b.enableVertexAttribArray(1),b.vertexAttribPointer(1,2,b.FLOAT,!1,Ne,9*Float32Array.BYTES_PER_ELEMENT),b.vertexAttribDivisor(1,1),b.useProgram(this._program);let l=new Int32Array(Oe.maxAtlasPages);for(let d=0;db.deleteTexture(h.texture))),b.activeTexture(b.TEXTURE0+d),b.bindTexture(b.TEXTURE_2D,h.texture),b.texParameteri(b.TEXTURE_2D,b.TEXTURE_WRAP_S,b.CLAMP_TO_EDGE),b.texParameteri(b.TEXTURE_2D,b.TEXTURE_WRAP_T,b.CLAMP_TO_EDGE),b.texImage2D(b.TEXTURE_2D,0,b.RGBA,1,1,0,b.RGBA,b.UNSIGNED_BYTE,new Uint8Array([255,0,0,255])),this._atlasTextures[d]=h}b.enable(b.BLEND),b.blendFunc(b.SRC_ALPHA,b.ONE_MINUS_SRC_ALPHA),this.handleResize()}beginFrame(){return this._atlas?this._atlas.beginFrame():!0}updateCell(e,r,S,k,b,O,R,i,a){this._updateCell(this._vertices.attributes,e,r,S,k,b,O,R,i,a)}_updateCell(e,r,S,k,b,O,R,i,a,l){if(ie=(S*this._terminal.cols+r)*Ie,k===0||k===void 0){e.fill(0,ie,ie+Ie-1-qs);return}this._atlas&&(i&&i.length>1?Z=this._atlas.getRasterizedGlyphCombinedChar(i,b,O,R,!1,this._terminal.element):Z=this._atlas.getRasterizedGlyph(k,b,O,R,!1,this._terminal.element),yt=Math.floor((this._dimensions.device.cell.width-this._dimensions.device.char.width)/2),b!==l&&Z.offset.x>yt?(it=Z.offset.x-yt,e[ie]=-(Z.offset.x-it)+this._dimensions.device.char.left,e[ie+1]=-Z.offset.y+this._dimensions.device.char.top,e[ie+2]=(Z.size.x-it)/this._dimensions.device.canvas.width,e[ie+3]=Z.size.y/this._dimensions.device.canvas.height,e[ie+4]=Z.texturePage,e[ie+5]=Z.texturePositionClipSpace.x+it/this._atlas.pages[Z.texturePage].canvas.width,e[ie+6]=Z.texturePositionClipSpace.y,e[ie+7]=Z.sizeClipSpace.x-it/this._atlas.pages[Z.texturePage].canvas.width,e[ie+8]=Z.sizeClipSpace.y):(e[ie]=-Z.offset.x+this._dimensions.device.char.left,e[ie+1]=-Z.offset.y+this._dimensions.device.char.top,e[ie+2]=Z.size.x/this._dimensions.device.canvas.width,e[ie+3]=Z.size.y/this._dimensions.device.canvas.height,e[ie+4]=Z.texturePage,e[ie+5]=Z.texturePositionClipSpace.x,e[ie+6]=Z.texturePositionClipSpace.y,e[ie+7]=Z.sizeClipSpace.x,e[ie+8]=Z.sizeClipSpace.y),this._optionsService.rawOptions.rescaleOverlappingGlyphs&&hs(k,a,Z.size.x,this._dimensions.device.cell.width)&&(e[ie+2]=(this._dimensions.device.cell.width-1)/this._dimensions.device.canvas.width))}clear(){let e=this._terminal,r=e.cols*e.rows*Ie;this._vertices.count!==r?this._vertices.attributes=new Float32Array(r):this._vertices.attributes.fill(0);let S=0;for(;S=e.rows||a<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=k,this.viewportStartRow=O,this.viewportEndRow=R,this.viewportCappedStartRow=i,this.viewportCappedEndRow=a,this.startCol=r[0],this.endCol=S[0]}isCellSelected(e,r,S){return this.hasSelection?(S-=e.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?r>=this.startCol&&S>=this.viewportCappedStartRow&&r=this.viewportCappedStartRow&&r>=this.endCol&&S<=this.viewportCappedEndRow:S>this.viewportStartRow&&S=this.startCol&&r=this.startCol):!1}};function Gs(){return new Vs}var ft=4,dt=1,ut=2,Lt=3,Xs=2147483648,Ys=class{constructor(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection=Gs()}resize(e,r){let S=e*r*ft;S!==this.cells.length&&(this.cells=new Uint32Array(S),this.lineLengths=new Uint32Array(r))}clear(){this.cells.fill(0,0),this.lineLengths.fill(0,0)}},Js=`#version 300 es +layout (location = 0) in vec2 a_position; +layout (location = 1) in vec2 a_size; +layout (location = 2) in vec4 a_color; +layout (location = 3) in vec2 a_unitquad; + +uniform mat4 u_projection; + +out vec4 v_color; + +void main() { + vec2 zeroToOne = a_position + (a_unitquad * a_size); + gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0); + v_color = a_color; +}`,Zs=`#version 300 es +precision lowp float; + +in vec4 v_color; + +out vec4 outColor; + +void main() { + outColor = v_color; +}`,Me=8,xt=Me*Float32Array.BYTES_PER_ELEMENT,Qs=20*Me,Jt=class{constructor(){this.attributes=new Float32Array(Qs),this.count=0}},Re=0,Zt=0,Qt=0,ei=0,ti=0,ii=0,si=0,er=class extends Ce{constructor(e,r,S,k){super(),this._terminal=e,this._gl=r,this._dimensions=S,this._themeService=k,this._vertices=new Jt,this._verticesCursor=new Jt;let b=this._gl;this._program=re(Ii(b,Js,Zs)),this._register(de(()=>b.deleteProgram(this._program))),this._projectionLocation=re(b.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=b.createVertexArray(),b.bindVertexArray(this._vertexArrayObject);let O=new Float32Array([0,0,1,0,0,1,1,1]),R=b.createBuffer();this._register(de(()=>b.deleteBuffer(R))),b.bindBuffer(b.ARRAY_BUFFER,R),b.bufferData(b.ARRAY_BUFFER,O,b.STATIC_DRAW),b.enableVertexAttribArray(3),b.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);let i=new Uint8Array([0,1,2,3]),a=b.createBuffer();this._register(de(()=>b.deleteBuffer(a))),b.bindBuffer(b.ELEMENT_ARRAY_BUFFER,a),b.bufferData(b.ELEMENT_ARRAY_BUFFER,i,b.STATIC_DRAW),this._attributesBuffer=re(b.createBuffer()),this._register(de(()=>b.deleteBuffer(this._attributesBuffer))),b.bindBuffer(b.ARRAY_BUFFER,this._attributesBuffer),b.enableVertexAttribArray(0),b.vertexAttribPointer(0,2,b.FLOAT,!1,xt,0),b.vertexAttribDivisor(0,1),b.enableVertexAttribArray(1),b.vertexAttribPointer(1,2,b.FLOAT,!1,xt,2*Float32Array.BYTES_PER_ELEMENT),b.vertexAttribDivisor(1,1),b.enableVertexAttribArray(2),b.vertexAttribPointer(2,4,b.FLOAT,!1,xt,4*Float32Array.BYTES_PER_ELEMENT),b.vertexAttribDivisor(2,1),this._updateCachedColors(k.colors),this._register(this._themeService.onChangeColors(l=>{this._updateCachedColors(l),this._updateViewportRectangle()}))}renderBackgrounds(){this._renderVertices(this._vertices)}renderCursor(){this._renderVertices(this._verticesCursor)}_renderVertices(e){let r=this._gl;r.useProgram(this._program),r.bindVertexArray(this._vertexArrayObject),r.uniformMatrix4fv(this._projectionLocation,!1,Oi),r.bindBuffer(r.ARRAY_BUFFER,this._attributesBuffer),r.bufferData(r.ARRAY_BUFFER,e.attributes,r.DYNAMIC_DRAW),r.drawElementsInstanced(this._gl.TRIANGLE_STRIP,4,r.UNSIGNED_BYTE,0,e.count)}handleResize(){this._updateViewportRectangle()}setDimensions(e){this._dimensions=e}_updateCachedColors(e){this._bgFloat=this._colorToFloat32Array(e.background),this._cursorFloat=this._colorToFloat32Array(e.cursor)}_updateViewportRectangle(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.device.cell.width,this._terminal.rows*this._dimensions.device.cell.height,this._bgFloat)}updateBackgrounds(e){let r=this._terminal,S=this._vertices,k=1,b,O,R,i,a,l,d,h,u,v,m;for(b=0;b>24&255)/255,ti=(Re>>16&255)/255,ii=(Re>>8&255)/255,si=1,this._addRectangle(e.attributes,r,Zt,Qt,(O-b)*this._dimensions.device.cell.width,this._dimensions.device.cell.height,ei,ti,ii,si)}_addRectangle(e,r,S,k,b,O,R,i,a,l){e[r]=S/this._dimensions.device.canvas.width,e[r+1]=k/this._dimensions.device.canvas.height,e[r+2]=b/this._dimensions.device.canvas.width,e[r+3]=O/this._dimensions.device.canvas.height,e[r+4]=R,e[r+5]=i,e[r+6]=a,e[r+7]=l}_addRectangleFloat(e,r,S,k,b,O,R){e[r]=S/this._dimensions.device.canvas.width,e[r+1]=k/this._dimensions.device.canvas.height,e[r+2]=b/this._dimensions.device.canvas.width,e[r+3]=O/this._dimensions.device.canvas.height,e[r+4]=R[0],e[r+5]=R[1],e[r+6]=R[2],e[r+7]=R[3]}_colorToFloat32Array(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(e.rgba&255)/255])}},tr=class extends Ce{constructor(e,r,S,k,b,O,R,i){super(),this._container=r,this._alpha=b,this._coreBrowserService=O,this._optionsService=R,this._themeService=i,this._deviceCharWidth=0,this._deviceCharHeight=0,this._deviceCellWidth=0,this._deviceCellHeight=0,this._deviceCharLeft=0,this._deviceCharTop=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add(`xterm-${S}-layer`),this._canvas.style.zIndex=k.toString(),this._initCanvas(),this._container.appendChild(this._canvas),this._register(this._themeService.onChangeColors(a=>{this._refreshCharAtlas(e,a),this.reset(e)})),this._register(de(()=>{this._canvas.remove()}))}_initCanvas(){this._ctx=re(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()}handleBlur(e){}handleFocus(e){}handleCursorMove(e){}handleGridChanged(e,r,S){}handleSelectionChanged(e,r,S,k=!1){}_setTransparency(e,r){if(r===this._alpha)return;let S=this._canvas;this._alpha=r,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,S),this._refreshCharAtlas(e,this._themeService.colors),this.handleGridChanged(e,0,e.rows-1)}_refreshCharAtlas(e,r){this._deviceCharWidth<=0&&this._deviceCharHeight<=0||(this._charAtlas=Ti(e,this._optionsService.rawOptions,r,this._deviceCellWidth,this._deviceCellHeight,this._deviceCharWidth,this._deviceCharHeight,this._coreBrowserService.dpr,2048),this._charAtlas.warmUp())}resize(e,r){this._deviceCellWidth=r.device.cell.width,this._deviceCellHeight=r.device.cell.height,this._deviceCharWidth=r.device.char.width,this._deviceCharHeight=r.device.char.height,this._deviceCharLeft=r.device.char.left,this._deviceCharTop=r.device.char.top,this._canvas.width=r.device.canvas.width,this._canvas.height=r.device.canvas.height,this._canvas.style.width=`${r.css.canvas.width}px`,this._canvas.style.height=`${r.css.canvas.height}px`,this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._themeService.colors)}_fillBottomLineAtCells(e,r,S=1){this._ctx.fillRect(e*this._deviceCellWidth,(r+1)*this._deviceCellHeight-this._coreBrowserService.dpr-1,S*this._deviceCellWidth,this._coreBrowserService.dpr)}_clearAll(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._themeService.colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))}_clearCells(e,r,S,k){this._alpha?this._ctx.clearRect(e*this._deviceCellWidth,r*this._deviceCellHeight,S*this._deviceCellWidth,k*this._deviceCellHeight):(this._ctx.fillStyle=this._themeService.colors.background.css,this._ctx.fillRect(e*this._deviceCellWidth,r*this._deviceCellHeight,S*this._deviceCellWidth,k*this._deviceCellHeight))}_fillCharTrueColor(e,r,S,k){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline=wi,this._clipCell(S,k,r.getWidth()),this._ctx.fillText(r.getChars(),S*this._deviceCellWidth+this._deviceCharLeft,k*this._deviceCellHeight+this._deviceCharTop+this._deviceCharHeight)}_clipCell(e,r,S){this._ctx.beginPath(),this._ctx.rect(e*this._deviceCellWidth,r*this._deviceCellHeight,S*this._deviceCellWidth,this._deviceCellHeight),this._ctx.clip()}_getFont(e,r,S){let k=r?e.options.fontWeightBold:e.options.fontWeight;return`${S?"italic":""} ${k} ${e.options.fontSize*this._coreBrowserService.dpr}px ${e.options.fontFamily}`}},ir=class extends tr{constructor(e,r,S,k,b,O,R){super(S,e,"link",r,!0,b,O,R),this._register(k.onShowLinkUnderline(i=>this._handleShowLinkUnderline(i))),this._register(k.onHideLinkUnderline(i=>this._handleHideLinkUnderline(i)))}resize(e,r){super.resize(e,r),this._state=void 0}reset(e){this._clearCurrentLink()}_clearCurrentLink(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);let e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}}_handleShowLinkUnderline(e){if(e.fg===257?this._ctx.fillStyle=this._themeService.colors.background.css:e.fg!==void 0&&Hs(e.fg)?this._ctx.fillStyle=this._themeService.colors.ansi[e.fg].css:this._ctx.fillStyle=this._themeService.colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(let r=e.y1+1;r=0;Ge.indexOf("AppleWebKit")>=0;var rr=Ge.indexOf("Chrome")>=0;!rr&&Ge.indexOf("Safari")>=0;Ge.indexOf("Electron/")>=0;Ge.indexOf("Android")>=0;var Et=!1;if(typeof He.matchMedia=="function"){let e=He.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),r=He.matchMedia("(display-mode: fullscreen)");Et=e.matches,sr(He,e,({matches:S})=>{Et&&r.matches||(Et=S)})}var Ke="en",Rt=!1,Hi=!1,ct,_t=Ke,ri=Ke,nr,ke,$e=globalThis,ve;typeof $e.vscode<"u"&&typeof $e.vscode.process<"u"?ve=$e.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(ve=process);var or=typeof ve?.versions?.electron=="string",ar=or&&ve?.type==="renderer";if(typeof ve=="object"){ve.platform,ve.platform,Rt=ve.platform==="linux",Rt&&ve.env.SNAP&&ve.env.SNAP_REVISION,ve.env.CI||ve.env.BUILD_ARTIFACTSTAGINGDIRECTORY,ct=Ke,_t=Ke;let e=ve.env.VSCODE_NLS_CONFIG;if(e)try{let r=JSON.parse(e);ct=r.userLocale,ri=r.osLocale,_t=r.resolvedLanguage||Ke,nr=r.languagePack?.translationsConfigFile}catch{}Hi=!0}else typeof navigator=="object"&&!ar?(ke=navigator.userAgent,ke.indexOf("Windows")>=0,ke.indexOf("Macintosh")>=0,(ke.indexOf("Macintosh")>=0||ke.indexOf("iPad")>=0||ke.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,Rt=ke.indexOf("Linux")>=0,ke?.indexOf("Mobi")>=0,_t=globalThis._VSCODE_NLS_LANGUAGE||Ke,ct=navigator.language.toLowerCase(),ri=ct):console.error("Unable to resolve platform.");var ni=Hi,ye=ke,Pe=_t,hr;(e=>{function r(){return Pe}e.value=r;function S(){return Pe.length===2?Pe==="en":Pe.length>=3?Pe[0]==="e"&&Pe[1]==="n"&&Pe[2]==="-":!1}e.isDefaultVariant=S;function k(){return Pe==="en"}e.isDefault=k})(hr||={});var lr=typeof $e.postMessage=="function"&&!$e.importScripts;(()=>{if(lr){let e=[];$e.addEventListener("message",S=>{if(S.data&&S.data.vscodeScheduleAsyncWork)for(let k=0,b=e.length;k{let k=++r;e.push({id:k,callback:S}),$e.postMessage({vscodeScheduleAsyncWork:k},"*")}}return e=>setTimeout(e)})();var cr=!!(ye&&ye.indexOf("Chrome")>=0);ye&&ye.indexOf("Firefox")>=0;!cr&&ye&&ye.indexOf("Safari")>=0;ye&&ye.indexOf("Edg/")>=0;ye&&ye.indexOf("Android")>=0;var ze=typeof navigator=="object"?navigator:{};ni||document.queryCommandSupported&&document.queryCommandSupported("copy")||ze&&ze.clipboard&&ze.clipboard.writeText,ni||ze&&ze.clipboard&&ze.clipboard.readText;var Wt=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,r){this._keyCodeToStr[e]=r,this._strToKeyCode[r.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}},kt=new Wt,oi=new Wt,ai=new Wt;new Array(230);var dr;(e=>{function r(i){return kt.keyCodeToStr(i)}e.toString=r;function S(i){return kt.strToKeyCode(i)}e.fromString=S;function k(i){return oi.keyCodeToStr(i)}e.toUserSettingsUS=k;function b(i){return ai.keyCodeToStr(i)}e.toUserSettingsGeneral=b;function O(i){return oi.strToKeyCode(i)||ai.strToKeyCode(i)}e.fromUserSettings=O;function R(i){if(i>=98&&i<=113)return null;switch(i){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return kt.keyCodeToStr(i)}e.toElectronAccelerator=R})(dr||={});var Wi=Object.freeze(function(e,r){let S=setTimeout(e.bind(r),0);return{dispose(){clearTimeout(S)}}}),ur;(e=>{function r(S){return S===e.None||S===e.Cancelled||S instanceof _r?!0:!S||typeof S!="object"?!1:typeof S.isCancellationRequested=="boolean"&&typeof S.onCancellationRequested=="function"}e.isCancellationToken=r,e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Ae.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Wi})})(ur||={});var _r=class{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?Wi:(this._emitter||(this._emitter=new Q),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},fr;(e=>{async function r(k){let b,O=await Promise.all(k.map(R=>R.then(i=>i,i=>{b||(b=i)})));if(typeof b<"u")throw b;return O}e.settled=r;function S(k){return new Promise(async(b,O)=>{try{await k(b,O)}catch(R){O(R)}})}e.withAsyncBody=S})(fr||={});var hi=class me{static fromArray(r){return new me(S=>{S.emitMany(r)})}static fromPromise(r){return new me(async S=>{S.emitMany(await r)})}static fromPromises(r){return new me(async S=>{await Promise.all(r.map(async k=>S.emitOne(await k)))})}static merge(r){return new me(async S=>{await Promise.all(r.map(async k=>{for await(let b of k)S.emitOne(b)}))})}constructor(r,S){this._state=0,this._results=[],this._error=null,this._onReturn=S,this._onStateChanged=new Q,queueMicrotask(async()=>{let k={emitOne:b=>this.emitOne(b),emitMany:b=>this.emitMany(b),reject:b=>this.reject(b)};try{await Promise.resolve(r(k)),this.resolve()}catch(b){this.reject(b)}finally{k.emitOne=void 0,k.emitMany=void 0,k.reject=void 0}})}[Symbol.asyncIterator](){let r=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(r(this._onReturn?.(),{done:!0,value:void 0})}}static map(r,S){return new me(async k=>{for await(let b of r)k.emitOne(S(b))})}map(r){return me.map(this,r)}static filter(r,S){return new me(async k=>{for await(let b of r)S(b)&&k.emitOne(b)})}filter(r){return me.filter(this,r)}static coalesce(r){return me.filter(r,S=>!!S)}coalesce(){return me.coalesce(this)}static async toPromise(r){let S=[];for await(let k of r)S.push(k);return S}toPromise(){return me.toPromise(this)}emitOne(r){this._state===0&&(this._results.push(r),this._onStateChanged.fire())}emitMany(r){this._state===0&&(this._results=this._results.concat(r),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(r){this._state===0&&(this._state=2,this._error=r,this._onStateChanged.fire())}};hi.EMPTY=hi.fromArray([]);var{getWindow:vr}=(function(){let e=new Map,r={window:He,disposables:new Ve};e.set(He.vscodeWindowId,r);let S=new Q,k=new Q,b=new Q;function O(R,i){return(typeof R=="number"?e.get(R):void 0)??(i?r:void 0)}return{onDidRegisterWindow:S.event,onWillUnregisterWindow:b.event,onDidUnregisterWindow:k.event,registerWindow(R){if(e.has(R.vscodeWindowId))return Ce.None;let i=new Ve,a={window:R,disposables:i.add(new Ve)};return e.set(R.vscodeWindowId,a),i.add(de(()=>{e.delete(R.vscodeWindowId),k.fire(R)})),i.add(It(R,pr.BEFORE_UNLOAD,()=>{b.fire(R)})),S.fire(a),i},getWindows(){return e.values()},getWindowsCount(){return e.size},getWindowId(R){return R.vscodeWindowId},hasWindow(R){return e.has(R)},getWindowById:O,getWindow(R){let i=R;if(i?.ownerDocument?.defaultView)return i.ownerDocument.defaultView.window;let a=R;return a?.view?a.view.window:He},getDocument(R){return vr(R).document}}})(),gr=class{constructor(e,r,S,k){this._node=e,this._type=r,this._handler=S,this._options=k||!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 It(e,r,S,k){return new gr(e,r,S,k)}var pr={BEFORE_UNLOAD:"beforeunload"},mr=class extends Ce{constructor(e,r,S,k,b,O,R,i,a){super(),this._terminal=e,this._characterJoinerService=r,this._charSizeService=S,this._coreBrowserService=k,this._coreService=b,this._decorationService=O,this._optionsService=R,this._themeService=i,this._cursorBlinkStateManager=new Qe,this._charAtlasDisposable=this._register(new Qe),this._observerDisposable=this._register(new Qe),this._model=new Ys,this._workCell=new Xt,this._workCell2=new Xt,this._rectangleRenderer=this._register(new Qe),this._glyphRenderer=this._register(new Qe),this._onChangeTextureAtlas=this._register(new Q),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this._register(new Q),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=this._register(new Q),this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._onRequestRedraw=this._register(new Q),this.onRequestRedraw=this._onRequestRedraw.event,this._onContextLoss=this._register(new Q),this.onContextLoss=this._onContextLoss.event,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas");let l={antialias:!1,depth:!1,preserveDrawingBuffer:a};if(this._gl=this._canvas.getContext("webgl2",l),!this._gl)throw new Error("WebGL2 not supported "+this._gl);this._register(this._themeService.onChangeColors(()=>this._handleColorChange())),this._cellColorResolver=new ds(this._terminal,this._optionsService,this._model.selection,this._decorationService,this._coreBrowserService,this._themeService),this._core=this._terminal._core,this._renderLayers=[new ir(this._core.screenElement,2,this._terminal,this._core.linkifier,this._coreBrowserService,R,this._themeService)],this.dimensions=ls(),this._devicePixelRatio=this._coreBrowserService.dpr,this._updateDimensions(),this._updateCursorBlink(),this._register(R.onOptionChange(()=>this._handleOptionsChanged())),this._deviceMaxTextureSize=this._gl.getParameter(this._gl.MAX_TEXTURE_SIZE),this._register(It(this._canvas,"webglcontextlost",d=>{console.log("webglcontextlost event received"),d.preventDefault(),this._contextRestorationTimeout=setTimeout(()=>{this._contextRestorationTimeout=void 0,console.warn("webgl context not restored; firing onContextLoss"),this._onContextLoss.fire(d)},3e3)})),this._register(It(this._canvas,"webglcontextrestored",d=>{console.warn("webglcontextrestored event received"),clearTimeout(this._contextRestorationTimeout),this._contextRestorationTimeout=void 0,Vt(this._terminal),this._initializeWebGLState(),this._requestRedrawViewport()})),this._observerDisposable.value=Gt(this._canvas,this._coreBrowserService.window,(d,h)=>this._setCanvasDevicePixelDimensions(d,h)),this._register(this._coreBrowserService.onWindowChange(d=>{this._observerDisposable.value=Gt(this._canvas,d,(h,u)=>this._setCanvasDevicePixelDimensions(h,u))})),this._core.screenElement.appendChild(this._canvas),[this._rectangleRenderer.value,this._glyphRenderer.value]=this._initializeWebGLState(),this._isAttached=this._core.screenElement.isConnected,this._register(de(()=>{for(let d of this._renderLayers)d.dispose();this._canvas.parentElement?.removeChild(this._canvas),Vt(this._terminal)}))}get textureAtlas(){return this._charAtlas?.pages[0].canvas}_handleColorChange(){this._refreshCharAtlas(),this._clearModel(!0)}handleDevicePixelRatioChange(){this._devicePixelRatio!==this._coreBrowserService.dpr&&(this._devicePixelRatio=this._coreBrowserService.dpr,this.handleResize(this._terminal.cols,this._terminal.rows))}handleResize(e,r){this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows);for(let S of this._renderLayers)S.resize(this._terminal,this.dimensions);this._canvas.width=this.dimensions.device.canvas.width,this._canvas.height=this.dimensions.device.canvas.height,this._canvas.style.width=`${this.dimensions.css.canvas.width}px`,this._canvas.style.height=`${this.dimensions.css.canvas.height}px`,this._core.screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._core.screenElement.style.height=`${this.dimensions.css.canvas.height}px`,this._rectangleRenderer.value?.setDimensions(this.dimensions),this._rectangleRenderer.value?.handleResize(),this._glyphRenderer.value?.setDimensions(this.dimensions),this._glyphRenderer.value?.handleResize(),this._refreshCharAtlas(),this._clearModel(!1)}handleCharSizeChanged(){this.handleResize(this._terminal.cols,this._terminal.rows)}handleBlur(){for(let e of this._renderLayers)e.handleBlur(this._terminal);this._cursorBlinkStateManager.value?.pause(),this._requestRedrawViewport()}handleFocus(){for(let e of this._renderLayers)e.handleFocus(this._terminal);this._cursorBlinkStateManager.value?.resume(),this._requestRedrawViewport()}handleSelectionChanged(e,r,S){for(let k of this._renderLayers)k.handleSelectionChanged(this._terminal,e,r,S);this._model.selection.update(this._core,e,r,S),this._requestRedrawViewport()}handleCursorMove(){for(let e of this._renderLayers)e.handleCursorMove(this._terminal);this._cursorBlinkStateManager.value?.restartBlinkAnimation()}_handleOptionsChanged(){this._updateDimensions(),this._refreshCharAtlas(),this._updateCursorBlink()}_initializeWebGLState(){return this._rectangleRenderer.value=new er(this._terminal,this._gl,this.dimensions,this._themeService),this._glyphRenderer.value=new Ks(this._terminal,this._gl,this.dimensions,this._optionsService),this.handleCharSizeChanged(),[this._rectangleRenderer.value,this._glyphRenderer.value]}_refreshCharAtlas(){if(this.dimensions.device.char.width<=0&&this.dimensions.device.char.height<=0){this._isAttached=!1;return}let e=Ti(this._terminal,this._optionsService.rawOptions,this._themeService.colors,this.dimensions.device.cell.width,this.dimensions.device.cell.height,this.dimensions.device.char.width,this.dimensions.device.char.height,this._coreBrowserService.dpr,this._deviceMaxTextureSize);this._charAtlas!==e&&(this._onChangeTextureAtlas.fire(e.pages[0].canvas),this._charAtlasDisposable.value=gi(Ae.forward(e.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas),Ae.forward(e.onRemoveTextureAtlasCanvas,this._onRemoveTextureAtlasCanvas))),this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.value?.setAtlas(this._charAtlas)}_clearModel(e){this._model.clear(),e&&this._glyphRenderer.value?.clear()}clearTextureAtlas(){this._charAtlas?.clearTexture(),this._clearModel(!0),this._requestRedrawViewport()}clear(){this._clearModel(!0);for(let e of this._renderLayers)e.reset(this._terminal);this._cursorBlinkStateManager.value?.restartBlinkAnimation(),this._updateCursorBlink()}renderRows(e,r){if(!this._isAttached)if(this._core.screenElement?.isConnected&&this._charSizeService.width&&this._charSizeService.height)this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0;else return;for(let S of this._renderLayers)S.handleGridChanged(this._terminal,e,r);!this._glyphRenderer.value||!this._rectangleRenderer.value||(this._glyphRenderer.value.beginFrame()?(this._clearModel(!0),this._updateModel(0,this._terminal.rows-1)):this._updateModel(e,r),this._rectangleRenderer.value.renderBackgrounds(),this._glyphRenderer.value.render(this._model),(!this._cursorBlinkStateManager.value||this._cursorBlinkStateManager.value.isCursorVisible)&&this._rectangleRenderer.value.renderCursor())}_updateCursorBlink(){this._coreService.decPrivateModes.cursorBlink??this._terminal.options.cursorBlink?this._cursorBlinkStateManager.value=new Ws(()=>{this._requestRedrawCursor()},this._coreBrowserService):this._cursorBlinkStateManager.clear(),this._requestRedrawCursor()}_updateModel(e,r){let S=this._core,k=this._workCell,b,O,R,i,a,l,d=0,h=!0,u,v,m,_,n,o,t,s,c;e=li(e,S.rows-1,0),r=li(r,S.rows-1,0);let g=this._coreService.decPrivateModes.cursorStyle??S.options.cursorStyle??"block",p=this._terminal.buffer.active.baseY+this._terminal.buffer.active.cursorY,w=p-S.buffer.ydisp,f=Math.min(this._terminal.buffer.active.cursorX,S.cols-1),y=-1,B=this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden&&(!this._cursorBlinkStateManager.value||this._cursorBlinkStateManager.value.isCursorVisible);this._model.cursor=void 0;let A=!1;for(O=e;O<=r;O++)for(R=O+S.buffer.ydisp,i=S.buffer.lines.get(R),this._model.lineLengths[O]=0,m=p===R,d=0,a=this._characterJoinerService.getJoinedCharacters(R),s=0;s=d,u=s,a.length>0&&s===a[0][0]&&h){v=a.shift();let D=this._model.selection.isCellSelected(this._terminal,v[0],R);for(t=v[0]+1;t=v[1],h?(l=!0,k=new Sr(k,i.translateToString(!0,v[0],v[1]),v[1]-v[0]),u=v[1]-1):d=v[1]}if(_=k.getChars(),n=k.getCode(),t=(O*S.cols+s)*ft,this._cellColorResolver.resolve(k,s,R,this.dimensions.device.cell.width),B&&R===p&&(s===f&&(this._model.cursor={x:f,y:w,width:k.getWidth(),style:this._coreBrowserService.isFocused?g:S.options.cursorInactiveStyle,cursorWidth:S.options.cursorWidth,dpr:this._devicePixelRatio},y=f+k.getWidth()-1),s>=f&&s<=y&&(this._coreBrowserService.isFocused&&g==="block"||this._coreBrowserService.isFocused===!1&&S.options.cursorInactiveStyle==="block")&&(this._cellColorResolver.result.fg=50331648|this._themeService.colors.cursorAccent.rgba>>8&16777215,this._cellColorResolver.result.bg=50331648|this._themeService.colors.cursor.rgba>>8&16777215)),n!==0&&(this._model.lineLengths[O]=s+1),!(this._model.cells[t]===n&&this._model.cells[t+dt]===this._cellColorResolver.result.bg&&this._model.cells[t+ut]===this._cellColorResolver.result.fg&&this._model.cells[t+Lt]===this._cellColorResolver.result.ext)&&(A=!0,_.length>1&&(n|=Xs),this._model.cells[t]=n,this._model.cells[t+dt]=this._cellColorResolver.result.bg,this._model.cells[t+ut]=this._cellColorResolver.result.fg,this._model.cells[t+Lt]=this._cellColorResolver.result.ext,o=k.getWidth(),this._glyphRenderer.value.updateCell(s,O,n,this._cellColorResolver.result.bg,this._cellColorResolver.result.fg,this._cellColorResolver.result.ext,_,o,b),l)){for(k=this._workCell,s++;s<=u;s++)c=(O*S.cols+s)*ft,this._glyphRenderer.value.updateCell(s,O,0,0,0,0,is,0,0),this._model.cells[c]=0,this._model.cells[c+dt]=this._cellColorResolver.result.bg,this._model.cells[c+ut]=this._cellColorResolver.result.fg,this._model.cells[c+Lt]=this._cellColorResolver.result.ext;s--}}A&&this._rectangleRenderer.value.updateBackgrounds(this._model),this._rectangleRenderer.value.updateCursor(this._model)}_updateDimensions(){!this._charSizeService.width||!this._charSizeService.height||(this.dimensions.device.char.width=Math.floor(this._charSizeService.width*this._devicePixelRatio),this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*this._devicePixelRatio),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.top=this._optionsService.rawOptions.lineHeight===1?0:Math.round((this.dimensions.device.cell.height-this.dimensions.device.char.height)/2),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.char.left=Math.floor(this._optionsService.rawOptions.letterSpacing/2),this.dimensions.device.canvas.height=this._terminal.rows*this.dimensions.device.cell.height,this.dimensions.device.canvas.width=this._terminal.cols*this.dimensions.device.cell.width,this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/this._devicePixelRatio),this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/this._devicePixelRatio),this.dimensions.css.cell.height=this.dimensions.device.cell.height/this._devicePixelRatio,this.dimensions.css.cell.width=this.dimensions.device.cell.width/this._devicePixelRatio)}_setCanvasDevicePixelDimensions(e,r){this._canvas.width===e&&this._canvas.height===r||(this._canvas.width=e,this._canvas.height=r,this._requestRedrawViewport())}_requestRedrawViewport(){this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})}_requestRedrawCursor(){let e=this._terminal.buffer.active.cursorY;this._onRequestRedraw.fire({start:e,end:e})}},Sr=class extends qe{constructor(e,r,S){super(),this.content=0,this.combinedData="",this.fg=e.fg,this.bg=e.bg,this.combinedData=r,this._width=S}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(e){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}};function li(e,r,S=0){return Math.max(Math.min(e,r),S)}var ci="di$target",di="di$dependencies",Mt=new Map;function Le(e){if(Mt.has(e))return Mt.get(e);let r=function(S,k,b){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");Cr(r,S,b)};return r._id=e,Mt.set(e,r),r}function Cr(e,r,S){r[ci]===r?r[di].push({id:e,index:S}):(r[di]=[{id:e,index:S}],r[ci]=r)}Le("BufferService");Le("CoreMouseService");Le("CoreService");Le("CharsetService");Le("InstantiationService");Le("LogService");var wr=Le("OptionsService");Le("OscLinkService");Le("UnicodeService");Le("DecorationService");var br={trace:0,debug:1,info:2,warn:3,error:4,off:5},yr="xterm.js: ",ui=class extends Ce{constructor(e){super(),this._optionsService=e,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=br[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(e){for(let r=0;rthis.activate(e)));return}this._terminal=e;let S=r.coreService,k=r.optionsService,b=r,O=b._renderService,R=b._characterJoinerService,i=b._charSizeService,a=b._coreBrowserService,l=b._decorationService;b._logService;let d=b._themeService;this._renderer=this._register(new mr(e,R,i,a,S,l,k,d,this._preserveDrawingBuffer)),this._register(Ae.forward(this._renderer.onContextLoss,this._onContextLoss)),this._register(Ae.forward(this._renderer.onChangeTextureAtlas,this._onChangeTextureAtlas)),this._register(Ae.forward(this._renderer.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas)),this._register(Ae.forward(this._renderer.onRemoveTextureAtlasCanvas,this._onRemoveTextureAtlasCanvas)),O.setRenderer(this._renderer),this._register(de(()=>{if(this._terminal._core._store._isDisposed)return;let h=this._terminal._core._renderService;h.setRenderer(this._terminal._core._createRenderer()),h.handleResize(e.cols,e.rows)}))}get textureAtlas(){return this._renderer?.textureAtlas}clearTextureAtlas(){this._renderer?.clearTextureAtlas()}},At={exports:{}},_i;function Rr(){return _i||(_i=1,(function(e,r){(function(S,k){e.exports=k()})(globalThis,(()=>(()=>{var S={4567:function(R,i,a){var l=this&&this.__decorate||function(t,s,c,g){var p,w=arguments.length,f=w<3?s:g===null?g=Object.getOwnPropertyDescriptor(s,c):g;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")f=Reflect.decorate(t,s,c,g);else for(var y=t.length-1;y>=0;y--)(p=t[y])&&(f=(w<3?p(f):w>3?p(s,c,f):p(s,c))||f);return w>3&&f&&Object.defineProperty(s,c,f),f},d=this&&this.__param||function(t,s){return function(c,g){s(c,g,t)}};Object.defineProperty(i,"__esModule",{value:!0}),i.AccessibilityManager=void 0;const h=a(9042),u=a(9924),v=a(844),m=a(4725),_=a(2585),n=a(3656);let o=i.AccessibilityManager=class extends v.Disposable{constructor(t,s,c,g){super(),this._terminal=t,this._coreBrowserService=c,this._renderService=g,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="",this._accessibilityContainer=this._coreBrowserService.mainDocument.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=this._coreBrowserService.mainDocument.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let p=0;pthis._handleBoundaryFocus(p,0),this._bottomBoundaryFocusListener=p=>this._handleBoundaryFocus(p,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions(),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=this._coreBrowserService.mainDocument.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this.register(new u.TimeBasedDebouncer(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this.register(this._terminal.onResize((p=>this._handleResize(p.rows)))),this.register(this._terminal.onRender((p=>this._refreshRows(p.start,p.end)))),this.register(this._terminal.onScroll((()=>this._refreshRows()))),this.register(this._terminal.onA11yChar((p=>this._handleChar(p)))),this.register(this._terminal.onLineFeed((()=>this._handleChar(` +`)))),this.register(this._terminal.onA11yTab((p=>this._handleTab(p)))),this.register(this._terminal.onKey((p=>this._handleKey(p.key)))),this.register(this._terminal.onBlur((()=>this._clearLiveRegion()))),this.register(this._renderService.onDimensionsChange((()=>this._refreshRowsDimensions()))),this.register((0,n.addDisposableDomListener)(document,"selectionchange",(()=>this._handleSelectionChange()))),this.register(this._coreBrowserService.onDprChange((()=>this._refreshRowsDimensions()))),this._refreshRows(),this.register((0,v.toDisposable)((()=>{this._accessibilityContainer.remove(),this._rowElements.length=0})))}_handleTab(t){for(let s=0;s0?this._charsToConsume.shift()!==t&&(this._charsToAnnounce+=t):this._charsToAnnounce+=t,t===` +`&&(this._liveRegionLineCount++,this._liveRegionLineCount===21&&(this._liveRegion.textContent+=h.tooMuchOutput)))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(t){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(t)||this._charsToConsume.push(t)}_refreshRows(t,s){this._liveRegionDebouncer.refresh(t,s,this._terminal.rows)}_renderRows(t,s){const c=this._terminal.buffer,g=c.lines.length.toString();for(let p=t;p<=s;p++){const w=c.lines.get(c.ydisp+p),f=[],y=w?.translateToString(!0,void 0,void 0,f)||"",B=(c.ydisp+p+1).toString(),A=this._rowElements[p];A&&(y.length===0?(A.innerText=" ",this._rowColumns.set(A,[0,1])):(A.textContent=y,this._rowColumns.set(A,f)),A.setAttribute("aria-posinset",B),A.setAttribute("aria-setsize",g))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(t,s){const c=t.target,g=this._rowElements[s===0?1:this._rowElements.length-2];if(c.getAttribute("aria-posinset")===(s===0?"1":`${this._terminal.buffer.lines.length}`)||t.relatedTarget!==g)return;let p,w;if(s===0?(p=c,w=this._rowElements.pop(),this._rowContainer.removeChild(w)):(p=this._rowElements.shift(),w=c,this._rowContainer.removeChild(p)),p.removeEventListener("focus",this._topBoundaryFocusListener),w.removeEventListener("focus",this._bottomBoundaryFocusListener),s===0){const f=this._createAccessibilityTreeNode();this._rowElements.unshift(f),this._rowContainer.insertAdjacentElement("afterbegin",f)}else{const f=this._createAccessibilityTreeNode();this._rowElements.push(f),this._rowContainer.appendChild(f)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(s===0?-1:1),this._rowElements[s===0?1:this._rowElements.length-2].focus(),t.preventDefault(),t.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;const t=document.getSelection();if(!t)return;if(t.isCollapsed)return void(this._rowContainer.contains(t.anchorNode)&&this._terminal.clearSelection());if(!t.anchorNode||!t.focusNode)return void console.error("anchorNode and/or focusNode are null");let s={node:t.anchorNode,offset:t.anchorOffset},c={node:t.focusNode,offset:t.focusOffset};if((s.node.compareDocumentPosition(c.node)&Node.DOCUMENT_POSITION_PRECEDING||s.node===c.node&&s.offset>c.offset)&&([s,c]=[c,s]),s.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(s={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(s.node))return;const g=this._rowElements.slice(-1)[0];if(c.node.compareDocumentPosition(g)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(c={node:g,offset:g.textContent?.length??0}),!this._rowContainer.contains(c.node))return;const p=({node:y,offset:B})=>{const A=y instanceof Text?y.parentNode:y;let D=parseInt(A?.getAttribute("aria-posinset"),10)-1;if(isNaN(D))return console.warn("row is invalid. Race condition?"),null;const L=this._rowColumns.get(A);if(!L)return console.warn("columns is null. Race condition?"),null;let P=B=this._terminal.cols&&(++D,P=0),{row:D,column:P}},w=p(s),f=p(c);if(w&&f){if(w.row>f.row||w.row===f.row&&w.column>=f.column)throw new Error("invalid range");this._terminal.select(w.column,w.row,(f.row-w.row)*this._terminal.cols-w.column+f.column)}}_handleResize(t){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let s=this._rowContainer.children.length;st;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){const t=this._coreBrowserService.mainDocument.createElement("div");return t.setAttribute("role","listitem"),t.tabIndex=-1,this._refreshRowDimensions(t),t}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){this._accessibilityContainer.style.width=`${this._renderService.dimensions.css.canvas.width}px`,this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let t=0;t{function a(u){return u.replace(/\r?\n/g,"\r")}function l(u,v){return v?"\x1B[200~"+u+"\x1B[201~":u}function d(u,v,m,_){u=l(u=a(u),m.decPrivateModes.bracketedPasteMode&&_.rawOptions.ignoreBracketedPasteMode!==!0),m.triggerDataEvent(u,!0),v.value=""}function h(u,v,m){const _=m.getBoundingClientRect(),n=u.clientX-_.left-10,o=u.clientY-_.top-10;v.style.width="20px",v.style.height="20px",v.style.left=`${n}px`,v.style.top=`${o}px`,v.style.zIndex="1000",v.focus()}Object.defineProperty(i,"__esModule",{value:!0}),i.rightClickHandler=i.moveTextAreaUnderMouseCursor=i.paste=i.handlePasteEvent=i.copyHandler=i.bracketTextForPaste=i.prepareTextForTerminal=void 0,i.prepareTextForTerminal=a,i.bracketTextForPaste=l,i.copyHandler=function(u,v){u.clipboardData&&u.clipboardData.setData("text/plain",v.selectionText),u.preventDefault()},i.handlePasteEvent=function(u,v,m,_){u.stopPropagation(),u.clipboardData&&d(u.clipboardData.getData("text/plain"),v,m,_)},i.paste=d,i.moveTextAreaUnderMouseCursor=h,i.rightClickHandler=function(u,v,m,_,n){h(u,v,m),n&&_.rightClickSelect(u),v.value=_.selectionText,v.select()}},7239:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.ColorContrastCache=void 0;const l=a(1505);i.ColorContrastCache=class{constructor(){this._color=new l.TwoKeyMap,this._css=new l.TwoKeyMap}setCss(d,h,u){this._css.set(d,h,u)}getCss(d,h){return this._css.get(d,h)}setColor(d,h,u){this._color.set(d,h,u)}getColor(d,h){return this._color.get(d,h)}clear(){this._color.clear(),this._css.clear()}}},3656:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.addDisposableDomListener=void 0,i.addDisposableDomListener=function(a,l,d,h){a.addEventListener(l,d,h);let u=!1;return{dispose:()=>{u||(u=!0,a.removeEventListener(l,d,h))}}}},3551:function(R,i,a){var l=this&&this.__decorate||function(o,t,s,c){var g,p=arguments.length,w=p<3?t:c===null?c=Object.getOwnPropertyDescriptor(t,s):c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")w=Reflect.decorate(o,t,s,c);else for(var f=o.length-1;f>=0;f--)(g=o[f])&&(w=(p<3?g(w):p>3?g(t,s,w):g(t,s))||w);return p>3&&w&&Object.defineProperty(t,s,w),w},d=this&&this.__param||function(o,t){return function(s,c){t(s,c,o)}};Object.defineProperty(i,"__esModule",{value:!0}),i.Linkifier=void 0;const h=a(3656),u=a(8460),v=a(844),m=a(2585),_=a(4725);let n=i.Linkifier=class extends v.Disposable{get currentLink(){return this._currentLink}constructor(o,t,s,c,g){super(),this._element=o,this._mouseService=t,this._renderService=s,this._bufferService=c,this._linkProviderService=g,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this.register(new u.EventEmitter),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this.register(new u.EventEmitter),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this.register((0,v.getDisposeArrayDisposable)(this._linkCacheDisposables)),this.register((0,v.toDisposable)((()=>{this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()}))),this.register(this._bufferService.onResize((()=>{this._clearCurrentLink(),this._wasResized=!0}))),this.register((0,h.addDisposableDomListener)(this._element,"mouseleave",(()=>{this._isMouseOut=!0,this._clearCurrentLink()}))),this.register((0,h.addDisposableDomListener)(this._element,"mousemove",this._handleMouseMove.bind(this))),this.register((0,h.addDisposableDomListener)(this._element,"mousedown",this._handleMouseDown.bind(this))),this.register((0,h.addDisposableDomListener)(this._element,"mouseup",this._handleMouseUp.bind(this)))}_handleMouseMove(o){this._lastMouseEvent=o;const t=this._positionFromMouseEvent(o,this._element,this._mouseService);if(!t)return;this._isMouseOut=!1;const s=o.composedPath();for(let c=0;c{c?.forEach((g=>{g.link.dispose&&g.link.dispose()}))})),this._activeProviderReplies=new Map,this._activeLine=o.y);let s=!1;for(const[c,g]of this._linkProviderService.linkProviders.entries())t?this._activeProviderReplies?.get(c)&&(s=this._checkLinkProviderResult(c,o,s)):g.provideLinks(o.y,(p=>{if(this._isMouseOut)return;const w=p?.map((f=>({link:f})));this._activeProviderReplies?.set(c,w),s=this._checkLinkProviderResult(c,o,s),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(o.y,this._activeProviderReplies)}))}_removeIntersectingLinks(o,t){const s=new Set;for(let c=0;co?this._bufferService.cols:w.link.range.end.x;for(let B=f;B<=y;B++){if(s.has(B)){g.splice(p--,1);break}s.add(B)}}}}_checkLinkProviderResult(o,t,s){if(!this._activeProviderReplies)return s;const c=this._activeProviderReplies.get(o);let g=!1;for(let p=0;pthis._linkAtPosition(w.link,t)));p&&(s=!0,this._handleNewLink(p))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!s)for(let p=0;pthis._linkAtPosition(f.link,t)));if(w){s=!0,this._handleNewLink(w);break}}return s}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(o){if(!this._currentLink)return;const t=this._positionFromMouseEvent(o,this._element,this._mouseService);t&&this._mouseDownLink===this._currentLink&&this._linkAtPosition(this._currentLink.link,t)&&this._currentLink.link.activate(o,this._currentLink.link.text)}_clearCurrentLink(o,t){this._currentLink&&this._lastMouseEvent&&(!o||!t||this._currentLink.link.range.start.y>=o&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,(0,v.disposeArray)(this._linkCacheDisposables))}_handleNewLink(o){if(!this._lastMouseEvent)return;const t=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);t&&this._linkAtPosition(o.link,t)&&(this._currentLink=o,this._currentLink.state={decorations:{underline:o.link.decorations===void 0||o.link.decorations.underline,pointerCursor:o.link.decorations===void 0||o.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,o.link,this._lastMouseEvent),o.link.decorations={},Object.defineProperties(o.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:s=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==s&&(this._currentLink.state.decorations.pointerCursor=s,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",s))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:s=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==s&&(this._currentLink.state.decorations.underline=s,this._currentLink.state.isHovered&&this._fireUnderlineEvent(o.link,s))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange((s=>{if(!this._currentLink)return;const c=s.start===0?0:s.start+1+this._bufferService.buffer.ydisp,g=this._bufferService.buffer.ydisp+1+s.end;if(this._currentLink.link.range.start.y>=c&&this._currentLink.link.range.end.y<=g&&(this._clearCurrentLink(c,g),this._lastMouseEvent)){const p=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);p&&this._askForLink(p,!1)}}))))}_linkHover(o,t,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&o.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(s,t.text)}_fireUnderlineEvent(o,t){const s=o.range,c=this._bufferService.buffer.ydisp,g=this._createLinkUnderlineEvent(s.start.x-1,s.start.y-c-1,s.end.x,s.end.y-c-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(g)}_linkLeave(o,t,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&o.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(s,t.text)}_linkAtPosition(o,t){const s=o.range.start.y*this._bufferService.cols+o.range.start.x,c=o.range.end.y*this._bufferService.cols+o.range.end.x,g=t.y*this._bufferService.cols+t.x;return s<=g&&g<=c}_positionFromMouseEvent(o,t,s){const c=s.getCoords(o,t,this._bufferService.cols,this._bufferService.rows);if(c)return{x:c[0],y:c[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(o,t,s,c,g){return{x1:o,y1:t,x2:s,y2:c,cols:this._bufferService.cols,fg:g}}};i.Linkifier=n=l([d(1,_.IMouseService),d(2,_.IRenderService),d(3,m.IBufferService),d(4,_.ILinkProviderService)],n)},9042:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.tooMuchOutput=i.promptLabel=void 0,i.promptLabel="Terminal input",i.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},3730:function(R,i,a){var l=this&&this.__decorate||function(_,n,o,t){var s,c=arguments.length,g=c<3?n:t===null?t=Object.getOwnPropertyDescriptor(n,o):t;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")g=Reflect.decorate(_,n,o,t);else for(var p=_.length-1;p>=0;p--)(s=_[p])&&(g=(c<3?s(g):c>3?s(n,o,g):s(n,o))||g);return c>3&&g&&Object.defineProperty(n,o,g),g},d=this&&this.__param||function(_,n){return function(o,t){n(o,t,_)}};Object.defineProperty(i,"__esModule",{value:!0}),i.OscLinkProvider=void 0;const h=a(511),u=a(2585);let v=i.OscLinkProvider=class{constructor(_,n,o){this._bufferService=_,this._optionsService=n,this._oscLinkService=o}provideLinks(_,n){const o=this._bufferService.buffer.lines.get(_-1);if(!o)return void n(void 0);const t=[],s=this._optionsService.rawOptions.linkHandler,c=new h.CellData,g=o.getTrimmedLength();let p=-1,w=-1,f=!1;for(let y=0;ys?s.activate(L,P,A):m(0,P),hover:(L,P)=>s?.hover?.(L,P,A),leave:(L,P)=>s?.leave?.(L,P,A)})}f=!1,c.hasExtendedAttrs()&&c.extended.urlId?(w=y,p=c.extended.urlId):(w=-1,p=-1)}}n(t)}};function m(_,n){if(confirm(`Do you want to navigate to ${n}? + +WARNING: This link could potentially be dangerous`)){const o=window.open();if(o){try{o.opener=null}catch{}o.location.href=n}else console.warn("Opening link blocked as opener could not be cleared")}}i.OscLinkProvider=v=l([d(0,u.IBufferService),d(1,u.IOptionsService),d(2,u.IOscLinkService)],v)},6193:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.RenderDebouncer=void 0,i.RenderDebouncer=class{constructor(a,l){this._renderCallback=a,this._coreBrowserService=l,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(a){return this._refreshCallbacks.push(a),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._innerRefresh()))),this._animationFrame}refresh(a,l,d){this._rowCount=d,a=a!==void 0?a:0,l=l!==void 0?l:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,a):a,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,l):l,this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._innerRefresh())))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return void this._runRefreshCallbacks();const a=Math.max(this._rowStart,0),l=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,l),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(const a of this._refreshCallbacks)a(0);this._refreshCallbacks=[]}}},3236:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.Terminal=void 0;const l=a(3614),d=a(3656),h=a(3551),u=a(9042),v=a(3730),m=a(1680),_=a(3107),n=a(5744),o=a(2950),t=a(1296),s=a(428),c=a(4269),g=a(5114),p=a(8934),w=a(3230),f=a(9312),y=a(4725),B=a(6731),A=a(8055),D=a(8969),L=a(8460),P=a(844),F=a(6114),$=a(8437),W=a(2584),H=a(7399),C=a(5941),E=a(9074),M=a(2585),T=a(5435),U=a(4567),j=a(779);class V extends D.CoreTerminal{get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}constructor(I={}){super(I),this.browser=F,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this.register(new P.MutableDisposable),this._onCursorMove=this.register(new L.EventEmitter),this.onCursorMove=this._onCursorMove.event,this._onKey=this.register(new L.EventEmitter),this.onKey=this._onKey.event,this._onRender=this.register(new L.EventEmitter),this.onRender=this._onRender.event,this._onSelectionChange=this.register(new L.EventEmitter),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this.register(new L.EventEmitter),this.onTitleChange=this._onTitleChange.event,this._onBell=this.register(new L.EventEmitter),this.onBell=this._onBell.event,this._onFocus=this.register(new L.EventEmitter),this._onBlur=this.register(new L.EventEmitter),this._onA11yCharEmitter=this.register(new L.EventEmitter),this._onA11yTabEmitter=this.register(new L.EventEmitter),this._onWillOpen=this.register(new L.EventEmitter),this._setup(),this._decorationService=this._instantiationService.createInstance(E.DecorationService),this._instantiationService.setService(M.IDecorationService,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(j.LinkProviderService),this._instantiationService.setService(y.ILinkProviderService,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(v.OscLinkProvider)),this.register(this._inputHandler.onRequestBell((()=>this._onBell.fire()))),this.register(this._inputHandler.onRequestRefreshRows(((x,N)=>this.refresh(x,N)))),this.register(this._inputHandler.onRequestSendFocus((()=>this._reportFocus()))),this.register(this._inputHandler.onRequestReset((()=>this.reset()))),this.register(this._inputHandler.onRequestWindowsOptionsReport((x=>this._reportWindowsOptions(x)))),this.register(this._inputHandler.onColor((x=>this._handleColorEvent(x)))),this.register((0,L.forwardEvent)(this._inputHandler.onCursorMove,this._onCursorMove)),this.register((0,L.forwardEvent)(this._inputHandler.onTitleChange,this._onTitleChange)),this.register((0,L.forwardEvent)(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this.register((0,L.forwardEvent)(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this.register(this._bufferService.onResize((x=>this._afterResize(x.cols,x.rows)))),this.register((0,P.toDisposable)((()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)})))}_handleColorEvent(I){if(this._themeService)for(const x of I){let N,z="";switch(x.index){case 256:N="foreground",z="10";break;case 257:N="background",z="11";break;case 258:N="cursor",z="12";break;default:N="ansi",z="4;"+x.index}switch(x.type){case 0:const K=A.color.toColorRGB(N==="ansi"?this._themeService.colors.ansi[x.index]:this._themeService.colors[N]);this.coreService.triggerDataEvent(`${W.C0.ESC}]${z};${(0,C.toRgbString)(K)}${W.C1_ESCAPED.ST}`);break;case 1:if(N==="ansi")this._themeService.modifyColors((q=>q.ansi[x.index]=A.channels.toColor(...x.color)));else{const q=N;this._themeService.modifyColors((Y=>Y[q]=A.channels.toColor(...x.color)))}break;case 2:this._themeService.restoreColor(x.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(I){I?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(U.AccessibilityManager,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(I){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(W.C0.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(W.C0.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;const I=this.buffer.ybase+this.buffer.y,x=this.buffer.lines.get(I);if(!x)return;const N=Math.min(this.buffer.x,this.cols-1),z=this._renderService.dimensions.css.cell.height,K=x.getWidth(N),q=this._renderService.dimensions.css.cell.width*K,Y=this.buffer.y*this._renderService.dimensions.css.cell.height,J=N*this._renderService.dimensions.css.cell.width;this.textarea.style.left=J+"px",this.textarea.style.top=Y+"px",this.textarea.style.width=q+"px",this.textarea.style.height=z+"px",this.textarea.style.lineHeight=z+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this.register((0,d.addDisposableDomListener)(this.element,"copy",(x=>{this.hasSelection()&&(0,l.copyHandler)(x,this._selectionService)})));const I=x=>(0,l.handlePasteEvent)(x,this.textarea,this.coreService,this.optionsService);this.register((0,d.addDisposableDomListener)(this.textarea,"paste",I)),this.register((0,d.addDisposableDomListener)(this.element,"paste",I)),F.isFirefox?this.register((0,d.addDisposableDomListener)(this.element,"mousedown",(x=>{x.button===2&&(0,l.rightClickHandler)(x,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)}))):this.register((0,d.addDisposableDomListener)(this.element,"contextmenu",(x=>{(0,l.rightClickHandler)(x,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)}))),F.isLinux&&this.register((0,d.addDisposableDomListener)(this.element,"auxclick",(x=>{x.button===1&&(0,l.moveTextAreaUnderMouseCursor)(x,this.textarea,this.screenElement)})))}_bindKeys(){this.register((0,d.addDisposableDomListener)(this.textarea,"keyup",(I=>this._keyUp(I)),!0)),this.register((0,d.addDisposableDomListener)(this.textarea,"keydown",(I=>this._keyDown(I)),!0)),this.register((0,d.addDisposableDomListener)(this.textarea,"keypress",(I=>this._keyPress(I)),!0)),this.register((0,d.addDisposableDomListener)(this.textarea,"compositionstart",(()=>this._compositionHelper.compositionstart()))),this.register((0,d.addDisposableDomListener)(this.textarea,"compositionupdate",(I=>this._compositionHelper.compositionupdate(I)))),this.register((0,d.addDisposableDomListener)(this.textarea,"compositionend",(()=>this._compositionHelper.compositionend()))),this.register((0,d.addDisposableDomListener)(this.textarea,"input",(I=>this._inputEvent(I)),!0)),this.register(this.onRender((()=>this._compositionHelper.updateCompositionElements())))}open(I){if(!I)throw new Error("Terminal requires a parent element.");if(I.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService)return void(this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView));this._document=I.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),I.appendChild(this.element);const x=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),x.appendChild(this._viewportElement),this._viewportScrollArea=this._document.createElement("div"),this._viewportScrollArea.classList.add("xterm-scroll-area"),this._viewportElement.appendChild(this._viewportScrollArea),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this.register((0,d.addDisposableDomListener)(this.screenElement,"mousemove",(N=>this.updateCursorStyle(N)))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),x.appendChild(this.screenElement),this.textarea=this._document.createElement("textarea"),this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",u.promptLabel),F.isChromeOS||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._coreBrowserService=this.register(this._instantiationService.createInstance(g.CoreBrowserService,this.textarea,I.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(y.ICoreBrowserService,this._coreBrowserService),this.register((0,d.addDisposableDomListener)(this.textarea,"focus",(N=>this._handleTextAreaFocus(N)))),this.register((0,d.addDisposableDomListener)(this.textarea,"blur",(()=>this._handleTextAreaBlur()))),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(s.CharSizeService,this._document,this._helperContainer),this._instantiationService.setService(y.ICharSizeService,this._charSizeService),this._themeService=this._instantiationService.createInstance(B.ThemeService),this._instantiationService.setService(y.IThemeService,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(c.CharacterJoinerService),this._instantiationService.setService(y.ICharacterJoinerService,this._characterJoinerService),this._renderService=this.register(this._instantiationService.createInstance(w.RenderService,this.rows,this.screenElement)),this._instantiationService.setService(y.IRenderService,this._renderService),this.register(this._renderService.onRenderedViewportChange((N=>this._onRender.fire(N)))),this.onResize((N=>this._renderService.resize(N.cols,N.rows))),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(o.CompositionHelper,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(p.MouseService),this._instantiationService.setService(y.IMouseService,this._mouseService),this.linkifier=this.register(this._instantiationService.createInstance(h.Linkifier,this.screenElement)),this.element.appendChild(x);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this.viewport=this._instantiationService.createInstance(m.Viewport,this._viewportElement,this._viewportScrollArea),this.viewport.onRequestScrollLines((N=>this.scrollLines(N.amount,N.suppressScrollEvent,1))),this.register(this._inputHandler.onRequestSyncScrollBar((()=>this.viewport.syncScrollArea()))),this.register(this.viewport),this.register(this.onCursorMove((()=>{this._renderService.handleCursorMove(),this._syncTextArea()}))),this.register(this.onResize((()=>this._renderService.handleResize(this.cols,this.rows)))),this.register(this.onBlur((()=>this._renderService.handleBlur()))),this.register(this.onFocus((()=>this._renderService.handleFocus()))),this.register(this._renderService.onDimensionsChange((()=>this.viewport.syncScrollArea()))),this._selectionService=this.register(this._instantiationService.createInstance(f.SelectionService,this.element,this.screenElement,this.linkifier)),this._instantiationService.setService(y.ISelectionService,this._selectionService),this.register(this._selectionService.onRequestScrollLines((N=>this.scrollLines(N.amount,N.suppressScrollEvent)))),this.register(this._selectionService.onSelectionChange((()=>this._onSelectionChange.fire()))),this.register(this._selectionService.onRequestRedraw((N=>this._renderService.handleSelectionChanged(N.start,N.end,N.columnSelectMode)))),this.register(this._selectionService.onLinuxMouseSelection((N=>{this.textarea.value=N,this.textarea.focus(),this.textarea.select()}))),this.register(this._onScroll.event((N=>{this.viewport.syncScrollArea(),this._selectionService.refresh()}))),this.register((0,d.addDisposableDomListener)(this._viewportElement,"scroll",(()=>this._selectionService.refresh()))),this.register(this._instantiationService.createInstance(_.BufferDecorationRenderer,this.screenElement)),this.register((0,d.addDisposableDomListener)(this.element,"mousedown",(N=>this._selectionService.handleMouseDown(N)))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(U.AccessibilityManager,this)),this.register(this.optionsService.onSpecificOptionChange("screenReaderMode",(N=>this._handleScreenReaderModeOptionChange(N)))),this.options.overviewRulerWidth&&(this._overviewRulerRenderer=this.register(this._instantiationService.createInstance(n.OverviewRulerRenderer,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRulerWidth",(N=>{!this._overviewRulerRenderer&&N&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this.register(this._instantiationService.createInstance(n.OverviewRulerRenderer,this._viewportElement,this.screenElement)))})),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(t.DomRenderer,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){const I=this,x=this.element;function N(q){const Y=I._mouseService.getMouseReportCoords(q,I.screenElement);if(!Y)return!1;let J,ee;switch(q.overrideType||q.type){case"mousemove":ee=32,q.buttons===void 0?(J=3,q.button!==void 0&&(J=q.button<3?q.button:3)):J=1&q.buttons?0:4&q.buttons?1:2&q.buttons?2:3;break;case"mouseup":ee=0,J=q.button<3?q.button:3;break;case"mousedown":ee=1,J=q.button<3?q.button:3;break;case"wheel":if(I._customWheelEventHandler&&I._customWheelEventHandler(q)===!1||I.viewport.getLinesScrolled(q)===0)return!1;ee=q.deltaY<0?0:1,J=4;break;default:return!1}return!(ee===void 0||J===void 0||J>4)&&I.coreMouseService.triggerMouseEvent({col:Y.col,row:Y.row,x:Y.x,y:Y.y,button:J,action:ee,ctrl:q.ctrlKey,alt:q.altKey,shift:q.shiftKey})}const z={mouseup:null,wheel:null,mousedrag:null,mousemove:null},K={mouseup:q=>(N(q),q.buttons||(this._document.removeEventListener("mouseup",z.mouseup),z.mousedrag&&this._document.removeEventListener("mousemove",z.mousedrag)),this.cancel(q)),wheel:q=>(N(q),this.cancel(q,!0)),mousedrag:q=>{q.buttons&&N(q)},mousemove:q=>{q.buttons||N(q)}};this.register(this.coreMouseService.onProtocolChange((q=>{q?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(q)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),8&q?z.mousemove||(x.addEventListener("mousemove",K.mousemove),z.mousemove=K.mousemove):(x.removeEventListener("mousemove",z.mousemove),z.mousemove=null),16&q?z.wheel||(x.addEventListener("wheel",K.wheel,{passive:!1}),z.wheel=K.wheel):(x.removeEventListener("wheel",z.wheel),z.wheel=null),2&q?z.mouseup||(z.mouseup=K.mouseup):(this._document.removeEventListener("mouseup",z.mouseup),z.mouseup=null),4&q?z.mousedrag||(z.mousedrag=K.mousedrag):(this._document.removeEventListener("mousemove",z.mousedrag),z.mousedrag=null)}))),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this.register((0,d.addDisposableDomListener)(x,"mousedown",(q=>{if(q.preventDefault(),this.focus(),this.coreMouseService.areMouseEventsActive&&!this._selectionService.shouldForceSelection(q))return N(q),z.mouseup&&this._document.addEventListener("mouseup",z.mouseup),z.mousedrag&&this._document.addEventListener("mousemove",z.mousedrag),this.cancel(q)}))),this.register((0,d.addDisposableDomListener)(x,"wheel",(q=>{if(!z.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(q)===!1)return!1;if(!this.buffer.hasScrollback){const Y=this.viewport.getLinesScrolled(q);if(Y===0)return;const J=W.C0.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(q.deltaY<0?"A":"B");let ee="";for(let ce=0;ce{if(!this.coreMouseService.areMouseEventsActive)return this.viewport.handleTouchStart(q),this.cancel(q)}),{passive:!0})),this.register((0,d.addDisposableDomListener)(x,"touchmove",(q=>{if(!this.coreMouseService.areMouseEventsActive)return this.viewport.handleTouchMove(q)?void 0:this.cancel(q)}),{passive:!1}))}refresh(I,x){this._renderService?.refreshRows(I,x)}updateCursorStyle(I){this._selectionService?.shouldColumnSelect(I)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(I,x,N=0){N===1?(super.scrollLines(I,x,N),this.refresh(0,this.rows-1)):this.viewport?.scrollLines(I)}paste(I){(0,l.paste)(I,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(I){this._customKeyEventHandler=I}attachCustomWheelEventHandler(I){this._customWheelEventHandler=I}registerLinkProvider(I){return this._linkProviderService.registerLinkProvider(I)}registerCharacterJoiner(I){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");const x=this._characterJoinerService.register(I);return this.refresh(0,this.rows-1),x}deregisterCharacterJoiner(I){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(I)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(I){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+I)}registerDecoration(I){return this._decorationService.registerDecoration(I)}hasSelection(){return!!this._selectionService&&this._selectionService.hasSelection}select(I,x,N){this._selectionService.setSelection(I,x,N)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(this._selectionService&&this._selectionService.hasSelection)return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(I,x){this._selectionService?.selectLines(I,x)}_keyDown(I){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(I)===!1)return!1;const x=this.browser.isMac&&this.options.macOptionIsMeta&&I.altKey;if(!x&&!this._compositionHelper.keydown(I))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(),!1;x||I.key!=="Dead"&&I.key!=="AltGraph"||(this._unprocessedDeadKey=!0);const N=(0,H.evaluateKeyboardEvent)(I,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(I),N.type===3||N.type===2){const z=this.rows-1;return this.scrollLines(N.type===2?-z:z),this.cancel(I,!0)}return N.type===1&&this.selectAll(),!!this._isThirdLevelShift(this.browser,I)||(N.cancel&&this.cancel(I,!0),!N.key||!!(I.key&&!I.ctrlKey&&!I.altKey&&!I.metaKey&&I.key.length===1&&I.key.charCodeAt(0)>=65&&I.key.charCodeAt(0)<=90)||(this._unprocessedDeadKey?(this._unprocessedDeadKey=!1,!0):(N.key!==W.C0.ETX&&N.key!==W.C0.CR||(this.textarea.value=""),this._onKey.fire({key:N.key,domEvent:I}),this._showCursor(),this.coreService.triggerDataEvent(N.key,!0),!this.optionsService.rawOptions.screenReaderMode||I.altKey||I.ctrlKey?this.cancel(I,!0):void(this._keyDownHandled=!0))))}_isThirdLevelShift(I,x){const N=I.isMac&&!this.options.macOptionIsMeta&&x.altKey&&!x.ctrlKey&&!x.metaKey||I.isWindows&&x.altKey&&x.ctrlKey&&!x.metaKey||I.isWindows&&x.getModifierState("AltGraph");return x.type==="keypress"?N:N&&(!x.keyCode||x.keyCode>47)}_keyUp(I){this._keyDownSeen=!1,this._customKeyEventHandler&&this._customKeyEventHandler(I)===!1||((function(x){return x.keyCode===16||x.keyCode===17||x.keyCode===18})(I)||this.focus(),this.updateCursorStyle(I),this._keyPressHandled=!1)}_keyPress(I){let x;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(I)===!1)return!1;if(this.cancel(I),I.charCode)x=I.charCode;else if(I.which===null||I.which===void 0)x=I.keyCode;else{if(I.which===0||I.charCode===0)return!1;x=I.which}return!(!x||(I.altKey||I.ctrlKey||I.metaKey)&&!this._isThirdLevelShift(this.browser,I)||(x=String.fromCharCode(x),this._onKey.fire({key:x,domEvent:I}),this._showCursor(),this.coreService.triggerDataEvent(x,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,0))}_inputEvent(I){if(I.data&&I.inputType==="insertText"&&(!I.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;const x=I.data;return this.coreService.triggerDataEvent(x,!0),this.cancel(I),!0}return!1}resize(I,x){I!==this.cols||x!==this.rows?super.resize(I,x):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()}_afterResize(I,x){this._charSizeService?.measure(),this.viewport?.syncScrollArea(!0)}clear(){if(this.buffer.ybase!==0||this.buffer.y!==0){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let I=1;I{Object.defineProperty(i,"__esModule",{value:!0}),i.TimeBasedDebouncer=void 0,i.TimeBasedDebouncer=class{constructor(a,l=1e3){this._renderCallback=a,this._debounceThresholdMS=l,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(a,l,d){this._rowCount=d,a=a!==void 0?a:0,l=l!==void 0?l:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,a):a,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,l):l;const h=Date.now();if(h-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=h,this._innerRefresh();else if(!this._additionalRefreshRequested){const u=h-this._lastRefreshMs,v=this._debounceThresholdMS-u;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout((()=>{this._lastRefreshMs=Date.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0}),v)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;const a=Math.max(this._rowStart,0),l=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,l)}}},1680:function(R,i,a){var l=this&&this.__decorate||function(o,t,s,c){var g,p=arguments.length,w=p<3?t:c===null?c=Object.getOwnPropertyDescriptor(t,s):c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")w=Reflect.decorate(o,t,s,c);else for(var f=o.length-1;f>=0;f--)(g=o[f])&&(w=(p<3?g(w):p>3?g(t,s,w):g(t,s))||w);return p>3&&w&&Object.defineProperty(t,s,w),w},d=this&&this.__param||function(o,t){return function(s,c){t(s,c,o)}};Object.defineProperty(i,"__esModule",{value:!0}),i.Viewport=void 0;const h=a(3656),u=a(4725),v=a(8460),m=a(844),_=a(2585);let n=i.Viewport=class extends m.Disposable{constructor(o,t,s,c,g,p,w,f){super(),this._viewportElement=o,this._scrollArea=t,this._bufferService=s,this._optionsService=c,this._charSizeService=g,this._renderService=p,this._coreBrowserService=w,this.scrollBarWidth=0,this._currentRowHeight=0,this._currentDeviceCellHeight=0,this._lastRecordedBufferLength=0,this._lastRecordedViewportHeight=0,this._lastRecordedBufferHeight=0,this._lastTouchY=0,this._lastScrollTop=0,this._wheelPartialScroll=0,this._refreshAnimationFrame=null,this._ignoreNextScrollEvent=!1,this._smoothScrollState={startTime:0,origin:-1,target:-1},this._onRequestScrollLines=this.register(new v.EventEmitter),this.onRequestScrollLines=this._onRequestScrollLines.event,this.scrollBarWidth=this._viewportElement.offsetWidth-this._scrollArea.offsetWidth||15,this.register((0,h.addDisposableDomListener)(this._viewportElement,"scroll",this._handleScroll.bind(this))),this._activeBuffer=this._bufferService.buffer,this.register(this._bufferService.buffers.onBufferActivate((y=>this._activeBuffer=y.activeBuffer))),this._renderDimensions=this._renderService.dimensions,this.register(this._renderService.onDimensionsChange((y=>this._renderDimensions=y))),this._handleThemeChange(f.colors),this.register(f.onChangeColors((y=>this._handleThemeChange(y)))),this.register(this._optionsService.onSpecificOptionChange("scrollback",(()=>this.syncScrollArea()))),setTimeout((()=>this.syncScrollArea()))}_handleThemeChange(o){this._viewportElement.style.backgroundColor=o.background.css}reset(){this._currentRowHeight=0,this._currentDeviceCellHeight=0,this._lastRecordedBufferLength=0,this._lastRecordedViewportHeight=0,this._lastRecordedBufferHeight=0,this._lastTouchY=0,this._lastScrollTop=0,this._coreBrowserService.window.requestAnimationFrame((()=>this.syncScrollArea()))}_refresh(o){if(o)return this._innerRefresh(),void(this._refreshAnimationFrame!==null&&this._coreBrowserService.window.cancelAnimationFrame(this._refreshAnimationFrame));this._refreshAnimationFrame===null&&(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._innerRefresh())))}_innerRefresh(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderDimensions.device.cell.height/this._coreBrowserService.dpr,this._currentDeviceCellHeight=this._renderDimensions.device.cell.height,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;const t=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderDimensions.css.canvas.height);this._lastRecordedBufferHeight!==t&&(this._lastRecordedBufferHeight=t,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}const o=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==o&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=o),this._refreshAnimationFrame=null}syncScrollArea(o=!1){if(this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(o);this._lastRecordedViewportHeight===this._renderService.dimensions.css.canvas.height&&this._lastScrollTop===this._activeBuffer.ydisp*this._currentRowHeight&&this._renderDimensions.device.cell.height===this._currentDeviceCellHeight||this._refresh(o)}_handleScroll(o){if(this._lastScrollTop=this._viewportElement.scrollTop,!this._viewportElement.offsetParent)return;if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._onRequestScrollLines.fire({amount:0,suppressScrollEvent:!0});const t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._onRequestScrollLines.fire({amount:t,suppressScrollEvent:!0})}_smoothScroll(){if(this._isDisposed||this._smoothScrollState.origin===-1||this._smoothScrollState.target===-1)return;const o=this._smoothScrollPercent();this._viewportElement.scrollTop=this._smoothScrollState.origin+Math.round(o*(this._smoothScrollState.target-this._smoothScrollState.origin)),o<1?this._coreBrowserService.window.requestAnimationFrame((()=>this._smoothScroll())):this._clearSmoothScrollState()}_smoothScrollPercent(){return this._optionsService.rawOptions.smoothScrollDuration&&this._smoothScrollState.startTime?Math.max(Math.min((Date.now()-this._smoothScrollState.startTime)/this._optionsService.rawOptions.smoothScrollDuration,1),0):1}_clearSmoothScrollState(){this._smoothScrollState.startTime=0,this._smoothScrollState.origin=-1,this._smoothScrollState.target=-1}_bubbleScroll(o,t){const s=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&this._viewportElement.scrollTop!==0||t>0&&s0&&(s=A),c=""}}return{bufferElements:g,cursorElement:s}}getLinesScrolled(o){if(o.deltaY===0||o.shiftKey)return 0;let t=this._applyScrollModifier(o.deltaY,o);return o.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(t/=this._currentRowHeight+0,this._wheelPartialScroll+=t,t=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):o.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t}_applyScrollModifier(o,t){const s=this._optionsService.rawOptions.fastScrollModifier;return s==="alt"&&t.altKey||s==="ctrl"&&t.ctrlKey||s==="shift"&&t.shiftKey?o*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:o*this._optionsService.rawOptions.scrollSensitivity}handleTouchStart(o){this._lastTouchY=o.touches[0].pageY}handleTouchMove(o){const t=this._lastTouchY-o.touches[0].pageY;return this._lastTouchY=o.touches[0].pageY,t!==0&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(o,t))}};i.Viewport=n=l([d(2,_.IBufferService),d(3,_.IOptionsService),d(4,u.ICharSizeService),d(5,u.IRenderService),d(6,u.ICoreBrowserService),d(7,u.IThemeService)],n)},3107:function(R,i,a){var l=this&&this.__decorate||function(_,n,o,t){var s,c=arguments.length,g=c<3?n:t===null?t=Object.getOwnPropertyDescriptor(n,o):t;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")g=Reflect.decorate(_,n,o,t);else for(var p=_.length-1;p>=0;p--)(s=_[p])&&(g=(c<3?s(g):c>3?s(n,o,g):s(n,o))||g);return c>3&&g&&Object.defineProperty(n,o,g),g},d=this&&this.__param||function(_,n){return function(o,t){n(o,t,_)}};Object.defineProperty(i,"__esModule",{value:!0}),i.BufferDecorationRenderer=void 0;const h=a(4725),u=a(844),v=a(2585);let m=i.BufferDecorationRenderer=class extends u.Disposable{constructor(_,n,o,t,s){super(),this._screenElement=_,this._bufferService=n,this._coreBrowserService=o,this._decorationService=t,this._renderService=s,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this.register(this._renderService.onRenderedViewportChange((()=>this._doRefreshDecorations()))),this.register(this._renderService.onDimensionsChange((()=>{this._dimensionsChanged=!0,this._queueRefresh()}))),this.register(this._coreBrowserService.onDprChange((()=>this._queueRefresh()))),this.register(this._bufferService.buffers.onBufferActivate((()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt}))),this.register(this._decorationService.onDecorationRegistered((()=>this._queueRefresh()))),this.register(this._decorationService.onDecorationRemoved((c=>this._removeDecoration(c)))),this.register((0,u.toDisposable)((()=>{this._container.remove(),this._decorationElements.clear()})))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback((()=>{this._doRefreshDecorations(),this._animationFrame=void 0})))}_doRefreshDecorations(){for(const _ of this._decorationService.decorations)this._renderDecoration(_);this._dimensionsChanged=!1}_renderDecoration(_){this._refreshStyle(_),this._dimensionsChanged&&this._refreshXPosition(_)}_createElement(_){const n=this._coreBrowserService.mainDocument.createElement("div");n.classList.add("xterm-decoration"),n.classList.toggle("xterm-decoration-top-layer",_?.options?.layer==="top"),n.style.width=`${Math.round((_.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,n.style.height=(_.options.height||1)*this._renderService.dimensions.css.cell.height+"px",n.style.top=(_.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height+"px",n.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;const o=_.options.x??0;return o&&o>this._bufferService.cols&&(n.style.display="none"),this._refreshXPosition(_,n),n}_refreshStyle(_){const n=_.marker.line-this._bufferService.buffers.active.ydisp;if(n<0||n>=this._bufferService.rows)_.element&&(_.element.style.display="none",_.onRenderEmitter.fire(_.element));else{let o=this._decorationElements.get(_);o||(o=this._createElement(_),_.element=o,this._decorationElements.set(_,o),this._container.appendChild(o),_.onDispose((()=>{this._decorationElements.delete(_),o.remove()}))),o.style.top=n*this._renderService.dimensions.css.cell.height+"px",o.style.display=this._altBufferIsActive?"none":"block",_.onRenderEmitter.fire(o)}}_refreshXPosition(_,n=_.element){if(!n)return;const o=_.options.x??0;(_.options.anchor||"left")==="right"?n.style.right=o?o*this._renderService.dimensions.css.cell.width+"px":"":n.style.left=o?o*this._renderService.dimensions.css.cell.width+"px":""}_removeDecoration(_){this._decorationElements.get(_)?.remove(),this._decorationElements.delete(_),_.dispose()}};i.BufferDecorationRenderer=m=l([d(1,v.IBufferService),d(2,h.ICoreBrowserService),d(3,v.IDecorationService),d(4,h.IRenderService)],m)},5871:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.ColorZoneStore=void 0,i.ColorZoneStore=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(a){if(a.options.overviewRulerOptions){for(const l of this._zones)if(l.color===a.options.overviewRulerOptions.color&&l.position===a.options.overviewRulerOptions.position){if(this._lineIntersectsZone(l,a.marker.line))return;if(this._lineAdjacentToZone(l,a.marker.line,a.options.overviewRulerOptions.position))return void this._addLineToZone(l,a.marker.line)}if(this._zonePoolIndex=a.startBufferLine&&l<=a.endBufferLine}_lineAdjacentToZone(a,l,d){return l>=a.startBufferLine-this._linePadding[d||"full"]&&l<=a.endBufferLine+this._linePadding[d||"full"]}_addLineToZone(a,l){a.startBufferLine=Math.min(a.startBufferLine,l),a.endBufferLine=Math.max(a.endBufferLine,l)}}},5744:function(R,i,a){var l=this&&this.__decorate||function(s,c,g,p){var w,f=arguments.length,y=f<3?c:p===null?p=Object.getOwnPropertyDescriptor(c,g):p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")y=Reflect.decorate(s,c,g,p);else for(var B=s.length-1;B>=0;B--)(w=s[B])&&(y=(f<3?w(y):f>3?w(c,g,y):w(c,g))||y);return f>3&&y&&Object.defineProperty(c,g,y),y},d=this&&this.__param||function(s,c){return function(g,p){c(g,p,s)}};Object.defineProperty(i,"__esModule",{value:!0}),i.OverviewRulerRenderer=void 0;const h=a(5871),u=a(4725),v=a(844),m=a(2585),_={full:0,left:0,center:0,right:0},n={full:0,left:0,center:0,right:0},o={full:0,left:0,center:0,right:0};let t=i.OverviewRulerRenderer=class extends v.Disposable{get _width(){return this._optionsService.options.overviewRulerWidth||0}constructor(s,c,g,p,w,f,y){super(),this._viewportElement=s,this._screenElement=c,this._bufferService=g,this._decorationService=p,this._renderService=w,this._optionsService=f,this._coreBrowserService=y,this._colorZoneStore=new h.ColorZoneStore,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),this._viewportElement.parentElement?.insertBefore(this._canvas,this._viewportElement);const B=this._canvas.getContext("2d");if(!B)throw new Error("Ctx cannot be null");this._ctx=B,this._registerDecorationListeners(),this._registerBufferChangeListeners(),this._registerDimensionChangeListeners(),this.register((0,v.toDisposable)((()=>{this._canvas?.remove()})))}_registerDecorationListeners(){this.register(this._decorationService.onDecorationRegistered((()=>this._queueRefresh(void 0,!0)))),this.register(this._decorationService.onDecorationRemoved((()=>this._queueRefresh(void 0,!0))))}_registerBufferChangeListeners(){this.register(this._renderService.onRenderedViewportChange((()=>this._queueRefresh()))),this.register(this._bufferService.buffers.onBufferActivate((()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"}))),this.register(this._bufferService.onScroll((()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})))}_registerDimensionChangeListeners(){this.register(this._renderService.onRender((()=>{this._containerHeight&&this._containerHeight===this._screenElement.clientHeight||(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)}))),this.register(this._optionsService.onSpecificOptionChange("overviewRulerWidth",(()=>this._queueRefresh(!0)))),this.register(this._coreBrowserService.onDprChange((()=>this._queueRefresh(!0)))),this._queueRefresh(!0)}_refreshDrawConstants(){const s=Math.floor(this._canvas.width/3),c=Math.ceil(this._canvas.width/3);n.full=this._canvas.width,n.left=s,n.center=c,n.right=s,this._refreshDrawHeightConstants(),o.full=0,o.left=0,o.center=n.left,o.right=n.left+n.center}_refreshDrawHeightConstants(){_.full=Math.round(2*this._coreBrowserService.dpr);const s=this._canvas.height/this._bufferService.buffer.lines.length,c=Math.round(Math.max(Math.min(s,12),6)*this._coreBrowserService.dpr);_.left=c,_.center=c,_.right=c}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*_.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*_.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*_.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*_.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(const c of this._decorationService.decorations)this._colorZoneStore.addDecoration(c);this._ctx.lineWidth=1;const s=this._colorZoneStore.zones;for(const c of s)c.position!=="full"&&this._renderColorZone(c);for(const c of s)c.position==="full"&&this._renderColorZone(c);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderColorZone(s){this._ctx.fillStyle=s.color,this._ctx.fillRect(o[s.position||"full"],Math.round((this._canvas.height-1)*(s.startBufferLine/this._bufferService.buffers.active.lines.length)-_[s.position||"full"]/2),n[s.position||"full"],Math.round((this._canvas.height-1)*((s.endBufferLine-s.startBufferLine)/this._bufferService.buffers.active.lines.length)+_[s.position||"full"]))}_queueRefresh(s,c){this._shouldUpdateDimensions=s||this._shouldUpdateDimensions,this._shouldUpdateAnchor=c||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._refreshDecorations(),this._animationFrame=void 0})))}};i.OverviewRulerRenderer=t=l([d(2,m.IBufferService),d(3,m.IDecorationService),d(4,u.IRenderService),d(5,m.IOptionsService),d(6,u.ICoreBrowserService)],t)},2950:function(R,i,a){var l=this&&this.__decorate||function(_,n,o,t){var s,c=arguments.length,g=c<3?n:t===null?t=Object.getOwnPropertyDescriptor(n,o):t;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")g=Reflect.decorate(_,n,o,t);else for(var p=_.length-1;p>=0;p--)(s=_[p])&&(g=(c<3?s(g):c>3?s(n,o,g):s(n,o))||g);return c>3&&g&&Object.defineProperty(n,o,g),g},d=this&&this.__param||function(_,n){return function(o,t){n(o,t,_)}};Object.defineProperty(i,"__esModule",{value:!0}),i.CompositionHelper=void 0;const h=a(4725),u=a(2585),v=a(2584);let m=i.CompositionHelper=class{get isComposing(){return this._isComposing}constructor(_,n,o,t,s,c){this._textarea=_,this._compositionView=n,this._bufferService=o,this._optionsService=t,this._coreService=s,this._renderService=c,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(_){this._compositionView.textContent=_.data,this.updateCompositionElements(),setTimeout((()=>{this._compositionPosition.end=this._textarea.value.length}),0)}compositionend(){this._finalizeComposition(!0)}keydown(_){if(this._isComposing||this._isSendingComposition){if(_.keyCode===229||_.keyCode===16||_.keyCode===17||_.keyCode===18)return!1;this._finalizeComposition(!1)}return _.keyCode!==229||(this._handleAnyTextareaChanges(),!1)}_finalizeComposition(_){if(this._compositionView.classList.remove("active"),this._isComposing=!1,_){const n={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((()=>{if(this._isSendingComposition){let o;this._isSendingComposition=!1,n.start+=this._dataAlreadySent.length,o=this._isComposing?this._textarea.value.substring(n.start,n.end):this._textarea.value.substring(n.start),o.length>0&&this._coreService.triggerDataEvent(o,!0)}}),0)}else{this._isSendingComposition=!1;const n=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(n,!0)}}_handleAnyTextareaChanges(){const _=this._textarea.value;setTimeout((()=>{if(!this._isComposing){const n=this._textarea.value,o=n.replace(_,"");this._dataAlreadySent=o,n.length>_.length?this._coreService.triggerDataEvent(o,!0):n.length<_.length?this._coreService.triggerDataEvent(`${v.C0.DEL}`,!0):n.length===_.length&&n!==_&&this._coreService.triggerDataEvent(n,!0)}}),0)}updateCompositionElements(_){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){const n=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),o=this._renderService.dimensions.css.cell.height,t=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,s=n*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=s+"px",this._compositionView.style.top=t+"px",this._compositionView.style.height=o+"px",this._compositionView.style.lineHeight=o+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";const c=this._compositionView.getBoundingClientRect();this._textarea.style.left=s+"px",this._textarea.style.top=t+"px",this._textarea.style.width=Math.max(c.width,1)+"px",this._textarea.style.height=Math.max(c.height,1)+"px",this._textarea.style.lineHeight=c.height+"px"}_||setTimeout((()=>this.updateCompositionElements(!0)),0)}}};i.CompositionHelper=m=l([d(2,u.IBufferService),d(3,u.IOptionsService),d(4,u.ICoreService),d(5,h.IRenderService)],m)},9806:(R,i)=>{function a(l,d,h){const u=h.getBoundingClientRect(),v=l.getComputedStyle(h),m=parseInt(v.getPropertyValue("padding-left")),_=parseInt(v.getPropertyValue("padding-top"));return[d.clientX-u.left-m,d.clientY-u.top-_]}Object.defineProperty(i,"__esModule",{value:!0}),i.getCoords=i.getCoordsRelativeToElement=void 0,i.getCoordsRelativeToElement=a,i.getCoords=function(l,d,h,u,v,m,_,n,o){if(!m)return;const t=a(l,d,h);return t?(t[0]=Math.ceil((t[0]+(o?_/2:0))/_),t[1]=Math.ceil(t[1]/n),t[0]=Math.min(Math.max(t[0],1),u+(o?1:0)),t[1]=Math.min(Math.max(t[1],1),v),t):void 0}},9504:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.moveToCellSequence=void 0;const l=a(2584);function d(n,o,t,s){const c=n-h(n,t),g=o-h(o,t),p=Math.abs(c-g)-(function(w,f,y){let B=0;const A=w-h(w,y),D=f-h(f,y);for(let L=0;L=0&&no?"A":"B"}function v(n,o,t,s,c,g){let p=n,w=o,f="";for(;p!==t||w!==s;)p+=c?1:-1,c&&p>g.cols-1?(f+=g.buffer.translateBufferLineToString(w,!1,n,p),p=0,n=0,w++):!c&&p<0&&(f+=g.buffer.translateBufferLineToString(w,!1,0,n+1),p=g.cols-1,n=p,w--);return f+g.buffer.translateBufferLineToString(w,!1,n,p)}function m(n,o){const t=o?"O":"[";return l.C0.ESC+t+n}function _(n,o){n=Math.floor(n);let t="";for(let s=0;s0?A-h(A,D):y;const F=A,$=(function(W,H,C,E,M,T){let U;return U=d(C,E,M,T).length>0?E-h(E,M):H,W=C&&Un?"D":"C",_(Math.abs(c-n),m(p,s));p=g>o?"D":"C";const w=Math.abs(g-o);return _((function(f,y){return y.cols-f})(g>o?n:c,t)+(w-1)*t.cols+1+((g>o?c:n)-1),m(p,s))}},1296:function(R,i,a){var l=this&&this.__decorate||function(L,P,F,$){var W,H=arguments.length,C=H<3?P:$===null?$=Object.getOwnPropertyDescriptor(P,F):$;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(L,P,F,$);else for(var E=L.length-1;E>=0;E--)(W=L[E])&&(C=(H<3?W(C):H>3?W(P,F,C):W(P,F))||C);return H>3&&C&&Object.defineProperty(P,F,C),C},d=this&&this.__param||function(L,P){return function(F,$){P(F,$,L)}};Object.defineProperty(i,"__esModule",{value:!0}),i.DomRenderer=void 0;const h=a(3787),u=a(2550),v=a(2223),m=a(6171),_=a(6052),n=a(4725),o=a(8055),t=a(8460),s=a(844),c=a(2585),g="xterm-dom-renderer-owner-",p="xterm-rows",w="xterm-fg-",f="xterm-bg-",y="xterm-focus",B="xterm-selection";let A=1,D=i.DomRenderer=class extends s.Disposable{constructor(L,P,F,$,W,H,C,E,M,T,U,j,V){super(),this._terminal=L,this._document=P,this._element=F,this._screenElement=$,this._viewportElement=W,this._helperContainer=H,this._linkifier2=C,this._charSizeService=M,this._optionsService=T,this._bufferService=U,this._coreBrowserService=j,this._themeService=V,this._terminalClass=A++,this._rowElements=[],this._selectionRenderModel=(0,_.createSelectionRenderModel)(),this.onRequestRedraw=this.register(new t.EventEmitter).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(p),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(B),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=(0,m.createRenderDimensions)(),this._updateDimensions(),this.register(this._optionsService.onOptionChange((()=>this._handleOptionsChanged()))),this.register(this._themeService.onChangeColors((G=>this._injectCss(G)))),this._injectCss(this._themeService.colors),this._rowFactory=E.createInstance(h.DomRendererRowFactory,document),this._element.classList.add(g+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this.register(this._linkifier2.onShowLinkUnderline((G=>this._handleLinkHover(G)))),this.register(this._linkifier2.onHideLinkUnderline((G=>this._handleLinkLeave(G)))),this.register((0,s.toDisposable)((()=>{this._element.classList.remove(g+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()}))),this._widthCache=new u.WidthCache(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){const L=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*L,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*L),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/L),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/L),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(const F of this._rowElements)F.style.width=`${this.dimensions.css.canvas.width}px`,F.style.height=`${this.dimensions.css.cell.height}px`,F.style.lineHeight=`${this.dimensions.css.cell.height}px`,F.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));const P=`${this._terminalSelector} .${p} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=P,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(L){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let P=`${this._terminalSelector} .${p} { color: ${L.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;P+=`${this._terminalSelector} .${p} .xterm-dim { color: ${o.color.multiplyOpacity(L.foreground,.5).css};}`,P+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;const F=`blink_underline_${this._terminalClass}`,$=`blink_bar_${this._terminalClass}`,W=`blink_block_${this._terminalClass}`;P+=`@keyframes ${F} { 50% { border-bottom-style: hidden; }}`,P+=`@keyframes ${$} { 50% { box-shadow: none; }}`,P+=`@keyframes ${W} { 0% { background-color: ${L.cursor.css}; color: ${L.cursorAccent.css}; } 50% { background-color: inherit; color: ${L.cursor.css}; }}`,P+=`${this._terminalSelector} .${p}.${y} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${F} 1s step-end infinite;}${this._terminalSelector} .${p}.${y} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${$} 1s step-end infinite;}${this._terminalSelector} .${p}.${y} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${W} 1s step-end infinite;}${this._terminalSelector} .${p} .xterm-cursor.xterm-cursor-block { background-color: ${L.cursor.css}; color: ${L.cursorAccent.css};}${this._terminalSelector} .${p} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${L.cursor.css} !important; color: ${L.cursorAccent.css} !important;}${this._terminalSelector} .${p} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${L.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${p} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${L.cursor.css} inset;}${this._terminalSelector} .${p} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${L.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,P+=`${this._terminalSelector} .${B} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${B} div { position: absolute; background-color: ${L.selectionBackgroundOpaque.css};}${this._terminalSelector} .${B} div { position: absolute; background-color: ${L.selectionInactiveBackgroundOpaque.css};}`;for(const[H,C]of L.ansi.entries())P+=`${this._terminalSelector} .${w}${H} { color: ${C.css}; }${this._terminalSelector} .${w}${H}.xterm-dim { color: ${o.color.multiplyOpacity(C,.5).css}; }${this._terminalSelector} .${f}${H} { background-color: ${C.css}; }`;P+=`${this._terminalSelector} .${w}${v.INVERTED_DEFAULT_COLOR} { color: ${o.color.opaque(L.background).css}; }${this._terminalSelector} .${w}${v.INVERTED_DEFAULT_COLOR}.xterm-dim { color: ${o.color.multiplyOpacity(o.color.opaque(L.background),.5).css}; }${this._terminalSelector} .${f}${v.INVERTED_DEFAULT_COLOR} { background-color: ${L.foreground.css}; }`,this._themeStyleElement.textContent=P}_setDefaultSpacing(){const L=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${L}px`,this._rowFactory.defaultSpacing=L}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(L,P){for(let F=this._rowElements.length;F<=P;F++){const $=this._document.createElement("div");this._rowContainer.appendChild($),this._rowElements.push($)}for(;this._rowElements.length>P;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(L,P){this._refreshRowElements(L,P),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(y),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(y),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(L,P,F){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(L,P,F),this.renderRows(0,this._bufferService.rows-1),!L||!P)return;this._selectionRenderModel.update(this._terminal,L,P,F);const $=this._selectionRenderModel.viewportStartRow,W=this._selectionRenderModel.viewportEndRow,H=this._selectionRenderModel.viewportCappedStartRow,C=this._selectionRenderModel.viewportCappedEndRow;if(H>=this._bufferService.rows||C<0)return;const E=this._document.createDocumentFragment();if(F){const M=L[0]>P[0];E.appendChild(this._createSelectionElement(H,M?P[0]:L[0],M?L[0]:P[0],C-H+1))}else{const M=$===H?L[0]:0,T=H===W?P[0]:this._bufferService.cols;E.appendChild(this._createSelectionElement(H,M,T));const U=C-H-1;if(E.appendChild(this._createSelectionElement(H+1,0,this._bufferService.cols,U)),H!==C){const j=W===C?P[0]:this._bufferService.cols;E.appendChild(this._createSelectionElement(C,0,j))}}this._selectionContainer.appendChild(E)}_createSelectionElement(L,P,F,$=1){const W=this._document.createElement("div"),H=P*this.dimensions.css.cell.width;let C=this.dimensions.css.cell.width*(F-P);return H+C>this.dimensions.css.canvas.width&&(C=this.dimensions.css.canvas.width-H),W.style.height=$*this.dimensions.css.cell.height+"px",W.style.top=L*this.dimensions.css.cell.height+"px",W.style.left=`${H}px`,W.style.width=`${C}px`,W}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(const L of this._rowElements)L.replaceChildren()}renderRows(L,P){const F=this._bufferService.buffer,$=F.ybase+F.y,W=Math.min(F.x,this._bufferService.cols-1),H=this._optionsService.rawOptions.cursorBlink,C=this._optionsService.rawOptions.cursorStyle,E=this._optionsService.rawOptions.cursorInactiveStyle;for(let M=L;M<=P;M++){const T=M+F.ydisp,U=this._rowElements[M],j=F.lines.get(T);if(!U||!j)break;U.replaceChildren(...this._rowFactory.createRow(j,T,T===$,C,E,W,H,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${g}${this._terminalClass}`}_handleLinkHover(L){this._setCellUnderline(L.x1,L.x2,L.y1,L.y2,L.cols,!0)}_handleLinkLeave(L){this._setCellUnderline(L.x1,L.x2,L.y1,L.y2,L.cols,!1)}_setCellUnderline(L,P,F,$,W,H){F<0&&(L=0),$<0&&(P=0);const C=this._bufferService.rows-1;F=Math.max(Math.min(F,C),0),$=Math.max(Math.min($,C),0),W=Math.min(W,this._bufferService.cols);const E=this._bufferService.buffer,M=E.ybase+E.y,T=Math.min(E.x,W-1),U=this._optionsService.rawOptions.cursorBlink,j=this._optionsService.rawOptions.cursorStyle,V=this._optionsService.rawOptions.cursorInactiveStyle;for(let G=F;G<=$;++G){const I=G+E.ydisp,x=this._rowElements[G],N=E.lines.get(I);if(!x||!N)break;x.replaceChildren(...this._rowFactory.createRow(N,I,I===M,j,V,T,U,this.dimensions.css.cell.width,this._widthCache,H?G===F?L:0:-1,H?(G===$?P:W)-1:-1))}}};i.DomRenderer=D=l([d(7,c.IInstantiationService),d(8,n.ICharSizeService),d(9,c.IOptionsService),d(10,c.IBufferService),d(11,n.ICoreBrowserService),d(12,n.IThemeService)],D)},3787:function(R,i,a){var l=this&&this.__decorate||function(p,w,f,y){var B,A=arguments.length,D=A<3?w:y===null?y=Object.getOwnPropertyDescriptor(w,f):y;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")D=Reflect.decorate(p,w,f,y);else for(var L=p.length-1;L>=0;L--)(B=p[L])&&(D=(A<3?B(D):A>3?B(w,f,D):B(w,f))||D);return A>3&&D&&Object.defineProperty(w,f,D),D},d=this&&this.__param||function(p,w){return function(f,y){w(f,y,p)}};Object.defineProperty(i,"__esModule",{value:!0}),i.DomRendererRowFactory=void 0;const h=a(2223),u=a(643),v=a(511),m=a(2585),_=a(8055),n=a(4725),o=a(4269),t=a(6171),s=a(3734);let c=i.DomRendererRowFactory=class{constructor(p,w,f,y,B,A,D){this._document=p,this._characterJoinerService=w,this._optionsService=f,this._coreBrowserService=y,this._coreService=B,this._decorationService=A,this._themeService=D,this._workCell=new v.CellData,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(p,w,f){this._selectionStart=p,this._selectionEnd=w,this._columnSelectMode=f}createRow(p,w,f,y,B,A,D,L,P,F,$){const W=[],H=this._characterJoinerService.getJoinedCharacters(w),C=this._themeService.colors;let E,M=p.getNoBgTrimmedLength();f&&M0&&Y===H[0][0]){ee=!0;const te=H.shift();X=new o.JoinedCellData(this._workCell,p.translateToString(!0,te[0],te[1]),te[1]-te[0]),ce=te[1]-1,J=X.getWidth()}const De=this._isCellInSelection(Y,w),Ue=f&&Y===A,Xe=q&&Y>=F&&Y<=$;let gt=!1;this._decorationService.forEachDecorationAtCell(Y,w,void 0,(te=>{gt=!0}));let nt=X.getChars()||u.WHITESPACE_CELL_CHAR;if(nt===" "&&(X.isUnderline()||X.isOverline())&&(nt=" "),z=J*L-P.get(nt,X.isBold(),X.isItalic()),E){if(T&&(De&&N||!De&&!N&&X.bg===j)&&(De&&N&&C.selectionForeground||X.fg===V)&&X.extended.ext===G&&Xe===I&&z===x&&!Ue&&!ee&&!gt){X.isInvisible()?U+=u.WHITESPACE_CELL_CHAR:U+=nt,T++;continue}T&&(E.textContent=U),E=this._document.createElement("span"),T=0,U=""}else E=this._document.createElement("span");if(j=X.bg,V=X.fg,G=X.extended.ext,I=Xe,x=z,N=De,ee&&A>=Y&&A<=ce&&(A=Y),!this._coreService.isCursorHidden&&Ue&&this._coreService.isCursorInitialized){if(K.push("xterm-cursor"),this._coreBrowserService.isFocused)D&&K.push("xterm-cursor-blink"),K.push(y==="bar"?"xterm-cursor-bar":y==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(B)switch(B){case"outline":K.push("xterm-cursor-outline");break;case"block":K.push("xterm-cursor-block");break;case"bar":K.push("xterm-cursor-bar");break;case"underline":K.push("xterm-cursor-underline")}}if(X.isBold()&&K.push("xterm-bold"),X.isItalic()&&K.push("xterm-italic"),X.isDim()&&K.push("xterm-dim"),U=X.isInvisible()?u.WHITESPACE_CELL_CHAR:X.getChars()||u.WHITESPACE_CELL_CHAR,X.isUnderline()&&(K.push(`xterm-underline-${X.extended.underlineStyle}`),U===" "&&(U=" "),!X.isUnderlineColorDefault()))if(X.isUnderlineColorRGB())E.style.textDecorationColor=`rgb(${s.AttributeData.toColorRGB(X.getUnderlineColor()).join(",")})`;else{let te=X.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&X.isBold()&&te<8&&(te+=8),E.style.textDecorationColor=C.ansi[te].css}X.isOverline()&&(K.push("xterm-overline"),U===" "&&(U=" ")),X.isStrikethrough()&&K.push("xterm-strikethrough"),Xe&&(E.style.textDecoration="underline");let ge=X.getFgColor(),Ye=X.getFgColorMode(),we=X.getBgColor(),Je=X.getBgColorMode();const pt=!!X.isInverse();if(pt){const te=ge;ge=we,we=te;const Ui=Ye;Ye=Je,Je=Ui}let Be,ot,Te,Ze=!1;switch(this._decorationService.forEachDecorationAtCell(Y,w,void 0,(te=>{te.options.layer!=="top"&&Ze||(te.backgroundColorRGB&&(Je=50331648,we=te.backgroundColorRGB.rgba>>8&16777215,Be=te.backgroundColorRGB),te.foregroundColorRGB&&(Ye=50331648,ge=te.foregroundColorRGB.rgba>>8&16777215,ot=te.foregroundColorRGB),Ze=te.options.layer==="top")})),!Ze&&De&&(Be=this._coreBrowserService.isFocused?C.selectionBackgroundOpaque:C.selectionInactiveBackgroundOpaque,we=Be.rgba>>8&16777215,Je=50331648,Ze=!0,C.selectionForeground&&(Ye=50331648,ge=C.selectionForeground.rgba>>8&16777215,ot=C.selectionForeground)),Ze&&K.push("xterm-decoration-top"),Je){case 16777216:case 33554432:Te=C.ansi[we],K.push(`xterm-bg-${we}`);break;case 50331648:Te=_.channels.toColor(we>>16,we>>8&255,255&we),this._addStyle(E,`background-color:#${g((we>>>0).toString(16),"0",6)}`);break;default:pt?(Te=C.foreground,K.push(`xterm-bg-${h.INVERTED_DEFAULT_COLOR}`)):Te=C.background}switch(Be||X.isDim()&&(Be=_.color.multiplyOpacity(Te,.5)),Ye){case 16777216:case 33554432:X.isBold()&&ge<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(ge+=8),this._applyMinimumContrast(E,Te,C.ansi[ge],X,Be,void 0)||K.push(`xterm-fg-${ge}`);break;case 50331648:const te=_.channels.toColor(ge>>16&255,ge>>8&255,255&ge);this._applyMinimumContrast(E,Te,te,X,Be,ot)||this._addStyle(E,`color:#${g(ge.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(E,Te,C.foreground,X,Be,ot)||pt&&K.push(`xterm-fg-${h.INVERTED_DEFAULT_COLOR}`)}K.length&&(E.className=K.join(" "),K.length=0),Ue||ee||gt?E.textContent=U:T++,z!==this.defaultSpacing&&(E.style.letterSpacing=`${z}px`),W.push(E),Y=ce}return E&&T&&(E.textContent=U),W}_applyMinimumContrast(p,w,f,y,B,A){if(this._optionsService.rawOptions.minimumContrastRatio===1||(0,t.treatGlyphAsBackgroundColor)(y.getCode()))return!1;const D=this._getContrastCache(y);let L;if(B||A||(L=D.getColor(w.rgba,f.rgba)),L===void 0){const P=this._optionsService.rawOptions.minimumContrastRatio/(y.isDim()?2:1);L=_.color.ensureContrastRatio(B||w,A||f,P),D.setColor((B||w).rgba,(A||f).rgba,L??null)}return!!L&&(this._addStyle(p,`color:${L.css}`),!0)}_getContrastCache(p){return p.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(p,w){p.setAttribute("style",`${p.getAttribute("style")||""}${w};`)}_isCellInSelection(p,w){const f=this._selectionStart,y=this._selectionEnd;return!(!f||!y)&&(this._columnSelectMode?f[0]<=y[0]?p>=f[0]&&w>=f[1]&&p=f[1]&&p>=y[0]&&w<=y[1]:w>f[1]&&w=f[0]&&p=f[0])}};function g(p,w,f){for(;p.length{Object.defineProperty(i,"__esModule",{value:!0}),i.WidthCache=void 0,i.WidthCache=class{constructor(a,l){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=a.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";const d=a.createElement("span");d.classList.add("xterm-char-measure-element");const h=a.createElement("span");h.classList.add("xterm-char-measure-element"),h.style.fontWeight="bold";const u=a.createElement("span");u.classList.add("xterm-char-measure-element"),u.style.fontStyle="italic";const v=a.createElement("span");v.classList.add("xterm-char-measure-element"),v.style.fontWeight="bold",v.style.fontStyle="italic",this._measureElements=[d,h,u,v],this._container.appendChild(d),this._container.appendChild(h),this._container.appendChild(u),this._container.appendChild(v),l.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(a,l,d,h){a===this._font&&l===this._fontSize&&d===this._weight&&h===this._weightBold||(this._font=a,this._fontSize=l,this._weight=d,this._weightBold=h,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${d}`,this._measureElements[1].style.fontWeight=`${h}`,this._measureElements[2].style.fontWeight=`${d}`,this._measureElements[3].style.fontWeight=`${h}`,this.clear())}get(a,l,d){let h=0;if(!l&&!d&&a.length===1&&(h=a.charCodeAt(0))<256){if(this._flat[h]!==-9999)return this._flat[h];const m=this._measure(a,0);return m>0&&(this._flat[h]=m),m}let u=a;l&&(u+="B"),d&&(u+="I");let v=this._holey.get(u);if(v===void 0){let m=0;l&&(m|=1),d&&(m|=2),v=this._measure(a,m),v>0&&this._holey.set(u,v)}return v}_measure(a,l){const d=this._measureElements[l];return d.textContent=a.repeat(32),d.offsetWidth/32}}},2223:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.TEXT_BASELINE=i.DIM_OPACITY=i.INVERTED_DEFAULT_COLOR=void 0;const l=a(6114);i.INVERTED_DEFAULT_COLOR=257,i.DIM_OPACITY=.5,i.TEXT_BASELINE=l.isFirefox||l.isLegacyEdge?"bottom":"ideographic"},6171:(R,i)=>{function a(d){return 57508<=d&&d<=57558}function l(d){return d>=128512&&d<=128591||d>=127744&&d<=128511||d>=128640&&d<=128767||d>=9728&&d<=9983||d>=9984&&d<=10175||d>=65024&&d<=65039||d>=129280&&d<=129535||d>=127462&&d<=127487}Object.defineProperty(i,"__esModule",{value:!0}),i.computeNextVariantOffset=i.createRenderDimensions=i.treatGlyphAsBackgroundColor=i.allowRescaling=i.isEmoji=i.isRestrictedPowerlineGlyph=i.isPowerlineGlyph=i.throwIfFalsy=void 0,i.throwIfFalsy=function(d){if(!d)throw new Error("value must not be falsy");return d},i.isPowerlineGlyph=a,i.isRestrictedPowerlineGlyph=function(d){return 57520<=d&&d<=57527},i.isEmoji=l,i.allowRescaling=function(d,h,u,v){return h===1&&u>Math.ceil(1.5*v)&&d!==void 0&&d>255&&!l(d)&&!a(d)&&!(function(m){return 57344<=m&&m<=63743})(d)},i.treatGlyphAsBackgroundColor=function(d){return a(d)||(function(h){return 9472<=h&&h<=9631})(d)},i.createRenderDimensions=function(){return{css:{canvas:{width:0,height:0},cell:{width:0,height:0}},device:{canvas:{width:0,height:0},cell:{width:0,height:0},char:{width:0,height:0,left:0,top:0}}}},i.computeNextVariantOffset=function(d,h,u=0){return(d-(2*Math.round(h)-u))%(2*Math.round(h))}},6052:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.createSelectionRenderModel=void 0;class a{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(d,h,u,v=!1){if(this.selectionStart=h,this.selectionEnd=u,!h||!u||h[0]===u[0]&&h[1]===u[1])return void this.clear();const m=d.buffers.active.ydisp,_=h[1]-m,n=u[1]-m,o=Math.max(_,0),t=Math.min(n,d.rows-1);o>=d.rows||t<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=v,this.viewportStartRow=_,this.viewportEndRow=n,this.viewportCappedStartRow=o,this.viewportCappedEndRow=t,this.startCol=h[0],this.endCol=u[0])}isCellSelected(d,h,u){return!!this.hasSelection&&(u-=d.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?h>=this.startCol&&u>=this.viewportCappedStartRow&&h=this.viewportCappedStartRow&&h>=this.endCol&&u<=this.viewportCappedEndRow:u>this.viewportStartRow&&u=this.startCol&&h=this.startCol)}}i.createSelectionRenderModel=function(){return new a}},456:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.SelectionModel=void 0,i.SelectionModel=class{constructor(a){this._bufferService=a,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){const a=this.selectionStart[0]+this.selectionStartLength;return a>this._bufferService.cols?a%this._bufferService.cols==0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)-1]:[a%this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)]:[a,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){const a=this.selectionStart[0]+this.selectionStartLength;return a>this._bufferService.cols?[a%this._bufferService.cols,this.selectionStart[1]+Math.floor(a/this._bufferService.cols)]:[Math.max(a,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){const a=this.selectionStart,l=this.selectionEnd;return!(!a||!l)&&(a[1]>l[1]||a[1]===l[1]&&a[0]>l[0])}handleTrim(a){return this.selectionStart&&(this.selectionStart[1]-=a),this.selectionEnd&&(this.selectionEnd[1]-=a),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}}},428:function(R,i,a){var l=this&&this.__decorate||function(t,s,c,g){var p,w=arguments.length,f=w<3?s:g===null?g=Object.getOwnPropertyDescriptor(s,c):g;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")f=Reflect.decorate(t,s,c,g);else for(var y=t.length-1;y>=0;y--)(p=t[y])&&(f=(w<3?p(f):w>3?p(s,c,f):p(s,c))||f);return w>3&&f&&Object.defineProperty(s,c,f),f},d=this&&this.__param||function(t,s){return function(c,g){s(c,g,t)}};Object.defineProperty(i,"__esModule",{value:!0}),i.CharSizeService=void 0;const h=a(2585),u=a(8460),v=a(844);let m=i.CharSizeService=class extends v.Disposable{get hasValidSize(){return this.width>0&&this.height>0}constructor(t,s,c){super(),this._optionsService=c,this.width=0,this.height=0,this._onCharSizeChange=this.register(new u.EventEmitter),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this.register(new o(this._optionsService))}catch{this._measureStrategy=this.register(new n(t,s,this._optionsService))}this.register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],(()=>this.measure())))}measure(){const t=this._measureStrategy.measure();t.width===this.width&&t.height===this.height||(this.width=t.width,this.height=t.height,this._onCharSizeChange.fire())}};i.CharSizeService=m=l([d(2,h.IOptionsService)],m);class _ extends v.Disposable{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(s,c){s!==void 0&&s>0&&c!==void 0&&c>0&&(this._result.width=s,this._result.height=c)}}class n extends _{constructor(s,c,g){super(),this._document=s,this._parentElement=c,this._optionsService=g,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}}class o extends _{constructor(s){super(),this._optionsService=s,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");const c=this._ctx.measureText("W");if(!("width"in c&&"fontBoundingBoxAscent"in c&&"fontBoundingBoxDescent"in c))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;const s=this._ctx.measureText("W");return this._validateAndSet(s.width,s.fontBoundingBoxAscent+s.fontBoundingBoxDescent),this._result}}},4269:function(R,i,a){var l=this&&this.__decorate||function(o,t,s,c){var g,p=arguments.length,w=p<3?t:c===null?c=Object.getOwnPropertyDescriptor(t,s):c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")w=Reflect.decorate(o,t,s,c);else for(var f=o.length-1;f>=0;f--)(g=o[f])&&(w=(p<3?g(w):p>3?g(t,s,w):g(t,s))||w);return p>3&&w&&Object.defineProperty(t,s,w),w},d=this&&this.__param||function(o,t){return function(s,c){t(s,c,o)}};Object.defineProperty(i,"__esModule",{value:!0}),i.CharacterJoinerService=i.JoinedCellData=void 0;const h=a(3734),u=a(643),v=a(511),m=a(2585);class _ extends h.AttributeData{constructor(t,s,c){super(),this.content=0,this.combinedData="",this.fg=t.fg,this.bg=t.bg,this.combinedData=s,this._width=c}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(t){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}i.JoinedCellData=_;let n=i.CharacterJoinerService=class $i{constructor(t){this._bufferService=t,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new v.CellData}register(t){const s={id:this._nextCharacterJoinerId++,handler:t};return this._characterJoiners.push(s),s.id}deregister(t){for(let s=0;s1){const D=this._getJoinedRanges(g,f,w,s,p);for(let L=0;L1){const A=this._getJoinedRanges(g,f,w,s,p);for(let D=0;D{Object.defineProperty(i,"__esModule",{value:!0}),i.CoreBrowserService=void 0;const l=a(844),d=a(8460),h=a(3656);class u extends l.Disposable{constructor(_,n,o){super(),this._textarea=_,this._window=n,this.mainDocument=o,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=new v(this._window),this._onDprChange=this.register(new d.EventEmitter),this.onDprChange=this._onDprChange.event,this._onWindowChange=this.register(new d.EventEmitter),this.onWindowChange=this._onWindowChange.event,this.register(this.onWindowChange((t=>this._screenDprMonitor.setWindow(t)))),this.register((0,d.forwardEvent)(this._screenDprMonitor.onDprChange,this._onDprChange)),this._textarea.addEventListener("focus",(()=>this._isFocused=!0)),this._textarea.addEventListener("blur",(()=>this._isFocused=!1))}get window(){return this._window}set window(_){this._window!==_&&(this._window=_,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask((()=>this._cachedIsFocused=void 0))),this._cachedIsFocused}}i.CoreBrowserService=u;class v extends l.Disposable{constructor(_){super(),this._parentWindow=_,this._windowResizeListener=this.register(new l.MutableDisposable),this._onDprChange=this.register(new d.EventEmitter),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this.register((0,l.toDisposable)((()=>this.clearListener())))}setWindow(_){this._parentWindow=_,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=(0,h.addDisposableDomListener)(this._parentWindow,"resize",(()=>this._setDprAndFireIfDiffers()))}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){this._outerListener&&(this._resolutionMediaMatchList?.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){this._resolutionMediaMatchList&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}}},779:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.LinkProviderService=void 0;const l=a(844);class d extends l.Disposable{constructor(){super(),this.linkProviders=[],this.register((0,l.toDisposable)((()=>this.linkProviders.length=0)))}registerLinkProvider(u){return this.linkProviders.push(u),{dispose:()=>{const v=this.linkProviders.indexOf(u);v!==-1&&this.linkProviders.splice(v,1)}}}}i.LinkProviderService=d},8934:function(R,i,a){var l=this&&this.__decorate||function(m,_,n,o){var t,s=arguments.length,c=s<3?_:o===null?o=Object.getOwnPropertyDescriptor(_,n):o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")c=Reflect.decorate(m,_,n,o);else for(var g=m.length-1;g>=0;g--)(t=m[g])&&(c=(s<3?t(c):s>3?t(_,n,c):t(_,n))||c);return s>3&&c&&Object.defineProperty(_,n,c),c},d=this&&this.__param||function(m,_){return function(n,o){_(n,o,m)}};Object.defineProperty(i,"__esModule",{value:!0}),i.MouseService=void 0;const h=a(4725),u=a(9806);let v=i.MouseService=class{constructor(m,_){this._renderService=m,this._charSizeService=_}getCoords(m,_,n,o,t){return(0,u.getCoords)(window,m,_,n,o,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,t)}getMouseReportCoords(m,_){const n=(0,u.getCoordsRelativeToElement)(window,m,_);if(this._charSizeService.hasValidSize)return n[0]=Math.min(Math.max(n[0],0),this._renderService.dimensions.css.canvas.width-1),n[1]=Math.min(Math.max(n[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(n[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(n[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(n[0]),y:Math.floor(n[1])}}};i.MouseService=v=l([d(0,h.IRenderService),d(1,h.ICharSizeService)],v)},3230:function(R,i,a){var l=this&&this.__decorate||function(t,s,c,g){var p,w=arguments.length,f=w<3?s:g===null?g=Object.getOwnPropertyDescriptor(s,c):g;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")f=Reflect.decorate(t,s,c,g);else for(var y=t.length-1;y>=0;y--)(p=t[y])&&(f=(w<3?p(f):w>3?p(s,c,f):p(s,c))||f);return w>3&&f&&Object.defineProperty(s,c,f),f},d=this&&this.__param||function(t,s){return function(c,g){s(c,g,t)}};Object.defineProperty(i,"__esModule",{value:!0}),i.RenderService=void 0;const h=a(6193),u=a(4725),v=a(8460),m=a(844),_=a(7226),n=a(2585);let o=i.RenderService=class extends m.Disposable{get dimensions(){return this._renderer.value.dimensions}constructor(t,s,c,g,p,w,f,y){super(),this._rowCount=t,this._charSizeService=g,this._renderer=this.register(new m.MutableDisposable),this._pausedResizeTask=new _.DebouncedIdleTask,this._observerDisposable=this.register(new m.MutableDisposable),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this.register(new v.EventEmitter),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this.register(new v.EventEmitter),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this.register(new v.EventEmitter),this.onRender=this._onRender.event,this._onRefreshRequest=this.register(new v.EventEmitter),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new h.RenderDebouncer(((B,A)=>this._renderRows(B,A)),f),this.register(this._renderDebouncer),this.register(f.onDprChange((()=>this.handleDevicePixelRatioChange()))),this.register(w.onResize((()=>this._fullRefresh()))),this.register(w.buffers.onBufferActivate((()=>this._renderer.value?.clear()))),this.register(c.onOptionChange((()=>this._handleOptionsChanged()))),this.register(this._charSizeService.onCharSizeChange((()=>this.handleCharSizeChanged()))),this.register(p.onDecorationRegistered((()=>this._fullRefresh()))),this.register(p.onDecorationRemoved((()=>this._fullRefresh()))),this.register(c.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],(()=>{this.clear(),this.handleResize(w.cols,w.rows),this._fullRefresh()}))),this.register(c.onMultipleOptionChange(["cursorBlink","cursorStyle"],(()=>this.refreshRows(w.buffer.y,w.buffer.y,!0)))),this.register(y.onChangeColors((()=>this._fullRefresh()))),this._registerIntersectionObserver(f.window,s),this.register(f.onWindowChange((B=>this._registerIntersectionObserver(B,s))))}_registerIntersectionObserver(t,s){if("IntersectionObserver"in t){const c=new t.IntersectionObserver((g=>this._handleIntersectionChange(g[g.length-1])),{threshold:0});c.observe(s),this._observerDisposable.value=(0,m.toDisposable)((()=>c.disconnect()))}}_handleIntersectionChange(t){this._isPaused=t.isIntersecting===void 0?t.intersectionRatio===0:!t.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(t,s,c=!1){this._isPaused?this._needsFullRefresh=!0:(c||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(t,s,this._rowCount))}_renderRows(t,s){this._renderer.value&&(t=Math.min(t,this._rowCount-1),s=Math.min(s,this._rowCount-1),this._renderer.value.renderRows(t,s),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:t,end:s}),this._onRender.fire({start:t,end:s}),this._isNextRenderRedrawOnly=!0)}resize(t,s){this._rowCount=s,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(t){this._renderer.value=t,this._renderer.value&&(this._renderer.value.onRequestRedraw((s=>this.refreshRows(s.start,s.end,!0))),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(t){return this._renderDebouncer.addRefreshCallback(t)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){this._renderer.value&&(this._renderer.value.clearTextureAtlas?.(),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(t,s){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set((()=>this._renderer.value?.handleResize(t,s))):this._renderer.value.handleResize(t,s),this._fullRefresh())}handleCharSizeChanged(){this._renderer.value?.handleCharSizeChanged()}handleBlur(){this._renderer.value?.handleBlur()}handleFocus(){this._renderer.value?.handleFocus()}handleSelectionChanged(t,s,c){this._selectionState.start=t,this._selectionState.end=s,this._selectionState.columnSelectMode=c,this._renderer.value?.handleSelectionChanged(t,s,c)}handleCursorMove(){this._renderer.value?.handleCursorMove()}clear(){this._renderer.value?.clear()}};i.RenderService=o=l([d(2,n.IOptionsService),d(3,u.ICharSizeService),d(4,n.IDecorationService),d(5,n.IBufferService),d(6,u.ICoreBrowserService),d(7,u.IThemeService)],o)},9312:function(R,i,a){var l=this&&this.__decorate||function(f,y,B,A){var D,L=arguments.length,P=L<3?y:A===null?A=Object.getOwnPropertyDescriptor(y,B):A;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")P=Reflect.decorate(f,y,B,A);else for(var F=f.length-1;F>=0;F--)(D=f[F])&&(P=(L<3?D(P):L>3?D(y,B,P):D(y,B))||P);return L>3&&P&&Object.defineProperty(y,B,P),P},d=this&&this.__param||function(f,y){return function(B,A){y(B,A,f)}};Object.defineProperty(i,"__esModule",{value:!0}),i.SelectionService=void 0;const h=a(9806),u=a(9504),v=a(456),m=a(4725),_=a(8460),n=a(844),o=a(6114),t=a(4841),s=a(511),c=a(2585),g=" ",p=new RegExp(g,"g");let w=i.SelectionService=class extends n.Disposable{constructor(f,y,B,A,D,L,P,F,$){super(),this._element=f,this._screenElement=y,this._linkifier=B,this._bufferService=A,this._coreService=D,this._mouseService=L,this._optionsService=P,this._renderService=F,this._coreBrowserService=$,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new s.CellData,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this.register(new _.EventEmitter),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this.register(new _.EventEmitter),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this.register(new _.EventEmitter),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this.register(new _.EventEmitter),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=W=>this._handleMouseMove(W),this._mouseUpListener=W=>this._handleMouseUp(W),this._coreService.onUserInput((()=>{this.hasSelection&&this.clearSelection()})),this._trimListener=this._bufferService.buffer.lines.onTrim((W=>this._handleTrim(W))),this.register(this._bufferService.buffers.onBufferActivate((W=>this._handleBufferActivate(W)))),this.enable(),this._model=new v.SelectionModel(this._bufferService),this._activeSelectionMode=0,this.register((0,n.toDisposable)((()=>{this._removeMouseDownListeners()})))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){const f=this._model.finalSelectionStart,y=this._model.finalSelectionEnd;return!(!f||!y||f[0]===y[0]&&f[1]===y[1])}get selectionText(){const f=this._model.finalSelectionStart,y=this._model.finalSelectionEnd;if(!f||!y)return"";const B=this._bufferService.buffer,A=[];if(this._activeSelectionMode===3){if(f[0]===y[0])return"";const D=f[0]D.replace(p," "))).join(o.isWindows?`\r +`:` +`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(f){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._refresh()))),o.isLinux&&f&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(f){const y=this._getMouseBufferCoords(f),B=this._model.finalSelectionStart,A=this._model.finalSelectionEnd;return!!(B&&A&&y)&&this._areCoordsInSelection(y,B,A)}isCellInSelection(f,y){const B=this._model.finalSelectionStart,A=this._model.finalSelectionEnd;return!(!B||!A)&&this._areCoordsInSelection([f,y],B,A)}_areCoordsInSelection(f,y,B){return f[1]>y[1]&&f[1]=y[0]&&f[0]=y[0]}_selectWordAtCursor(f,y){const B=this._linkifier.currentLink?.link?.range;if(B)return this._model.selectionStart=[B.start.x-1,B.start.y-1],this._model.selectionStartLength=(0,t.getRangeLength)(B,this._bufferService.cols),this._model.selectionEnd=void 0,!0;const A=this._getMouseBufferCoords(f);return!!A&&(this._selectWordAt(A,y),this._model.selectionEnd=void 0,!0)}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(f,y){this._model.clearSelection(),f=Math.max(f,0),y=Math.min(y,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,f],this._model.selectionEnd=[this._bufferService.cols,y],this.refresh(),this._onSelectionChange.fire()}_handleTrim(f){this._model.handleTrim(f)&&this.refresh()}_getMouseBufferCoords(f){const y=this._mouseService.getCoords(f,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(y)return y[0]--,y[1]--,y[1]+=this._bufferService.buffer.ydisp,y}_getMouseEventScrollAmount(f){let y=(0,h.getCoordsRelativeToElement)(this._coreBrowserService.window,f,this._screenElement)[1];const B=this._renderService.dimensions.css.canvas.height;return y>=0&&y<=B?0:(y>B&&(y-=B),y=Math.min(Math.max(y,-50),50),y/=50,y/Math.abs(y)+Math.round(14*y))}shouldForceSelection(f){return o.isMac?f.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:f.shiftKey}handleMouseDown(f){if(this._mouseDownTimeStamp=f.timeStamp,(f.button!==2||!this.hasSelection)&&f.button===0){if(!this._enabled){if(!this.shouldForceSelection(f))return;f.stopPropagation()}f.preventDefault(),this._dragScrollAmount=0,this._enabled&&f.shiftKey?this._handleIncrementalClick(f):f.detail===1?this._handleSingleClick(f):f.detail===2?this._handleDoubleClick(f):f.detail===3&&this._handleTripleClick(f),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval((()=>this._dragScroll()),50)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(f){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(f))}_handleSingleClick(f){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(f)?3:0,this._model.selectionStart=this._getMouseBufferCoords(f),!this._model.selectionStart)return;this._model.selectionEnd=void 0;const y=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);y&&y.length!==this._model.selectionStart[0]&&y.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(f){this._selectWordAtCursor(f,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(f){const y=this._getMouseBufferCoords(f);y&&(this._activeSelectionMode=2,this._selectLineAt(y[1]))}shouldColumnSelect(f){return f.altKey&&!(o.isMac&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(f){if(f.stopImmediatePropagation(),!this._model.selectionStart)return;const y=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(f),!this._model.selectionEnd)return void this.refresh(!0);this._activeSelectionMode===2?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));const B=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(f.ydisp+this._bufferService.rows,f.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=f.ydisp),this.refresh()}}_handleMouseUp(f){const y=f.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&y<500&&f.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){const B=this._mouseService.getCoords(f,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(B&&B[0]!==void 0&&B[1]!==void 0){const A=(0,u.moveToCellSequence)(B[0]-1,B[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(A,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){const f=this._model.finalSelectionStart,y=this._model.finalSelectionEnd,B=!(!f||!y||f[0]===y[0]&&f[1]===y[1]);B?f&&y&&(this._oldSelectionStart&&this._oldSelectionEnd&&f[0]===this._oldSelectionStart[0]&&f[1]===this._oldSelectionStart[1]&&y[0]===this._oldSelectionEnd[0]&&y[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(f,y,B)):this._oldHasSelection&&this._fireOnSelectionChange(f,y,B)}_fireOnSelectionChange(f,y,B){this._oldSelectionStart=f,this._oldSelectionEnd=y,this._oldHasSelection=B,this._onSelectionChange.fire()}_handleBufferActivate(f){this.clearSelection(),this._trimListener.dispose(),this._trimListener=f.activeBuffer.lines.onTrim((y=>this._handleTrim(y)))}_convertViewportColToCharacterIndex(f,y){let B=y;for(let A=0;y>=A;A++){const D=f.loadCell(A,this._workCell).getChars().length;this._workCell.getWidth()===0?B--:D>1&&y!==A&&(B+=D-1)}return B}setSelection(f,y,B){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[f,y],this._model.selectionStartLength=B,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(f){this._isClickInSelection(f)||(this._selectWordAtCursor(f,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(f,y,B=!0,A=!0){if(f[0]>=this._bufferService.cols)return;const D=this._bufferService.buffer,L=D.lines.get(f[1]);if(!L)return;const P=D.translateBufferLineToString(f[1],!1);let F=this._convertViewportColToCharacterIndex(L,f[0]),$=F;const W=f[0]-F;let H=0,C=0,E=0,M=0;if(P.charAt(F)===" "){for(;F>0&&P.charAt(F-1)===" ";)F--;for(;$1&&(M+=G-1,$+=G-1);j>0&&F>0&&!this._isCharWordSeparator(L.loadCell(j-1,this._workCell));){L.loadCell(j-1,this._workCell);const I=this._workCell.getChars().length;this._workCell.getWidth()===0?(H++,j--):I>1&&(E+=I-1,F-=I-1),F--,j--}for(;V1&&(M+=I-1,$+=I-1),$++,V++}}$++;let T=F+W-H+E,U=Math.min(this._bufferService.cols,$-F+H+C-E-M);if(y||P.slice(F,$).trim()!==""){if(B&&T===0&&L.getCodePoint(0)!==32){const j=D.lines.get(f[1]-1);if(j&&L.isWrapped&&j.getCodePoint(this._bufferService.cols-1)!==32){const V=this._getWordAt([this._bufferService.cols-1,f[1]-1],!1,!0,!1);if(V){const G=this._bufferService.cols-V.start;T-=G,U+=G}}}if(A&&T+U===this._bufferService.cols&&L.getCodePoint(this._bufferService.cols-1)!==32){const j=D.lines.get(f[1]+1);if(j?.isWrapped&&j.getCodePoint(0)!==32){const V=this._getWordAt([0,f[1]+1],!1,!1,!0);V&&(U+=V.length)}}return{start:T,length:U}}}_selectWordAt(f,y){const B=this._getWordAt(f,y);if(B){for(;B.start<0;)B.start+=this._bufferService.cols,f[1]--;this._model.selectionStart=[B.start,f[1]],this._model.selectionStartLength=B.length}}_selectToWordAt(f){const y=this._getWordAt(f,!0);if(y){let B=f[1];for(;y.start<0;)y.start+=this._bufferService.cols,B--;if(!this._model.areSelectionValuesReversed())for(;y.start+y.length>this._bufferService.cols;)y.length-=this._bufferService.cols,B++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?y.start:y.start+y.length,B]}}_isCharWordSeparator(f){return f.getWidth()!==0&&this._optionsService.rawOptions.wordSeparator.indexOf(f.getChars())>=0}_selectLineAt(f){const y=this._bufferService.buffer.getWrappedRangeForLine(f),B={start:{x:0,y:y.first},end:{x:this._bufferService.cols-1,y:y.last}};this._model.selectionStart=[0,y.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=(0,t.getRangeLength)(B,this._bufferService.cols)}};i.SelectionService=w=l([d(3,c.IBufferService),d(4,c.ICoreService),d(5,m.IMouseService),d(6,c.IOptionsService),d(7,m.IRenderService),d(8,m.ICoreBrowserService)],w)},4725:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.ILinkProviderService=i.IThemeService=i.ICharacterJoinerService=i.ISelectionService=i.IRenderService=i.IMouseService=i.ICoreBrowserService=i.ICharSizeService=void 0;const l=a(8343);i.ICharSizeService=(0,l.createDecorator)("CharSizeService"),i.ICoreBrowserService=(0,l.createDecorator)("CoreBrowserService"),i.IMouseService=(0,l.createDecorator)("MouseService"),i.IRenderService=(0,l.createDecorator)("RenderService"),i.ISelectionService=(0,l.createDecorator)("SelectionService"),i.ICharacterJoinerService=(0,l.createDecorator)("CharacterJoinerService"),i.IThemeService=(0,l.createDecorator)("ThemeService"),i.ILinkProviderService=(0,l.createDecorator)("LinkProviderService")},6731:function(R,i,a){var l=this&&this.__decorate||function(w,f,y,B){var A,D=arguments.length,L=D<3?f:B===null?B=Object.getOwnPropertyDescriptor(f,y):B;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")L=Reflect.decorate(w,f,y,B);else for(var P=w.length-1;P>=0;P--)(A=w[P])&&(L=(D<3?A(L):D>3?A(f,y,L):A(f,y))||L);return D>3&&L&&Object.defineProperty(f,y,L),L},d=this&&this.__param||function(w,f){return function(y,B){f(y,B,w)}};Object.defineProperty(i,"__esModule",{value:!0}),i.ThemeService=i.DEFAULT_ANSI_COLORS=void 0;const h=a(7239),u=a(8055),v=a(8460),m=a(844),_=a(2585),n=u.css.toColor("#ffffff"),o=u.css.toColor("#000000"),t=u.css.toColor("#ffffff"),s=u.css.toColor("#000000"),c={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};i.DEFAULT_ANSI_COLORS=Object.freeze((()=>{const w=[u.css.toColor("#2e3436"),u.css.toColor("#cc0000"),u.css.toColor("#4e9a06"),u.css.toColor("#c4a000"),u.css.toColor("#3465a4"),u.css.toColor("#75507b"),u.css.toColor("#06989a"),u.css.toColor("#d3d7cf"),u.css.toColor("#555753"),u.css.toColor("#ef2929"),u.css.toColor("#8ae234"),u.css.toColor("#fce94f"),u.css.toColor("#729fcf"),u.css.toColor("#ad7fa8"),u.css.toColor("#34e2e2"),u.css.toColor("#eeeeec")],f=[0,95,135,175,215,255];for(let y=0;y<216;y++){const B=f[y/36%6|0],A=f[y/6%6|0],D=f[y%6];w.push({css:u.channels.toCss(B,A,D),rgba:u.channels.toRgba(B,A,D)})}for(let y=0;y<24;y++){const B=8+10*y;w.push({css:u.channels.toCss(B,B,B),rgba:u.channels.toRgba(B,B,B)})}return w})());let g=i.ThemeService=class extends m.Disposable{get colors(){return this._colors}constructor(w){super(),this._optionsService=w,this._contrastCache=new h.ColorContrastCache,this._halfContrastCache=new h.ColorContrastCache,this._onChangeColors=this.register(new v.EventEmitter),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:n,background:o,cursor:t,cursorAccent:s,selectionForeground:void 0,selectionBackgroundTransparent:c,selectionBackgroundOpaque:u.color.blend(o,c),selectionInactiveBackgroundTransparent:c,selectionInactiveBackgroundOpaque:u.color.blend(o,c),ansi:i.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this.register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",(()=>this._contrastCache.clear()))),this.register(this._optionsService.onSpecificOptionChange("theme",(()=>this._setTheme(this._optionsService.rawOptions.theme))))}_setTheme(w={}){const f=this._colors;if(f.foreground=p(w.foreground,n),f.background=p(w.background,o),f.cursor=p(w.cursor,t),f.cursorAccent=p(w.cursorAccent,s),f.selectionBackgroundTransparent=p(w.selectionBackground,c),f.selectionBackgroundOpaque=u.color.blend(f.background,f.selectionBackgroundTransparent),f.selectionInactiveBackgroundTransparent=p(w.selectionInactiveBackground,f.selectionBackgroundTransparent),f.selectionInactiveBackgroundOpaque=u.color.blend(f.background,f.selectionInactiveBackgroundTransparent),f.selectionForeground=w.selectionForeground?p(w.selectionForeground,u.NULL_COLOR):void 0,f.selectionForeground===u.NULL_COLOR&&(f.selectionForeground=void 0),u.color.isOpaque(f.selectionBackgroundTransparent)&&(f.selectionBackgroundTransparent=u.color.opacity(f.selectionBackgroundTransparent,.3)),u.color.isOpaque(f.selectionInactiveBackgroundTransparent)&&(f.selectionInactiveBackgroundTransparent=u.color.opacity(f.selectionInactiveBackgroundTransparent,.3)),f.ansi=i.DEFAULT_ANSI_COLORS.slice(),f.ansi[0]=p(w.black,i.DEFAULT_ANSI_COLORS[0]),f.ansi[1]=p(w.red,i.DEFAULT_ANSI_COLORS[1]),f.ansi[2]=p(w.green,i.DEFAULT_ANSI_COLORS[2]),f.ansi[3]=p(w.yellow,i.DEFAULT_ANSI_COLORS[3]),f.ansi[4]=p(w.blue,i.DEFAULT_ANSI_COLORS[4]),f.ansi[5]=p(w.magenta,i.DEFAULT_ANSI_COLORS[5]),f.ansi[6]=p(w.cyan,i.DEFAULT_ANSI_COLORS[6]),f.ansi[7]=p(w.white,i.DEFAULT_ANSI_COLORS[7]),f.ansi[8]=p(w.brightBlack,i.DEFAULT_ANSI_COLORS[8]),f.ansi[9]=p(w.brightRed,i.DEFAULT_ANSI_COLORS[9]),f.ansi[10]=p(w.brightGreen,i.DEFAULT_ANSI_COLORS[10]),f.ansi[11]=p(w.brightYellow,i.DEFAULT_ANSI_COLORS[11]),f.ansi[12]=p(w.brightBlue,i.DEFAULT_ANSI_COLORS[12]),f.ansi[13]=p(w.brightMagenta,i.DEFAULT_ANSI_COLORS[13]),f.ansi[14]=p(w.brightCyan,i.DEFAULT_ANSI_COLORS[14]),f.ansi[15]=p(w.brightWhite,i.DEFAULT_ANSI_COLORS[15]),w.extendedAnsi){const y=Math.min(f.ansi.length-16,w.extendedAnsi.length);for(let B=0;B{Object.defineProperty(i,"__esModule",{value:!0}),i.CircularList=void 0;const l=a(8460),d=a(844);class h extends d.Disposable{constructor(v){super(),this._maxLength=v,this.onDeleteEmitter=this.register(new l.EventEmitter),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this.register(new l.EventEmitter),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this.register(new l.EventEmitter),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(v){if(this._maxLength===v)return;const m=new Array(v);for(let _=0;_this._length)for(let m=this._length;m=v;n--)this._array[this._getCyclicIndex(n+_.length)]=this._array[this._getCyclicIndex(n)];for(let n=0;n<_.length;n++)this._array[this._getCyclicIndex(v+n)]=_[n];if(_.length&&this.onInsertEmitter.fire({index:v,amount:_.length}),this._length+_.length>this._maxLength){const n=this._length+_.length-this._maxLength;this._startIndex+=n,this._length=this._maxLength,this.onTrimEmitter.fire(n)}else this._length+=_.length}trimStart(v){v>this._length&&(v=this._length),this._startIndex+=v,this._length-=v,this.onTrimEmitter.fire(v)}shiftElements(v,m,_){if(!(m<=0)){if(v<0||v>=this._length)throw new Error("start argument out of range");if(v+_<0)throw new Error("Cannot shift elements in list beyond index 0");if(_>0){for(let o=m-1;o>=0;o--)this.set(v+o+_,this.get(v+o));const n=v+m+_-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let n=0;n{Object.defineProperty(i,"__esModule",{value:!0}),i.clone=void 0,i.clone=function a(l,d=5){if(typeof l!="object")return l;const h=Array.isArray(l)?[]:{};for(const u in l)h[u]=d<=1?l[u]:l[u]&&a(l[u],d-1);return h}},8055:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.contrastRatio=i.toPaddedHex=i.rgba=i.rgb=i.css=i.color=i.channels=i.NULL_COLOR=void 0;let a=0,l=0,d=0,h=0;var u,v,m,_,n;function o(s){const c=s.toString(16);return c.length<2?"0"+c:c}function t(s,c){return s>>0},s.toColor=function(c,g,p,w){return{css:s.toCss(c,g,p,w),rgba:s.toRgba(c,g,p,w)}}})(u||(i.channels=u={})),(function(s){function c(g,p){return h=Math.round(255*p),[a,l,d]=n.toChannels(g.rgba),{css:u.toCss(a,l,d,h),rgba:u.toRgba(a,l,d,h)}}s.blend=function(g,p){if(h=(255&p.rgba)/255,h===1)return{css:p.css,rgba:p.rgba};const w=p.rgba>>24&255,f=p.rgba>>16&255,y=p.rgba>>8&255,B=g.rgba>>24&255,A=g.rgba>>16&255,D=g.rgba>>8&255;return a=B+Math.round((w-B)*h),l=A+Math.round((f-A)*h),d=D+Math.round((y-D)*h),{css:u.toCss(a,l,d),rgba:u.toRgba(a,l,d)}},s.isOpaque=function(g){return(255&g.rgba)==255},s.ensureContrastRatio=function(g,p,w){const f=n.ensureContrastRatio(g.rgba,p.rgba,w);if(f)return u.toColor(f>>24&255,f>>16&255,f>>8&255)},s.opaque=function(g){const p=(255|g.rgba)>>>0;return[a,l,d]=n.toChannels(p),{css:u.toCss(a,l,d),rgba:p}},s.opacity=c,s.multiplyOpacity=function(g,p){return h=255&g.rgba,c(g,h*p/255)},s.toColorRGB=function(g){return[g.rgba>>24&255,g.rgba>>16&255,g.rgba>>8&255]}})(v||(i.color=v={})),(function(s){let c,g;try{const p=document.createElement("canvas");p.width=1,p.height=1;const w=p.getContext("2d",{willReadFrequently:!0});w&&(c=w,c.globalCompositeOperation="copy",g=c.createLinearGradient(0,0,1,1))}catch{}s.toColor=function(p){if(p.match(/#[\da-f]{3,8}/i))switch(p.length){case 4:return a=parseInt(p.slice(1,2).repeat(2),16),l=parseInt(p.slice(2,3).repeat(2),16),d=parseInt(p.slice(3,4).repeat(2),16),u.toColor(a,l,d);case 5:return a=parseInt(p.slice(1,2).repeat(2),16),l=parseInt(p.slice(2,3).repeat(2),16),d=parseInt(p.slice(3,4).repeat(2),16),h=parseInt(p.slice(4,5).repeat(2),16),u.toColor(a,l,d,h);case 7:return{css:p,rgba:(parseInt(p.slice(1),16)<<8|255)>>>0};case 9:return{css:p,rgba:parseInt(p.slice(1),16)>>>0}}const w=p.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(w)return a=parseInt(w[1]),l=parseInt(w[2]),d=parseInt(w[3]),h=Math.round(255*(w[5]===void 0?1:parseFloat(w[5]))),u.toColor(a,l,d,h);if(!c||!g)throw new Error("css.toColor: Unsupported css format");if(c.fillStyle=g,c.fillStyle=p,typeof c.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(c.fillRect(0,0,1,1),[a,l,d,h]=c.getImageData(0,0,1,1).data,h!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:u.toRgba(a,l,d,h),css:p}}})(m||(i.css=m={})),(function(s){function c(g,p,w){const f=g/255,y=p/255,B=w/255;return .2126*(f<=.03928?f/12.92:Math.pow((f+.055)/1.055,2.4))+.7152*(y<=.03928?y/12.92:Math.pow((y+.055)/1.055,2.4))+.0722*(B<=.03928?B/12.92:Math.pow((B+.055)/1.055,2.4))}s.relativeLuminance=function(g){return c(g>>16&255,g>>8&255,255&g)},s.relativeLuminance2=c})(_||(i.rgb=_={})),(function(s){function c(p,w,f){const y=p>>24&255,B=p>>16&255,A=p>>8&255;let D=w>>24&255,L=w>>16&255,P=w>>8&255,F=t(_.relativeLuminance2(D,L,P),_.relativeLuminance2(y,B,A));for(;F0||L>0||P>0);)D-=Math.max(0,Math.ceil(.1*D)),L-=Math.max(0,Math.ceil(.1*L)),P-=Math.max(0,Math.ceil(.1*P)),F=t(_.relativeLuminance2(D,L,P),_.relativeLuminance2(y,B,A));return(D<<24|L<<16|P<<8|255)>>>0}function g(p,w,f){const y=p>>24&255,B=p>>16&255,A=p>>8&255;let D=w>>24&255,L=w>>16&255,P=w>>8&255,F=t(_.relativeLuminance2(D,L,P),_.relativeLuminance2(y,B,A));for(;F>>0}s.blend=function(p,w){if(h=(255&w)/255,h===1)return w;const f=w>>24&255,y=w>>16&255,B=w>>8&255,A=p>>24&255,D=p>>16&255,L=p>>8&255;return a=A+Math.round((f-A)*h),l=D+Math.round((y-D)*h),d=L+Math.round((B-L)*h),u.toRgba(a,l,d)},s.ensureContrastRatio=function(p,w,f){const y=_.relativeLuminance(p>>8),B=_.relativeLuminance(w>>8);if(t(y,B)>8));if(Pt(y,_.relativeLuminance(F>>8))?L:F}return L}const A=g(p,w,f),D=t(y,_.relativeLuminance(A>>8));if(Dt(y,_.relativeLuminance(L>>8))?A:L}return A}},s.reduceLuminance=c,s.increaseLuminance=g,s.toChannels=function(p){return[p>>24&255,p>>16&255,p>>8&255,255&p]}})(n||(i.rgba=n={})),i.toPaddedHex=o,i.contrastRatio=t},8969:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.CoreTerminal=void 0;const l=a(844),d=a(2585),h=a(4348),u=a(7866),v=a(744),m=a(7302),_=a(6975),n=a(8460),o=a(1753),t=a(1480),s=a(7994),c=a(9282),g=a(5435),p=a(5981),w=a(2660);let f=!1;class y extends l.Disposable{get onScroll(){return this._onScrollApi||(this._onScrollApi=this.register(new n.EventEmitter),this._onScroll.event((A=>{this._onScrollApi?.fire(A.position)}))),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(A){for(const D in A)this.optionsService.options[D]=A[D]}constructor(A){super(),this._windowsWrappingHeuristics=this.register(new l.MutableDisposable),this._onBinary=this.register(new n.EventEmitter),this.onBinary=this._onBinary.event,this._onData=this.register(new n.EventEmitter),this.onData=this._onData.event,this._onLineFeed=this.register(new n.EventEmitter),this.onLineFeed=this._onLineFeed.event,this._onResize=this.register(new n.EventEmitter),this.onResize=this._onResize.event,this._onWriteParsed=this.register(new n.EventEmitter),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this.register(new n.EventEmitter),this._instantiationService=new h.InstantiationService,this.optionsService=this.register(new m.OptionsService(A)),this._instantiationService.setService(d.IOptionsService,this.optionsService),this._bufferService=this.register(this._instantiationService.createInstance(v.BufferService)),this._instantiationService.setService(d.IBufferService,this._bufferService),this._logService=this.register(this._instantiationService.createInstance(u.LogService)),this._instantiationService.setService(d.ILogService,this._logService),this.coreService=this.register(this._instantiationService.createInstance(_.CoreService)),this._instantiationService.setService(d.ICoreService,this.coreService),this.coreMouseService=this.register(this._instantiationService.createInstance(o.CoreMouseService)),this._instantiationService.setService(d.ICoreMouseService,this.coreMouseService),this.unicodeService=this.register(this._instantiationService.createInstance(t.UnicodeService)),this._instantiationService.setService(d.IUnicodeService,this.unicodeService),this._charsetService=this._instantiationService.createInstance(s.CharsetService),this._instantiationService.setService(d.ICharsetService,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(w.OscLinkService),this._instantiationService.setService(d.IOscLinkService,this._oscLinkService),this._inputHandler=this.register(new g.InputHandler(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this.register((0,n.forwardEvent)(this._inputHandler.onLineFeed,this._onLineFeed)),this.register(this._inputHandler),this.register((0,n.forwardEvent)(this._bufferService.onResize,this._onResize)),this.register((0,n.forwardEvent)(this.coreService.onData,this._onData)),this.register((0,n.forwardEvent)(this.coreService.onBinary,this._onBinary)),this.register(this.coreService.onRequestScrollToBottom((()=>this.scrollToBottom()))),this.register(this.coreService.onUserInput((()=>this._writeBuffer.handleUserInput()))),this.register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],(()=>this._handleWindowsPtyOptionChange()))),this.register(this._bufferService.onScroll((D=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp,source:0}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)}))),this.register(this._inputHandler.onScroll((D=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp,source:0}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)}))),this._writeBuffer=this.register(new p.WriteBuffer(((D,L)=>this._inputHandler.parse(D,L)))),this.register((0,n.forwardEvent)(this._writeBuffer.onWriteParsed,this._onWriteParsed))}write(A,D){this._writeBuffer.write(A,D)}writeSync(A,D){this._logService.logLevel<=d.LogLevelEnum.WARN&&!f&&(this._logService.warn("writeSync is unreliable and will be removed soon."),f=!0),this._writeBuffer.writeSync(A,D)}input(A,D=!0){this.coreService.triggerDataEvent(A,D)}resize(A,D){isNaN(A)||isNaN(D)||(A=Math.max(A,v.MINIMUM_COLS),D=Math.max(D,v.MINIMUM_ROWS),this._bufferService.resize(A,D))}scroll(A,D=!1){this._bufferService.scroll(A,D)}scrollLines(A,D,L){this._bufferService.scrollLines(A,D,L)}scrollPages(A){this.scrollLines(A*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(A){const D=A-this._bufferService.buffer.ydisp;D!==0&&this.scrollLines(D)}registerEscHandler(A,D){return this._inputHandler.registerEscHandler(A,D)}registerDcsHandler(A,D){return this._inputHandler.registerDcsHandler(A,D)}registerCsiHandler(A,D){return this._inputHandler.registerCsiHandler(A,D)}registerOscHandler(A,D){return this._inputHandler.registerOscHandler(A,D)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let A=!1;const D=this.optionsService.rawOptions.windowsPty;D&&D.buildNumber!==void 0&&D.buildNumber!==void 0?A=D.backend==="conpty"&&D.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(A=!0),A?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){const A=[];A.push(this.onLineFeed(c.updateWindowsModeWrappedState.bind(null,this._bufferService))),A.push(this.registerCsiHandler({final:"H"},(()=>((0,c.updateWindowsModeWrappedState)(this._bufferService),!1)))),this._windowsWrappingHeuristics.value=(0,l.toDisposable)((()=>{for(const D of A)D.dispose()}))}}}i.CoreTerminal=y},8460:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.runAndSubscribe=i.forwardEvent=i.EventEmitter=void 0,i.EventEmitter=class{constructor(){this._listeners=[],this._disposed=!1}get event(){return this._event||(this._event=a=>(this._listeners.push(a),{dispose:()=>{if(!this._disposed){for(let l=0;ll.fire(d)))},i.runAndSubscribe=function(a,l){return l(void 0),a((d=>l(d)))}},5435:function(R,i,a){var l=this&&this.__decorate||function(H,C,E,M){var T,U=arguments.length,j=U<3?C:M===null?M=Object.getOwnPropertyDescriptor(C,E):M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(H,C,E,M);else for(var V=H.length-1;V>=0;V--)(T=H[V])&&(j=(U<3?T(j):U>3?T(C,E,j):T(C,E))||j);return U>3&&j&&Object.defineProperty(C,E,j),j},d=this&&this.__param||function(H,C){return function(E,M){C(E,M,H)}};Object.defineProperty(i,"__esModule",{value:!0}),i.InputHandler=i.WindowsOptionsReportType=void 0;const h=a(2584),u=a(7116),v=a(2015),m=a(844),_=a(482),n=a(8437),o=a(8460),t=a(643),s=a(511),c=a(3734),g=a(2585),p=a(1480),w=a(6242),f=a(6351),y=a(5941),B={"(":0,")":1,"*":2,"+":3,"-":1,".":2},A=131072;function D(H,C){if(H>24)return C.setWinLines||!1;switch(H){case 1:return!!C.restoreWin;case 2:return!!C.minimizeWin;case 3:return!!C.setWinPosition;case 4:return!!C.setWinSizePixels;case 5:return!!C.raiseWin;case 6:return!!C.lowerWin;case 7:return!!C.refreshWin;case 8:return!!C.setWinSizeChars;case 9:return!!C.maximizeWin;case 10:return!!C.fullscreenWin;case 11:return!!C.getWinState;case 13:return!!C.getWinPosition;case 14:return!!C.getWinSizePixels;case 15:return!!C.getScreenSizePixels;case 16:return!!C.getCellSizePixels;case 18:return!!C.getWinSizeChars;case 19:return!!C.getScreenSizeChars;case 20:return!!C.getIconTitle;case 21:return!!C.getWinTitle;case 22:return!!C.pushTitle;case 23:return!!C.popTitle;case 24:return!!C.setWinLines}return!1}var L;(function(H){H[H.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",H[H.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"})(L||(i.WindowsOptionsReportType=L={}));let P=0;class F extends m.Disposable{getAttrData(){return this._curAttrData}constructor(C,E,M,T,U,j,V,G,I=new v.EscapeSequenceParser){super(),this._bufferService=C,this._charsetService=E,this._coreService=M,this._logService=T,this._optionsService=U,this._oscLinkService=j,this._coreMouseService=V,this._unicodeService=G,this._parser=I,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new _.StringToUtf32,this._utf8Decoder=new _.Utf8ToUtf32,this._workCell=new s.CellData,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=n.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=n.DEFAULT_ATTR_DATA.clone(),this._onRequestBell=this.register(new o.EventEmitter),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this.register(new o.EventEmitter),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this.register(new o.EventEmitter),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this.register(new o.EventEmitter),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this.register(new o.EventEmitter),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this.register(new o.EventEmitter),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this.register(new o.EventEmitter),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this.register(new o.EventEmitter),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this.register(new o.EventEmitter),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this.register(new o.EventEmitter),this.onLineFeed=this._onLineFeed.event,this._onScroll=this.register(new o.EventEmitter),this.onScroll=this._onScroll.event,this._onTitleChange=this.register(new o.EventEmitter),this.onTitleChange=this._onTitleChange.event,this._onColor=this.register(new o.EventEmitter),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this.register(this._parser),this._dirtyRowTracker=new $(this._bufferService),this._activeBuffer=this._bufferService.buffer,this.register(this._bufferService.buffers.onBufferActivate((x=>this._activeBuffer=x.activeBuffer))),this._parser.setCsiHandlerFallback(((x,N)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(x),params:N.toArray()})})),this._parser.setEscHandlerFallback((x=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(x)})})),this._parser.setExecuteHandlerFallback((x=>{this._logService.debug("Unknown EXECUTE code: ",{code:x})})),this._parser.setOscHandlerFallback(((x,N,z)=>{this._logService.debug("Unknown OSC code: ",{identifier:x,action:N,data:z})})),this._parser.setDcsHandlerFallback(((x,N,z)=>{N==="HOOK"&&(z=z.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(x),action:N,payload:z})})),this._parser.setPrintHandler(((x,N,z)=>this.print(x,N,z))),this._parser.registerCsiHandler({final:"@"},(x=>this.insertChars(x))),this._parser.registerCsiHandler({intermediates:" ",final:"@"},(x=>this.scrollLeft(x))),this._parser.registerCsiHandler({final:"A"},(x=>this.cursorUp(x))),this._parser.registerCsiHandler({intermediates:" ",final:"A"},(x=>this.scrollRight(x))),this._parser.registerCsiHandler({final:"B"},(x=>this.cursorDown(x))),this._parser.registerCsiHandler({final:"C"},(x=>this.cursorForward(x))),this._parser.registerCsiHandler({final:"D"},(x=>this.cursorBackward(x))),this._parser.registerCsiHandler({final:"E"},(x=>this.cursorNextLine(x))),this._parser.registerCsiHandler({final:"F"},(x=>this.cursorPrecedingLine(x))),this._parser.registerCsiHandler({final:"G"},(x=>this.cursorCharAbsolute(x))),this._parser.registerCsiHandler({final:"H"},(x=>this.cursorPosition(x))),this._parser.registerCsiHandler({final:"I"},(x=>this.cursorForwardTab(x))),this._parser.registerCsiHandler({final:"J"},(x=>this.eraseInDisplay(x,!1))),this._parser.registerCsiHandler({prefix:"?",final:"J"},(x=>this.eraseInDisplay(x,!0))),this._parser.registerCsiHandler({final:"K"},(x=>this.eraseInLine(x,!1))),this._parser.registerCsiHandler({prefix:"?",final:"K"},(x=>this.eraseInLine(x,!0))),this._parser.registerCsiHandler({final:"L"},(x=>this.insertLines(x))),this._parser.registerCsiHandler({final:"M"},(x=>this.deleteLines(x))),this._parser.registerCsiHandler({final:"P"},(x=>this.deleteChars(x))),this._parser.registerCsiHandler({final:"S"},(x=>this.scrollUp(x))),this._parser.registerCsiHandler({final:"T"},(x=>this.scrollDown(x))),this._parser.registerCsiHandler({final:"X"},(x=>this.eraseChars(x))),this._parser.registerCsiHandler({final:"Z"},(x=>this.cursorBackwardTab(x))),this._parser.registerCsiHandler({final:"`"},(x=>this.charPosAbsolute(x))),this._parser.registerCsiHandler({final:"a"},(x=>this.hPositionRelative(x))),this._parser.registerCsiHandler({final:"b"},(x=>this.repeatPrecedingCharacter(x))),this._parser.registerCsiHandler({final:"c"},(x=>this.sendDeviceAttributesPrimary(x))),this._parser.registerCsiHandler({prefix:">",final:"c"},(x=>this.sendDeviceAttributesSecondary(x))),this._parser.registerCsiHandler({final:"d"},(x=>this.linePosAbsolute(x))),this._parser.registerCsiHandler({final:"e"},(x=>this.vPositionRelative(x))),this._parser.registerCsiHandler({final:"f"},(x=>this.hVPosition(x))),this._parser.registerCsiHandler({final:"g"},(x=>this.tabClear(x))),this._parser.registerCsiHandler({final:"h"},(x=>this.setMode(x))),this._parser.registerCsiHandler({prefix:"?",final:"h"},(x=>this.setModePrivate(x))),this._parser.registerCsiHandler({final:"l"},(x=>this.resetMode(x))),this._parser.registerCsiHandler({prefix:"?",final:"l"},(x=>this.resetModePrivate(x))),this._parser.registerCsiHandler({final:"m"},(x=>this.charAttributes(x))),this._parser.registerCsiHandler({final:"n"},(x=>this.deviceStatus(x))),this._parser.registerCsiHandler({prefix:"?",final:"n"},(x=>this.deviceStatusPrivate(x))),this._parser.registerCsiHandler({intermediates:"!",final:"p"},(x=>this.softReset(x))),this._parser.registerCsiHandler({intermediates:" ",final:"q"},(x=>this.setCursorStyle(x))),this._parser.registerCsiHandler({final:"r"},(x=>this.setScrollRegion(x))),this._parser.registerCsiHandler({final:"s"},(x=>this.saveCursor(x))),this._parser.registerCsiHandler({final:"t"},(x=>this.windowOptions(x))),this._parser.registerCsiHandler({final:"u"},(x=>this.restoreCursor(x))),this._parser.registerCsiHandler({intermediates:"'",final:"}"},(x=>this.insertColumns(x))),this._parser.registerCsiHandler({intermediates:"'",final:"~"},(x=>this.deleteColumns(x))),this._parser.registerCsiHandler({intermediates:'"',final:"q"},(x=>this.selectProtected(x))),this._parser.registerCsiHandler({intermediates:"$",final:"p"},(x=>this.requestMode(x,!0))),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},(x=>this.requestMode(x,!1))),this._parser.setExecuteHandler(h.C0.BEL,(()=>this.bell())),this._parser.setExecuteHandler(h.C0.LF,(()=>this.lineFeed())),this._parser.setExecuteHandler(h.C0.VT,(()=>this.lineFeed())),this._parser.setExecuteHandler(h.C0.FF,(()=>this.lineFeed())),this._parser.setExecuteHandler(h.C0.CR,(()=>this.carriageReturn())),this._parser.setExecuteHandler(h.C0.BS,(()=>this.backspace())),this._parser.setExecuteHandler(h.C0.HT,(()=>this.tab())),this._parser.setExecuteHandler(h.C0.SO,(()=>this.shiftOut())),this._parser.setExecuteHandler(h.C0.SI,(()=>this.shiftIn())),this._parser.setExecuteHandler(h.C1.IND,(()=>this.index())),this._parser.setExecuteHandler(h.C1.NEL,(()=>this.nextLine())),this._parser.setExecuteHandler(h.C1.HTS,(()=>this.tabSet())),this._parser.registerOscHandler(0,new w.OscHandler((x=>(this.setTitle(x),this.setIconName(x),!0)))),this._parser.registerOscHandler(1,new w.OscHandler((x=>this.setIconName(x)))),this._parser.registerOscHandler(2,new w.OscHandler((x=>this.setTitle(x)))),this._parser.registerOscHandler(4,new w.OscHandler((x=>this.setOrReportIndexedColor(x)))),this._parser.registerOscHandler(8,new w.OscHandler((x=>this.setHyperlink(x)))),this._parser.registerOscHandler(10,new w.OscHandler((x=>this.setOrReportFgColor(x)))),this._parser.registerOscHandler(11,new w.OscHandler((x=>this.setOrReportBgColor(x)))),this._parser.registerOscHandler(12,new w.OscHandler((x=>this.setOrReportCursorColor(x)))),this._parser.registerOscHandler(104,new w.OscHandler((x=>this.restoreIndexedColor(x)))),this._parser.registerOscHandler(110,new w.OscHandler((x=>this.restoreFgColor(x)))),this._parser.registerOscHandler(111,new w.OscHandler((x=>this.restoreBgColor(x)))),this._parser.registerOscHandler(112,new w.OscHandler((x=>this.restoreCursorColor(x)))),this._parser.registerEscHandler({final:"7"},(()=>this.saveCursor())),this._parser.registerEscHandler({final:"8"},(()=>this.restoreCursor())),this._parser.registerEscHandler({final:"D"},(()=>this.index())),this._parser.registerEscHandler({final:"E"},(()=>this.nextLine())),this._parser.registerEscHandler({final:"H"},(()=>this.tabSet())),this._parser.registerEscHandler({final:"M"},(()=>this.reverseIndex())),this._parser.registerEscHandler({final:"="},(()=>this.keypadApplicationMode())),this._parser.registerEscHandler({final:">"},(()=>this.keypadNumericMode())),this._parser.registerEscHandler({final:"c"},(()=>this.fullReset())),this._parser.registerEscHandler({final:"n"},(()=>this.setgLevel(2))),this._parser.registerEscHandler({final:"o"},(()=>this.setgLevel(3))),this._parser.registerEscHandler({final:"|"},(()=>this.setgLevel(3))),this._parser.registerEscHandler({final:"}"},(()=>this.setgLevel(2))),this._parser.registerEscHandler({final:"~"},(()=>this.setgLevel(1))),this._parser.registerEscHandler({intermediates:"%",final:"@"},(()=>this.selectDefaultCharset())),this._parser.registerEscHandler({intermediates:"%",final:"G"},(()=>this.selectDefaultCharset()));for(const x in u.CHARSETS)this._parser.registerEscHandler({intermediates:"(",final:x},(()=>this.selectCharset("("+x))),this._parser.registerEscHandler({intermediates:")",final:x},(()=>this.selectCharset(")"+x))),this._parser.registerEscHandler({intermediates:"*",final:x},(()=>this.selectCharset("*"+x))),this._parser.registerEscHandler({intermediates:"+",final:x},(()=>this.selectCharset("+"+x))),this._parser.registerEscHandler({intermediates:"-",final:x},(()=>this.selectCharset("-"+x))),this._parser.registerEscHandler({intermediates:".",final:x},(()=>this.selectCharset("."+x))),this._parser.registerEscHandler({intermediates:"/",final:x},(()=>this.selectCharset("/"+x)));this._parser.registerEscHandler({intermediates:"#",final:"8"},(()=>this.screenAlignmentPattern())),this._parser.setErrorHandler((x=>(this._logService.error("Parsing error: ",x),x))),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new f.DcsHandler(((x,N)=>this.requestStatusString(x,N))))}_preserveStack(C,E,M,T){this._parseStack.paused=!0,this._parseStack.cursorStartX=C,this._parseStack.cursorStartY=E,this._parseStack.decodedLength=M,this._parseStack.position=T}_logSlowResolvingAsync(C){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([C,new Promise(((E,M)=>setTimeout((()=>M("#SLOW_TIMEOUT")),5e3)))]).catch((E=>{if(E!=="#SLOW_TIMEOUT")throw E;console.warn("async parser handler taking longer than 5000 ms")}))}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(C,E){let M,T=this._activeBuffer.x,U=this._activeBuffer.y,j=0;const V=this._parseStack.paused;if(V){if(M=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,E))return this._logSlowResolvingAsync(M),M;T=this._parseStack.cursorStartX,U=this._parseStack.cursorStartY,this._parseStack.paused=!1,C.length>A&&(j=this._parseStack.position+A)}if(this._logService.logLevel<=g.LogLevelEnum.DEBUG&&this._logService.debug("parsing data"+(typeof C=="string"?` "${C}"`:` "${Array.prototype.map.call(C,(x=>String.fromCharCode(x))).join("")}"`),typeof C=="string"?C.split("").map((x=>x.charCodeAt(0))):C),this._parseBuffer.lengthA)for(let x=j;x0&&z.getWidth(this._activeBuffer.x-1)===2&&z.setCellFromCodepoint(this._activeBuffer.x-1,0,1,N);let K=this._parser.precedingJoinState;for(let q=E;qG){if(I){const ce=z;let X=this._activeBuffer.x-ee;for(this._activeBuffer.x=ee,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),z=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),ee>0&&z instanceof n.BufferLine&&z.copyCellsFrom(ce,X,0,ee,!1);X=0;)z.setCellFromCodepoint(this._activeBuffer.x++,0,0,N)}else if(x&&(z.insertCells(this._activeBuffer.x,U-ee,this._activeBuffer.getNullCell(N)),z.getWidth(G-1)===2&&z.setCellFromCodepoint(G-1,t.NULL_CELL_CODE,t.NULL_CELL_WIDTH,N)),z.setCellFromCodepoint(this._activeBuffer.x++,T,U,N),U>0)for(;--U;)z.setCellFromCodepoint(this._activeBuffer.x++,0,0,N)}this._parser.precedingJoinState=K,this._activeBuffer.x0&&z.getWidth(this._activeBuffer.x)===0&&!z.hasContent(this._activeBuffer.x)&&z.setCellFromCodepoint(this._activeBuffer.x,0,1,N),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(C,E){return C.final!=="t"||C.prefix||C.intermediates?this._parser.registerCsiHandler(C,E):this._parser.registerCsiHandler(C,(M=>!D(M.params[0],this._optionsService.rawOptions.windowOptions)||E(M)))}registerDcsHandler(C,E){return this._parser.registerDcsHandler(C,new f.DcsHandler(E))}registerEscHandler(C,E){return this._parser.registerEscHandler(C,E)}registerOscHandler(C,E){return this._parser.registerOscHandler(C,new w.OscHandler(E))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;const C=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);C.hasWidth(this._activeBuffer.x)&&!C.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;const C=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-C),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(C=this._bufferService.cols-1){this._activeBuffer.x=Math.min(C,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(C,E){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=C,this._activeBuffer.y=this._activeBuffer.scrollTop+E):(this._activeBuffer.x=C,this._activeBuffer.y=E),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(C,E){this._restrictCursor(),this._setCursor(this._activeBuffer.x+C,this._activeBuffer.y+E)}cursorUp(C){const E=this._activeBuffer.y-this._activeBuffer.scrollTop;return E>=0?this._moveCursor(0,-Math.min(E,C.params[0]||1)):this._moveCursor(0,-(C.params[0]||1)),!0}cursorDown(C){const E=this._activeBuffer.scrollBottom-this._activeBuffer.y;return E>=0?this._moveCursor(0,Math.min(E,C.params[0]||1)):this._moveCursor(0,C.params[0]||1),!0}cursorForward(C){return this._moveCursor(C.params[0]||1,0),!0}cursorBackward(C){return this._moveCursor(-(C.params[0]||1),0),!0}cursorNextLine(C){return this.cursorDown(C),this._activeBuffer.x=0,!0}cursorPrecedingLine(C){return this.cursorUp(C),this._activeBuffer.x=0,!0}cursorCharAbsolute(C){return this._setCursor((C.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(C){return this._setCursor(C.length>=2?(C.params[1]||1)-1:0,(C.params[0]||1)-1),!0}charPosAbsolute(C){return this._setCursor((C.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(C){return this._moveCursor(C.params[0]||1,0),!0}linePosAbsolute(C){return this._setCursor(this._activeBuffer.x,(C.params[0]||1)-1),!0}vPositionRelative(C){return this._moveCursor(0,C.params[0]||1),!0}hVPosition(C){return this.cursorPosition(C),!0}tabClear(C){const E=C.params[0];return E===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:E===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(C){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let E=C.params[0]||1;for(;E--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(C){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let E=C.params[0]||1;for(;E--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(C){const E=C.params[0];return E===1&&(this._curAttrData.bg|=536870912),E!==2&&E!==0||(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(C,E,M,T=!1,U=!1){const j=this._activeBuffer.lines.get(this._activeBuffer.ybase+C);j.replaceCells(E,M,this._activeBuffer.getNullCell(this._eraseAttrData()),U),T&&(j.isWrapped=!1)}_resetBufferLine(C,E=!1){const M=this._activeBuffer.lines.get(this._activeBuffer.ybase+C);M&&(M.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),E),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+C),M.isWrapped=!1)}eraseInDisplay(C,E=!1){let M;switch(this._restrictCursor(this._bufferService.cols),C.params[0]){case 0:for(M=this._activeBuffer.y,this._dirtyRowTracker.markDirty(M),this._eraseInBufferLine(M++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,E);M=this._bufferService.cols&&(this._activeBuffer.lines.get(M+1).isWrapped=!1);M--;)this._resetBufferLine(M,E);this._dirtyRowTracker.markDirty(0);break;case 2:for(M=this._bufferService.rows,this._dirtyRowTracker.markDirty(M-1);M--;)this._resetBufferLine(M,E);this._dirtyRowTracker.markDirty(0);break;case 3:const T=this._activeBuffer.lines.length-this._bufferService.rows;T>0&&(this._activeBuffer.lines.trimStart(T),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-T,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-T,0),this._onScroll.fire(0))}return!0}eraseInLine(C,E=!1){switch(this._restrictCursor(this._bufferService.cols),C.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,E);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,E);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,E)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(C){this._restrictCursor();let E=C.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.ythis._activeBuffer.scrollBottom||this._activeBuffer.y65535?2:1}let I=G;for(let x=1;x0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(h.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(h.C0.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(C){return C.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(h.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(h.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(C.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(h.C0.ESC+"[>83;40003;0c")),!0}_is(C){return(this._optionsService.rawOptions.termName+"").indexOf(C)===0}setMode(C){for(let E=0;EJ?1:2,K=C.params[0];return q=K,Y=E?K===2?4:K===4?z(j.modes.insertMode):K===12?3:K===20?z(N.convertEol):0:K===1?z(M.applicationCursorKeys):K===3?N.windowOptions.setWinLines?G===80?2:G===132?1:0:0:K===6?z(M.origin):K===7?z(M.wraparound):K===8?3:K===9?z(T==="X10"):K===12?z(N.cursorBlink):K===25?z(!j.isCursorHidden):K===45?z(M.reverseWraparound):K===66?z(M.applicationKeypad):K===67?4:K===1e3?z(T==="VT200"):K===1002?z(T==="DRAG"):K===1003?z(T==="ANY"):K===1004?z(M.sendFocus):K===1005?4:K===1006?z(U==="SGR"):K===1015?4:K===1016?z(U==="SGR_PIXELS"):K===1048?1:K===47||K===1047||K===1049?z(I===x):K===2004?z(M.bracketedPasteMode):0,j.triggerDataEvent(`${h.C0.ESC}[${E?"":"?"}${q};${Y}$y`),!0;var q,Y}_updateAttrColor(C,E,M,T,U){return E===2?(C|=50331648,C&=-16777216,C|=c.AttributeData.fromColorRGB([M,T,U])):E===5&&(C&=-50331904,C|=33554432|255&M),C}_extractColor(C,E,M){const T=[0,0,-1,0,0,0];let U=0,j=0;do{if(T[j+U]=C.params[E+j],C.hasSubParams(E+j)){const V=C.getSubParams(E+j);let G=0;do T[1]===5&&(U=1),T[j+G+1+U]=V[G];while(++G=2||T[1]===2&&j+U>=5)break;T[1]&&(U=1)}while(++j+E5)&&(C=1),E.extended.underlineStyle=C,E.fg|=268435456,C===0&&(E.fg&=-268435457),E.updateExtended()}_processSGR0(C){C.fg=n.DEFAULT_ATTR_DATA.fg,C.bg=n.DEFAULT_ATTR_DATA.bg,C.extended=C.extended.clone(),C.extended.underlineStyle=0,C.extended.underlineColor&=-67108864,C.updateExtended()}charAttributes(C){if(C.length===1&&C.params[0]===0)return this._processSGR0(this._curAttrData),!0;const E=C.length;let M;const T=this._curAttrData;for(let U=0;U=30&&M<=37?(T.fg&=-50331904,T.fg|=16777216|M-30):M>=40&&M<=47?(T.bg&=-50331904,T.bg|=16777216|M-40):M>=90&&M<=97?(T.fg&=-50331904,T.fg|=16777224|M-90):M>=100&&M<=107?(T.bg&=-50331904,T.bg|=16777224|M-100):M===0?this._processSGR0(T):M===1?T.fg|=134217728:M===3?T.bg|=67108864:M===4?(T.fg|=268435456,this._processUnderline(C.hasSubParams(U)?C.getSubParams(U)[0]:1,T)):M===5?T.fg|=536870912:M===7?T.fg|=67108864:M===8?T.fg|=1073741824:M===9?T.fg|=2147483648:M===2?T.bg|=134217728:M===21?this._processUnderline(2,T):M===22?(T.fg&=-134217729,T.bg&=-134217729):M===23?T.bg&=-67108865:M===24?(T.fg&=-268435457,this._processUnderline(0,T)):M===25?T.fg&=-536870913:M===27?T.fg&=-67108865:M===28?T.fg&=-1073741825:M===29?T.fg&=2147483647:M===39?(T.fg&=-67108864,T.fg|=16777215&n.DEFAULT_ATTR_DATA.fg):M===49?(T.bg&=-67108864,T.bg|=16777215&n.DEFAULT_ATTR_DATA.bg):M===38||M===48||M===58?U+=this._extractColor(C,U,T):M===53?T.bg|=1073741824:M===55?T.bg&=-1073741825:M===59?(T.extended=T.extended.clone(),T.extended.underlineColor=-1,T.updateExtended()):M===100?(T.fg&=-67108864,T.fg|=16777215&n.DEFAULT_ATTR_DATA.fg,T.bg&=-67108864,T.bg|=16777215&n.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",M);return!0}deviceStatus(C){switch(C.params[0]){case 5:this._coreService.triggerDataEvent(`${h.C0.ESC}[0n`);break;case 6:const E=this._activeBuffer.y+1,M=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${h.C0.ESC}[${E};${M}R`)}return!0}deviceStatusPrivate(C){if(C.params[0]===6){const E=this._activeBuffer.y+1,M=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${h.C0.ESC}[?${E};${M}R`)}return!0}softReset(C){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=n.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(C){const E=C.params[0]||1;switch(E){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}const M=E%2==1;return this._optionsService.options.cursorBlink=M,!0}setScrollRegion(C){const E=C.params[0]||1;let M;return(C.length<2||(M=C.params[1])>this._bufferService.rows||M===0)&&(M=this._bufferService.rows),M>E&&(this._activeBuffer.scrollTop=E-1,this._activeBuffer.scrollBottom=M-1,this._setCursor(0,0)),!0}windowOptions(C){if(!D(C.params[0],this._optionsService.rawOptions.windowOptions))return!0;const E=C.length>1?C.params[1]:0;switch(C.params[0]){case 14:E!==2&&this._onRequestWindowsOptionsReport.fire(L.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(L.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${h.C0.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:E!==0&&E!==2||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),E!==0&&E!==1||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:E!==0&&E!==2||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),E!==0&&E!==1||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(C){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(C){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(C){return this._windowTitle=C,this._onTitleChange.fire(C),!0}setIconName(C){return this._iconName=C,!0}setOrReportIndexedColor(C){const E=[],M=C.split(";");for(;M.length>1;){const T=M.shift(),U=M.shift();if(/^\d+$/.exec(T)){const j=parseInt(T);if(W(j))if(U==="?")E.push({type:0,index:j});else{const V=(0,y.parseColor)(U);V&&E.push({type:1,index:j,color:V})}}}return E.length&&this._onColor.fire(E),!0}setHyperlink(C){const E=C.split(";");return!(E.length<2)&&(E[1]?this._createHyperlink(E[0],E[1]):!E[0]&&this._finishHyperlink())}_createHyperlink(C,E){this._getCurrentLinkId()&&this._finishHyperlink();const M=C.split(":");let T;const U=M.findIndex((j=>j.startsWith("id=")));return U!==-1&&(T=M[U].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:T,uri:E}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(C,E){const M=C.split(";");for(let T=0;T=this._specialColors.length);++T,++E)if(M[T]==="?")this._onColor.fire([{type:0,index:this._specialColors[E]}]);else{const U=(0,y.parseColor)(M[T]);U&&this._onColor.fire([{type:1,index:this._specialColors[E],color:U}])}return!0}setOrReportFgColor(C){return this._setOrReportSpecialColor(C,0)}setOrReportBgColor(C){return this._setOrReportSpecialColor(C,1)}setOrReportCursorColor(C){return this._setOrReportSpecialColor(C,2)}restoreIndexedColor(C){if(!C)return this._onColor.fire([{type:2}]),!0;const E=[],M=C.split(";");for(let T=0;T=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){const C=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,C,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=n.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=n.DEFAULT_ATTR_DATA.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal}setgLevel(C){return this._charsetService.setgLevel(C),!0}screenAlignmentPattern(){const C=new s.CellData;C.content=4194373,C.fg=this._curAttrData.fg,C.bg=this._curAttrData.bg,this._setCursor(0,0);for(let E=0;E(this._coreService.triggerDataEvent(`${h.C0.ESC}${U}${h.C0.ESC}\\`),!0))(C==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:C==='"p'?'P1$r61;1"p':C==="r"?`P1$r${M.scrollTop+1};${M.scrollBottom+1}r`:C==="m"?"P1$r0m":C===" q"?`P1$r${{block:2,underline:4,bar:6}[T.cursorStyle]-(T.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(C,E){this._dirtyRowTracker.markRangeDirty(C,E)}}i.InputHandler=F;let $=class{constructor(H){this._bufferService=H,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(H){Hthis.end&&(this.end=H)}markRangeDirty(H,C){H>C&&(P=H,H=C,C=P),Hthis.end&&(this.end=C)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};function W(H){return 0<=H&&H<256}$=l([d(0,g.IBufferService)],$)},844:(R,i)=>{function a(l){for(const d of l)d.dispose();l.length=0}Object.defineProperty(i,"__esModule",{value:!0}),i.getDisposeArrayDisposable=i.disposeArray=i.toDisposable=i.MutableDisposable=i.Disposable=void 0,i.Disposable=class{constructor(){this._disposables=[],this._isDisposed=!1}dispose(){this._isDisposed=!0;for(const l of this._disposables)l.dispose();this._disposables.length=0}register(l){return this._disposables.push(l),l}unregister(l){const d=this._disposables.indexOf(l);d!==-1&&this._disposables.splice(d,1)}},i.MutableDisposable=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(l){this._isDisposed||l===this._value||(this._value?.dispose(),this._value=l)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}},i.toDisposable=function(l){return{dispose:l}},i.disposeArray=a,i.getDisposeArrayDisposable=function(l){return{dispose:()=>a(l)}}},1505:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.FourKeyMap=i.TwoKeyMap=void 0;class a{constructor(){this._data={}}set(d,h,u){this._data[d]||(this._data[d]={}),this._data[d][h]=u}get(d,h){return this._data[d]?this._data[d][h]:void 0}clear(){this._data={}}}i.TwoKeyMap=a,i.FourKeyMap=class{constructor(){this._data=new a}set(l,d,h,u,v){this._data.get(l,d)||this._data.set(l,d,new a),this._data.get(l,d).set(h,u,v)}get(l,d,h,u){return this._data.get(l,d)?.get(h,u)}clear(){this._data.clear()}}},6114:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.isChromeOS=i.isLinux=i.isWindows=i.isIphone=i.isIpad=i.isMac=i.getSafariVersion=i.isSafari=i.isLegacyEdge=i.isFirefox=i.isNode=void 0,i.isNode=typeof process<"u"&&"title"in process;const a=i.isNode?"node":navigator.userAgent,l=i.isNode?"node":navigator.platform;i.isFirefox=a.includes("Firefox"),i.isLegacyEdge=a.includes("Edge"),i.isSafari=/^((?!chrome|android).)*safari/i.test(a),i.getSafariVersion=function(){if(!i.isSafari)return 0;const d=a.match(/Version\/(\d+)/);return d===null||d.length<2?0:parseInt(d[1])},i.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(l),i.isIpad=l==="iPad",i.isIphone=l==="iPhone",i.isWindows=["Windows","Win16","Win32","WinCE"].includes(l),i.isLinux=l.indexOf("Linux")>=0,i.isChromeOS=/\bCrOS\b/.test(a)},6106:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.SortedList=void 0;let a=0;i.SortedList=class{constructor(l){this._getKey=l,this._array=[]}clear(){this._array.length=0}insert(l){this._array.length!==0?(a=this._search(this._getKey(l)),this._array.splice(a,0,l)):this._array.push(l)}delete(l){if(this._array.length===0)return!1;const d=this._getKey(l);if(d===void 0||(a=this._search(d),a===-1)||this._getKey(this._array[a])!==d)return!1;do if(this._array[a]===l)return this._array.splice(a,1),!0;while(++a=this._array.length)&&this._getKey(this._array[a])===l))do yield this._array[a];while(++a=this._array.length)&&this._getKey(this._array[a])===l))do d(this._array[a]);while(++a=d;){let u=d+h>>1;const v=this._getKey(this._array[u]);if(v>l)h=u-1;else{if(!(v0&&this._getKey(this._array[u-1])===l;)u--;return u}d=u+1}}return d}}},7226:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.DebouncedIdleTask=i.IdleTaskQueue=i.PriorityTaskQueue=void 0;const l=a(6114);class d{constructor(){this._tasks=[],this._i=0}enqueue(v){this._tasks.push(v),this._start()}flush(){for(;this._io)return n-m<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(n-m))}ms`),void this._start();n=o}this.clear()}}class h extends d{_requestCallback(v){return setTimeout((()=>v(this._createDeadline(16))))}_cancelCallback(v){clearTimeout(v)}_createDeadline(v){const m=Date.now()+v;return{timeRemaining:()=>Math.max(0,m-Date.now())}}}i.PriorityTaskQueue=h,i.IdleTaskQueue=!l.isNode&&"requestIdleCallback"in window?class extends d{_requestCallback(u){return requestIdleCallback(u)}_cancelCallback(u){cancelIdleCallback(u)}}:h,i.DebouncedIdleTask=class{constructor(){this._queue=new i.IdleTaskQueue}set(u){this._queue.clear(),this._queue.enqueue(u)}flush(){this._queue.flush()}}},9282:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.updateWindowsModeWrappedState=void 0;const l=a(643);i.updateWindowsModeWrappedState=function(d){const h=d.buffer.lines.get(d.buffer.ybase+d.buffer.y-1),u=h?.get(d.cols-1),v=d.buffer.lines.get(d.buffer.ybase+d.buffer.y);v&&u&&(v.isWrapped=u[l.CHAR_DATA_CODE_INDEX]!==l.NULL_CELL_CODE&&u[l.CHAR_DATA_CODE_INDEX]!==l.WHITESPACE_CELL_CODE)}},3734:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.ExtendedAttrs=i.AttributeData=void 0;class a{constructor(){this.fg=0,this.bg=0,this.extended=new l}static toColorRGB(h){return[h>>>16&255,h>>>8&255,255&h]}static fromColorRGB(h){return(255&h[0])<<16|(255&h[1])<<8|255&h[2]}clone(){const h=new a;return h.fg=this.fg,h.bg=this.bg,h.extended=this.extended.clone(),h}isInverse(){return 67108864&this.fg}isBold(){return 134217728&this.fg}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:268435456&this.fg}isBlink(){return 536870912&this.fg}isInvisible(){return 1073741824&this.fg}isItalic(){return 67108864&this.bg}isDim(){return 134217728&this.bg}isStrikethrough(){return 2147483648&this.fg}isProtected(){return 536870912&this.bg}isOverline(){return 1073741824&this.bg}getFgColorMode(){return 50331648&this.fg}getBgColorMode(){return 50331648&this.bg}isFgRGB(){return(50331648&this.fg)==50331648}isBgRGB(){return(50331648&this.bg)==50331648}isFgPalette(){return(50331648&this.fg)==16777216||(50331648&this.fg)==33554432}isBgPalette(){return(50331648&this.bg)==16777216||(50331648&this.bg)==33554432}isFgDefault(){return(50331648&this.fg)==0}isBgDefault(){return(50331648&this.bg)==0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}}getBgColor(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}}hasExtendedAttrs(){return 268435456&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==16777216||(50331648&this.extended.underlineColor)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}}i.AttributeData=a;class l{get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(h){this._ext=h}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(h){this._ext&=-469762049,this._ext|=h<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(h){this._ext&=-67108864,this._ext|=67108863&h}get urlId(){return this._urlId}set urlId(h){this._urlId=h}get underlineVariantOffset(){const h=(3758096384&this._ext)>>29;return h<0?4294967288^h:h}set underlineVariantOffset(h){this._ext&=536870911,this._ext|=h<<29&3758096384}constructor(h=0,u=0){this._ext=0,this._urlId=0,this._ext=h,this._urlId=u}clone(){return new l(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}}i.ExtendedAttrs=l},9092:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.Buffer=i.MAX_BUFFER_SIZE=void 0;const l=a(6349),d=a(7226),h=a(3734),u=a(8437),v=a(4634),m=a(511),_=a(643),n=a(4863),o=a(7116);i.MAX_BUFFER_SIZE=4294967295,i.Buffer=class{constructor(t,s,c){this._hasScrollback=t,this._optionsService=s,this._bufferService=c,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=u.DEFAULT_ATTR_DATA.clone(),this.savedCharset=o.DEFAULT_CHARSET,this.markers=[],this._nullCell=m.CellData.fromCharData([0,_.NULL_CELL_CHAR,_.NULL_CELL_WIDTH,_.NULL_CELL_CODE]),this._whitespaceCell=m.CellData.fromCharData([0,_.WHITESPACE_CELL_CHAR,_.WHITESPACE_CELL_WIDTH,_.WHITESPACE_CELL_CODE]),this._isClearing=!1,this._memoryCleanupQueue=new d.IdleTaskQueue,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new l.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(t){return t?(this._nullCell.fg=t.fg,this._nullCell.bg=t.bg,this._nullCell.extended=t.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell}getWhitespaceCell(t){return t?(this._whitespaceCell.fg=t.fg,this._whitespaceCell.bg=t.bg,this._whitespaceCell.extended=t.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell}getBlankLine(t,s){return new u.BufferLine(this._bufferService.cols,this.getNullCell(t),s)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){const t=this.ybase+this.y-this.ydisp;return t>=0&&ti.MAX_BUFFER_SIZE?i.MAX_BUFFER_SIZE:s}fillViewportRows(t){if(this.lines.length===0){t===void 0&&(t=u.DEFAULT_ATTR_DATA);let s=this._rows;for(;s--;)this.lines.push(this.getBlankLine(t))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new l.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(t,s){const c=this.getNullCell(u.DEFAULT_ATTR_DATA);let g=0;const p=this._getCorrectBufferLength(s);if(p>this.lines.maxLength&&(this.lines.maxLength=p),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+w+1?(this.ybase--,w++,this.ydisp>0&&this.ydisp--):this.lines.push(new u.BufferLine(t,c)));else for(let f=this._rows;f>s;f--)this.lines.length>s+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(p0&&(this.lines.trimStart(f),this.ybase=Math.max(this.ybase-f,0),this.ydisp=Math.max(this.ydisp-f,0),this.savedY=Math.max(this.savedY-f,0)),this.lines.maxLength=p}this.x=Math.min(this.x,t-1),this.y=Math.min(this.y,s-1),w&&(this.y+=w),this.savedX=Math.min(this.savedX,t-1),this.scrollTop=0}if(this.scrollBottom=s-1,this._isReflowEnabled&&(this._reflow(t,s),this._cols>t))for(let w=0;w.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue((()=>this._batchedMemoryCleanup())))}_batchedMemoryCleanup(){let t=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,t=!1);let s=0;for(;this._memoryCleanupPosition100)return!0;return t}get _isReflowEnabled(){const t=this._optionsService.rawOptions.windowsPty;return t&&t.buildNumber?this._hasScrollback&&t.backend==="conpty"&&t.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(t,s){this._cols!==t&&(t>this._cols?this._reflowLarger(t,s):this._reflowSmaller(t,s))}_reflowLarger(t,s){const c=(0,v.reflowLargerGetLinesToRemove)(this.lines,this._cols,t,this.ybase+this.y,this.getNullCell(u.DEFAULT_ATTR_DATA));if(c.length>0){const g=(0,v.reflowLargerCreateNewLayout)(this.lines,c);(0,v.reflowLargerApplyNewLayout)(this.lines,g.layout),this._reflowLargerAdjustViewport(t,s,g.countRemoved)}}_reflowLargerAdjustViewport(t,s,c){const g=this.getNullCell(u.DEFAULT_ATTR_DATA);let p=c;for(;p-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length=0;w--){let f=this.lines.get(w);if(!f||!f.isWrapped&&f.getTrimmedLength()<=t)continue;const y=[f];for(;f.isWrapped&&w>0;)f=this.lines.get(--w),y.unshift(f);const B=this.ybase+this.y;if(B>=w&&B0&&(g.push({start:w+y.length+p,newLines:F}),p+=F.length),y.push(...F);let $=D.length-1,W=D[$];W===0&&($--,W=D[$]);let H=y.length-L-1,C=A;for(;H>=0;){const M=Math.min(C,W);if(y[$]===void 0)break;if(y[$].copyCellsFrom(y[H],C-M,W-M,M,!0),W-=M,W===0&&($--,W=D[$]),C-=M,C===0){H--;const T=Math.max(H,0);C=(0,v.getWrappedLineTrimmedLength)(y,T,this._cols)}}for(let M=0;M0;)this.ybase===0?this.y0){const w=[],f=[];for(let $=0;$=0;$--)if(D&&D.start>B+L){for(let W=D.newLines.length-1;W>=0;W--)this.lines.set($--,D.newLines[W]);$++,w.push({index:B+1,amount:D.newLines.length}),L+=D.newLines.length,D=g[++A]}else this.lines.set($,f[B--]);let P=0;for(let $=w.length-1;$>=0;$--)w[$].index+=P,this.lines.onInsertEmitter.fire(w[$]),P+=w[$].amount;const F=Math.max(0,y+p-this.lines.maxLength);F>0&&this.lines.onTrimEmitter.fire(F)}}translateBufferLineToString(t,s,c=0,g){const p=this.lines.get(t);return p?p.translateToString(s,c,g):""}getWrappedRangeForLine(t){let s=t,c=t;for(;s>0&&this.lines.get(s).isWrapped;)s--;for(;c+10;);return t>=this._cols?this._cols-1:t<0?0:t}nextStop(t){for(t==null&&(t=this.x);!this.tabs[++t]&&t=this._cols?this._cols-1:t<0?0:t}clearMarkers(t){this._isClearing=!0;for(let s=0;s{s.line-=c,s.line<0&&s.dispose()}))),s.register(this.lines.onInsert((c=>{s.line>=c.index&&(s.line+=c.amount)}))),s.register(this.lines.onDelete((c=>{s.line>=c.index&&s.linec.index&&(s.line-=c.amount)}))),s.register(s.onDispose((()=>this._removeMarker(s)))),s}_removeMarker(t){this._isClearing||this.markers.splice(this.markers.indexOf(t),1)}}},8437:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.BufferLine=i.DEFAULT_ATTR_DATA=void 0;const l=a(3734),d=a(511),h=a(643),u=a(482);i.DEFAULT_ATTR_DATA=Object.freeze(new l.AttributeData);let v=0;class m{constructor(n,o,t=!1){this.isWrapped=t,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*n);const s=o||d.CellData.fromCharData([0,h.NULL_CELL_CHAR,h.NULL_CELL_WIDTH,h.NULL_CELL_CODE]);for(let c=0;c>22,2097152&o?this._combined[n].charCodeAt(this._combined[n].length-1):t]}set(n,o){this._data[3*n+1]=o[h.CHAR_DATA_ATTR_INDEX],o[h.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[n]=o[1],this._data[3*n+0]=2097152|n|o[h.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*n+0]=o[h.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|o[h.CHAR_DATA_WIDTH_INDEX]<<22}getWidth(n){return this._data[3*n+0]>>22}hasWidth(n){return 12582912&this._data[3*n+0]}getFg(n){return this._data[3*n+1]}getBg(n){return this._data[3*n+2]}hasContent(n){return 4194303&this._data[3*n+0]}getCodePoint(n){const o=this._data[3*n+0];return 2097152&o?this._combined[n].charCodeAt(this._combined[n].length-1):2097151&o}isCombined(n){return 2097152&this._data[3*n+0]}getString(n){const o=this._data[3*n+0];return 2097152&o?this._combined[n]:2097151&o?(0,u.stringFromCodePoint)(2097151&o):""}isProtected(n){return 536870912&this._data[3*n+2]}loadCell(n,o){return v=3*n,o.content=this._data[v+0],o.fg=this._data[v+1],o.bg=this._data[v+2],2097152&o.content&&(o.combinedData=this._combined[n]),268435456&o.bg&&(o.extended=this._extendedAttrs[n]),o}setCell(n,o){2097152&o.content&&(this._combined[n]=o.combinedData),268435456&o.bg&&(this._extendedAttrs[n]=o.extended),this._data[3*n+0]=o.content,this._data[3*n+1]=o.fg,this._data[3*n+2]=o.bg}setCellFromCodepoint(n,o,t,s){268435456&s.bg&&(this._extendedAttrs[n]=s.extended),this._data[3*n+0]=o|t<<22,this._data[3*n+1]=s.fg,this._data[3*n+2]=s.bg}addCodepointToCell(n,o,t){let s=this._data[3*n+0];2097152&s?this._combined[n]+=(0,u.stringFromCodePoint)(o):2097151&s?(this._combined[n]=(0,u.stringFromCodePoint)(2097151&s)+(0,u.stringFromCodePoint)(o),s&=-2097152,s|=2097152):s=o|4194304,t&&(s&=-12582913,s|=t<<22),this._data[3*n+0]=s}insertCells(n,o,t){if((n%=this.length)&&this.getWidth(n-1)===2&&this.setCellFromCodepoint(n-1,0,1,t),o=0;--c)this.setCell(n+o+c,this.loadCell(n+c,s));for(let c=0;cthis.length){if(this._data.buffer.byteLength>=4*t)this._data=new Uint32Array(this._data.buffer,0,t);else{const s=new Uint32Array(t);s.set(this._data),this._data=s}for(let s=this.length;s=n&&delete this._combined[p]}const c=Object.keys(this._extendedAttrs);for(let g=0;g=n&&delete this._extendedAttrs[p]}}return this.length=n,4*t*2=0;--n)if(4194303&this._data[3*n+0])return n+(this._data[3*n+0]>>22);return 0}getNoBgTrimmedLength(){for(let n=this.length-1;n>=0;--n)if(4194303&this._data[3*n+0]||50331648&this._data[3*n+2])return n+(this._data[3*n+0]>>22);return 0}copyCellsFrom(n,o,t,s,c){const g=n._data;if(c)for(let w=s-1;w>=0;w--){for(let f=0;f<3;f++)this._data[3*(t+w)+f]=g[3*(o+w)+f];268435456&g[3*(o+w)+2]&&(this._extendedAttrs[t+w]=n._extendedAttrs[o+w])}else for(let w=0;w=o&&(this._combined[f-o+t]=n._combined[f])}}translateToString(n,o,t,s){o=o??0,t=t??this.length,n&&(t=Math.min(t,this.getTrimmedLength())),s&&(s.length=0);let c="";for(;o>22||1}return s&&s.push(o),c}}i.BufferLine=m},4841:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.getRangeLength=void 0,i.getRangeLength=function(a,l){if(a.start.y>a.end.y)throw new Error(`Buffer range end (${a.end.x}, ${a.end.y}) cannot be before start (${a.start.x}, ${a.start.y})`);return l*(a.end.y-a.start.y)+(a.end.x-a.start.x+1)}},4634:(R,i)=>{function a(l,d,h){if(d===l.length-1)return l[d].getTrimmedLength();const u=!l[d].hasContent(h-1)&&l[d].getWidth(h-1)===1,v=l[d+1].getWidth(0)===2;return u&&v?h-1:h}Object.defineProperty(i,"__esModule",{value:!0}),i.getWrappedLineTrimmedLength=i.reflowSmallerGetNewLineLengths=i.reflowLargerApplyNewLayout=i.reflowLargerCreateNewLayout=i.reflowLargerGetLinesToRemove=void 0,i.reflowLargerGetLinesToRemove=function(l,d,h,u,v){const m=[];for(let _=0;_=_&&u0&&(f>s||t[f].getTrimmedLength()===0);f--)w++;w>0&&(m.push(_+t.length-w),m.push(w)),_+=t.length-1}return m},i.reflowLargerCreateNewLayout=function(l,d){const h=[];let u=0,v=d[u],m=0;for(let _=0;_a(l,t,d))).reduce(((o,t)=>o+t));let m=0,_=0,n=0;for(;no&&(m-=o,_++);const t=l[_].getWidth(m-1)===2;t&&m--;const s=t?h-1:h;u.push(s),n+=s}return u},i.getWrappedLineTrimmedLength=a},5295:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.BufferSet=void 0;const l=a(8460),d=a(844),h=a(9092);class u extends d.Disposable{constructor(m,_){super(),this._optionsService=m,this._bufferService=_,this._onBufferActivate=this.register(new l.EventEmitter),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this.register(this._optionsService.onSpecificOptionChange("scrollback",(()=>this.resize(this._bufferService.cols,this._bufferService.rows)))),this.register(this._optionsService.onSpecificOptionChange("tabStopWidth",(()=>this.setupTabStops())))}reset(){this._normal=new h.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new h.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(m){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(m),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(m,_){this._normal.resize(m,_),this._alt.resize(m,_),this.setupTabStops(m)}setupTabStops(m){this._normal.setupTabStops(m),this._alt.setupTabStops(m)}}i.BufferSet=u},511:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.CellData=void 0;const l=a(482),d=a(643),h=a(3734);class u extends h.AttributeData{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new h.ExtendedAttrs,this.combinedData=""}static fromCharData(m){const _=new u;return _.setFromCharData(m),_}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?(0,l.stringFromCodePoint)(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(m){this.fg=m[d.CHAR_DATA_ATTR_INDEX],this.bg=0;let _=!1;if(m[d.CHAR_DATA_CHAR_INDEX].length>2)_=!0;else if(m[d.CHAR_DATA_CHAR_INDEX].length===2){const n=m[d.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=n&&n<=56319){const o=m[d.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=o&&o<=57343?this.content=1024*(n-55296)+o-56320+65536|m[d.CHAR_DATA_WIDTH_INDEX]<<22:_=!0}else _=!0}else this.content=m[d.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|m[d.CHAR_DATA_WIDTH_INDEX]<<22;_&&(this.combinedData=m[d.CHAR_DATA_CHAR_INDEX],this.content=2097152|m[d.CHAR_DATA_WIDTH_INDEX]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}i.CellData=u},643:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.WHITESPACE_CELL_CODE=i.WHITESPACE_CELL_WIDTH=i.WHITESPACE_CELL_CHAR=i.NULL_CELL_CODE=i.NULL_CELL_WIDTH=i.NULL_CELL_CHAR=i.CHAR_DATA_CODE_INDEX=i.CHAR_DATA_WIDTH_INDEX=i.CHAR_DATA_CHAR_INDEX=i.CHAR_DATA_ATTR_INDEX=i.DEFAULT_EXT=i.DEFAULT_ATTR=i.DEFAULT_COLOR=void 0,i.DEFAULT_COLOR=0,i.DEFAULT_ATTR=256|i.DEFAULT_COLOR<<9,i.DEFAULT_EXT=0,i.CHAR_DATA_ATTR_INDEX=0,i.CHAR_DATA_CHAR_INDEX=1,i.CHAR_DATA_WIDTH_INDEX=2,i.CHAR_DATA_CODE_INDEX=3,i.NULL_CELL_CHAR="",i.NULL_CELL_WIDTH=1,i.NULL_CELL_CODE=0,i.WHITESPACE_CELL_CHAR=" ",i.WHITESPACE_CELL_WIDTH=1,i.WHITESPACE_CELL_CODE=32},4863:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.Marker=void 0;const l=a(8460),d=a(844);class h{get id(){return this._id}constructor(v){this.line=v,this.isDisposed=!1,this._disposables=[],this._id=h._nextId++,this._onDispose=this.register(new l.EventEmitter),this.onDispose=this._onDispose.event}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),(0,d.disposeArray)(this._disposables),this._disposables.length=0)}register(v){return this._disposables.push(v),v}}i.Marker=h,h._nextId=1},7116:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.DEFAULT_CHARSET=i.CHARSETS=void 0,i.CHARSETS={},i.DEFAULT_CHARSET=i.CHARSETS.B,i.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},i.CHARSETS.A={"#":"£"},i.CHARSETS.B=void 0,i.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},i.CHARSETS.C=i.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},i.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},i.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},i.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},i.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},i.CHARSETS.E=i.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},i.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},i.CHARSETS.H=i.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},i.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(R,i)=>{var a,l,d;Object.defineProperty(i,"__esModule",{value:!0}),i.C1_ESCAPED=i.C1=i.C0=void 0,(function(h){h.NUL="\0",h.SOH="",h.STX="",h.ETX="",h.EOT="",h.ENQ="",h.ACK="",h.BEL="\x07",h.BS="\b",h.HT=" ",h.LF=` +`,h.VT="\v",h.FF="\f",h.CR="\r",h.SO="",h.SI="",h.DLE="",h.DC1="",h.DC2="",h.DC3="",h.DC4="",h.NAK="",h.SYN="",h.ETB="",h.CAN="",h.EM="",h.SUB="",h.ESC="\x1B",h.FS="",h.GS="",h.RS="",h.US="",h.SP=" ",h.DEL=""})(a||(i.C0=a={})),(function(h){h.PAD="€",h.HOP="",h.BPH="‚",h.NBH="ƒ",h.IND="„",h.NEL="…",h.SSA="†",h.ESA="‡",h.HTS="ˆ",h.HTJ="‰",h.VTS="Š",h.PLD="‹",h.PLU="Œ",h.RI="",h.SS2="Ž",h.SS3="",h.DCS="",h.PU1="‘",h.PU2="’",h.STS="“",h.CCH="”",h.MW="•",h.SPA="–",h.EPA="—",h.SOS="˜",h.SGCI="™",h.SCI="š",h.CSI="›",h.ST="œ",h.OSC="",h.PM="ž",h.APC="Ÿ"})(l||(i.C1=l={})),(function(h){h.ST=`${a.ESC}\\`})(d||(i.C1_ESCAPED=d={}))},7399:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.evaluateKeyboardEvent=void 0;const l=a(2584),d={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};i.evaluateKeyboardEvent=function(h,u,v,m){const _={type:0,cancel:!1,key:void 0},n=(h.shiftKey?1:0)|(h.altKey?2:0)|(h.ctrlKey?4:0)|(h.metaKey?8:0);switch(h.keyCode){case 0:h.key==="UIKeyInputUpArrow"?_.key=u?l.C0.ESC+"OA":l.C0.ESC+"[A":h.key==="UIKeyInputLeftArrow"?_.key=u?l.C0.ESC+"OD":l.C0.ESC+"[D":h.key==="UIKeyInputRightArrow"?_.key=u?l.C0.ESC+"OC":l.C0.ESC+"[C":h.key==="UIKeyInputDownArrow"&&(_.key=u?l.C0.ESC+"OB":l.C0.ESC+"[B");break;case 8:_.key=h.ctrlKey?"\b":l.C0.DEL,h.altKey&&(_.key=l.C0.ESC+_.key);break;case 9:if(h.shiftKey){_.key=l.C0.ESC+"[Z";break}_.key=l.C0.HT,_.cancel=!0;break;case 13:_.key=h.altKey?l.C0.ESC+l.C0.CR:l.C0.CR,_.cancel=!0;break;case 27:_.key=l.C0.ESC,h.altKey&&(_.key=l.C0.ESC+l.C0.ESC),_.cancel=!0;break;case 37:if(h.metaKey)break;n?(_.key=l.C0.ESC+"[1;"+(n+1)+"D",_.key===l.C0.ESC+"[1;3D"&&(_.key=l.C0.ESC+(v?"b":"[1;5D"))):_.key=u?l.C0.ESC+"OD":l.C0.ESC+"[D";break;case 39:if(h.metaKey)break;n?(_.key=l.C0.ESC+"[1;"+(n+1)+"C",_.key===l.C0.ESC+"[1;3C"&&(_.key=l.C0.ESC+(v?"f":"[1;5C"))):_.key=u?l.C0.ESC+"OC":l.C0.ESC+"[C";break;case 38:if(h.metaKey)break;n?(_.key=l.C0.ESC+"[1;"+(n+1)+"A",v||_.key!==l.C0.ESC+"[1;3A"||(_.key=l.C0.ESC+"[1;5A")):_.key=u?l.C0.ESC+"OA":l.C0.ESC+"[A";break;case 40:if(h.metaKey)break;n?(_.key=l.C0.ESC+"[1;"+(n+1)+"B",v||_.key!==l.C0.ESC+"[1;3B"||(_.key=l.C0.ESC+"[1;5B")):_.key=u?l.C0.ESC+"OB":l.C0.ESC+"[B";break;case 45:h.shiftKey||h.ctrlKey||(_.key=l.C0.ESC+"[2~");break;case 46:_.key=n?l.C0.ESC+"[3;"+(n+1)+"~":l.C0.ESC+"[3~";break;case 36:_.key=n?l.C0.ESC+"[1;"+(n+1)+"H":u?l.C0.ESC+"OH":l.C0.ESC+"[H";break;case 35:_.key=n?l.C0.ESC+"[1;"+(n+1)+"F":u?l.C0.ESC+"OF":l.C0.ESC+"[F";break;case 33:h.shiftKey?_.type=2:h.ctrlKey?_.key=l.C0.ESC+"[5;"+(n+1)+"~":_.key=l.C0.ESC+"[5~";break;case 34:h.shiftKey?_.type=3:h.ctrlKey?_.key=l.C0.ESC+"[6;"+(n+1)+"~":_.key=l.C0.ESC+"[6~";break;case 112:_.key=n?l.C0.ESC+"[1;"+(n+1)+"P":l.C0.ESC+"OP";break;case 113:_.key=n?l.C0.ESC+"[1;"+(n+1)+"Q":l.C0.ESC+"OQ";break;case 114:_.key=n?l.C0.ESC+"[1;"+(n+1)+"R":l.C0.ESC+"OR";break;case 115:_.key=n?l.C0.ESC+"[1;"+(n+1)+"S":l.C0.ESC+"OS";break;case 116:_.key=n?l.C0.ESC+"[15;"+(n+1)+"~":l.C0.ESC+"[15~";break;case 117:_.key=n?l.C0.ESC+"[17;"+(n+1)+"~":l.C0.ESC+"[17~";break;case 118:_.key=n?l.C0.ESC+"[18;"+(n+1)+"~":l.C0.ESC+"[18~";break;case 119:_.key=n?l.C0.ESC+"[19;"+(n+1)+"~":l.C0.ESC+"[19~";break;case 120:_.key=n?l.C0.ESC+"[20;"+(n+1)+"~":l.C0.ESC+"[20~";break;case 121:_.key=n?l.C0.ESC+"[21;"+(n+1)+"~":l.C0.ESC+"[21~";break;case 122:_.key=n?l.C0.ESC+"[23;"+(n+1)+"~":l.C0.ESC+"[23~";break;case 123:_.key=n?l.C0.ESC+"[24;"+(n+1)+"~":l.C0.ESC+"[24~";break;default:if(!h.ctrlKey||h.shiftKey||h.altKey||h.metaKey)if(v&&!m||!h.altKey||h.metaKey)!v||h.altKey||h.ctrlKey||h.shiftKey||!h.metaKey?h.key&&!h.ctrlKey&&!h.altKey&&!h.metaKey&&h.keyCode>=48&&h.key.length===1?_.key=h.key:h.key&&h.ctrlKey&&(h.key==="_"&&(_.key=l.C0.US),h.key==="@"&&(_.key=l.C0.NUL)):h.keyCode===65&&(_.type=1);else{const o=d[h.keyCode],t=o?.[h.shiftKey?1:0];if(t)_.key=l.C0.ESC+t;else if(h.keyCode>=65&&h.keyCode<=90){const s=h.ctrlKey?h.keyCode-64:h.keyCode+32;let c=String.fromCharCode(s);h.shiftKey&&(c=c.toUpperCase()),_.key=l.C0.ESC+c}else if(h.keyCode===32)_.key=l.C0.ESC+(h.ctrlKey?l.C0.NUL:" ");else if(h.key==="Dead"&&h.code.startsWith("Key")){let s=h.code.slice(3,4);h.shiftKey||(s=s.toLowerCase()),_.key=l.C0.ESC+s,_.cancel=!0}}else h.keyCode>=65&&h.keyCode<=90?_.key=String.fromCharCode(h.keyCode-64):h.keyCode===32?_.key=l.C0.NUL:h.keyCode>=51&&h.keyCode<=55?_.key=String.fromCharCode(h.keyCode-51+27):h.keyCode===56?_.key=l.C0.DEL:h.keyCode===219?_.key=l.C0.ESC:h.keyCode===220?_.key=l.C0.FS:h.keyCode===221&&(_.key=l.C0.GS)}return _}},482:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.Utf8ToUtf32=i.StringToUtf32=i.utf32ToString=i.stringFromCodePoint=void 0,i.stringFromCodePoint=function(a){return a>65535?(a-=65536,String.fromCharCode(55296+(a>>10))+String.fromCharCode(a%1024+56320)):String.fromCharCode(a)},i.utf32ToString=function(a,l=0,d=a.length){let h="";for(let u=l;u65535?(v-=65536,h+=String.fromCharCode(55296+(v>>10))+String.fromCharCode(v%1024+56320)):h+=String.fromCharCode(v)}return h},i.StringToUtf32=class{constructor(){this._interim=0}clear(){this._interim=0}decode(a,l){const d=a.length;if(!d)return 0;let h=0,u=0;if(this._interim){const v=a.charCodeAt(u++);56320<=v&&v<=57343?l[h++]=1024*(this._interim-55296)+v-56320+65536:(l[h++]=this._interim,l[h++]=v),this._interim=0}for(let v=u;v=d)return this._interim=m,h;const _=a.charCodeAt(v);56320<=_&&_<=57343?l[h++]=1024*(m-55296)+_-56320+65536:(l[h++]=m,l[h++]=_)}else m!==65279&&(l[h++]=m)}return h}},i.Utf8ToUtf32=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(a,l){const d=a.length;if(!d)return 0;let h,u,v,m,_=0,n=0,o=0;if(this.interim[0]){let c=!1,g=this.interim[0];g&=(224&g)==192?31:(240&g)==224?15:7;let p,w=0;for(;(p=63&this.interim[++w])&&w<4;)g<<=6,g|=p;const f=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,y=f-w;for(;o=d)return 0;if(p=a[o++],(192&p)!=128){o--,c=!0;break}this.interim[w++]=p,g<<=6,g|=63&p}c||(f===2?g<128?o--:l[_++]=g:f===3?g<2048||g>=55296&&g<=57343||g===65279||(l[_++]=g):g<65536||g>1114111||(l[_++]=g)),this.interim.fill(0)}const t=d-4;let s=o;for(;s=d)return this.interim[0]=h,_;if(u=a[s++],(192&u)!=128){s--;continue}if(n=(31&h)<<6|63&u,n<128){s--;continue}l[_++]=n}else if((240&h)==224){if(s>=d)return this.interim[0]=h,_;if(u=a[s++],(192&u)!=128){s--;continue}if(s>=d)return this.interim[0]=h,this.interim[1]=u,_;if(v=a[s++],(192&v)!=128){s--;continue}if(n=(15&h)<<12|(63&u)<<6|63&v,n<2048||n>=55296&&n<=57343||n===65279)continue;l[_++]=n}else if((248&h)==240){if(s>=d)return this.interim[0]=h,_;if(u=a[s++],(192&u)!=128){s--;continue}if(s>=d)return this.interim[0]=h,this.interim[1]=u,_;if(v=a[s++],(192&v)!=128){s--;continue}if(s>=d)return this.interim[0]=h,this.interim[1]=u,this.interim[2]=v,_;if(m=a[s++],(192&m)!=128){s--;continue}if(n=(7&h)<<18|(63&u)<<12|(63&v)<<6|63&m,n<65536||n>1114111)continue;l[_++]=n}}return _}}},225:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.UnicodeV6=void 0;const l=a(1480),d=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],h=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]];let u;i.UnicodeV6=class{constructor(){if(this.version="6",!u){u=new Uint8Array(65536),u.fill(1),u[0]=0,u.fill(0,1,32),u.fill(0,127,160),u.fill(2,4352,4448),u[9001]=2,u[9002]=2,u.fill(2,11904,42192),u[12351]=1,u.fill(2,44032,55204),u.fill(2,63744,64256),u.fill(2,65040,65050),u.fill(2,65072,65136),u.fill(2,65280,65377),u.fill(2,65504,65511);for(let v=0;v_[t][1])return!1;for(;t>=o;)if(n=o+t>>1,m>_[n][1])o=n+1;else{if(!(m<_[n][0]))return!0;t=n-1}return!1})(v,h)?0:v>=131072&&v<=196605||v>=196608&&v<=262141?2:1}charProperties(v,m){let _=this.wcwidth(v),n=_===0&&m!==0;if(n){const o=l.UnicodeService.extractWidth(m);o===0?n=!1:o>_&&(_=o)}return l.UnicodeService.createPropertyValue(0,_,n)}}},5981:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.WriteBuffer=void 0;const l=a(8460),d=a(844);class h extends d.Disposable{constructor(v){super(),this._action=v,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this.register(new l.EventEmitter),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(v,m){if(m!==void 0&&this._syncCalls>m)return void(this._syncCalls=0);if(this._pendingData+=v.length,this._writeBuffer.push(v),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;let _;for(this._isSyncWriting=!0;_=this._writeBuffer.shift();){this._action(_);const n=this._callbacks.shift();n&&n()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(v,m){if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput)return this._didUserInput=!1,this._pendingData+=v.length,this._writeBuffer.push(v),this._callbacks.push(m),void this._innerWrite();setTimeout((()=>this._innerWrite()))}this._pendingData+=v.length,this._writeBuffer.push(v),this._callbacks.push(m)}_innerWrite(v=0,m=!0){const _=v||Date.now();for(;this._writeBuffer.length>this._bufferOffset;){const n=this._writeBuffer[this._bufferOffset],o=this._action(n,m);if(o){const s=c=>Date.now()-_>=12?setTimeout((()=>this._innerWrite(0,c))):this._innerWrite(_,c);return void o.catch((c=>(queueMicrotask((()=>{throw c})),Promise.resolve(!1)))).then(s)}const t=this._callbacks[this._bufferOffset];if(t&&t(),this._bufferOffset++,this._pendingData-=n.length,Date.now()-_>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((()=>this._innerWrite()))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}}i.WriteBuffer=h},5941:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.toRgbString=i.parseColor=void 0;const a=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,l=/^[\da-f]+$/;function d(h,u){const v=h.toString(16),m=v.length<2?"0"+v:v;switch(u){case 4:return v[0];case 8:return m;case 12:return(m+m).slice(0,3);default:return m+m}}i.parseColor=function(h){if(!h)return;let u=h.toLowerCase();if(u.indexOf("rgb:")===0){u=u.slice(4);const v=a.exec(u);if(v){const m=v[1]?15:v[4]?255:v[7]?4095:65535;return[Math.round(parseInt(v[1]||v[4]||v[7]||v[10],16)/m*255),Math.round(parseInt(v[2]||v[5]||v[8]||v[11],16)/m*255),Math.round(parseInt(v[3]||v[6]||v[9]||v[12],16)/m*255)]}}else if(u.indexOf("#")===0&&(u=u.slice(1),l.exec(u)&&[3,6,9,12].includes(u.length))){const v=u.length/3,m=[0,0,0];for(let _=0;_<3;++_){const n=parseInt(u.slice(v*_,v*_+v),16);m[_]=v===1?n<<4:v===2?n:v===3?n>>4:n>>8}return m}},i.toRgbString=function(h,u=16){const[v,m,_]=h;return`rgb:${d(v,u)}/${d(m,u)}/${d(_,u)}`}},5770:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.PAYLOAD_LIMIT=void 0,i.PAYLOAD_LIMIT=1e7},6351:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.DcsHandler=i.DcsParser=void 0;const l=a(482),d=a(8742),h=a(5770),u=[];i.DcsParser=class{constructor(){this._handlers=Object.create(null),this._active=u,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=u}registerHandler(m,_){this._handlers[m]===void 0&&(this._handlers[m]=[]);const n=this._handlers[m];return n.push(_),{dispose:()=>{const o=n.indexOf(_);o!==-1&&n.splice(o,1)}}}clearHandler(m){this._handlers[m]&&delete this._handlers[m]}setHandlerFallback(m){this._handlerFb=m}reset(){if(this._active.length)for(let m=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;m>=0;--m)this._active[m].unhook(!1);this._stack.paused=!1,this._active=u,this._ident=0}hook(m,_){if(this.reset(),this._ident=m,this._active=this._handlers[m]||u,this._active.length)for(let n=this._active.length-1;n>=0;n--)this._active[n].hook(_);else this._handlerFb(this._ident,"HOOK",_)}put(m,_,n){if(this._active.length)for(let o=this._active.length-1;o>=0;o--)this._active[o].put(m,_,n);else this._handlerFb(this._ident,"PUT",(0,l.utf32ToString)(m,_,n))}unhook(m,_=!0){if(this._active.length){let n=!1,o=this._active.length-1,t=!1;if(this._stack.paused&&(o=this._stack.loopPosition-1,n=_,t=this._stack.fallThrough,this._stack.paused=!1),!t&&n===!1){for(;o>=0&&(n=this._active[o].unhook(m),n!==!0);o--)if(n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=o,this._stack.fallThrough=!1,n;o--}for(;o>=0;o--)if(n=this._active[o].unhook(!1),n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=o,this._stack.fallThrough=!0,n}else this._handlerFb(this._ident,"UNHOOK",m);this._active=u,this._ident=0}};const v=new d.Params;v.addParam(0),i.DcsHandler=class{constructor(m){this._handler=m,this._data="",this._params=v,this._hitLimit=!1}hook(m){this._params=m.length>1||m.params[0]?m.clone():v,this._data="",this._hitLimit=!1}put(m,_,n){this._hitLimit||(this._data+=(0,l.utf32ToString)(m,_,n),this._data.length>h.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))}unhook(m){let _=!1;if(this._hitLimit)_=!1;else if(m&&(_=this._handler(this._data,this._params),_ instanceof Promise))return _.then((n=>(this._params=v,this._data="",this._hitLimit=!1,n)));return this._params=v,this._data="",this._hitLimit=!1,_}}},2015:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.EscapeSequenceParser=i.VT500_TRANSITION_TABLE=i.TransitionTable=void 0;const l=a(844),d=a(8742),h=a(6242),u=a(6351);class v{constructor(o){this.table=new Uint8Array(o)}setDefault(o,t){this.table.fill(o<<4|t)}add(o,t,s,c){this.table[t<<8|o]=s<<4|c}addMany(o,t,s,c){for(let g=0;gf)),t=(w,f)=>o.slice(w,f),s=t(32,127),c=t(0,24);c.push(25),c.push.apply(c,t(28,32));const g=t(0,14);let p;for(p in n.setDefault(1,0),n.addMany(s,0,2,0),g)n.addMany([24,26,153,154],p,3,0),n.addMany(t(128,144),p,3,0),n.addMany(t(144,152),p,3,0),n.add(156,p,0,0),n.add(27,p,11,1),n.add(157,p,4,8),n.addMany([152,158,159],p,0,7),n.add(155,p,11,3),n.add(144,p,11,9);return n.addMany(c,0,3,0),n.addMany(c,1,3,1),n.add(127,1,0,1),n.addMany(c,8,0,8),n.addMany(c,3,3,3),n.add(127,3,0,3),n.addMany(c,4,3,4),n.add(127,4,0,4),n.addMany(c,6,3,6),n.addMany(c,5,3,5),n.add(127,5,0,5),n.addMany(c,2,3,2),n.add(127,2,0,2),n.add(93,1,4,8),n.addMany(s,8,5,8),n.add(127,8,5,8),n.addMany([156,27,24,26,7],8,6,0),n.addMany(t(28,32),8,0,8),n.addMany([88,94,95],1,0,7),n.addMany(s,7,0,7),n.addMany(c,7,0,7),n.add(156,7,0,0),n.add(127,7,0,7),n.add(91,1,11,3),n.addMany(t(64,127),3,7,0),n.addMany(t(48,60),3,8,4),n.addMany([60,61,62,63],3,9,4),n.addMany(t(48,60),4,8,4),n.addMany(t(64,127),4,7,0),n.addMany([60,61,62,63],4,0,6),n.addMany(t(32,64),6,0,6),n.add(127,6,0,6),n.addMany(t(64,127),6,0,0),n.addMany(t(32,48),3,9,5),n.addMany(t(32,48),5,9,5),n.addMany(t(48,64),5,0,6),n.addMany(t(64,127),5,7,0),n.addMany(t(32,48),4,9,5),n.addMany(t(32,48),1,9,2),n.addMany(t(32,48),2,9,2),n.addMany(t(48,127),2,10,0),n.addMany(t(48,80),1,10,0),n.addMany(t(81,88),1,10,0),n.addMany([89,90,92],1,10,0),n.addMany(t(96,127),1,10,0),n.add(80,1,11,9),n.addMany(c,9,0,9),n.add(127,9,0,9),n.addMany(t(28,32),9,0,9),n.addMany(t(32,48),9,9,12),n.addMany(t(48,60),9,8,10),n.addMany([60,61,62,63],9,9,10),n.addMany(c,11,0,11),n.addMany(t(32,128),11,0,11),n.addMany(t(28,32),11,0,11),n.addMany(c,10,0,10),n.add(127,10,0,10),n.addMany(t(28,32),10,0,10),n.addMany(t(48,60),10,8,10),n.addMany([60,61,62,63],10,0,11),n.addMany(t(32,48),10,9,12),n.addMany(c,12,0,12),n.add(127,12,0,12),n.addMany(t(28,32),12,0,12),n.addMany(t(32,48),12,9,12),n.addMany(t(48,64),12,0,11),n.addMany(t(64,127),12,12,13),n.addMany(t(64,127),10,12,13),n.addMany(t(64,127),9,12,13),n.addMany(c,13,13,13),n.addMany(s,13,13,13),n.add(127,13,0,13),n.addMany([27,156,24,26],13,14,0),n.add(m,0,2,0),n.add(m,8,5,8),n.add(m,6,0,6),n.add(m,11,0,11),n.add(m,13,13,13),n})();class _ extends l.Disposable{constructor(o=i.VT500_TRANSITION_TABLE){super(),this._transitions=o,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new d.Params,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(t,s,c)=>{},this._executeHandlerFb=t=>{},this._csiHandlerFb=(t,s)=>{},this._escHandlerFb=t=>{},this._errorHandlerFb=t=>t,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this.register((0,l.toDisposable)((()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)}))),this._oscParser=this.register(new h.OscParser),this._dcsParser=this.register(new u.DcsParser),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},(()=>!0))}_identifier(o,t=[64,126]){let s=0;if(o.prefix){if(o.prefix.length>1)throw new Error("only one byte as prefix supported");if(s=o.prefix.charCodeAt(0),s&&60>s||s>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(o.intermediates){if(o.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let g=0;gp||p>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");s<<=8,s|=p}}if(o.final.length!==1)throw new Error("final must be a single byte");const c=o.final.charCodeAt(0);if(t[0]>c||c>t[1])throw new Error(`final must be in range ${t[0]} .. ${t[1]}`);return s<<=8,s|=c,s}identToString(o){const t=[];for(;o;)t.push(String.fromCharCode(255&o)),o>>=8;return t.reverse().join("")}setPrintHandler(o){this._printHandler=o}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(o,t){const s=this._identifier(o,[48,126]);this._escHandlers[s]===void 0&&(this._escHandlers[s]=[]);const c=this._escHandlers[s];return c.push(t),{dispose:()=>{const g=c.indexOf(t);g!==-1&&c.splice(g,1)}}}clearEscHandler(o){this._escHandlers[this._identifier(o,[48,126])]&&delete this._escHandlers[this._identifier(o,[48,126])]}setEscHandlerFallback(o){this._escHandlerFb=o}setExecuteHandler(o,t){this._executeHandlers[o.charCodeAt(0)]=t}clearExecuteHandler(o){this._executeHandlers[o.charCodeAt(0)]&&delete this._executeHandlers[o.charCodeAt(0)]}setExecuteHandlerFallback(o){this._executeHandlerFb=o}registerCsiHandler(o,t){const s=this._identifier(o);this._csiHandlers[s]===void 0&&(this._csiHandlers[s]=[]);const c=this._csiHandlers[s];return c.push(t),{dispose:()=>{const g=c.indexOf(t);g!==-1&&c.splice(g,1)}}}clearCsiHandler(o){this._csiHandlers[this._identifier(o)]&&delete this._csiHandlers[this._identifier(o)]}setCsiHandlerFallback(o){this._csiHandlerFb=o}registerDcsHandler(o,t){return this._dcsParser.registerHandler(this._identifier(o),t)}clearDcsHandler(o){this._dcsParser.clearHandler(this._identifier(o))}setDcsHandlerFallback(o){this._dcsParser.setHandlerFallback(o)}registerOscHandler(o,t){return this._oscParser.registerHandler(o,t)}clearOscHandler(o){this._oscParser.clearHandler(o)}setOscHandlerFallback(o){this._oscParser.setHandlerFallback(o)}setErrorHandler(o){this._errorHandler=o}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(o,t,s,c,g){this._parseStack.state=o,this._parseStack.handlers=t,this._parseStack.handlerPos=s,this._parseStack.transition=c,this._parseStack.chunkPos=g}parse(o,t,s){let c,g=0,p=0,w=0;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,w=this._parseStack.chunkPos+1;else{if(s===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");const f=this._parseStack.handlers;let y=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(s===!1&&y>-1){for(;y>=0&&(c=f[y](this._params),c!==!0);y--)if(c instanceof Promise)return this._parseStack.handlerPos=y,c}this._parseStack.handlers=[];break;case 4:if(s===!1&&y>-1){for(;y>=0&&(c=f[y](),c!==!0);y--)if(c instanceof Promise)return this._parseStack.handlerPos=y,c}this._parseStack.handlers=[];break;case 6:if(g=o[this._parseStack.chunkPos],c=this._dcsParser.unhook(g!==24&&g!==26,s),c)return c;g===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(g=o[this._parseStack.chunkPos],c=this._oscParser.end(g!==24&&g!==26,s),c)return c;g===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,w=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=15&this._parseStack.transition}for(let f=w;f>4){case 2:for(let L=f+1;;++L){if(L>=t||(g=o[L])<32||g>126&&g=t||(g=o[L])<32||g>126&&g=t||(g=o[L])<32||g>126&&g=t||(g=o[L])<32||g>126&&g=0&&(c=y[B](this._params),c!==!0);B--)if(c instanceof Promise)return this._preserveStack(3,y,B,p,f),c;B<0&&this._csiHandlerFb(this._collect<<8|g,this._params),this.precedingJoinState=0;break;case 8:do switch(g){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(g-48)}while(++f47&&g<60);f--;break;case 9:this._collect<<=8,this._collect|=g;break;case 10:const A=this._escHandlers[this._collect<<8|g];let D=A?A.length-1:-1;for(;D>=0&&(c=A[D](),c!==!0);D--)if(c instanceof Promise)return this._preserveStack(4,A,D,p,f),c;D<0&&this._escHandlerFb(this._collect<<8|g),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|g,this._params);break;case 13:for(let L=f+1;;++L)if(L>=t||(g=o[L])===24||g===26||g===27||g>127&&g=t||(g=o[L])<32||g>127&&g{Object.defineProperty(i,"__esModule",{value:!0}),i.OscHandler=i.OscParser=void 0;const l=a(5770),d=a(482),h=[];i.OscParser=class{constructor(){this._state=0,this._active=h,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(u,v){this._handlers[u]===void 0&&(this._handlers[u]=[]);const m=this._handlers[u];return m.push(v),{dispose:()=>{const _=m.indexOf(v);_!==-1&&m.splice(_,1)}}}clearHandler(u){this._handlers[u]&&delete this._handlers[u]}setHandlerFallback(u){this._handlerFb=u}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=h}reset(){if(this._state===2)for(let u=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;u>=0;--u)this._active[u].end(!1);this._stack.paused=!1,this._active=h,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||h,this._active.length)for(let u=this._active.length-1;u>=0;u--)this._active[u].start();else this._handlerFb(this._id,"START")}_put(u,v,m){if(this._active.length)for(let _=this._active.length-1;_>=0;_--)this._active[_].put(u,v,m);else this._handlerFb(this._id,"PUT",(0,d.utf32ToString)(u,v,m))}start(){this.reset(),this._state=1}put(u,v,m){if(this._state!==3){if(this._state===1)for(;v0&&this._put(u,v,m)}}end(u,v=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),this._active.length){let m=!1,_=this._active.length-1,n=!1;if(this._stack.paused&&(_=this._stack.loopPosition-1,m=v,n=this._stack.fallThrough,this._stack.paused=!1),!n&&m===!1){for(;_>=0&&(m=this._active[_].end(u),m!==!0);_--)if(m instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=_,this._stack.fallThrough=!1,m;_--}for(;_>=0;_--)if(m=this._active[_].end(!1),m instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=_,this._stack.fallThrough=!0,m}else this._handlerFb(this._id,"END",u);this._active=h,this._id=-1,this._state=0}}},i.OscHandler=class{constructor(u){this._handler=u,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(u,v,m){this._hitLimit||(this._data+=(0,d.utf32ToString)(u,v,m),this._data.length>l.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))}end(u){let v=!1;if(this._hitLimit)v=!1;else if(u&&(v=this._handler(this._data),v instanceof Promise))return v.then((m=>(this._data="",this._hitLimit=!1,m)));return this._data="",this._hitLimit=!1,v}}},8742:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.Params=void 0;const a=2147483647;class l{static fromArray(h){const u=new l;if(!h.length)return u;for(let v=Array.isArray(h[0])?1:0;v256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(h),this.length=0,this._subParams=new Int32Array(u),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(h),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}clone(){const h=new l(this.maxLength,this.maxSubParamsLength);return h.params.set(this.params),h.length=this.length,h._subParams.set(this._subParams),h._subParamsLength=this._subParamsLength,h._subParamsIdx.set(this._subParamsIdx),h._rejectDigits=this._rejectDigits,h._rejectSubDigits=this._rejectSubDigits,h._digitIsSub=this._digitIsSub,h}toArray(){const h=[];for(let u=0;u>8,m=255&this._subParamsIdx[u];m-v>0&&h.push(Array.prototype.slice.call(this._subParams,v,m))}return h}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(h){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(h<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=h>a?a:h}}addSubParam(h){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(h<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=h>a?a:h,this._subParamsIdx[this.length-1]++}}hasSubParams(h){return(255&this._subParamsIdx[h])-(this._subParamsIdx[h]>>8)>0}getSubParams(h){const u=this._subParamsIdx[h]>>8,v=255&this._subParamsIdx[h];return v-u>0?this._subParams.subarray(u,v):null}getSubParamsAll(){const h={};for(let u=0;u>8,m=255&this._subParamsIdx[u];m-v>0&&(h[u]=this._subParams.slice(v,m))}return h}addDigit(h){let u;if(this._rejectDigits||!(u=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;const v=this._digitIsSub?this._subParams:this.params,m=v[u-1];v[u-1]=~m?Math.min(10*m+h,a):h}}i.Params=l},5741:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.AddonManager=void 0,i.AddonManager=class{constructor(){this._addons=[]}dispose(){for(let a=this._addons.length-1;a>=0;a--)this._addons[a].instance.dispose()}loadAddon(a,l){const d={instance:l,dispose:l.dispose,isDisposed:!1};this._addons.push(d),l.dispose=()=>this._wrappedAddonDispose(d),l.activate(a)}_wrappedAddonDispose(a){if(a.isDisposed)return;let l=-1;for(let d=0;d{Object.defineProperty(i,"__esModule",{value:!0}),i.BufferApiView=void 0;const l=a(3785),d=a(511);i.BufferApiView=class{constructor(h,u){this._buffer=h,this.type=u}init(h){return this._buffer=h,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(h){const u=this._buffer.lines.get(h);if(u)return new l.BufferLineApiView(u)}getNullCell(){return new d.CellData}}},3785:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.BufferLineApiView=void 0;const l=a(511);i.BufferLineApiView=class{constructor(d){this._line=d}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(d,h){if(!(d<0||d>=this._line.length))return h?(this._line.loadCell(d,h),h):this._line.loadCell(d,new l.CellData)}translateToString(d,h,u){return this._line.translateToString(d,h,u)}}},8285:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.BufferNamespaceApi=void 0;const l=a(8771),d=a(8460),h=a(844);class u extends h.Disposable{constructor(m){super(),this._core=m,this._onBufferChange=this.register(new d.EventEmitter),this.onBufferChange=this._onBufferChange.event,this._normal=new l.BufferApiView(this._core.buffers.normal,"normal"),this._alternate=new l.BufferApiView(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate((()=>this._onBufferChange.fire(this.active)))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}}i.BufferNamespaceApi=u},7975:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.ParserApi=void 0,i.ParserApi=class{constructor(a){this._core=a}registerCsiHandler(a,l){return this._core.registerCsiHandler(a,(d=>l(d.toArray())))}addCsiHandler(a,l){return this.registerCsiHandler(a,l)}registerDcsHandler(a,l){return this._core.registerDcsHandler(a,((d,h)=>l(d,h.toArray())))}addDcsHandler(a,l){return this.registerDcsHandler(a,l)}registerEscHandler(a,l){return this._core.registerEscHandler(a,l)}addEscHandler(a,l){return this.registerEscHandler(a,l)}registerOscHandler(a,l){return this._core.registerOscHandler(a,l)}addOscHandler(a,l){return this.registerOscHandler(a,l)}}},7090:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.UnicodeApi=void 0,i.UnicodeApi=class{constructor(a){this._core=a}register(a){this._core.unicodeService.register(a)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(a){this._core.unicodeService.activeVersion=a}}},744:function(R,i,a){var l=this&&this.__decorate||function(n,o,t,s){var c,g=arguments.length,p=g<3?o:s===null?s=Object.getOwnPropertyDescriptor(o,t):s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")p=Reflect.decorate(n,o,t,s);else for(var w=n.length-1;w>=0;w--)(c=n[w])&&(p=(g<3?c(p):g>3?c(o,t,p):c(o,t))||p);return g>3&&p&&Object.defineProperty(o,t,p),p},d=this&&this.__param||function(n,o){return function(t,s){o(t,s,n)}};Object.defineProperty(i,"__esModule",{value:!0}),i.BufferService=i.MINIMUM_ROWS=i.MINIMUM_COLS=void 0;const h=a(8460),u=a(844),v=a(5295),m=a(2585);i.MINIMUM_COLS=2,i.MINIMUM_ROWS=1;let _=i.BufferService=class extends u.Disposable{get buffer(){return this.buffers.active}constructor(n){super(),this.isUserScrolling=!1,this._onResize=this.register(new h.EventEmitter),this.onResize=this._onResize.event,this._onScroll=this.register(new h.EventEmitter),this.onScroll=this._onScroll.event,this.cols=Math.max(n.rawOptions.cols||0,i.MINIMUM_COLS),this.rows=Math.max(n.rawOptions.rows||0,i.MINIMUM_ROWS),this.buffers=this.register(new v.BufferSet(n,this))}resize(n,o){this.cols=n,this.rows=o,this.buffers.resize(n,o),this._onResize.fire({cols:n,rows:o})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(n,o=!1){const t=this.buffer;let s;s=this._cachedBlankLine,s&&s.length===this.cols&&s.getFg(0)===n.fg&&s.getBg(0)===n.bg||(s=t.getBlankLine(n,o),this._cachedBlankLine=s),s.isWrapped=o;const c=t.ybase+t.scrollTop,g=t.ybase+t.scrollBottom;if(t.scrollTop===0){const p=t.lines.isFull;g===t.lines.length-1?p?t.lines.recycle().copyFrom(s):t.lines.push(s.clone()):t.lines.splice(g+1,0,s.clone()),p?this.isUserScrolling&&(t.ydisp=Math.max(t.ydisp-1,0)):(t.ybase++,this.isUserScrolling||t.ydisp++)}else{const p=g-c+1;t.lines.shiftElements(c+1,p-1,-1),t.lines.set(g,s.clone())}this.isUserScrolling||(t.ydisp=t.ybase),this._onScroll.fire(t.ydisp)}scrollLines(n,o,t){const s=this.buffer;if(n<0){if(s.ydisp===0)return;this.isUserScrolling=!0}else n+s.ydisp>=s.ybase&&(this.isUserScrolling=!1);const c=s.ydisp;s.ydisp=Math.max(Math.min(s.ydisp+n,s.ybase),0),c!==s.ydisp&&(o||this._onScroll.fire(s.ydisp))}};i.BufferService=_=l([d(0,m.IOptionsService)],_)},7994:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.CharsetService=void 0,i.CharsetService=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(a){this.glevel=a,this.charset=this._charsets[a]}setgCharset(a,l){this._charsets[a]=l,this.glevel===a&&(this.charset=l)}}},1753:function(R,i,a){var l=this&&this.__decorate||function(s,c,g,p){var w,f=arguments.length,y=f<3?c:p===null?p=Object.getOwnPropertyDescriptor(c,g):p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")y=Reflect.decorate(s,c,g,p);else for(var B=s.length-1;B>=0;B--)(w=s[B])&&(y=(f<3?w(y):f>3?w(c,g,y):w(c,g))||y);return f>3&&y&&Object.defineProperty(c,g,y),y},d=this&&this.__param||function(s,c){return function(g,p){c(g,p,s)}};Object.defineProperty(i,"__esModule",{value:!0}),i.CoreMouseService=void 0;const h=a(2585),u=a(8460),v=a(844),m={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:s=>s.button!==4&&s.action===1&&(s.ctrl=!1,s.alt=!1,s.shift=!1,!0)},VT200:{events:19,restrict:s=>s.action!==32},DRAG:{events:23,restrict:s=>s.action!==32||s.button!==3},ANY:{events:31,restrict:s=>!0}};function _(s,c){let g=(s.ctrl?16:0)|(s.shift?4:0)|(s.alt?8:0);return s.button===4?(g|=64,g|=s.action):(g|=3&s.button,4&s.button&&(g|=64),8&s.button&&(g|=128),s.action===32?g|=32:s.action!==0||c||(g|=3)),g}const n=String.fromCharCode,o={DEFAULT:s=>{const c=[_(s,!1)+32,s.col+32,s.row+32];return c[0]>255||c[1]>255||c[2]>255?"":`\x1B[M${n(c[0])}${n(c[1])}${n(c[2])}`},SGR:s=>{const c=s.action===0&&s.button!==4?"m":"M";return`\x1B[<${_(s,!0)};${s.col};${s.row}${c}`},SGR_PIXELS:s=>{const c=s.action===0&&s.button!==4?"m":"M";return`\x1B[<${_(s,!0)};${s.x};${s.y}${c}`}};let t=i.CoreMouseService=class extends v.Disposable{constructor(s,c){super(),this._bufferService=s,this._coreService=c,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._onProtocolChange=this.register(new u.EventEmitter),this.onProtocolChange=this._onProtocolChange.event;for(const g of Object.keys(m))this.addProtocol(g,m[g]);for(const g of Object.keys(o))this.addEncoding(g,o[g]);this.reset()}addProtocol(s,c){this._protocols[s]=c}addEncoding(s,c){this._encodings[s]=c}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(s){if(!this._protocols[s])throw new Error(`unknown protocol "${s}"`);this._activeProtocol=s,this._onProtocolChange.fire(this._protocols[s].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(s){if(!this._encodings[s])throw new Error(`unknown encoding "${s}"`);this._activeEncoding=s}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null}triggerMouseEvent(s){if(s.col<0||s.col>=this._bufferService.cols||s.row<0||s.row>=this._bufferService.rows||s.button===4&&s.action===32||s.button===3&&s.action!==32||s.button!==4&&(s.action===2||s.action===3)||(s.col++,s.row++,s.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,s,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(s))return!1;const c=this._encodings[this._activeEncoding](s);return c&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(c):this._coreService.triggerDataEvent(c,!0)),this._lastEvent=s,!0}explainEvents(s){return{down:!!(1&s),up:!!(2&s),drag:!!(4&s),move:!!(8&s),wheel:!!(16&s)}}_equalEvents(s,c,g){if(g){if(s.x!==c.x||s.y!==c.y)return!1}else if(s.col!==c.col||s.row!==c.row)return!1;return s.button===c.button&&s.action===c.action&&s.ctrl===c.ctrl&&s.alt===c.alt&&s.shift===c.shift}};i.CoreMouseService=t=l([d(0,h.IBufferService),d(1,h.ICoreService)],t)},6975:function(R,i,a){var l=this&&this.__decorate||function(t,s,c,g){var p,w=arguments.length,f=w<3?s:g===null?g=Object.getOwnPropertyDescriptor(s,c):g;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")f=Reflect.decorate(t,s,c,g);else for(var y=t.length-1;y>=0;y--)(p=t[y])&&(f=(w<3?p(f):w>3?p(s,c,f):p(s,c))||f);return w>3&&f&&Object.defineProperty(s,c,f),f},d=this&&this.__param||function(t,s){return function(c,g){s(c,g,t)}};Object.defineProperty(i,"__esModule",{value:!0}),i.CoreService=void 0;const h=a(1439),u=a(8460),v=a(844),m=a(2585),_=Object.freeze({insertMode:!1}),n=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0});let o=i.CoreService=class extends v.Disposable{constructor(t,s,c){super(),this._bufferService=t,this._logService=s,this._optionsService=c,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this.register(new u.EventEmitter),this.onData=this._onData.event,this._onUserInput=this.register(new u.EventEmitter),this.onUserInput=this._onUserInput.event,this._onBinary=this.register(new u.EventEmitter),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this.register(new u.EventEmitter),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=(0,h.clone)(_),this.decPrivateModes=(0,h.clone)(n)}reset(){this.modes=(0,h.clone)(_),this.decPrivateModes=(0,h.clone)(n)}triggerDataEvent(t,s=!1){if(this._optionsService.rawOptions.disableStdin)return;const c=this._bufferService.buffer;s&&this._optionsService.rawOptions.scrollOnUserInput&&c.ybase!==c.ydisp&&this._onRequestScrollToBottom.fire(),s&&this._onUserInput.fire(),this._logService.debug(`sending data "${t}"`,(()=>t.split("").map((g=>g.charCodeAt(0))))),this._onData.fire(t)}triggerBinaryEvent(t){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${t}"`,(()=>t.split("").map((s=>s.charCodeAt(0))))),this._onBinary.fire(t))}};i.CoreService=o=l([d(0,m.IBufferService),d(1,m.ILogService),d(2,m.IOptionsService)],o)},9074:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.DecorationService=void 0;const l=a(8055),d=a(8460),h=a(844),u=a(6106);let v=0,m=0;class _ extends h.Disposable{get decorations(){return this._decorations.values()}constructor(){super(),this._decorations=new u.SortedList((t=>t?.marker.line)),this._onDecorationRegistered=this.register(new d.EventEmitter),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this.register(new d.EventEmitter),this.onDecorationRemoved=this._onDecorationRemoved.event,this.register((0,h.toDisposable)((()=>this.reset())))}registerDecoration(t){if(t.marker.isDisposed)return;const s=new n(t);if(s){const c=s.marker.onDispose((()=>s.dispose()));s.onDispose((()=>{s&&(this._decorations.delete(s)&&this._onDecorationRemoved.fire(s),c.dispose())})),this._decorations.insert(s),this._onDecorationRegistered.fire(s)}return s}reset(){for(const t of this._decorations.values())t.dispose();this._decorations.clear()}*getDecorationsAtCell(t,s,c){let g=0,p=0;for(const w of this._decorations.getKeyIterator(s))g=w.options.x??0,p=g+(w.options.width??1),t>=g&&t{v=p.options.x??0,m=v+(p.options.width??1),t>=v&&t{Object.defineProperty(i,"__esModule",{value:!0}),i.InstantiationService=i.ServiceCollection=void 0;const l=a(2585),d=a(8343);class h{constructor(...v){this._entries=new Map;for(const[m,_]of v)this.set(m,_)}set(v,m){const _=this._entries.get(v);return this._entries.set(v,m),_}forEach(v){for(const[m,_]of this._entries.entries())v(m,_)}has(v){return this._entries.has(v)}get(v){return this._entries.get(v)}}i.ServiceCollection=h,i.InstantiationService=class{constructor(){this._services=new h,this._services.set(l.IInstantiationService,this)}setService(u,v){this._services.set(u,v)}getService(u){return this._services.get(u)}createInstance(u,...v){const m=(0,d.getServiceDependencies)(u).sort(((o,t)=>o.index-t.index)),_=[];for(const o of m){const t=this._services.get(o.id);if(!t)throw new Error(`[createInstance] ${u.name} depends on UNKNOWN service ${o.id}.`);_.push(t)}const n=m.length>0?m[0].index:v.length;if(v.length!==n)throw new Error(`[createInstance] First service dependency of ${u.name} at position ${n+1} conflicts with ${v.length} static arguments`);return new u(...v,..._)}}},7866:function(R,i,a){var l=this&&this.__decorate||function(n,o,t,s){var c,g=arguments.length,p=g<3?o:s===null?s=Object.getOwnPropertyDescriptor(o,t):s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")p=Reflect.decorate(n,o,t,s);else for(var w=n.length-1;w>=0;w--)(c=n[w])&&(p=(g<3?c(p):g>3?c(o,t,p):c(o,t))||p);return g>3&&p&&Object.defineProperty(o,t,p),p},d=this&&this.__param||function(n,o){return function(t,s){o(t,s,n)}};Object.defineProperty(i,"__esModule",{value:!0}),i.traceCall=i.setTraceLogger=i.LogService=void 0;const h=a(844),u=a(2585),v={trace:u.LogLevelEnum.TRACE,debug:u.LogLevelEnum.DEBUG,info:u.LogLevelEnum.INFO,warn:u.LogLevelEnum.WARN,error:u.LogLevelEnum.ERROR,off:u.LogLevelEnum.OFF};let m,_=i.LogService=class extends h.Disposable{get logLevel(){return this._logLevel}constructor(n){super(),this._optionsService=n,this._logLevel=u.LogLevelEnum.OFF,this._updateLogLevel(),this.register(this._optionsService.onSpecificOptionChange("logLevel",(()=>this._updateLogLevel()))),m=this}_updateLogLevel(){this._logLevel=v[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(n){for(let o=0;oJSON.stringify(p))).join(", ")})`);const g=s.apply(this,c);return m.trace(`GlyphRenderer#${s.name} return`,g),g}}},7302:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.OptionsService=i.DEFAULT_OPTIONS=void 0;const l=a(8460),d=a(844),h=a(6114);i.DEFAULT_OPTIONS={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},rescaleOverlappingGlyphs:!1,rightClickSelectsWord:h.isMac,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRulerWidth:0};const u=["normal","bold","100","200","300","400","500","600","700","800","900"];class v extends d.Disposable{constructor(_){super(),this._onOptionChange=this.register(new l.EventEmitter),this.onOptionChange=this._onOptionChange.event;const n={...i.DEFAULT_OPTIONS};for(const o in _)if(o in n)try{const t=_[o];n[o]=this._sanitizeAndValidateOption(o,t)}catch(t){console.error(t)}this.rawOptions=n,this.options={...n},this._setupOptions(),this.register((0,d.toDisposable)((()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null})))}onSpecificOptionChange(_,n){return this.onOptionChange((o=>{o===_&&n(this.rawOptions[_])}))}onMultipleOptionChange(_,n){return this.onOptionChange((o=>{_.indexOf(o)!==-1&&n()}))}_setupOptions(){const _=o=>{if(!(o in i.DEFAULT_OPTIONS))throw new Error(`No option with key "${o}"`);return this.rawOptions[o]},n=(o,t)=>{if(!(o in i.DEFAULT_OPTIONS))throw new Error(`No option with key "${o}"`);t=this._sanitizeAndValidateOption(o,t),this.rawOptions[o]!==t&&(this.rawOptions[o]=t,this._onOptionChange.fire(o))};for(const o in this.rawOptions){const t={get:_.bind(this,o),set:n.bind(this,o)};Object.defineProperty(this.options,o,t)}}_sanitizeAndValidateOption(_,n){switch(_){case"cursorStyle":if(n||(n=i.DEFAULT_OPTIONS[_]),!(function(o){return o==="block"||o==="underline"||o==="bar"})(n))throw new Error(`"${n}" is not a valid value for ${_}`);break;case"wordSeparator":n||(n=i.DEFAULT_OPTIONS[_]);break;case"fontWeight":case"fontWeightBold":if(typeof n=="number"&&1<=n&&n<=1e3)break;n=u.includes(n)?n:i.DEFAULT_OPTIONS[_];break;case"cursorWidth":n=Math.floor(n);case"lineHeight":case"tabStopWidth":if(n<1)throw new Error(`${_} cannot be less than 1, value: ${n}`);break;case"minimumContrastRatio":n=Math.max(1,Math.min(21,Math.round(10*n)/10));break;case"scrollback":if((n=Math.min(n,4294967295))<0)throw new Error(`${_} cannot be less than 0, value: ${n}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(n<=0)throw new Error(`${_} cannot be less than or equal to 0, value: ${n}`);break;case"rows":case"cols":if(!n&&n!==0)throw new Error(`${_} must be numeric, value: ${n}`);break;case"windowsPty":n=n??{}}return n}}i.OptionsService=v},2660:function(R,i,a){var l=this&&this.__decorate||function(v,m,_,n){var o,t=arguments.length,s=t<3?m:n===null?n=Object.getOwnPropertyDescriptor(m,_):n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(v,m,_,n);else for(var c=v.length-1;c>=0;c--)(o=v[c])&&(s=(t<3?o(s):t>3?o(m,_,s):o(m,_))||s);return t>3&&s&&Object.defineProperty(m,_,s),s},d=this&&this.__param||function(v,m){return function(_,n){m(_,n,v)}};Object.defineProperty(i,"__esModule",{value:!0}),i.OscLinkService=void 0;const h=a(2585);let u=i.OscLinkService=class{constructor(v){this._bufferService=v,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(v){const m=this._bufferService.buffer;if(v.id===void 0){const c=m.addMarker(m.ybase+m.y),g={data:v,id:this._nextId++,lines:[c]};return c.onDispose((()=>this._removeMarkerFromLink(g,c))),this._dataByLinkId.set(g.id,g),g.id}const _=v,n=this._getEntryIdKey(_),o=this._entriesWithId.get(n);if(o)return this.addLineToLink(o.id,m.ybase+m.y),o.id;const t=m.addMarker(m.ybase+m.y),s={id:this._nextId++,key:this._getEntryIdKey(_),data:_,lines:[t]};return t.onDispose((()=>this._removeMarkerFromLink(s,t))),this._entriesWithId.set(s.key,s),this._dataByLinkId.set(s.id,s),s.id}addLineToLink(v,m){const _=this._dataByLinkId.get(v);if(_&&_.lines.every((n=>n.line!==m))){const n=this._bufferService.buffer.addMarker(m);_.lines.push(n),n.onDispose((()=>this._removeMarkerFromLink(_,n)))}}getLinkData(v){return this._dataByLinkId.get(v)?.data}_getEntryIdKey(v){return`${v.id};;${v.uri}`}_removeMarkerFromLink(v,m){const _=v.lines.indexOf(m);_!==-1&&(v.lines.splice(_,1),v.lines.length===0&&(v.data.id!==void 0&&this._entriesWithId.delete(v.key),this._dataByLinkId.delete(v.id)))}};i.OscLinkService=u=l([d(0,h.IBufferService)],u)},8343:(R,i)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.createDecorator=i.getServiceDependencies=i.serviceRegistry=void 0;const a="di$target",l="di$dependencies";i.serviceRegistry=new Map,i.getServiceDependencies=function(d){return d[l]||[]},i.createDecorator=function(d){if(i.serviceRegistry.has(d))return i.serviceRegistry.get(d);const h=function(u,v,m){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");(function(_,n,o){n[a]===n?n[l].push({id:_,index:o}):(n[l]=[{id:_,index:o}],n[a]=n)})(h,u,m)};return h.toString=()=>d,i.serviceRegistry.set(d,h),h}},2585:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.IDecorationService=i.IUnicodeService=i.IOscLinkService=i.IOptionsService=i.ILogService=i.LogLevelEnum=i.IInstantiationService=i.ICharsetService=i.ICoreService=i.ICoreMouseService=i.IBufferService=void 0;const l=a(8343);var d;i.IBufferService=(0,l.createDecorator)("BufferService"),i.ICoreMouseService=(0,l.createDecorator)("CoreMouseService"),i.ICoreService=(0,l.createDecorator)("CoreService"),i.ICharsetService=(0,l.createDecorator)("CharsetService"),i.IInstantiationService=(0,l.createDecorator)("InstantiationService"),(function(h){h[h.TRACE=0]="TRACE",h[h.DEBUG=1]="DEBUG",h[h.INFO=2]="INFO",h[h.WARN=3]="WARN",h[h.ERROR=4]="ERROR",h[h.OFF=5]="OFF"})(d||(i.LogLevelEnum=d={})),i.ILogService=(0,l.createDecorator)("LogService"),i.IOptionsService=(0,l.createDecorator)("OptionsService"),i.IOscLinkService=(0,l.createDecorator)("OscLinkService"),i.IUnicodeService=(0,l.createDecorator)("UnicodeService"),i.IDecorationService=(0,l.createDecorator)("DecorationService")},1480:(R,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.UnicodeService=void 0;const l=a(8460),d=a(225);class h{static extractShouldJoin(v){return(1&v)!=0}static extractWidth(v){return v>>1&3}static extractCharKind(v){return v>>3}static createPropertyValue(v,m,_=!1){return(16777215&v)<<3|(3&m)<<1|(_?1:0)}constructor(){this._providers=Object.create(null),this._active="",this._onChange=new l.EventEmitter,this.onChange=this._onChange.event;const v=new d.UnicodeV6;this.register(v),this._active=v.version,this._activeProvider=v}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(v){if(!this._providers[v])throw new Error(`unknown Unicode version "${v}"`);this._active=v,this._activeProvider=this._providers[v],this._onChange.fire(v)}register(v){this._providers[v.version]=v}wcwidth(v){return this._activeProvider.wcwidth(v)}getStringCellWidth(v){let m=0,_=0;const n=v.length;for(let o=0;o=n)return m+this.wcwidth(t);const g=v.charCodeAt(o);56320<=g&&g<=57343?t=1024*(t-55296)+g-56320+65536:m+=this.wcwidth(g)}const s=this.charProperties(t,_);let c=h.extractWidth(s);h.extractShouldJoin(s)&&(c-=h.extractWidth(_)),m+=c,_=s}return m}charProperties(v,m){return this._activeProvider.charProperties(v,m)}}i.UnicodeService=h}},k={};function b(R){var i=k[R];if(i!==void 0)return i.exports;var a=k[R]={exports:{}};return S[R].call(a.exports,a,a.exports,b),a.exports}var O={};return(()=>{var R=O;Object.defineProperty(R,"__esModule",{value:!0}),R.Terminal=void 0;const i=b(9042),a=b(3236),l=b(844),d=b(5741),h=b(8285),u=b(7975),v=b(7090),m=["cols","rows"];class _ extends l.Disposable{constructor(o){super(),this._core=this.register(new a.Terminal(o)),this._addonManager=this.register(new d.AddonManager),this._publicOptions={...this._core.options};const t=c=>this._core.options[c],s=(c,g)=>{this._checkReadonlyOptions(c),this._core.options[c]=g};for(const c in this._core.options){const g={get:t.bind(this,c),set:s.bind(this,c)};Object.defineProperty(this._publicOptions,c,g)}}_checkReadonlyOptions(o){if(m.includes(o))throw new Error(`Option "${o}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new u.ParserApi(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new v.UnicodeApi(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this.register(new h.BufferNamespaceApi(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){const o=this._core.coreService.decPrivateModes;let t="none";switch(this._core.coreMouseService.activeProtocol){case"X10":t="x10";break;case"VT200":t="vt200";break;case"DRAG":t="drag";break;case"ANY":t="any"}return{applicationCursorKeysMode:o.applicationCursorKeys,applicationKeypadMode:o.applicationKeypad,bracketedPasteMode:o.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:t,originMode:o.origin,reverseWraparoundMode:o.reverseWraparound,sendFocusMode:o.sendFocus,wraparoundMode:o.wraparound}}get options(){return this._publicOptions}set options(o){for(const t in o)this._publicOptions[t]=o[t]}blur(){this._core.blur()}focus(){this._core.focus()}input(o,t=!0){this._core.input(o,t)}resize(o,t){this._verifyIntegers(o,t),this._core.resize(o,t)}open(o){this._core.open(o)}attachCustomKeyEventHandler(o){this._core.attachCustomKeyEventHandler(o)}attachCustomWheelEventHandler(o){this._core.attachCustomWheelEventHandler(o)}registerLinkProvider(o){return this._core.registerLinkProvider(o)}registerCharacterJoiner(o){return this._checkProposedApi(),this._core.registerCharacterJoiner(o)}deregisterCharacterJoiner(o){this._checkProposedApi(),this._core.deregisterCharacterJoiner(o)}registerMarker(o=0){return this._verifyIntegers(o),this._core.registerMarker(o)}registerDecoration(o){return this._checkProposedApi(),this._verifyPositiveIntegers(o.x??0,o.width??0,o.height??0),this._core.registerDecoration(o)}hasSelection(){return this._core.hasSelection()}select(o,t,s){this._verifyIntegers(o,t,s),this._core.select(o,t,s)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(o,t){this._verifyIntegers(o,t),this._core.selectLines(o,t)}dispose(){super.dispose()}scrollLines(o){this._verifyIntegers(o),this._core.scrollLines(o)}scrollPages(o){this._verifyIntegers(o),this._core.scrollPages(o)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(o){this._verifyIntegers(o),this._core.scrollToLine(o)}clear(){this._core.clear()}write(o,t){this._core.write(o,t)}writeln(o,t){this._core.write(o),this._core.write(`\r +`,t)}paste(o){this._core.paste(o)}refresh(o,t){this._verifyIntegers(o,t),this._core.refresh(o,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(o){this._addonManager.loadAddon(this,o)}static get strings(){return i}_verifyIntegers(...o){for(const t of o)if(t===1/0||isNaN(t)||t%1!=0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...o){for(const t of o)if(t&&(t===1/0||isNaN(t)||t%1!=0||t<0))throw new Error("This API only accepts positive integers")}}R.Terminal=_})(),O})()))})(At)),At.exports}export{Lr as o,Rr as r,Er as x}; diff --git a/ui/dist.noauth.bak/favicon.png b/ui/dist.noauth.bak/favicon.png new file mode 100644 index 00000000..888ed2eb --- /dev/null +++ b/ui/dist.noauth.bak/favicon.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee74c154fb49b05ab23872f1e84e4d69a61b01648eedecc55b4a30c0275d3f8f +size 1088 diff --git a/ui/dist.noauth.bak/favicon.svg b/ui/dist.noauth.bak/favicon.svg new file mode 100644 index 00000000..ed486a45 --- /dev/null +++ b/ui/dist.noauth.bak/favicon.svg @@ -0,0 +1,7 @@ + + + PD + \ No newline at end of file diff --git a/ui/dist.noauth.bak/icons/icon-128x128.png b/ui/dist.noauth.bak/icons/icon-128x128.png new file mode 100644 index 00000000..ab9d7731 --- /dev/null +++ b/ui/dist.noauth.bak/icons/icon-128x128.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d83d8941aedee6b20bde469d1ead325a94847c470d0783c282faa54c2d4f50c +size 2189 diff --git a/ui/dist.noauth.bak/icons/icon-144x144.png b/ui/dist.noauth.bak/icons/icon-144x144.png new file mode 100644 index 00000000..814cd014 --- /dev/null +++ b/ui/dist.noauth.bak/icons/icon-144x144.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dff9ec818bc60abed0de6088c03e2573d4794f92134088e4cd250b2d9695cf15 +size 2585 diff --git a/ui/dist.noauth.bak/icons/icon-152x152.png b/ui/dist.noauth.bak/icons/icon-152x152.png new file mode 100644 index 00000000..bb85d770 --- /dev/null +++ b/ui/dist.noauth.bak/icons/icon-152x152.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d57ff97d5fd72162c64763e3010c88f2a3192873ee04a528564bd512b3776657 +size 2717 diff --git a/ui/dist.noauth.bak/icons/icon-192x192.png b/ui/dist.noauth.bak/icons/icon-192x192.png new file mode 100644 index 00000000..9db655a7 --- /dev/null +++ b/ui/dist.noauth.bak/icons/icon-192x192.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad01eab73508ba063f1c4fb3d1a5563cdc897b3093c86907f05eb6fcfa9f7c29 +size 3618 diff --git a/ui/dist.noauth.bak/icons/icon-384x384.png b/ui/dist.noauth.bak/icons/icon-384x384.png new file mode 100644 index 00000000..eefe8187 --- /dev/null +++ b/ui/dist.noauth.bak/icons/icon-384x384.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92d1f8c7f3642f6a3ca03f0cffb391a1e066c301faa7d1e4e9aaa8b926f8cbdc +size 8969 diff --git a/ui/dist.noauth.bak/icons/icon-512x512.png b/ui/dist.noauth.bak/icons/icon-512x512.png new file mode 100644 index 00000000..7c0879d0 --- /dev/null +++ b/ui/dist.noauth.bak/icons/icon-512x512.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7892e8f58ebe5296ba73fdfeb598963551c44e3c8420fa06043e27b185bfeaaa +size 13653 diff --git a/ui/dist.noauth.bak/icons/icon-72x72.png b/ui/dist.noauth.bak/icons/icon-72x72.png new file mode 100644 index 00000000..573c17e1 --- /dev/null +++ b/ui/dist.noauth.bak/icons/icon-72x72.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ab62a5424dc7246e48d848ee4a87a0d333a3730af1eb22f1b1a7b728259763a +size 1183 diff --git a/ui/dist.noauth.bak/icons/icon-96x96.png b/ui/dist.noauth.bak/icons/icon-96x96.png new file mode 100644 index 00000000..43b0911d --- /dev/null +++ b/ui/dist.noauth.bak/icons/icon-96x96.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d72dba7a4d082ec957cb9345ab4b90c293fdbdfa529d278ad1419eed726df962 +size 1621 diff --git a/ui/dist.noauth.bak/index.html b/ui/dist.noauth.bak/index.html new file mode 100644 index 00000000..14e95181 --- /dev/null +++ b/ui/dist.noauth.bak/index.html @@ -0,0 +1,52 @@ + + + + + + + + PilotDeck + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + diff --git a/ui/dist.noauth.bak/logo-128.png b/ui/dist.noauth.bak/logo-128.png new file mode 100644 index 00000000..ab9d7731 --- /dev/null +++ b/ui/dist.noauth.bak/logo-128.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d83d8941aedee6b20bde469d1ead325a94847c470d0783c282faa54c2d4f50c +size 2189 diff --git a/ui/dist.noauth.bak/logo-256.png b/ui/dist.noauth.bak/logo-256.png new file mode 100644 index 00000000..bc809d68 --- /dev/null +++ b/ui/dist.noauth.bak/logo-256.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9821a63ad6ca9b1183ecee238a19b0a44d83a32c61838887a5cde2120ac495c8 +size 5145 diff --git a/ui/dist.noauth.bak/logo.svg b/ui/dist.noauth.bak/logo.svg new file mode 100644 index 00000000..3039d21c --- /dev/null +++ b/ui/dist.noauth.bak/logo.svg @@ -0,0 +1,7 @@ + + + PD + \ No newline at end of file diff --git a/ui/dist.noauth.bak/manifest.json b/ui/dist.noauth.bak/manifest.json new file mode 100644 index 00000000..e29607aa --- /dev/null +++ b/ui/dist.noauth.bak/manifest.json @@ -0,0 +1,61 @@ +{ + "name": "PilotDeck", + "short_name": "PilotDeck", + "description": "PilotDeck — agent-driven development workspace", + "start_url": "/", + "display": "standalone", + "background_color": "#ffffff", + "theme_color": "#ffffff", + "orientation": "portrait-primary", + "scope": "/", + "icons": [ + { + "src": "/icons/icon-72x72.png?v=pd1", + "sizes": "72x72", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "/icons/icon-96x96.png?v=pd1", + "sizes": "96x96", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "/icons/icon-128x128.png?v=pd1", + "sizes": "128x128", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "/icons/icon-144x144.png?v=pd1", + "sizes": "144x144", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "/icons/icon-152x152.png?v=pd1", + "sizes": "152x152", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "/icons/icon-192x192.png?v=pd1", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "/icons/icon-384x384.png?v=pd1", + "sizes": "384x384", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "/icons/icon-512x512.png?v=pd1", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable any" + } + ] +} \ No newline at end of file diff --git a/ui/dist.noauth.bak/sw.js b/ui/dist.noauth.bak/sw.js new file mode 100755 index 00000000..3a466e4f --- /dev/null +++ b/ui/dist.noauth.bak/sw.js @@ -0,0 +1,127 @@ +// Service Worker for PilotDeck PWA +// Cache only manifest (needed for PWA install). HTML and JS are never pre-cached +// so a rebuild + refresh always picks up the latest assets. +// Bump this token whenever a cached asset's contents change (icons, manifest). +// The activate handler below purges every cache whose name doesn't match, +// so existing PWAs pick up the new visuals on the next page load. +const CACHE_NAME = 'politdeck-v1'; +const urlsToCache = [ + '/manifest.json' +]; + +// Install event +self.addEventListener('install', event => { + event.waitUntil( + caches.open(CACHE_NAME) + .then(cache => cache.addAll(urlsToCache)) + ); + self.skipWaiting(); +}); + +// Fetch event — network-first for everything except hashed assets +self.addEventListener('fetch', event => { + const url = event.request.url; + + // Never intercept API requests or WebSocket upgrades + if (url.includes('/api/') || url.includes('/ws')) { + return; + } + + // Navigation requests (HTML) — always go to network, no caching + if (event.request.mode === 'navigate') { + event.respondWith( + fetch(event.request).catch(() => caches.match('/manifest.json').then(() => + new Response('

Offline

Please check your connection.

', { + headers: { 'Content-Type': 'text/html' } + }) + )) + ); + return; + } + + // Hashed assets (JS/CSS in /assets/) — cache-first since filenames change per build + if (url.includes('/assets/')) { + event.respondWith( + caches.match(event.request).then(cached => { + if (cached) return cached; + return fetch(event.request).then(response => { + const clone = response.clone(); + caches.open(CACHE_NAME).then(cache => cache.put(event.request, clone)); + return response; + }); + }) + ); + return; + } + + // Everything else — network-first + event.respondWith( + fetch(event.request).catch(() => caches.match(event.request)) + ); +}); + +// Activate event — purge old caches +self.addEventListener('activate', event => { + event.waitUntil( + caches.keys().then(cacheNames => + Promise.all( + cacheNames + .filter(name => name !== CACHE_NAME) + .map(name => caches.delete(name)) + ) + ) + ); + self.clients.claim(); +}); + +// Push notification event +self.addEventListener('push', event => { + if (!event.data) return; + + let payload; + try { + payload = event.data.json(); + } catch { + payload = { title: 'PilotDeck', body: event.data.text() }; + } + + const options = { + body: payload.body || '', + icon: '/logo-256.png', + badge: '/logo-128.png', + data: payload.data || {}, + tag: payload.data?.tag || `${payload.data?.sessionId || 'global'}:${payload.data?.code || 'default'}`, + renotify: true + }; + + event.waitUntil( + self.registration.showNotification(payload.title || 'PilotDeck', options) + ); +}); + +// Notification click event +self.addEventListener('notificationclick', event => { + event.notification.close(); + + const sessionId = event.notification.data?.sessionId; + const provider = event.notification.data?.provider || null; + const urlPath = sessionId ? `/session/${sessionId}` : '/'; + + event.waitUntil( + self.clients.matchAll({ type: 'window', includeUncontrolled: true }).then(async clientList => { + for (const client of clientList) { + if (client.url.includes(self.location.origin)) { + await client.focus(); + client.postMessage({ + type: 'notification:navigate', + sessionId: sessionId || null, + provider, + urlPath + }); + return; + } + } + return self.clients.openWindow(urlPath); + }) + ); +}); diff --git a/ui/src/components/app-shell/SidebarV2.tsx b/ui/src/components/app-shell/SidebarV2.tsx index 7da2085f..4c8e40be 100644 --- a/ui/src/components/app-shell/SidebarV2.tsx +++ b/ui/src/components/app-shell/SidebarV2.tsx @@ -33,6 +33,7 @@ import { useCustomNamesVersion, } from '../../lib/customNames'; import pilotdeckLogoDark from '../../assets/pilotdeck-wordmark-dark.png'; +import { getAutoProceed, toggleAutoProceed } from '../chat/utils/autoProceedStorage'; import pilotdeckLogoLight from '../../assets/pilotdeck-wordmark-light.png'; const asTimestamp = (value: unknown): number => { @@ -155,9 +156,13 @@ const SPINNER_DOTS = Array.from({ length: 8 }, (_, index) => index); function SessionStatusIndicator({ status, label, + autoProceedActive = false, + onToggleAutoProceed, }: { status: SessionIndicatorStatus; label: string; + autoProceedActive?: boolean; + onToggleAutoProceed?: () => void; }) { if (status === 'processing') { return ( @@ -180,15 +185,38 @@ function SessionStatusIndicator({ ); } + const dotColor = + status === 'unread' + ? 'bg-blue-500 dark:bg-blue-400' + : autoProceedActive + ? 'bg-emerald-700 dark:bg-emerald-600' + : 'bg-neutral-300 dark:bg-neutral-600'; + + const toggleLabel = autoProceedActive + ? 'Auto-proceed on — click to disable' + : 'Auto-proceed off — click to enable'; + return ( { + event.stopPropagation(); + onToggleAutoProceed?.(); + }} + onKeyDown={(event) => { + if (event.key === 'Enter' || event.key === ' ') { + event.stopPropagation(); + event.preventDefault(); + onToggleAutoProceed?.(); + } + }} className={cn( - 'block h-1.5 w-1.5 rounded-full', - status === 'unread' - ? 'bg-blue-500 dark:bg-blue-400' - : 'bg-neutral-300 dark:bg-neutral-600', + 'block h-1.5 w-1.5 shrink-0 rounded-full', + 'cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1', + dotColor, )} /> ); @@ -277,6 +305,7 @@ export default function SidebarV2({ const [contextMenu, setContextMenu] = useState(null); const [collapsedSessionProjects, setCollapsedSessionProjects] = useState>(new Set()); const [draftSessionProjectName, setDraftSessionProjectName] = useState(null); + const [autoProceedVersion, setAutoProceedVersion] = useState(0); const renameInputRef = useRef(null); // Segmented toggle between the Projects list and the General workspace. @@ -767,6 +796,11 @@ export default function SidebarV2({ { + toggleAutoProceed(sessionId); + setAutoProceedVersion((v) => v + 1); + }} />
diff --git a/ui/src/components/chat-v2/ChatInterfaceV2.tsx b/ui/src/components/chat-v2/ChatInterfaceV2.tsx index 93f0ac10..aa4d53b0 100644 --- a/ui/src/components/chat-v2/ChatInterfaceV2.tsx +++ b/ui/src/components/chat-v2/ChatInterfaceV2.tsx @@ -291,6 +291,7 @@ function ChatInterfaceV2({ onNavigateToSession, onWebSocketReconnect: handleWebSocketReconnect, sessionStore, + sendMessage, }); useEffect(() => { diff --git a/ui/src/components/chat/hooks/useChatRealtimeHandlers.ts b/ui/src/components/chat/hooks/useChatRealtimeHandlers.ts index f7b390ea..38f9b5dc 100644 --- a/ui/src/components/chat/hooks/useChatRealtimeHandlers.ts +++ b/ui/src/components/chat/hooks/useChatRealtimeHandlers.ts @@ -5,6 +5,9 @@ import type { Project, ProjectSession, SessionProvider } from '../../../types/ap import type { SessionStore, NormalizedMessage } from '../../../stores/useSessionStore'; import { useWebSocket } from '../../../contexts/WebSocketContext'; import { SmoothTextStream } from './streamSmoother'; +import { getPilotDeckSettings } from '../utils/chatStorage'; +import { startSessionCommand } from '../utils/sessionLauncher'; +import { getAutoProceed } from '../utils/autoProceedStorage'; type PendingViewSession = { sessionId: string | null; @@ -120,6 +123,7 @@ interface UseChatRealtimeHandlersArgs { onNavigateToSession?: (sessionId: string) => void; onWebSocketReconnect?: () => void; sessionStore: SessionStore; + sendMessage: (message: unknown) => void; } /* ------------------------------------------------------------------ */ @@ -128,6 +132,7 @@ interface UseChatRealtimeHandlersArgs { export function useChatRealtimeHandlers({ provider, + selectedProject, selectedSession, currentSessionId, setCurrentSessionId, @@ -146,11 +151,13 @@ export function useChatRealtimeHandlers({ onNavigateToSession, onWebSocketReconnect, sessionStore, + sendMessage, }: UseChatRealtimeHandlersArgs) { const { subscribe } = useWebSocket(); const streamBySessionRef = useRef(new Map()); const thinkingBySessionRef = useRef(new Map()); + const lastSelfHealAtRef = useRef(0); const handleMessage = useCallback((latestMessage: LatestChatMessage, fallbackSessionId?: string | null) => { if (!latestMessage) return; @@ -428,6 +435,60 @@ export function useChatRealtimeHandlers({ setTimeout(() => window.refreshProjects?.(), 500); } } + + // Self-heal: if the assistant produced no real text output, send "继续" + if (sid && !msg.aborted) { + try { + const now = Date.now(); + const cooledDown = now - lastSelfHealAtRef.current >= 10_000; + if (cooledDown) { + const settings = getPilotDeckSettings(); + if (settings.selfHealContinue && selectedProject) { + const allMsgs = sessionStore.getMessages(sid); + const lastAssistant = [...allMsgs] + .reverse() + .find((m) => m.kind === 'text' && m.role === 'assistant'); + const content = lastAssistant?.content?.trim() ?? ''; + if (content.length < 20) { + lastSelfHealAtRef.current = now; + startSessionCommand({ + sendMessage, + selectedProject, + command: '继续', + sessionId: sid, + }); + } + } + } + } catch { + // self-heal must never break the normal flow + } + + // Auto-proceed: if active for this session, re-check and push forward + if (getAutoProceed(sid)) { + try { + const settings = getPilotDeckSettings(); + const allMsgs = sessionStore.getMessages(sid); + const lastAssistant = [...allMsgs] + .reverse() + .find((m) => m.kind === 'text' && m.role === 'assistant'); + const content = lastAssistant?.content?.trim() ?? ''; + if (!content.includes('无需自动推进') && content.length >= 20) { + const prompt = + settings.autoProceedPrompt || + '你处于自动推进模式,再次自行审查代码是否符合项目规范、是否已完整满足我的需求、是否已足够简洁清晰、无过度设计或冗余保护。如果你认为已达最终交付状态,请明确答复"无需自动推进"'; + startSessionCommand({ + sendMessage, + selectedProject, + command: prompt, + sessionId: sid, + }); + } + } catch { + // auto-proceed must never break the normal flow + } + } + } break; } @@ -537,6 +598,8 @@ export function useChatRealtimeHandlers({ onNavigateToSession, onWebSocketReconnect, sessionStore, + selectedProject, + sendMessage, ]); useEffect(() => { diff --git a/ui/src/components/chat/types/types.ts b/ui/src/components/chat/types/types.ts index f2b9340a..611810ca 100644 --- a/ui/src/components/chat/types/types.ts +++ b/ui/src/components/chat/types/types.ts @@ -137,11 +137,17 @@ export interface PilotDeckWorkStatus { compactProgress?: CompactProgress | null; } +export const AUTO_PROCEED_DEFAULT_PROMPT = + '你处于自动推进模式,再次自行审查代码是否符合项目规范、是否已完整满足我的需求、是否已足够简洁清晰、无过度设计或冗余保护。如果你认为已达最终交付状态,请明确答复"无需自动推进"'; + export interface PilotDeckSettings { allowedTools: string[]; disallowedTools: string[]; skipPermissions: boolean; projectSortOrder: string; + selfHealContinue?: boolean; + autoProceedOn?: boolean; + autoProceedPrompt?: string; lastUpdated?: string; [key: string]: unknown; } diff --git a/ui/src/components/chat/utils/autoProceedStorage.ts b/ui/src/components/chat/utils/autoProceedStorage.ts new file mode 100644 index 00000000..907cab83 --- /dev/null +++ b/ui/src/components/chat/utils/autoProceedStorage.ts @@ -0,0 +1,41 @@ +/** + * Per-session auto-proceed state, persisted in localStorage. + * Keys: autoProceed_ → '1' | '0' + * + * When no stored value exists, the global autoProceedOn setting serves as + * the default (true for new sessions when the feature is enabled). + */ +const AUTO_PROCEED_PREFIX = 'autoProceed_'; + +import { getPilotDeckSettings } from './chatStorage'; + +export function getAutoProceed(sessionId: string): boolean { + if (!sessionId) return false; + try { + const stored = window.localStorage.getItem(AUTO_PROCEED_PREFIX + sessionId); + if (stored === '0') return false; + if (stored === '1') return true; + // No stored value → use global setting as default + const settings = getPilotDeckSettings(); + return settings.autoProceedOn !== false; + } catch { + // If anything fails, default to on + return true; + } +} + +export function setAutoProceed(sessionId: string, active: boolean): void { + if (!sessionId) return; + try { + window.localStorage.setItem(AUTO_PROCEED_PREFIX + sessionId, active ? '1' : '0'); + } catch { + // ignore storage errors + } +} + +/** Toggle the current value and return the new state. */ +export function toggleAutoProceed(sessionId: string): boolean { + const next = !getAutoProceed(sessionId); + setAutoProceed(sessionId, next); + return next; +} diff --git a/ui/src/components/chat/utils/chatStorage.ts b/ui/src/components/chat/utils/chatStorage.ts index 07025033..8ffb79a4 100644 --- a/ui/src/components/chat/utils/chatStorage.ts +++ b/ui/src/components/chat/utils/chatStorage.ts @@ -1,4 +1,5 @@ import type { PilotDeckSettings } from '../types/types'; +import { AUTO_PROCEED_DEFAULT_PROMPT } from '../types/types'; import { authenticatedFetch } from '../../../utils/api.js'; export const PILOTDECK_SETTINGS_KEY = 'pilotdeck-settings'; @@ -58,6 +59,8 @@ export function getPilotDeckSettings(): PilotDeckSettings { disallowedTools: [], skipPermissions: false, projectSortOrder: 'name', + autoProceedOn: true, + autoProceedPrompt: AUTO_PROCEED_DEFAULT_PROMPT, }; } @@ -72,6 +75,18 @@ export function getPilotDeckSettings(): PilotDeckSettings { ? parsed.skipPermissions : false, projectSortOrder: parsed.projectSortOrder || 'name', + selfHealContinue: + typeof parsed.selfHealContinue === 'boolean' + ? parsed.selfHealContinue + : false, + autoProceedOn: + typeof parsed.autoProceedOn === 'boolean' + ? parsed.autoProceedOn + : true, + autoProceedPrompt: + typeof parsed.autoProceedPrompt === 'string' && parsed.autoProceedPrompt.length > 0 + ? parsed.autoProceedPrompt + : AUTO_PROCEED_DEFAULT_PROMPT, }; } catch { return { @@ -79,6 +94,9 @@ export function getPilotDeckSettings(): PilotDeckSettings { disallowedTools: [], skipPermissions: false, projectSortOrder: 'name', + selfHealContinue: false, + autoProceedOn: true, + autoProceedPrompt: AUTO_PROCEED_DEFAULT_PROMPT, }; } } @@ -122,5 +140,10 @@ function mergePermissionSettings(value: unknown): PilotDeckSettings { disallowedTools: Array.isArray(parsed.disallowedTools) ? parsed.disallowedTools : [], skipPermissions: Boolean(parsed.skipPermissions), projectSortOrder: current.projectSortOrder || 'name', + selfHealContinue: typeof parsed.selfHealContinue === 'boolean' ? parsed.selfHealContinue : current.selfHealContinue, + autoProceedOn: typeof parsed.autoProceedOn === 'boolean' ? parsed.autoProceedOn : current.autoProceedOn, + autoProceedPrompt: typeof parsed.autoProceedPrompt === 'string' && parsed.autoProceedPrompt.length > 0 + ? parsed.autoProceedPrompt + : current.autoProceedPrompt, }; } diff --git a/ui/src/components/settings/view/tabs/PermissionsSettingsTab.tsx b/ui/src/components/settings/view/tabs/PermissionsSettingsTab.tsx index bf85affc..b86666d0 100644 --- a/ui/src/components/settings/view/tabs/PermissionsSettingsTab.tsx +++ b/ui/src/components/settings/view/tabs/PermissionsSettingsTab.tsx @@ -1,5 +1,5 @@ import { useCallback, useEffect, useRef, useState } from 'react'; -import { AlertTriangle, Download, Plus, Shield, Upload, X } from 'lucide-react'; +import { AlertTriangle, Download, Plus, RefreshCw, Shield, Upload, X } from 'lucide-react'; import { useTranslation } from 'react-i18next'; import { Button, Input } from '../../../../shared/view/ui'; import { isImeEnterEvent } from '../../../../utils/ime'; @@ -173,6 +173,9 @@ export default function PermissionsSettingsTab() { const [allowedTools, setAllowedTools] = useState([]); const [disallowedTools, setDisallowedTools] = useState([]); const [skipPermissions, setSkipPermissions] = useState(false); + const [selfHealContinue, setSelfHealContinue] = useState(false); + const [autoProceedOn, setAutoProceedOn] = useState(true); + const [autoProceedPrompt, setAutoProceedPrompt] = useState(''); const [newAllowed, setNewAllowed] = useState(''); const [newBlocked, setNewBlocked] = useState(''); const [banner, setBanner] = useState(null); @@ -183,6 +186,9 @@ export default function PermissionsSettingsTab() { setAllowedTools(settings.allowedTools); setDisallowedTools(settings.disallowedTools); setSkipPermissions(settings.skipPermissions); + setSelfHealContinue(settings.selfHealContinue || false); + setAutoProceedOn(settings.autoProceedOn !== false); + setAutoProceedPrompt(settings.autoProceedPrompt || ''); }, []); useEffect(() => { @@ -193,6 +199,9 @@ export default function PermissionsSettingsTab() { setAllowedTools(settings.allowedTools); setDisallowedTools(settings.disallowedTools); setSkipPermissions(settings.skipPermissions); + setSelfHealContinue(settings.selfHealContinue || false); + setAutoProceedOn(settings.autoProceedOn !== false); + setAutoProceedPrompt(settings.autoProceedPrompt || ''); }) .catch((error) => { console.error('Failed to load permission settings from backend:', error); @@ -442,6 +451,69 @@ export default function PermissionsSettingsTab() { })}
) : null} + + + {t('permissions.selfHealContinue.title', { defaultValue: 'Self-heal continuation' })} + + } + description={t('permissions.selfHealContinue.description', { + defaultValue: + 'When the assistant produces no real text output (e.g. empty response, tool-call-only turn), automatically send "继续" to unblock the session. Prevents silent stalls caused by model API failures.', + })} + > + { + setSelfHealContinue(value); + persist({ selfHealContinue: value }); + }} + /> + + + + {t('permissions.autoProceedOn.title', { defaultValue: 'Auto-proceed (per-session)' })} + + } + description={t('permissions.autoProceedOn.description', { + defaultValue: + 'Default on for new sessions. After each assistant reply the session auto-checks completion and triggers a follow-up prompt unless the reply contains "无需自动推进". Toggle per session via the dot in the sidebar.', + })} + > + { + setAutoProceedOn(value); + persist({ autoProceedOn: value }); + }} + /> + + +