From 9c6f81e51f6b5e29310ff30b16092821667f399d Mon Sep 17 00:00:00 2001 From: Andreas Trawoeger Date: Wed, 7 Oct 2026 23:58:53 +0200 Subject: [PATCH 1/2] fix(tools): every repo-targeting tool names its repository explicitly (#3) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The plugin resolves a call's repository through an explicit `ownerRepo`, then the configured `defaultOwnerRepo`, then the git origin of the workspace directory. That last leg reads the origin in the PLUGIN HOST process's cwd, and a `dsh web` deployment sets that cwd to the SERVICE's working directory — not the session's checkout — so there the leg can never fire. The error's guidance nevertheless told the caller to "run inside a checkout with a GitHub origin remote": advice that cannot be acted on in the deployment that hit this. `gh_review`, `gh_checks`, `pr_merge` and `pr_update` had no way to name a repository at all — they resolved with `undefined`, so they could only ever use the configured default or the unfireable probe. The two mutating ones are the "silent wrong-repo write" this issue warns about. All four now declare `ownerRepo`, with 11 repo-targeting tools total; the four call sites thread it into `resolveRepo`. - ONE canonical `REPO_GUIDANCE` naming only remedies that work anywhere (pass `ownerRepo`, or configure `defaultOwnerRepo`); `/pr create` uses it too, so the rule has a single home; - ONE canonical `OWNER_REPO_DESCRIPTION` across all 11 tools plus the `/ci` tool, replacing seven near-duplicate copies that could drift; - the five READMEs state what actually resolves where, and the `workspaceDir` row documents the missing half: in a web deployment it is the service process's cwd, so git-derived facts and the last-resort probe are unavailable — pass `ownerRepo` per call; - `pr_create`'s head-branch guidance names the satisfiable remedy first, the same class; `/pr create`'s own "run inside a git checkout" is a true precondition and stays. `gh_search` and `gh_repo_search` are deliberately NOT given the argument: neither calls `resolveRepo` at all, and a repository target is meaningless for a query-scoped or catalogue search. Adding one would be inventing guidance to satisfy a check. Tests: every repo-targeting tool must declare `ownerRepo` with the shared description, and `pr_merge` must target an explicitly named repo rather than the configured default. Both are RED on the pre-change source (185 pass, 2 fail there; 187 pass here). Assisted-by: DeepSeek Harness deepseek-v4.1-flash (fully tested and validated) --- README-es.md | 4 ++-- README-hi.md | 4 ++-- README-pt.md | 4 ++-- README-zh.md | 4 ++-- README.md | 4 ++-- lib/ci/tool.d.ts | 2 +- lib/ci/tool.d.ts.map | 2 +- lib/ci/tool.js | 5 +++-- lib/ci/tool.js.map | 2 +- lib/commands.d.ts | 2 +- lib/commands.d.ts.map | 2 +- lib/commands.js | 4 +++- lib/commands.js.map | 2 +- lib/config.d.ts | 7 ++++++- lib/config.d.ts.map | 2 +- lib/config.js.map | 2 +- lib/state.d.ts | 38 ++++++++++++++++++++++++++++++++-- lib/state.d.ts.map | 2 +- lib/state.js | 37 +++++++++++++++++++++++++++++++-- lib/state.js.map | 2 +- lib/tools.d.ts.map | 2 +- lib/tools.js | 32 ++++++++++++++++------------- lib/tools.js.map | 2 +- src/ci/tool.ts | 6 +++--- src/commands.ts | 5 +++-- src/config.ts | 7 ++++++- src/state.ts | 40 +++++++++++++++++++++++++++++++++--- src/tools.ts | 32 ++++++++++++++++------------- test/tool-interfaces.test.ts | 29 ++++++++++++++++++++++++++ test/tools.test.ts | 32 ++++++++++++++++++++++++++++- 30 files changed, 250 insertions(+), 68 deletions(-) diff --git a/README-es.md b/README-es.md index 34ad075..617c198 100644 --- a/README-es.md +++ b/README-es.md @@ -98,7 +98,7 @@ Todos los ajustes son campos `Config` de Schemastery (modificables desde cordis. |---|---|---| | `tokenSource` | `auto` | `auto` (credenciales → env → gh) o uno de `credentials` / `env` / `gh` | | `tokenRef` | `GITHUB_TOKEN` | Referencia de la capa de credenciales / nombre de la variable de entorno | -| `defaultOwnerRepo` | — | `owner/repo` de respaldo cuando una llamada no indica ninguno y git no tiene origen | +| `defaultOwnerRepo` | — | `owner/repo` de respaldo cuando una llamada no indica ninguno. En un despliegue `dsh web` el sondeo del origen git no puede dispararse — ver `workspaceDir` | | `autoCommit` | `false` | Si `/pr create` puede indicar al modelo que haga commit+push primero | | `maxDiffChars` | `8000` | Límite de caracteres para los diffs de PR leídos en las revisiones | | `renderExcerptChars` | `2000` | Límite de caracteres para el extracto de diff representado en la salida de la herramienta | @@ -116,7 +116,7 @@ Todos los ajustes son campos `Config` de Schemastery (modificables desde cordis. | `requestTimeoutMs` | `30000` | Tiempo máximo por solicitud; aborta el fetch al superarse | | `apiBaseUrl` | `https://api.github.com` | URL base de la API REST de GitHub (GitHub Enterprise) | | `allowedActions` | `['pr.create','pr.merge','pr.update','review.post','issue.create','issue.comment','issue.close','ci.run']` | Lista blanca de acciones de escritura; cualquier otra se deniega antes de la aprobación | -| `workspaceDir` | process cwd | Directorio de trabajo para la inspección de git de solo lectura | +| `workspaceDir` | process cwd | Directorio de trabajo para la inspección de git de solo lectura. Un despliegue `dsh web` lo fija al cwd del PROCESO DE SERVICIO, no al checkout de la sesión, así que los datos derivados de git (origen, rama) y el último recurso `defaultOwnerRepo` no están disponibles — pasa `ownerRepo` en cada llamada (opencharly/dsh-github#3) | | `ci` | `{ enabled: false, … }` | Sección de integración CI: bot de revisión por sondeo, puerta de status-check y la herramienta de un solo uso `ci_run` (contiene todas las claves `ci.*`) | ## Herramientas y superficies diff --git a/README-hi.md b/README-hi.md index a222acf..1b7247f 100644 --- a/README-hi.md +++ b/README-hi.md @@ -98,7 +98,7 @@ dsh --profile web --dump-config | grep -A3 'id: dsh-github' |---|---|---| | `tokenSource` | `auto` | `auto` (credentials → env → gh) या `credentials` / `env` / `gh` में से कोई एक | | `tokenRef` | `GITHUB_TOKEN` | Credential-seam reference / environment-variable नाम | -| `defaultOwnerRepo` | — | जब कोई call कोई नाम न दे और git के पास कोई origin न हो तो Fallback `owner/repo` | +| `defaultOwnerRepo` | — | जब कोई call कोई नाम न दे तो Fallback `owner/repo`। `dsh web` deployment में git origin की जाँच चल ही नहीं सकती — देखें `workspaceDir` | | `autoCommit` | `false` | क्या `/pr create` model को पहले commit+push करने का निर्देश दे सकता है | | `maxDiffChars` | `8000` | reviews में पढ़े जाने वाले PR diffs की character सीमा | | `renderExcerptChars` | `2000` | tool output में render किए जाने वाले diff excerpt की character सीमा | @@ -116,7 +116,7 @@ dsh --profile web --dump-config | grep -A3 'id: dsh-github' | `requestTimeoutMs` | `30000` | प्रति request का hard timeout; exceed होने पर fetch abort | | `apiBaseUrl` | `https://api.github.com` | GitHub REST base URL (GitHub Enterprise) | | `allowedActions` | `['pr.create','pr.merge','pr.update','review.post','issue.create','issue.comment','issue.close','ci.run']` | Write-action whitelist; बाकी सब approval से पहले अस्वीकार | -| `workspaceDir` | process cwd | read-only git inspection के लिए working directory | +| `workspaceDir` | process cwd | read-only git inspection के लिए working directory। `dsh web` deployment में यह SERVICE प्रोसेस का cwd होता है, session का checkout नहीं, इसलिए git से मिलने वाली जानकारी (origin, branch) और आख़िरी `defaultOwnerRepo` fallback वहाँ उपलब्ध नहीं हैं — हर call में `ownerRepo` दें (opencharly/dsh-github#3) | | `ci` | `{ enabled: false, … }` | CI integration section: polling review bot, status-check gate और one-shot `ci_run` tool (सभी `ci.*` keys इसी में हैं) | ## टूल्स और सतहें diff --git a/README-pt.md b/README-pt.md index ba99722..5b81d63 100644 --- a/README-pt.md +++ b/README-pt.md @@ -98,7 +98,7 @@ Todos os ajustes são campos `Config` do Schemastery (modificáveis a partir do |---|---|---| | `tokenSource` | `auto` | `auto` (credenciais → ambiente → gh) ou um de `credentials` / `env` / `gh` | | `tokenRef` | `GITHUB_TOKEN` | Referência da camada de credenciais / nome da variável de ambiente | -| `defaultOwnerRepo` | — | Fallback `owner/repo` quando uma chamada não nomeia nenhum e o git não tem origin | +| `defaultOwnerRepo` | — | Fallback `owner/repo` quando uma chamada não nomeia nenhum. Em uma implantação `dsh web` a sondagem da origin do git não pode disparar — veja `workspaceDir` | | `autoCommit` | `false` | Se `/pr create` pode instruir o modelo a fazer commit+push primeiro | | `maxDiffChars` | `8000` | Limite de caracteres para diffs de PR lidos nas revisões | | `renderExcerptChars` | `2000` | Limite de caracteres para o trecho de diff renderizado na saída da ferramenta | @@ -116,7 +116,7 @@ Todos os ajustes são campos `Config` do Schemastery (modificáveis a partir do | `requestTimeoutMs` | `30000` | Timeout rígido por requisição; aborta o fetch ao exceder | | `apiBaseUrl` | `https://api.github.com` | URL base da API REST do GitHub (GitHub Enterprise) | | `allowedActions` | `['pr.create','pr.merge','pr.update','review.post','issue.create','issue.comment','issue.close','ci.run']` | Allowlist de ações de gravação; qualquer outra coisa é negada antes da aprovação | -| `workspaceDir` | process cwd | Diretório de trabalho para inspeção somente leitura do git | +| `workspaceDir` | process cwd | Diretório de trabalho para inspeção somente leitura do git. Em uma implantação `dsh web` ele é o cwd do PROCESSO DE SERVIÇO, não o checkout da sessão, então fatos derivados do git (origin, branch) e o último fallback `defaultOwnerRepo` não estão disponíveis — informe `ownerRepo` em cada chamada (opencharly/dsh-github#3) | | `ci` | `{ enabled: false, … }` | Seção de integração CI: bot de revisão por polling, barreira de status-check e a ferramenta de execução única `ci_run` (contém todas as chaves `ci.*`) | ## Ferramentas e superfícies diff --git a/README-zh.md b/README-zh.md index a0255e6..7730419 100644 --- a/README-zh.md +++ b/README-zh.md @@ -100,7 +100,7 @@ dsh --profile web --dump-config | grep -A3 'id: dsh-github' |---|---|---| | `tokenSource` | `auto` | `auto`(credentials → env → gh)或指定 `credentials` / `env` / `gh` | | `tokenRef` | `GITHUB_TOKEN` | credentials seam 引用名 / 环境变量名 | -| `defaultOwnerRepo` | — | 调用未指定且 git 无 origin 时的兜底 `owner/repo` | +| `defaultOwnerRepo` | — | 调用未指定时的兜底 `owner/repo`。在 `dsh web` 部署中 git origin 探测无法触发 — 参见 `workspaceDir` | | `autoCommit` | `false` | `/pr create` 是否允许指示模型先 commit+push | | `maxDiffChars` | `8000` | 审查读取 PR diff 的字符数上限 | | `renderExcerptChars` | `2000` | 渲染进工具输出的 diff 摘要字符数上限 | @@ -118,7 +118,7 @@ dsh --profile web --dump-config | grep -A3 'id: dsh-github' | `requestTimeoutMs` | `30000` | 单次请求硬超时;超时即中止 fetch | | `apiBaseUrl` | `https://api.github.com` | GitHub REST 基地址(GitHub Enterprise) | | `allowedActions` | `['pr.create','pr.merge','pr.update','review.post','issue.create','issue.comment','issue.close','ci.run']` | 写动作白名单;名单外直接拒绝 | -| `workspaceDir` | 进程 cwd | 只读 git 检查的工作目录 | +| `workspaceDir` | 进程 cwd | 只读 git 检查的工作目录。在 `dsh web` 部署中它是**服务进程**的 cwd,而非会话的检出目录,因此 git 派生的事实(origin、分支)与最后的 `defaultOwnerRepo` 兜底都不可用 — 请在每次调用中传入 `ownerRepo`(opencharly/dsh-github#3) | | `ci` | `{ enabled: false, … }` | CI 集成段:轮询式审查机器人、状态检查门禁与一次性 `ci_run` 工具(其下为全部 `ci.*` 子键) | ## 工具与界面 diff --git a/README.md b/README.md index 8c5a4cb..72c7cb3 100644 --- a/README.md +++ b/README.md @@ -101,7 +101,7 @@ All tunables are Schemastery `Config` fields (changeable from cordis.yml). An id |---|---|---| | `tokenSource` | `auto` | `auto` (credentials → env → gh) or one of `credentials` / `env` / `gh` | | `tokenRef` | `GITHUB_TOKEN` | Credential-seam reference / environment-variable name | -| `defaultOwnerRepo` | — | Fallback `owner/repo` when a call names none and git has no origin | +| `defaultOwnerRepo` | — | Fallback `owner/repo` when a call names none. In a `dsh web` deployment the git-origin probe cannot fire — see `workspaceDir` | | `autoCommit` | `false` | Whether `/pr create` may instruct the model to commit+push first | | `maxDiffChars` | `8000` | Character cap for PR diffs read into reviews | | `renderExcerptChars` | `2000` | Character cap for the diff excerpt rendered into tool output | @@ -119,7 +119,7 @@ All tunables are Schemastery `Config` fields (changeable from cordis.yml). An id | `requestTimeoutMs` | `30000` | Hard per-request timeout; aborts the fetch when exceeded | | `apiBaseUrl` | `https://api.github.com` | GitHub REST base URL (GitHub Enterprise) | | `allowedActions` | `['pr.create','pr.merge','pr.update','review.post','issue.create','issue.comment','issue.close','ci.run']` | Write-action whitelist; anything else is denied before approval | -| `workspaceDir` | process cwd | Working directory for read-only git inspection | +| `workspaceDir` | process cwd | Working directory for read-only git inspection. A `dsh web` deployment sets it to the SERVICE process's cwd, not the session's checkout, so git-derived facts (origin, branch) and the last-resort `defaultOwnerRepo` probe are unavailable there — pass `ownerRepo` on every call (opencharly/dsh-github#3) | | `ci` | `{ enabled: false, … }` | CI integration section: polling review bot, status-check gate, and the one-shot `ci_run` tool (all `ci.*` keys live inside it) | ## Tools & surfaces diff --git a/lib/ci/tool.d.ts b/lib/ci/tool.d.ts index 3fb541f..4072ab7 100644 --- a/lib/ci/tool.d.ts +++ b/lib/ci/tool.d.ts @@ -1,4 +1,4 @@ -import type { GithubState } from '../state.js'; +import { type GithubState } from '../state.js'; /** `ci_run`: run one CI review pass (write; approval-gated upstream). */ export declare function ciRunTool(state: GithubState): import("@deepseek-ai/dsh-tools").ToolDefinition; //# sourceMappingURL=tool.d.ts.map \ No newline at end of file diff --git a/lib/ci/tool.d.ts.map b/lib/ci/tool.d.ts.map index 84c6858..c2daf9e 100644 --- a/lib/ci/tool.d.ts.map +++ b/lib/ci/tool.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../src/ci/tool.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAmB9C,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,KAAK,EAAE,WAAW,mDAiH3C"} \ No newline at end of file +{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../src/ci/tool.ts"],"names":[],"mappings":"AAqBA,OAAO,EAA0B,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAmBtE,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,KAAK,EAAE,WAAW,mDAiH3C"} \ No newline at end of file diff --git a/lib/ci/tool.js b/lib/ci/tool.js index 7b62a57..d1c9569 100644 --- a/lib/ci/tool.js +++ b/lib/ci/tool.js @@ -19,6 +19,7 @@ import { defineTool } from '@deepseek-ai/dsh-tools'; import { errorValue } from "../tools.js"; import { ERROR_SCHEMA, RATE_LIMIT_SCHEMA } from "../tools.js"; +import { OWNER_REPO_DESCRIPTION } from "../state.js"; import { ciRunCall, ciRunResult } from "../present.js"; import { identityMeta } from "../present.js"; import { runCiPipeline } from "./pipeline.js"; @@ -47,7 +48,7 @@ export function ciRunTool(state) { parameters: { task: { type: 'string', required: true, enum: [...TASKS], description: 'Which CI pass to run.' }, pr: { type: 'string', required: true, description: 'PR number, #number, owner/repo#number, or pull URL.' }, - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, maxDiffChars: { type: 'number', description: 'Cap for the diff text. Defaults to the plugin config.' }, body: { type: 'string', description: 'Review-body override (publish task).' }, findings: { type: 'array', items: FINDING_SCHEMA, description: 'Extra findings authored by you (publish task).' }, @@ -124,7 +125,7 @@ export function ciRunTool(state) { const ref = state.parsePrRef(args.pr); if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.'); - const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal); + const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal); if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance); const findings = args.findings?.map(finding => ({ diff --git a/lib/ci/tool.js.map b/lib/ci/tool.js.map index 0a630a8..68843a7 100644 --- a/lib/ci/tool.js.map +++ b/lib/ci/tool.js.map @@ -1 +1 @@ -{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/ci/tool.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/ci/tool.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/commands.d.ts b/lib/commands.d.ts index 7438215..7a916b7 100644 --- a/lib/commands.d.ts +++ b/lib/commands.d.ts @@ -1,5 +1,5 @@ import type { CommandDefinition, CommandsService, JobRegistry } from './types.js'; -import type { GithubState } from './state.js'; +import { type GithubState } from './state.js'; /** Register the /pr command family. */ export declare function registerPrCommand(commands: CommandsService, state: GithubState): () => void; /** Register the /review command family. */ diff --git a/lib/commands.d.ts.map b/lib/commands.d.ts.map index c08fd40..068ea57 100644 --- a/lib/commands.d.ts.map +++ b/lib/commands.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,iBAAiB,EAAoC,eAAe,EAA4B,WAAW,EAAE,MAAM,YAAY,CAAA;AAC7I,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAiB7C,uCAAuC;AACvC,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CAY3F;AAoCD,2CAA2C;AAC3C,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CA6ClH;AAiED,0CAA0C;AAC1C,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CAoB9F;AAED,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CAS7G;AAED,YAAY,EAAE,iBAAiB,EAAE,CAAA"} \ No newline at end of file +{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,iBAAiB,EAAoC,eAAe,EAA4B,WAAW,EAAE,MAAM,YAAY,CAAA;AAC7I,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,YAAY,CAAA;AAiB5D,uCAAuC;AACvC,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CAY3F;AAqCD,2CAA2C;AAC3C,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CA6ClH;AAiED,0CAA0C;AAC1C,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CAoB9F;AAED,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI,CAS7G;AAED,YAAY,EAAE,iBAAiB,EAAE,CAAA"} \ No newline at end of file diff --git a/lib/commands.js b/lib/commands.js index 4571e63..b93684b 100644 --- a/lib/commands.js +++ b/lib/commands.js @@ -13,6 +13,7 @@ import { createUserMessage } from '@deepseek-ai/dsh-llm/message'; import { readGitState } from "./git.js"; import { startReviewJob } from "./jobs.js"; +import { REPO_GUIDANCE } from "./state.js"; const USAGE_PR = 'Usage: /pr create [title]'; const USAGE_REVIEW = 'Usage: /review [--max-diff ] [--no-ci] [--no-comments] | /review stop | /review post '; const USAGE_ISSUE = 'Usage: /issue open '; @@ -54,7 +55,8 @@ async function createPrDraft(invocation, title, state) { return { kind: 'error', text: 'no current branch found. Run /pr create inside a git checkout.' }; const repo = git.repoFromRemote ?? state.config.defaultOwnerRepo; if (repo === undefined) { - return { kind: 'error', text: 'could not determine the target repository. Set defaultOwnerRepo in cordis.yml or add a GitHub origin remote.' }; + // One canonical remedy text, shared with every repo-targeting tool's error path. + return { kind: 'error', text: `could not determine the target repository. ${REPO_GUIDANCE}` }; } const lines = [ `The user ran /pr create${title.length > 0 ? ` "${title}"` : ''}. Create a GitHub pull request by calling the pr_create tool.`, diff --git a/lib/commands.js.map b/lib/commands.js.map index d834aa8..5dc225b 100644 --- a/lib/commands.js.map +++ b/lib/commands.js.map @@ -1 +1 @@ -{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/config.d.ts b/lib/config.d.ts index 97b9de8..67fadb8 100644 --- a/lib/config.d.ts +++ b/lib/config.d.ts @@ -68,7 +68,12 @@ export interface Config { tokenSource: TokenSource; /** Credentials-seam reference / environment-variable name for the token. */ tokenRef: string; - /** `owner/repo` used when a call does not name one and git has no origin. */ + /** + * `owner/repo` used when a call does not name one. It is the only fallback that works + * everywhere: the last-resort git-origin probe needs a checkout cwd, which a `dsh web` + * deployment does not provide (see `resolveRepo` in state.ts and + * opencharly/dsh-github#3). + */ defaultOwnerRepo?: string; /** Whether `/pr create` may instruct the model to commit and push first. */ autoCommit: boolean; diff --git a/lib/config.d.ts.map b/lib/config.d.ts.map index 56d7535..f131b1c 100644 --- a/lib/config.d.ts.map +++ b/lib/config.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/config.js.map b/lib/config.js.map index 4a1c14e..5565351 100644 --- a/lib/config.js.map +++ b/lib/config.js.map @@ -1 +1 @@ -{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,CAAC,MAAM,0BAA0B,CAAA;AA+GxC,MAAM,kBAAkB,GAAG,oCAAoC,CAAA;AAE/D,gEAAgE;AAChE,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IACpD,SAAS,EAAE,aAAa,EAAE,SAAS;IACnC,sBAAsB,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY;IAClE,yBAAyB,EAAE,0BAA0B;CACtD,CAAA;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;IACjE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;IAChE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM;CAClC,CAAA;AAED,2DAA2D;AAC3D,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW;IACzE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa;CACzD,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAA;AAEjJ,MAAM,CAAC,MAAM,QAAQ,GAAgB,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;SAChC,WAAW,CAAC,8FAA8F,CAAC;IAC9G,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC5D,WAAW,CAAC,mGAAmG,CAAC;IACnH,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACxD,WAAW,CAAC,sHAAsH,CAAC;IACtI,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;SAC/C,WAAW,CAAC,6CAA6C,CAAC;IAC7D,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;SAChC,WAAW,CAAC,6FAA6F,CAAC;IAC7G,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,SAAS,CAAU,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;SAC5D,WAAW,CAAC,kEAAkE,CAAC;IAClF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;SACtD,WAAW,CAAC,6EAA6E,CAAC;IAC7F,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SAC1C,WAAW,CAAC,uGAAuG,CAAC;IACvH,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACzC,WAAW,CAAC,+GAA+G,CAAC;IAC/H,qBAAqB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC;SAC3E,WAAW,CAAC,0DAA0D,CAAC;IAC1E,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,SAAS,CAAU,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;SACzE,WAAW,CAAC,sCAAsC,CAAC;IACtD,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC;SACjE,WAAW,CAAC,sEAAsE,CAAC;IACtF,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;SACjE,WAAW,CAAC,yDAAyD,CAAC;IACzE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACnD,WAAW,CAAC,+CAA+C,CAAC;IAC/D,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SACnD,WAAW,CAAC,+CAA+C,CAAC;IAC/D,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SACrD,WAAW,CAAC,iDAAiD,CAAC;IACjE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;SAChD,WAAW,CAAC,uDAAuD,CAAC;IACvE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;SACpC,WAAW,CAAC,yFAAyF,CAAC;IACzG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;SAC9B,WAAW,CAAC,4FAA4F,CAAC;CAC7G,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,MAAM,GAAc,CAAC,CAAC,MAAM,CAAC;IACxC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,CAAU,CAAC;SAChE,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,kEAAkE,CAAC;IAClF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;SACjB,OAAO,CAAC,0BAA0B,CAAC;SACnC,OAAO,CAAC,cAAc,CAAC;SACvB,WAAW,CAAC,qEAAqE,CAAC;IACrF,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;SACzB,OAAO,CAAC,kBAAkB,CAAC;SAC3B,WAAW,CAAC,8DAA8D,CAAC;IAC9E,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;SACpB,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,qEAAqE,CAAC;IACrF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACpC,OAAO,CAAC,IAAI,CAAC;SACb,WAAW,CAAC,gDAAgD,CAAC;IAChE,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC1C,OAAO,CAAC,IAAI,CAAC;SACb,WAAW,CAAC,+DAA+D,CAAC;IAC/E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnC,OAAO,CAAC,EAAE,CAAC;SACX,WAAW,CAAC,0CAA0C,CAAC;IAC1D,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;SAC7C,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,yCAAyC,CAAC;IACzD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACxC,OAAO,CAAC,EAAE,CAAC;SACX,WAAW,CAAC,2EAA2E,CAAC;IAC3F,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACpC,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,kDAAkD,CAAC;IAClE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnC,OAAO,CAAC,EAAE,CAAC;SACX,WAAW,CAAC,uCAAuC,CAAC;IACvD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACrC,OAAO,CAAC,GAAG,CAAC;SACZ,WAAW,CAAC,kEAAkE,CAAC;IAClF,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC;SAC9C,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,yGAAyG,CAAC;IACzH,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE;SAC5B,WAAW,CAAC,qFAAqF,CAAC;IACrG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAClC,OAAO,CAAC,CAAC,CAAC;SACV,WAAW,CAAC,oDAAoD,CAAC;IACpE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnC,OAAO,CAAC,GAAG,CAAC;SACZ,WAAW,CAAC,qDAAqD,CAAC;IACrE,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACtC,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,gCAAgC,CAAC;IAChD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;SAC3C,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,2DAA2D,CAAC;IAC3E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;SACnB,OAAO,CAAC,wBAAwB,CAAC;SACjC,WAAW,CAAC,sDAAsD,CAAC;IACtE,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;SAC/C,OAAO,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;SACxH,WAAW,CAAC,sEAAsE,CAAC;IACtF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;SACrB,WAAW,CAAC,2EAA2E,CAAC;IAC3F,EAAE,EAAE,QAAQ;SACT,WAAW,CAAC,8EAA8E,CAAC;CAC/F,CAAC,CAAA"} \ No newline at end of file +{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAoHxC,MAAM,kBAAkB,GAAG,oCAAoC,CAAA;AAE/D,gEAAgE;AAChE,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IACpD,SAAS,EAAE,aAAa,EAAE,SAAS;IACnC,sBAAsB,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY;IAClE,yBAAyB,EAAE,0BAA0B;CACtD,CAAA;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;IACjE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;IAChE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM;CAClC,CAAA;AAED,2DAA2D;AAC3D,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW;IACzE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa;CACzD,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAA;AAEjJ,MAAM,CAAC,MAAM,QAAQ,GAAgB,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;SAChC,WAAW,CAAC,8FAA8F,CAAC;IAC9G,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC5D,WAAW,CAAC,mGAAmG,CAAC;IACnH,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACxD,WAAW,CAAC,sHAAsH,CAAC;IACtI,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;SAC/C,WAAW,CAAC,6CAA6C,CAAC;IAC7D,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;SAChC,WAAW,CAAC,6FAA6F,CAAC;IAC7G,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,SAAS,CAAU,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;SAC5D,WAAW,CAAC,kEAAkE,CAAC;IAClF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;SACtD,WAAW,CAAC,6EAA6E,CAAC;IAC7F,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SAC1C,WAAW,CAAC,uGAAuG,CAAC;IACvH,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACzC,WAAW,CAAC,+GAA+G,CAAC;IAC/H,qBAAqB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC;SAC3E,WAAW,CAAC,0DAA0D,CAAC;IAC1E,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,SAAS,CAAU,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;SACzE,WAAW,CAAC,sCAAsC,CAAC;IACtD,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC;SACjE,WAAW,CAAC,sEAAsE,CAAC;IACtF,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;SACjE,WAAW,CAAC,yDAAyD,CAAC;IACzE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACnD,WAAW,CAAC,+CAA+C,CAAC;IAC/D,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SACnD,WAAW,CAAC,+CAA+C,CAAC;IAC/D,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SACrD,WAAW,CAAC,iDAAiD,CAAC;IACjE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;SAChD,WAAW,CAAC,uDAAuD,CAAC;IACvE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;SACpC,WAAW,CAAC,yFAAyF,CAAC;IACzG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;SAC9B,WAAW,CAAC,4FAA4F,CAAC;CAC7G,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,MAAM,GAAc,CAAC,CAAC,MAAM,CAAC;IACxC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,CAAU,CAAC;SAChE,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,kEAAkE,CAAC;IAClF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;SACjB,OAAO,CAAC,0BAA0B,CAAC;SACnC,OAAO,CAAC,cAAc,CAAC;SACvB,WAAW,CAAC,qEAAqE,CAAC;IACrF,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;SACzB,OAAO,CAAC,kBAAkB,CAAC;SAC3B,WAAW,CAAC,8DAA8D,CAAC;IAC9E,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;SACpB,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,qEAAqE,CAAC;IACrF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACpC,OAAO,CAAC,IAAI,CAAC;SACb,WAAW,CAAC,gDAAgD,CAAC;IAChE,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC1C,OAAO,CAAC,IAAI,CAAC;SACb,WAAW,CAAC,+DAA+D,CAAC;IAC/E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnC,OAAO,CAAC,EAAE,CAAC;SACX,WAAW,CAAC,0CAA0C,CAAC;IAC1D,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;SAC7C,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,yCAAyC,CAAC;IACzD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACxC,OAAO,CAAC,EAAE,CAAC;SACX,WAAW,CAAC,2EAA2E,CAAC;IAC3F,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACpC,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,kDAAkD,CAAC;IAClE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnC,OAAO,CAAC,EAAE,CAAC;SACX,WAAW,CAAC,uCAAuC,CAAC;IACvD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACrC,OAAO,CAAC,GAAG,CAAC;SACZ,WAAW,CAAC,kEAAkE,CAAC;IAClF,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC;SAC9C,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,yGAAyG,CAAC;IACzH,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE;SAC5B,WAAW,CAAC,qFAAqF,CAAC;IACrG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAClC,OAAO,CAAC,CAAC,CAAC;SACV,WAAW,CAAC,oDAAoD,CAAC;IACpE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACnC,OAAO,CAAC,GAAG,CAAC;SACZ,WAAW,CAAC,qDAAqD,CAAC;IACrE,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACtC,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,gCAAgC,CAAC;IAChD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;SAC3C,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,2DAA2D,CAAC;IAC3E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;SACnB,OAAO,CAAC,wBAAwB,CAAC;SACjC,WAAW,CAAC,sDAAsD,CAAC;IACtE,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;SAC/C,OAAO,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;SACxH,WAAW,CAAC,sEAAsE,CAAC;IACtF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;SACrB,WAAW,CAAC,2EAA2E,CAAC;IAC3F,EAAE,EAAE,QAAQ;SACT,WAAW,CAAC,8EAA8E,CAAC;CAC/F,CAAC,CAAA"} \ No newline at end of file diff --git a/lib/state.d.ts b/lib/state.d.ts index cfc419d..affb04d 100644 --- a/lib/state.d.ts +++ b/lib/state.d.ts @@ -61,7 +61,7 @@ export interface GithubState { client(token: string): GithubClient; /** Builds an authenticated GraphQL client for one operation. */ graphqlClient(token: string): GithubGraphqlClient; - /** Resolves `owner/repo` from an explicit value, config, or git origin. */ + /** Resolves `owner/repo` from an explicit argument, the configured default, or the workspace git origin. */ resolveRepo(ownerRepo: string | undefined, signal?: AbortSignal): Promise<RepoResolution>; /** Parses `123`, `#123`, `owner/repo#123`, or a pull-request URL. */ parsePrRef(input: string): PrRef | null; @@ -74,6 +74,23 @@ export interface GithubState { /** Register one review-job record, evicting settled records past the cap. */ rememberRecord(id: string, record: ReviewJobRecord): void; } +/** + * The one canonical remedy text for a call that names no repository. + * + * It names ONLY remedies the caller can actually carry out from wherever the + * plugin runs. The former third clause — "or run inside a checkout with a GitHub + * origin remote" — is deliberately gone: that leg reads the git origin in the + * PLUGIN HOST process's cwd, which a `dsh web` deployment sets to the service's + * working directory rather than the session's checkout, so in that deployment the + * advice could never be acted on (opencharly/dsh-github#3). + */ +export declare const REPO_GUIDANCE = "Pass ownerRepo, or configure defaultOwnerRepo for this plugin."; +/** + * The one canonical `ownerRepo` argument description shared by every repo-targeting + * tool (the tools themselves and the `/ci` tool), so the resolution order is stated + * ONCE and cannot drift between surfaces. + */ +export declare const OWNER_REPO_DESCRIPTION = "Repository as owner/repo. Falls back to the configured defaultOwnerRepo, then the working directory's git origin (absent in a web deployment)."; /** * Create the shared plugin state. Called once per plugin instance (per * cordis.yml row); config hot-reload creates a fresh instance. @@ -87,7 +104,24 @@ export declare function createState(ctx: { credentials: CredentialProvider; subagents?: SubagentsService; }, config: Config, runGit: GitRunner, runGh: GhRunner, fetchImpl?: typeof fetch): GithubState; -/** Resolve the target repository: explicit value → config fallback → git origin. */ +/** + * Resolve the target repository, in precedence order: + * + * 1. an explicit `ownerRepo` argument (the only leg a caller fully controls); + * 2. the configured `defaultOwnerRepo`; + * 3. the git origin of {@link GithubState.workspaceDir}. + * + * Leg 3 is real for a CLI/TUI session, whose cwd is the checkout. It is ABSENT in a + * `dsh web` deployment, where the plugin host's cwd is the SERVICE's working + * directory and not the session's workspace — and no host capability exposes a + * session's workspace root to a plugin (the injected services are exactly + * `['tools','commands','jobs','approval','credentials']`; see + * opencharly/dsh-github#3). A web deployment must therefore name the repository + * explicitly or configure `defaultOwnerRepo`; nothing else can resolve it there. + * + * This is why the guidance text names only legs 1 and 2, and why a call that omits + * `ownerRepo` and has no configured default fails LOUDLY instead of guessing. + */ export declare function resolveRepo(state: GithubState, ownerRepo: string | undefined, signal?: AbortSignal): Promise<RepoResolution>; /** Parses PR references: `123`, `#123`, `owner/repo#123`, or a pull URL. */ export declare function parsePrRef(input: string): PrRef | null; diff --git a/lib/state.d.ts.map b/lib/state.d.ts.map index 2158479..acb41a1 100644 --- a/lib/state.d.ts.map +++ b/lib/state.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAA2B,KAAK,aAAa,EAAE,MAAM,aAAa,CAAA;AAC5G,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,EAAgB,KAAK,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAY,KAAK,MAAM,EAAE,MAAM,aAAa,CAAA;AAEnD,2DAA2D;AAC3D,MAAM,MAAM,cAAc,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAExH,4EAA4E;AAC5E,MAAM,WAAW,KAAK;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAA;IACrD,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,8EAA8E;IAC9E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,kBAAkB,CAAA;IAC/B,wEAAwE;IACxE,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACrC,kDAAkD;IAClD,MAAM,EAAE,SAAS,CAAA;IACjB,2CAA2C;IAC3C,KAAK,EAAE,QAAQ,CAAA;IACf,wEAAwE;IACxE,YAAY,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;IAC5D,wDAAwD;IACxD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAAA;IACnC,gEAAgE;IAChE,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAAA;IACjD,4GAA4G;IAC5G,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IACzF,qEAAqE;IACrE,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAA;IACvC,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAA;IACpB,yEAAyE;IACzE,OAAO,EAAE,MAAM,CAAA;IACf,8FAA8F;IAC9F,UAAU,EAAE,OAAO,CAAA;IACnB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;CAC1D;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,mEAAmE,CAAA;AAE7F;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,mJAAmJ,CAAA;AAItL;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE;IAAE,WAAW,EAAE,kBAAkB,CAAC;IAAC,SAAS,CAAC,EAAE,gBAAgB,CAAA;CAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,GAAG,WAAW,CAgC7L;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAYlI;AAUD,4EAA4E;AAC5E,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAQtD;AAYD,wDAAwD;AACxD,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB,CAAA;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,aAAa,GAAG,cAAc,CAElE"} \ No newline at end of file diff --git a/lib/state.js b/lib/state.js index 34d5ad5..bed872b 100644 --- a/lib/state.js +++ b/lib/state.js @@ -2,7 +2,23 @@ import { GithubClient, GithubGraphqlClient, clientOptionsFromConfig } from "./gi import { repoFromRemoteUrl } from "./git.js"; import { resolveToken } from "./credential.js"; import { CiConfig } from "./config.js"; -const REPO_GUIDANCE = 'Name the repository with the ownerRepo parameter, set defaultOwnerRepo in cordis.yml, or run inside a checkout with a GitHub origin remote.'; +/** + * The one canonical remedy text for a call that names no repository. + * + * It names ONLY remedies the caller can actually carry out from wherever the + * plugin runs. The former third clause — "or run inside a checkout with a GitHub + * origin remote" — is deliberately gone: that leg reads the git origin in the + * PLUGIN HOST process's cwd, which a `dsh web` deployment sets to the service's + * working directory rather than the session's checkout, so in that deployment the + * advice could never be acted on (opencharly/dsh-github#3). + */ +export const REPO_GUIDANCE = 'Pass ownerRepo, or configure defaultOwnerRepo for this plugin.'; +/** + * The one canonical `ownerRepo` argument description shared by every repo-targeting + * tool (the tools themselves and the `/ci` tool), so the resolution order is stated + * ONCE and cannot drift between surfaces. + */ +export const OWNER_REPO_DESCRIPTION = "Repository as owner/repo. Falls back to the configured defaultOwnerRepo, then the working directory's git origin (absent in a web deployment)."; const REPO_PATTERN = /^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/; /** * Create the shared plugin state. Called once per plugin instance (per @@ -47,7 +63,24 @@ export function createState(ctx, config, runGit, runGh, fetchImpl) { }; return state; } -/** Resolve the target repository: explicit value → config fallback → git origin. */ +/** + * Resolve the target repository, in precedence order: + * + * 1. an explicit `ownerRepo` argument (the only leg a caller fully controls); + * 2. the configured `defaultOwnerRepo`; + * 3. the git origin of {@link GithubState.workspaceDir}. + * + * Leg 3 is real for a CLI/TUI session, whose cwd is the checkout. It is ABSENT in a + * `dsh web` deployment, where the plugin host's cwd is the SERVICE's working + * directory and not the session's workspace — and no host capability exposes a + * session's workspace root to a plugin (the injected services are exactly + * `['tools','commands','jobs','approval','credentials']`; see + * opencharly/dsh-github#3). A web deployment must therefore name the repository + * explicitly or configure `defaultOwnerRepo`; nothing else can resolve it there. + * + * This is why the guidance text names only legs 1 and 2, and why a call that omits + * `ownerRepo` and has no configured default fails LOUDLY instead of guessing. + */ export async function resolveRepo(state, ownerRepo, signal) { const candidate = ownerRepo?.trim(); if (candidate !== undefined && candidate.length > 0) { diff --git a/lib/state.js.map b/lib/state.js.map index 18c6092..b42756b 100644 --- a/lib/state.js.map +++ b/lib/state.js.map @@ -1 +1 @@ -{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/tools.d.ts.map b/lib/tools.d.ts.map index 065c288..f529d8f 100644 --- a/lib/tools.d.ts.map +++ b/lib/tools.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAkB,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAA;AAClF,OAAO,EAMW,KAAK,gBAAgB,EAEtC,MAAM,cAAc,CAAA;AAOrB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;CAKpB,CAAA;AAEV,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcf,CAAA;AAEV,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAEzH;AA4FD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDAoG9C;AAED,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDA8N9C;AAqCD,8FAA8F;AAC9F,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,mDA0FhD;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,mDAgI7C;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,mDA2D/C;AAED,6FAA6F;AAC7F,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,mDAoDlD;AAED,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,mDAyDhD;AAID,kFAAkF;AAClF,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDAiG9C;AAED,yEAAyE;AACzE,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,mDAqG7C;AAED,yEAAyE;AACzE,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDAgF9C;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,mDAuF5C;AAYD,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,mDAkF5C;AAiCD,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,mDAgFlD;AAqBD,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDA0H9C"} \ No newline at end of file +{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAkBA,OAAO,EAA0C,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAA;AAC1G,OAAO,EAMW,KAAK,gBAAgB,EAEtC,MAAM,cAAc,CAAA;AAOrB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;CAKpB,CAAA;AAEV,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcf,CAAA;AAEV,wDAAwD;AACxD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAEzH;AA4FD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDAoG9C;AAED,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDA+N9C;AAqCD,8FAA8F;AAC9F,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,mDA0FhD;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,mDAgI7C;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,mDA2D/C;AAED,6FAA6F;AAC7F,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,mDAoDlD;AAED,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,mDAyDhD;AAID,kFAAkF;AAClF,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDAiG9C;AAED,yEAAyE;AACzE,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,mDAsG7C;AAED,yEAAyE;AACzE,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDAiF9C;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,mDAuF5C;AAYD,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,mDAkF5C;AAiCD,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,mDAgFlD;AAqBD,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,mDA2H9C"} \ No newline at end of file diff --git a/lib/tools.js b/lib/tools.js index 78bac50..4dc125c 100644 --- a/lib/tools.js +++ b/lib/tools.js @@ -15,7 +15,7 @@ import { defineTool } from '@deepseek-ai/dsh-tools'; import { GithubError } from "./github.js"; import { readGitState } from "./git.js"; import { analyzeDiff, formatPostBody, parseDiffStats } from "./review.js"; -import { rateLimitValue } from "./state.js"; +import { OWNER_REPO_DESCRIPTION, rateLimitValue } from "./state.js"; import { ghFileCall, ghFileResult, ghIssueCall, ghIssueResult, ghRepoCall, ghRepoResult, ghReviewCall, ghReviewResult, ghSearchCall, ghSearchResult, identityMeta, issueCloseCall, issueCloseResult, issueCommentCall, issueCommentResult, issueOpenCall, issueOpenResult, prCreateCall, prCreateResult, prMergeCall, prMergeResult, prUpdateCall, prUpdateResult, reviewPostCall, reviewPostResult, } from "./present.js"; const RATE_LIMIT_PROPERTIES = { remaining: { oneOf: [{ type: 'number' }, { type: 'null' }] }, @@ -86,7 +86,7 @@ export function prCreateTool(state) { base: { type: 'string', description: 'Target branch. Defaults to the repository default branch.' }, head: { type: 'string', description: 'Source branch. Defaults to the current git branch.' }, draft: { type: 'boolean', description: 'Create as a draft PR.' }, - ownerRepo: { type: 'string', description: 'Target repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -127,9 +127,9 @@ export function prCreateTool(state) { if (head === undefined || head.length === 0) { const git = await readGitState(state.workspaceDir, state.runGit, exec.signal, state.apiHost); if (git.branch === null) - return errorValue('no-head', 'could not determine the head branch', 'Pass `head` explicitly or run inside a git checkout.'); + return errorValue('no-head', 'could not determine the head branch', 'Pass `head` explicitly: the workspace directory has no branch to infer one from.'); if (git.branch === 'HEAD') { - return errorValue('no-head', 'the checkout is in detached HEAD state', 'Check out a branch (or pass `head` explicitly) before creating a pull request.'); + return errorValue('no-head', 'the workspace directory is in detached HEAD state', 'Pass `head` explicitly, or check out a branch there before creating a pull request.'); } head = git.branch; } @@ -191,6 +191,7 @@ export function ghReviewTool(state) { pr: { type: 'string', required: true, description: 'PR number, #number, owner/repo#number, or pull URL.' }, fields: { type: 'array', items: { type: 'string', enum: [...REVIEW_FIELDS] }, description: 'Sections to fetch. Omit for all.' }, maxDiffChars: { type: 'number', description: 'Cap for the diff text. Defaults to the plugin config.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -311,7 +312,7 @@ export function ghReviewTool(state) { const ref = state.parsePrRef(args.pr); if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.'); - const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal); + const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal); if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance); const token = await state.resolveToken(exec.signal); @@ -541,7 +542,7 @@ export function ghIssueTool(state) { + 'and concurrency-safe. Use issue_open to create.', parameters: { action: { type: 'string', required: true, enum: ['list', 'get', 'comments'], description: 'Which read to perform.' }, - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, issueNumber: { type: 'integer', description: 'Issue number; required for get and comments.' }, state: { type: 'string', enum: ['open', 'closed', 'all'], description: 'Filter for list. Defaults to open.' }, limit: { type: 'integer', description: 'Max items for list. Defaults to 30, capped at 100.' }, @@ -673,7 +674,7 @@ export function issueOpenTool(state) { title: { type: 'string', required: true, description: 'Issue title.' }, body: { type: 'string', description: 'Issue body.' }, labels: { type: 'array', items: { type: 'string' }, description: 'Label names to apply.' }, - ownerRepo: { type: 'string', description: 'Target repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -732,7 +733,7 @@ export function issueCommentTool(state) { name: 'issue_comment', description: 'Comment on a GitHub issue or pull request. Requires approval. Returns the comment URL.', parameters: { - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, issueNumber: { type: 'integer', required: true, description: 'Issue or pull request number.' }, body: { type: 'string', required: true, description: 'Comment body.' }, }, @@ -788,7 +789,7 @@ export function issueCloseTool(state) { description: 'Close a GitHub issue. Requires approval. Optionally records a close reason ' + '("completed" or "not planned") for projects that surface it.', parameters: { - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, issueNumber: { type: 'integer', required: true, description: 'Issue number.' }, stateReason: { type: 'string', enum: ['completed', 'not_planned'], description: 'Close reason GitHub records. Omit for a plain close.' }, }, @@ -956,6 +957,7 @@ export function prMergeTool(state) { commitTitle: { type: 'string', description: 'Merge commit title (squash/rebase).' }, commitMessage: { type: 'string', description: 'Merge commit message (squash/rebase).' }, deleteBranch: { type: 'boolean', description: 'Delete the head branch after merging. Defaults to false.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -990,7 +992,7 @@ export function prMergeTool(state) { const ref = state.parsePrRef(args.pr); if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.'); - const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal); + const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal); if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance); const token = await state.resolveToken(exec.signal); @@ -1059,6 +1061,7 @@ export function prUpdateTool(state) { body: { type: 'string', description: 'New PR description body.' }, state: { type: 'string', enum: ['open', 'closed'], description: 'New PR state.' }, base: { type: 'string', description: 'New target branch.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -1098,7 +1101,7 @@ export function prUpdateTool(state) { const ref = state.parsePrRef(args.pr); if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.'); - const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal); + const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal); if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance); const token = await state.resolveToken(exec.signal); @@ -1138,7 +1141,7 @@ export function ghRepoTool(state) { description: 'Read a GitHub repository\'s metadata: description, default branch, visibility, stars, forks, ' + 'open issues, language, license, topics, and last update. Read-only and concurrency-safe.', parameters: { - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -1219,7 +1222,7 @@ export function ghFileTool(state) { + 'branch). File contents are base64-decoded and capped; directories and oversized blobs are reported ' + 'as structured errors. Read-only and concurrency-safe.', parameters: { - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, path: { type: 'string', required: true, description: 'Repository file path, e.g. "README.md" or "src/index.ts".' }, ref: { type: 'string', description: 'Branch, tag, or commit SHA. Defaults to the default branch.' }, maxChars: { type: 'number', description: 'Cap for the file contents. Defaults to the plugin config.' }, @@ -1396,6 +1399,7 @@ export function ghChecksTool(state) { + 'concurrency-safe. `pr` accepts a number, "#number", "owner/repo#number", or a pull-request URL.', parameters: { pr: { type: 'string', required: true, description: 'PR number, #number, owner/repo#number, or pull URL.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -1445,7 +1449,7 @@ export function ghChecksTool(state) { const ref = state.parsePrRef(args.pr); if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.'); - const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal); + const repoResult = ref.repo !== undefined ? { ok: true, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal); if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance); const token = await state.resolveToken(exec.signal); diff --git a/lib/tools.js.map b/lib/tools.js.map index c58f787..71f11ba 100644 --- a/lib/tools.js.map +++ b/lib/tools.js.map @@ -1 +1 @@ -{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAgB,MAAM,aAAa,CAAA;AACvF,OAAO,EAAE,cAAc,EAAyC,MAAM,YAAY,CAAA;AAClF,OAAO,EACL,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAC9E,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAC1D,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,EACpF,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EACxF,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,GAG/D,MAAM,cAAc,CAAA;AAErB,MAAM,qBAAqB,GAAG;IAC5B,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;IAC5D,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;CAClD,CAAA;AAEV,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE,qBAAqB;IACjC,QAAQ,EAAE,IAAI;CACN,CAAA;AAEV,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QACxC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC3C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE,qBAAqB;SAClC;KACF;CACO,CAAA;AAEV,wDAAwD;AACxD,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,OAAe,EAAE,QAAiB,EAAE,SAA0B;IACrG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;AAC3I,CAAC;AAED,2EAA2E;AAC3E,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QACjC,OAAO,UAAU,CAAC,YAAY,EAAE,cAAc,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE;YACzF,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS;YACpC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO;SACjC,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,KAAK,CAAA;AACb,CAAC;AAED,4DAA4D;AAC5D,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,YAAY,WAAW;QAAE,OAAO,cAAc,KAAK,CAAC,MAAM,EAAE,CAAA;IACrE,IAAI,KAAK,YAAY,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAAE,OAAO,SAAS,CAAA;IAClH,OAAO,cAAc,CAAA;AACvB,CAAC;AAED,mEAAmE;AACnE,SAAS,OAAO,CAAC,IAAY,EAAE,QAAgB;IAC7C,OAAO,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;AACjH,CAAC;AAED,2DAA2D;AAC3D,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;AAClC,CAAC;AAED,sDAAsD;AACtD,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,CAAU,CAAA;AA6DjF,2EAA2E;AAC3E,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,2FAA2F;cACpG,0GAA0G;QAC9G,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE;YACnE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;YAC7D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;YAClG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oDAAoD,EAAE;YAC3F,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAChE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wEAAwE,EAAE;SACrH;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE;4BAC5D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;YACvJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,cAAc;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAA;YAChG,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YAEvE,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;YAC5B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5C,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC5F,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI;oBAAE,OAAO,UAAU,CAAC,SAAS,EAAE,qCAAqC,EAAE,sDAAsD,CAAC,CAAA;gBACpJ,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC1B,OAAO,UAAU,CAAC,SAAS,EAAE,wCAAwC,EAAE,gFAAgF,CAAC,CAAA;gBAC1J,CAAC;gBACD,IAAI,GAAG,GAAG,CAAC,MAAM,CAAA;YACnB,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAE9C,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;YAC5B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAA8B,KAAK,EAAE,UAAU,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBAC7H,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAA;oBACnC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,UAAU,CAAC,SAAS,EAAE,0CAA0C,EAAE,yBAAyB,CAAC,CAAA;gBAClJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,WAAW,CAAc,MAAM,EAAE,UAAU,IAAI,CAAC,IAAI,QAAQ,EAAE;oBACzF,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACrD,IAAI;wBACJ,IAAI;wBACJ,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;qBAC3B;iBACF,CAAC,CAAA;gBACF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;gBACzB,OAAO;oBACL,MAAM,EAAE,SAAS;oBACjB,GAAG,EAAE,IAAI,CAAC,QAAQ;oBAClB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;oBAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI;oBAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI;oBAC5B,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;iBACpC,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,4FAA4F;cACrG,8FAA8F;cAC9F,8FAA8F;cAC9F,iFAAiF;QACrF,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;YAC1G,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,EAAE,WAAW,EAAE,kCAAkC,EAAE;YAC/H,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uDAAuD,EAAE;SACvG;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,EAAE,EAAE;gCACF,IAAI,EAAE,QAAQ;gCACd,oBAAoB,EAAE,KAAK;gCAC3B,QAAQ,EAAE,IAAI;gCACd,UAAU,EAAE;oCACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oCAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCACzB,IAAI,EAAE;wCACJ,IAAI,EAAE,OAAO;wCACb,KAAK,EAAE;4CACL,IAAI,EAAE,QAAQ;4CACd,oBAAoB,EAAE,KAAK;4CAC3B,UAAU,EAAE;gDACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gDACxC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gDAC1C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;6CAC/B;yCACF;qCACF;iCACF;6BACF;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,oBAAoB,EAAE,KAAK;gCAC3B,QAAQ,EAAE,IAAI;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,OAAO;wCACb,QAAQ,EAAE,IAAI;wCACd,KAAK,EAAE;4CACL,IAAI,EAAE,QAAQ;4CACd,oBAAoB,EAAE,KAAK;4CAC3B,UAAU,EAAE;gDACV,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;gDACvC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gDACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gDACxB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gDACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;6CACzC;yCACF;qCACF;oCACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCAC1B;6BACF;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;wCACxD,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE;wCAChF,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;qCAC5C;iCACF;6BACF;4BACD,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,oBAAoB,EAAE,KAAK;gCAC3B,QAAQ,EAAE,IAAI;gCACd,UAAU,EAAE;oCACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;oCAC3C,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;oCAC9C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oCAC3C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oCACxC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCACzB,KAAK,EAAE;wCACL,IAAI,EAAE,OAAO;wCACb,KAAK,EAAE;4CACL,IAAI,EAAE,QAAQ;4CACd,oBAAoB,EAAE,KAAK;4CAC3B,UAAU,EAAE;gDACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gDACxC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;gDAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;6CAC7C;yCACF;qCACF;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,eAAe,CAAC,KAAK,CAAC,CAAA;YAC/B,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,cAAc;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,yBAAyB,EAAE,8DAA8D,CAAC,CAAA;YACvJ,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACnI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAE/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC9C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC,CAAA;YACpD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAA;YAEzI,IAAI,OAAoB,CAAA;YACxB,IAAI,SAAsC,CAAA;YAC1C,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,WAAW,CAAc,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC/I,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAA;gBAC/B,SAAS,GAAG,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YACxD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YAED,IAAI,QAAQ,GAAG,EAAE,CAAA;YACjB,IAAI,aAAa,GAAG,KAAK,CAAA;YACzB,IAAI,SAA6B,CAAA;YACjC,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;oBACtJ,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAA;oBACtB,aAAa,GAAG,MAAM,CAAC,SAAS,CAAA;gBAClC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBACrC,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,GAAqB,EAAE,CAAA;YACnC,IAAI,aAAiC,CAAA;YACrC,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC;oBACH,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,WAAW,CAAmB,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,sBAAsB,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC7L,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBACzC,CAAC;YACH,CAAC;YAED,IAAI,EAAE,GAAyB,EAAE,OAAO,EAAE,SAAS,EAAE,CAAA;YACrD,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,WAAW,CAAmB,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,YAAY,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAA;oBAC1L,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;gBAC5B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAA;gBAC7D,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAc,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;gBAChD,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ;gBACpI,CAAC,CAAC,EAAE,CAAA;YAEN,MAAM,KAAK,GAAmB;gBAC5B,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;gBACxC,GAAG,EAAE,OAAO,CAAC,QAAQ;gBACrB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE;gBAC7B,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE;gBAC7B,EAAE;gBACF,QAAQ,EAAE;oBACR,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;wBAC9B,EAAE,EAAE,OAAO,CAAC,EAAE;wBACd,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;wBACtC,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACpF,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACpF,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;qBACzB,CAAC,CAAC;oBACH,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE;iBAC/D;gBACD,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;gBACnD,IAAI,EAAE;oBACJ,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC;oBAC3D,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC;oBAC5E,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE;iBACvD;gBACD,SAAS;aACV,CAAA;YACD,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAqB;IAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAA;IACrC,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAA;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;IACpC,MAAM,KAAK,GAAG;QACZ,OAAO,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,KAAK,QAAQ,KAAK,CAAC,MAAM,EAAE;QAC1E,GAAG,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,MAAM,KAAK,CAAC,GAAG,EAAE;QACxG,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnG,uCAAuC,YAAY,CAAC,MAAM,wCAAwC,QAAQ,CAAC,MAAM,EAAE;KACpH,CAAA;IACD,IAAI,KAAK,CAAC,QAAQ,EAAE,KAAK,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACpG,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;IAC3K,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,GAAG,EAAE,gBAAgB,CAAC,CAAA;IAC/E,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,MAAM,SAAS,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,WAAW,KAAK,CAAC,MAAM,WAAW,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACxM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IACrF,IAAI,KAAK,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,IAAI,KAAK,CAAC,SAAS,EAAE,SAAS,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,gCAAgC,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAA;IAC5J,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,eAAe,CAAC,IAA2E;IAClG,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,eAAe;QACjC,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,SAAS;QAC/B,GAAG,GAAG,CAAC,UAAU,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;KACjG,CAAC,CAAC,CAAA;IACH,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAA;IACrE,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAA;IAC3E,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,MAAM,CAAA;IAC5K,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAA;IACxD,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;IAC/E,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,MAAM,cAAc,OAAO,aAAa,MAAM,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;AACxK,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,cAAc,CAAC,KAAkB;IAC/C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,+FAA+F;cACxG,sGAAsG;cACtG,+FAA+F;QACnG,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,+BAA+B,EAAE;YACvF,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE;YACxG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;SAC5E;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;4BAC3D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;4BACrE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4BAC9B,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4BAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC7C,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;oBAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC7I,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;oBAC5B,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,KAAK,CAAC,QAAQ,gBAAgB,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC;oBAClG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,KAAK,CAAC,QAAQ,gBAAgB,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACvG,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,cAAc;QAC3B,aAAa,EAAE,gBAAgB;QAC/B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5C,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,UAAU,CAAC,aAAa,EAAE,kBAAkB,IAAI,CAAC,KAAK,GAAG,EAAE,0DAA0D,CAAC,CAAA;YACvJ,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC5D,OAAO,UAAU,CAAC,mBAAmB,EAAE,eAAe,IAAI,CAAC,KAAK,qBAAqB,EAAE,4CAA4C,CAAC,CAAA;YACtI,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,CAAA;YACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YAChE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAA;YACjH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAA;YACvC,IAAI,CAAC;gBACH,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBACjC,OAAO,UAAU,CAAC,aAAa,EAAE,eAAe,IAAI,CAAC,KAAK,+BAA+B,EAAE,uEAAuE,CAAC,CAAA;oBACrK,CAAC;oBACD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;oBAChE,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;oBAC9D,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;oBACjG,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CACrC,MAAM,EAAE,UAAU,MAAM,CAAC,IAAI,UAAU,MAAM,CAAC,EAAE,UAAU,EAC1D;wBACE,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,IAAI,EAAE;4BACJ,IAAI,EAAE,UAAU;4BAChB,KAAK,EAAE,SAAS;4BAChB,+DAA+D;4BAC/D,wDAAwD;4BACxD,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gCACrB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oCAC/B,IAAI,EAAE,OAAO,CAAC,IAAI;oCAClB,IAAI,EAAE,OAAO,CAAC,IAAI;oCAClB,IAAI,EAAE,KAAK,OAAO,CAAC,QAAQ,QAAQ,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,OAAO,EAAE;iCACxE,CAAC,CAAC;6BACJ,CAAC,CAAC,CAAC,EAAE;yBACP;qBACF,CACF,CAAA;oBACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAW,CAAA;gBACnL,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CACrC,MAAM,EAAE,UAAU,MAAM,CAAC,IAAI,WAAW,MAAM,CAAC,EAAE,WAAW,EAC5D,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CACjG,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAW,CAAA;YACrL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,WAAW,CAAC,KAAkB;IAC5C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,6FAA6F;cACtG,wGAAwG;cACxG,iDAAiD;QACrD,UAAU,EAAE;YACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,WAAW,EAAE,wBAAwB,EAAE;YACpH,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iEAAiE,EAAE;YAC7G,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,8CAA8C,EAAE;YAC7F,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE;YAC7G,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,oDAAoD,EAAE;SAC9F;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE;4BAC7E,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE;wCAC1E,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC1C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACvC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC7C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC7C,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;qCACxD;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC;4BACpC,CAAC,CAAC,gBAAgB,KAAK,CAAC,IAAI,EAAE;4BAC9B,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;qBAC7I,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,aAAa;QAC5B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC5F,OAAO,UAAU,CAAC,cAAc,EAAE,WAAW,IAAI,CAAC,MAAM,wBAAwB,CAAC,CAAA;YACnF,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACvE,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAE9C,IAAI,GAAG,GAAmB,EAAE,CAAA;YAC5B,IAAI,WAAW,GAAiC,IAAI,CAAA;YACpD,IAAI,SAAS,GAAG,EAAE,SAAS,EAAE,IAAqB,EAAE,OAAO,EAAE,IAAqB,EAAE,CAAA;YACpF,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;oBAC1D,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,WAAW,CAAiB,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,iBAAiB,IAAI,CAAC,KAAK,IAAI,MAAM,aAAa,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBACjL,GAAG,GAAG,YAAY,CAAC,IAAI,CAAA;oBACvB,SAAS,GAAG,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;gBACpD,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAqB,CAAA;oBACzC,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,WAAW,CAAwB,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,WAAW,MAAM,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBAC/J,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAA;oBACnC,SAAS,GAAG,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;gBACxD,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,GAAG,IAAI,CAAC,WAAqB,CAAA;oBACzC,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,WAAW,CAAe,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,WAAW,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBACxI,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;oBACxB,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;gBACnD,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YAED,MAAM,KAAK,GAA4B,WAAW,KAAK,IAAI;gBACzD,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC1B,MAAM,EAAE,OAAO,CAAC,EAAE;oBAClB,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;oBACnD,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;oBACxC,GAAG,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;oBAC3B,QAAQ,EAAE,CAAC;oBACX,SAAS,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;oBACnC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;iBAC3B,CAAC,CAAC;gBACL,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;oBACtD,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;oBACrC,GAAG,EAAE,IAAI,CAAC,QAAQ;oBAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;oBAC5B,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;oBAChC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;iBACxB,CAAC,CAAC,CAAA;YAEP,MAAM,KAAK,GAAmB;gBAC5B,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,KAAK;gBACL,SAAS;aACV,CAAA;YACD,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,aAAa,CAAC,KAAkB;IAC9C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,6EAA6E;QAC1F,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE;YACtE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE;YACpD,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAC1F,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wEAAwE,EAAE;SACrH;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE;4BAC5D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACjF,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,aAAa;QAC1B,aAAa,EAAE,eAAe;QAC9B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAA;YAChG,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACvE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAC/D,MAAM,EAAE,UAAU,IAAI,CAAC,IAAI,SAAS,EACpC;oBACE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACrD,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;qBACtF;iBACF,CACF,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAW,CAAA;YACzK,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,gBAAgB,CAAC,KAAkB;IACjD,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,wFAAwF;QACrG,UAAU,EAAE;YACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iEAAiE,EAAE;YAC7G,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,+BAA+B,EAAE;YAC9F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;SACvE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE;4BAC9D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAChD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACrF,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,gBAAgB;QAC7B,aAAa,EAAE,kBAAkB;QACjC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAA;YAClF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACvE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAC9D,MAAM,EAAE,UAAU,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,WAAW,WAAW,EACjE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CACxC,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAW,CAAA;YAC3K,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,cAAc,CAAC,KAAkB;IAC/C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,6EAA6E;cACtF,8DAA8D;QAClE,UAAU,EAAE;YACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iEAAiE,EAAE;YAC7G,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;YAC9E,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,WAAW,EAAE,sDAAsD,EAAE;SACzI;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;4BAC3D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAChF,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,cAAc;QAC3B,aAAa,EAAE,gBAAgB;QAC/B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACvE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAC9D,OAAO,EAAE,UAAU,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,WAAW,EAAE,EACzD;oBACE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,KAAK,EAAE,QAAQ;wBACf,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;qBAC5E;iBACF,CACF,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAW,CAAA;YACpK,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,cAAc,GAAG,4EAA4E,CAAA;AAEnG,kFAAkF;AAClF,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,wGAAwG;cACjH,qEAAqE;QACzE,UAAU,EAAE;YACV,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uCAAuC,EAAE;YAC3F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,WAAW,EAAE,mCAAmC,EAAE;YACjI,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,EAAE,+BAA+B,EAAE;YAC9F,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6CAA6C,EAAE;SACzF;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE;wCAC/D,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC1C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACvC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC7C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;qCAC9C;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;gBAChG,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;qBACpJ,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,cAAc;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YACvB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAA;YAC5E,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;YAC9D,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACnE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;gBAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YACzD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;gBAAE,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5D,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAChE,KAAK,EAAE,kBAAkB,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CACrE,CAAA;gBACD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;gBACvC,MAAM,KAAK,GAAgB;oBACzB,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM;oBAChD,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBACtB,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;wBAChD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;wBAChF,OAAO;4BACL,MAAM,EAAE,IAAI,CAAC,MAAM;4BACnB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;4BAC3B,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;4BACrC,GAAG,EAAE,IAAI,CAAC,QAAQ;4BAClB,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;4BACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;4BAC5B,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;yBACjC,CAAA;oBACH,CAAC,CAAC;oBACF,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,WAAW,CAAC,KAAkB;IAC5C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,oFAAoF;cAC7F,iGAAiG;QACrG,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;YAC1G,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,kCAAkC,EAAE;YACrH,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;YACnF,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE;YACvF,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,0DAA0D,EAAE;SAC3G;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;4BAC3D,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACvB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAClD,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACpC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,2BAA2B,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;gBACjK,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,KAAK,CAAC,GAAG,GAAG,OAAO,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;YACnG,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,aAAa;QAC5B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,yBAAyB,EAAE,8DAA8D,CAAC,CAAA;YACvJ,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACnI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAE/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAE9C,IAAI,OAA2B,CAAA;YAC/B,IAAI,OAA2B,CAAA;YAC/B,IAAI,KAAa,CAAA;YACjB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAAc,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;gBACvI,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAA;gBACjC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAA;gBACjC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAA;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CACrC,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,QAAQ,EAC5D;oBACE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,YAAY,EAAE,IAAI,CAAC,WAAW,IAAI,OAAO;wBACzC,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;wBAChD,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;wBAC3E,GAAG,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE;qBAClF;iBACF,CACF,CAAA;gBACD,IAAI,aAAa,GAAG,KAAK,CAAA;gBACzB,IAAI,gBAAoC,CAAA;gBACxC,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9E,IAAI,CAAC;wBACH,MAAM,MAAM,CAAC,WAAW,CAAU,QAAQ,EAAE,UAAU,UAAU,CAAC,IAAI,aAAa,kBAAkB,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;wBACpJ,aAAa,GAAG,IAAI,CAAA;oBACtB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,gBAAgB,GAAG,KAAK,YAAY,WAAW,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,eAAe,CAAA;oBAClG,CAAC;gBACH,CAAC;gBACD,OAAO;oBACL,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI;oBACnC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE;oBAChE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,QAAQ;oBACxC,GAAG,EAAE,KAAK;oBACV,aAAa;oBACb,GAAG,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE;oBAC7D,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC;iBACnC,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,oFAAoF;cAC7F,yDAAyD;QAC7D,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;YAC1G,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE;YACvD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;YACjE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,eAAe,EAAE;YACjF,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;SAC5D;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE;4BAC5D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,UAAU,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAC7H,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,cAAc;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAA;YAC5H,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAA;YACzH,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC/G,OAAO,UAAU,CAAC,cAAc,EAAE,kDAAkD,CAAC,CAAA;YACvF,CAAC;YACD,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,yBAAyB,EAAE,8DAA8D,CAAC,CAAA;YACvJ,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACnI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAE/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAC/D,OAAO,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,EACxD;oBACE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;wBACxD,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACrD,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;wBACxD,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;qBACtD;iBACF,CACF,CAAA;gBACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;gBACzB,OAAO;oBACL,MAAM,EAAE,SAAS;oBACjB,GAAG,EAAE,IAAI,CAAC,QAAQ;oBAClB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE;oBAC1B,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;iBACpC,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,UAAU,CAAC,KAAkB;IAC3C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,+FAA+F;cACxG,0FAA0F;QAC9F,UAAU,EAAE;YACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iEAAiE,EAAE;SAC9G;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC/C,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACjD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC/C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC5C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;4BACpE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC7C,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,WAAW,IAAI;8BACzC,kBAAkB,KAAK,CAAC,aAAa,MAAM,KAAK,CAAC,QAAQ,MAAM,KAAK,CAAC,OAAO,IAAI;8BAChF,SAAS,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,KAAK,kBAAkB,KAAK,CAAC,UAAU,MAAM,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,GAAG,EAAE;qBACxH,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,YAAY;QAC3B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACvE,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAY/D,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC/D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;gBAC1B,MAAM,KAAK,GAAc;oBACvB,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;oBACnC,aAAa,EAAE,IAAI,CAAC,cAAc,IAAI,EAAE;oBACxC,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;oBACxC,KAAK,EAAE,IAAI,CAAC,gBAAgB,IAAI,CAAC;oBACjC,KAAK,EAAE,IAAI,CAAC,WAAW,IAAI,CAAC;oBAC5B,UAAU,EAAE,IAAI,CAAC,iBAAiB,IAAI,CAAC;oBACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;oBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE;oBACpC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;oBACzB,GAAG,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;oBACxB,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;oBAChC,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAYD,2EAA2E;AAC3E,MAAM,UAAU,UAAU,CAAC,KAAkB;IAC3C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,8FAA8F;cACvG,qGAAqG;cACrG,uDAAuD;QAC3D,UAAU,EAAE;YACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iEAAiE,EAAE;YAC7G,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,2DAA2D,EAAE;YAClH,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE;YACnG,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;SACvG;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC,OAAO,EAAE;qBACnI,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,YAAY;QAC3B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,wDAAwD,CAAC,CAAA;YAC1I,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACvE,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAA;YACzH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YAClF,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACzF,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAChE,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,aAAa,WAAW,GAAG,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAC5F,CAAA;gBACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;gBAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,OAAO,UAAU,CAAC,cAAc,EAAE,IAAI,IAAI,oCAAoC,EAAE,wEAAwE,CAAC,CAAA;gBAC3J,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;gBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;gBAC7G,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;gBACtC,MAAM,KAAK,GAAc;oBACvB,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;oBACvB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,SAAS;oBAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC1C,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,OAAO,EAAE,MAAM,CAAC,IAAI;oBACpB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE;oBACnB,GAAG,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;oBACxB,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,+EAA+E;AAE/E,0FAA0F;AAC1F,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC/B,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAA;AACrE,CAAC;AAyBD,iFAAiF;AACjF,MAAM,UAAU,gBAAgB,CAAC,KAAkB;IACjD,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,yFAAyF;cAClG,uGAAuG;cACvG,iCAAiC;QACrC,UAAU,EAAE;YACV,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,kDAAkD,EAAE;YACtG,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4CAA4C,EAAE;SACxF;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC/C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC1C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC5C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;qCACxC;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;gBACrG,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,OAAO,IAAI,CAAC,WAAW,IAAI,kBAAkB,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;qBACtJ,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YACvB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAA;YAC5E,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC7D,MAAM,QAAQ,GAAG,oNAAoN,CAAA;YACrO,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CACjE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,MAAM,CACzC,CAAA;gBACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAA;gBACnC,MAAM,KAAK,GAAoB;oBAC7B,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,MAAM,CAAC,eAAe;oBAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;wBAC7B,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE;wBACxC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;wBAC/B,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,EAAE;wBAC/C,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;qBACnB,CAAC,CAAC;oBACH,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAqBD,oFAAoF;AACpF,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,gGAAgG;cACzG,qGAAqG;cACrG,iGAAiG;QACrG,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;SAC3G;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCAC9B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qCACxB;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,cAAc,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,CAAA;gBAC1G,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;gBAChE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBACnJ,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACnD,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,yBAAyB,EAAE,8DAA8D,CAAC,CAAA;YACvJ,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACnI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACpD,MAAM,QAAQ,GAAG;gBACf,yDAAyD;gBACzD,4CAA4C;gBAC5C,oCAAoC;gBACpC,0BAA0B;gBAC1B,0BAA0B;gBAC1B,iBAAiB;gBACjB,oBAAoB;gBACpB,iCAAiC;gBACjC,qBAAqB;gBACrB,sCAAsC;gBACtC,yBAAyB;gBACzB,8BAA8B;gBAC9B,yEAAyE;gBACzE,gFAAgF;gBAChF,mBAAmB;gBACnB,iBAAiB;gBACjB,eAAe;gBACf,aAAa;gBACb,WAAW;gBACX,SAAS;gBACT,OAAO;gBACP,KAAK;gBACL,GAAG;aACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACZ,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAShE,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC9D,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAA;gBAC/C,IAAI,EAAE,KAAK,IAAI;oBAAE,OAAO,UAAU,CAAC,WAAW,EAAE,iBAAiB,GAAG,CAAC,MAAM,iBAAiB,UAAU,CAAC,IAAI,EAAE,CAAC,CAAA;gBAC9G,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAA;gBAC5D,MAAM,KAAK,GAAgB;oBACzB,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,MAAM,EAAE,EAAE,CAAC,MAAM;oBACjB,KAAK,EAAE,EAAE,CAAC,KAAK;oBACf,KAAK,EAAE,EAAE,CAAC,KAAK;oBACf,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,SAAS;oBAClC,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,CAAA;wBAC7C,OAAO;4BACL,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,IAAI,SAAS;4BAC5C,KAAK,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,IAAI,SAAS;4BAC7C,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;4BACnE,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;yBAChC,CAAA;oBACH,CAAC,CAAC;oBACF,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file +{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAgB,MAAM,aAAa,CAAA;AACvF,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAyC,MAAM,YAAY,CAAA;AAC1G,OAAO,EACL,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAC9E,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAC1D,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,EACpF,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EACxF,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,GAG/D,MAAM,cAAc,CAAA;AAErB,MAAM,qBAAqB,GAAG;IAC5B,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;IAC5D,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;CAClD,CAAA;AAEV,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE,qBAAqB;IACjC,QAAQ,EAAE,IAAI;CACN,CAAA;AAEV,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;QAC1D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QACxC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC3C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC5B,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE,qBAAqB;SAClC;KACF;CACO,CAAA;AAEV,wDAAwD;AACxD,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,OAAe,EAAE,QAAiB,EAAE,SAA0B;IACrG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;AAC3I,CAAC;AAED,2EAA2E;AAC3E,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QACjC,OAAO,UAAU,CAAC,YAAY,EAAE,cAAc,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE;YACzF,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS;YACpC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO;SACjC,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,KAAK,CAAA;AACb,CAAC;AAED,4DAA4D;AAC5D,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,YAAY,WAAW;QAAE,OAAO,cAAc,KAAK,CAAC,MAAM,EAAE,CAAA;IACrE,IAAI,KAAK,YAAY,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAAE,OAAO,SAAS,CAAA;IAClH,OAAO,cAAc,CAAA;AACvB,CAAC;AAED,mEAAmE;AACnE,SAAS,OAAO,CAAC,IAAY,EAAE,QAAgB;IAC7C,OAAO,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;AACjH,CAAC;AAED,2DAA2D;AAC3D,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;AAClC,CAAC;AAED,sDAAsD;AACtD,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,CAAU,CAAA;AA6DjF,2EAA2E;AAC3E,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,2FAA2F;cACpG,0GAA0G;QAC9G,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE;YACnE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;YAC7D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;YAClG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oDAAoD,EAAE;YAC3F,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAChE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;SACnE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE;4BAC5D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;YACvJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,cAAc;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAA;YAChG,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YAEvE,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;YAC5B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5C,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC5F,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI;oBAAE,OAAO,UAAU,CAAC,SAAS,EAAE,qCAAqC,EAAE,kFAAkF,CAAC,CAAA;gBAChL,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC1B,OAAO,UAAU,CAAC,SAAS,EAAE,mDAAmD,EAAE,qFAAqF,CAAC,CAAA;gBAC1K,CAAC;gBACD,IAAI,GAAG,GAAG,CAAC,MAAM,CAAA;YACnB,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAE9C,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;YAC5B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAA8B,KAAK,EAAE,UAAU,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBAC7H,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAA;oBACnC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,UAAU,CAAC,SAAS,EAAE,0CAA0C,EAAE,yBAAyB,CAAC,CAAA;gBAClJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,WAAW,CAAc,MAAM,EAAE,UAAU,IAAI,CAAC,IAAI,QAAQ,EAAE;oBACzF,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACrD,IAAI;wBACJ,IAAI;wBACJ,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;qBAC3B;iBACF,CAAC,CAAA;gBACF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;gBACzB,OAAO;oBACL,MAAM,EAAE,SAAS;oBACjB,GAAG,EAAE,IAAI,CAAC,QAAQ;oBAClB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;oBAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI;oBAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI;oBAC5B,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;iBACpC,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,4FAA4F;cACrG,8FAA8F;cAC9F,8FAA8F;cAC9F,iFAAiF;QACrF,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;YAC1G,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,aAAa,CAAC,EAAE,EAAE,WAAW,EAAE,kCAAkC,EAAE;YAC/H,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uDAAuD,EAAE;YACtG,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;SACnE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,EAAE,EAAE;gCACF,IAAI,EAAE,QAAQ;gCACd,oBAAoB,EAAE,KAAK;gCAC3B,QAAQ,EAAE,IAAI;gCACd,UAAU,EAAE;oCACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oCAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCACzB,IAAI,EAAE;wCACJ,IAAI,EAAE,OAAO;wCACb,KAAK,EAAE;4CACL,IAAI,EAAE,QAAQ;4CACd,oBAAoB,EAAE,KAAK;4CAC3B,UAAU,EAAE;gDACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gDACxC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gDAC1C,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;6CAC/B;yCACF;qCACF;iCACF;6BACF;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,oBAAoB,EAAE,KAAK;gCAC3B,QAAQ,EAAE,IAAI;gCACd,UAAU,EAAE;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,OAAO;wCACb,QAAQ,EAAE,IAAI;wCACd,KAAK,EAAE;4CACL,IAAI,EAAE,QAAQ;4CACd,oBAAoB,EAAE,KAAK;4CAC3B,UAAU,EAAE;gDACV,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;gDACvC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gDACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gDACxB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gDACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;6CACzC;yCACF;qCACF;oCACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iCAC1B;6BACF;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;wCACxD,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE;wCAChF,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;qCAC5C;iCACF;6BACF;4BACD,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,oBAAoB,EAAE,KAAK;gCAC3B,QAAQ,EAAE,IAAI;gCACd,UAAU,EAAE;oCACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;oCAC3C,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;oCAC9C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oCAC3C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oCACxC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oCACzB,KAAK,EAAE;wCACL,IAAI,EAAE,OAAO;wCACb,KAAK,EAAE;4CACL,IAAI,EAAE,QAAQ;4CACd,oBAAoB,EAAE,KAAK;4CAC3B,UAAU,EAAE;gDACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gDACxC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;gDAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;6CAC7C;yCACF;qCACF;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,eAAe,CAAC,KAAK,CAAC,CAAA;YAC/B,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,cAAc;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,yBAAyB,EAAE,8DAA8D,CAAC,CAAA;YACvJ,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACxI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAE/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC9C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC,CAAA;YACpD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAA;YAEzI,IAAI,OAAoB,CAAA;YACxB,IAAI,SAAsC,CAAA;YAC1C,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,WAAW,CAAc,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC/I,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAA;gBAC/B,SAAS,GAAG,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;YACxD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YAED,IAAI,QAAQ,GAAG,EAAE,CAAA;YACjB,IAAI,aAAa,GAAG,KAAK,CAAA;YACzB,IAAI,SAA6B,CAAA;YACjC,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;oBACtJ,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAA;oBACtB,aAAa,GAAG,MAAM,CAAC,SAAS,CAAA;gBAClC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBACrC,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,GAAqB,EAAE,CAAA;YACnC,IAAI,aAAiC,CAAA;YACrC,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC;oBACH,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,WAAW,CAAmB,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,sBAAsB,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC7L,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBACzC,CAAC;YACH,CAAC;YAED,IAAI,EAAE,GAAyB,EAAE,OAAO,EAAE,SAAS,EAAE,CAAA;YACrD,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,WAAW,CAAmB,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,YAAY,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAA;oBAC1L,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;gBAC5B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAA;gBAC7D,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAc,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;gBAChD,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,QAAQ;gBACpI,CAAC,CAAC,EAAE,CAAA;YAEN,MAAM,KAAK,GAAmB;gBAC5B,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;gBACxC,GAAG,EAAE,OAAO,CAAC,QAAQ;gBACrB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE;gBAC7B,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE;gBAC7B,EAAE;gBACF,QAAQ,EAAE;oBACR,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;wBAC9B,EAAE,EAAE,OAAO,CAAC,EAAE;wBACd,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;wBACtC,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACpF,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACpF,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;qBACzB,CAAC,CAAC;oBACH,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE;iBAC/D;gBACD,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;gBACnD,IAAI,EAAE;oBACJ,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC;oBAC3D,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC;oBAC5E,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE;iBACvD;gBACD,SAAS;aACV,CAAA;YACD,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAqB;IAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAA;IACrC,MAAM,YAAY,GAAG,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAA;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;IACpC,MAAM,KAAK,GAAG;QACZ,OAAO,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,KAAK,QAAQ,KAAK,CAAC,MAAM,EAAE;QAC1E,GAAG,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,MAAM,KAAK,CAAC,GAAG,EAAE;QACxG,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnG,uCAAuC,YAAY,CAAC,MAAM,wCAAwC,QAAQ,CAAC,MAAM,EAAE;KACpH,CAAA;IACD,IAAI,KAAK,CAAC,QAAQ,EAAE,KAAK,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACpG,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;IAC3K,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,MAAM,GAAG,EAAE,gBAAgB,CAAC,CAAA;IAC/E,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,MAAM,SAAS,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,WAAW,KAAK,CAAC,MAAM,WAAW,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACxM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IACrF,IAAI,KAAK,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,IAAI,KAAK,CAAC,SAAS,EAAE,SAAS,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,gCAAgC,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAA;IAC5J,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACnD,CAAC;AAED,SAAS,eAAe,CAAC,IAA2E;IAClG,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,eAAe;QACjC,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,SAAS;QAC/B,GAAG,GAAG,CAAC,UAAU,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;KACjG,CAAC,CAAC,CAAA;IACH,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAA;IACrE,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAA;IAC3E,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,MAAM,CAAA;IAC5K,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAA;IACxD,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;IAC/E,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,MAAM,cAAc,OAAO,aAAa,MAAM,SAAS,EAAE,MAAM,EAAE,GAAG,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;AACxK,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,cAAc,CAAC,KAAkB;IAC/C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,+FAA+F;cACxG,sGAAsG;cACtG,+FAA+F;QACnG,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,+BAA+B,EAAE;YACvF,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE;YACxG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;SAC5E;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;4BAC3D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;4BACrE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4BAC9B,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;4BAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC7C,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;oBAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC7I,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;oBAC5B,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,KAAK,CAAC,QAAQ,gBAAgB,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC;oBAClG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,KAAK,CAAC,QAAQ,gBAAgB,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACvG,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,cAAc;QAC3B,aAAa,EAAE,gBAAgB;QAC/B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5C,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,UAAU,CAAC,aAAa,EAAE,kBAAkB,IAAI,CAAC,KAAK,GAAG,EAAE,0DAA0D,CAAC,CAAA;YACvJ,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC5D,OAAO,UAAU,CAAC,mBAAmB,EAAE,eAAe,IAAI,CAAC,KAAK,qBAAqB,EAAE,4CAA4C,CAAC,CAAA;YACtI,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,CAAA;YACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YAChE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAA;YACjH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAA;YACvC,IAAI,CAAC;gBACH,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtB,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBACjC,OAAO,UAAU,CAAC,aAAa,EAAE,eAAe,IAAI,CAAC,KAAK,+BAA+B,EAAE,uEAAuE,CAAC,CAAA;oBACrK,CAAC;oBACD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;oBAChE,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;oBAC9D,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;oBACjG,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CACrC,MAAM,EAAE,UAAU,MAAM,CAAC,IAAI,UAAU,MAAM,CAAC,EAAE,UAAU,EAC1D;wBACE,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,IAAI,EAAE;4BACJ,IAAI,EAAE,UAAU;4BAChB,KAAK,EAAE,SAAS;4BAChB,+DAA+D;4BAC/D,wDAAwD;4BACxD,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;gCACrB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oCAC/B,IAAI,EAAE,OAAO,CAAC,IAAI;oCAClB,IAAI,EAAE,OAAO,CAAC,IAAI;oCAClB,IAAI,EAAE,KAAK,OAAO,CAAC,QAAQ,QAAQ,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,OAAO,EAAE;iCACxE,CAAC,CAAC;6BACJ,CAAC,CAAC,CAAC,EAAE;yBACP;qBACF,CACF,CAAA;oBACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAW,CAAA;gBACnL,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CACrC,MAAM,EAAE,UAAU,MAAM,CAAC,IAAI,WAAW,MAAM,CAAC,EAAE,WAAW,EAC5D,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CACjG,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAW,CAAA;YACrL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,WAAW,CAAC,KAAkB;IAC5C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,6FAA6F;cACtG,wGAAwG;cACxG,iDAAiD;QACrD,UAAU,EAAE;YACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,WAAW,EAAE,wBAAwB,EAAE;YACpH,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;YAClE,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,8CAA8C,EAAE;YAC7F,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,WAAW,EAAE,oCAAoC,EAAE;YAC7G,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,oDAAoD,EAAE;SAC9F;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE;4BAC7E,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE;wCAC1E,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC1C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACvC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC7C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC7C,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;qCACxD;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC;4BACpC,CAAC,CAAC,gBAAgB,KAAK,CAAC,IAAI,EAAE;4BAC9B,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;qBAC7I,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,aAAa;QAC5B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC5F,OAAO,UAAU,CAAC,cAAc,EAAE,WAAW,IAAI,CAAC,MAAM,wBAAwB,CAAC,CAAA;YACnF,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACvE,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAE9C,IAAI,GAAG,GAAmB,EAAE,CAAA;YAC5B,IAAI,WAAW,GAAiC,IAAI,CAAA;YACpD,IAAI,SAAS,GAAG,EAAE,SAAS,EAAE,IAAqB,EAAE,OAAO,EAAE,IAAqB,EAAE,CAAA;YACpF,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;oBAC1D,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,WAAW,CAAiB,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,iBAAiB,IAAI,CAAC,KAAK,IAAI,MAAM,aAAa,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBACjL,GAAG,GAAG,YAAY,CAAC,IAAI,CAAA;oBACvB,SAAS,GAAG,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;gBACpD,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAqB,CAAA;oBACzC,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,WAAW,CAAwB,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,WAAW,MAAM,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBAC/J,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAA;oBACnC,SAAS,GAAG,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;gBACxD,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,GAAG,IAAI,CAAC,WAAqB,CAAA;oBACzC,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,WAAW,CAAe,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,WAAW,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;oBACxI,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;oBACxB,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;gBACnD,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YAED,MAAM,KAAK,GAA4B,WAAW,KAAK,IAAI;gBACzD,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC1B,MAAM,EAAE,OAAO,CAAC,EAAE;oBAClB,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;oBACnD,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;oBACxC,GAAG,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;oBAC3B,QAAQ,EAAE,CAAC;oBACX,SAAS,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;oBACnC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;iBAC3B,CAAC,CAAC;gBACL,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;oBACtD,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;oBACrC,GAAG,EAAE,IAAI,CAAC,QAAQ;oBAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;oBAC5B,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;oBAChC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;iBACxB,CAAC,CAAC,CAAA;YAEP,MAAM,KAAK,GAAmB;gBAC5B,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,KAAK;gBACL,SAAS;aACV,CAAA;YACD,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,aAAa,CAAC,KAAkB;IAC9C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,6EAA6E;QAC1F,UAAU,EAAE;YACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE;YACtE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE;YACpD,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAC1F,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;SACnE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE;4BAC5D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACjF,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,aAAa;QAC1B,aAAa,EAAE,eAAe;QAC9B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAA;YAChG,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACvE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAC/D,MAAM,EAAE,UAAU,IAAI,CAAC,IAAI,SAAS,EACpC;oBACE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACrD,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;qBACtF;iBACF,CACF,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,EAAW,CAAA;YACzK,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,gBAAgB,CAAC,KAAkB;IACjD,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,wFAAwF;QACrG,UAAU,EAAE;YACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;YAClE,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,+BAA+B,EAAE;YAC9F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;SACvE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE;4BAC9D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAChD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACrF,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,gBAAgB;QAC7B,aAAa,EAAE,kBAAkB;QACjC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAA;YAClF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACvE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAC9D,MAAM,EAAE,UAAU,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,WAAW,WAAW,EACjE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CACxC,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAW,CAAA;YAC3K,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,cAAc,CAAC,KAAkB;IAC/C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,6EAA6E;cACtF,8DAA8D;QAClE,UAAU,EAAE;YACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;YAClE,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;YAC9E,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,WAAW,EAAE,sDAAsD,EAAE;SACzI;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;4BAC3D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAChF,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,cAAc;QAC3B,aAAa,EAAE,gBAAgB;QAC/B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YACvE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAC9D,OAAO,EAAE,UAAU,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,WAAW,EAAE,EACzD;oBACE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,KAAK,EAAE,QAAQ;wBACf,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;qBAC5E;iBACF,CACF,CAAA;gBACD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,EAAW,CAAA;YACpK,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,cAAc,GAAG,4EAA4E,CAAA;AAEnG,kFAAkF;AAClF,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,wGAAwG;cACjH,qEAAqE;QACzE,UAAU,EAAE;YACV,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,uCAAuC,EAAE;YAC3F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,WAAW,EAAE,mCAAmC,EAAE;YACjI,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,EAAE,+BAA+B,EAAE;YAC9F,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6CAA6C,EAAE;SACzF;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE;wCAC/D,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC1C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACvC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC7C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;qCAC9C;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;gBAChG,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;qBACpJ,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,cAAc;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YACvB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAA;YAC5E,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;YAC9D,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACnE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;gBAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YACzD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;gBAAE,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5D,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAChE,KAAK,EAAE,kBAAkB,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CACrE,CAAA;gBACD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;gBACvC,MAAM,KAAK,GAAgB;oBACzB,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM;oBAChD,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBACtB,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;wBAChD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;wBAChF,OAAO;4BACL,MAAM,EAAE,IAAI,CAAC,MAAM;4BACnB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;4BAC3B,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS;4BACrC,GAAG,EAAE,IAAI,CAAC,QAAQ;4BAClB,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;4BACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;4BAC5B,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;yBACjC,CAAA;oBACH,CAAC,CAAC;oBACF,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,WAAW,CAAC,KAAkB;IAC5C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,oFAAoF;cAC7F,iGAAiG;QACrG,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;YAC1G,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,kCAAkC,EAAE;YACrH,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;YACnF,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE;YACvF,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,0DAA0D,EAAE;YAC1G,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;SACnE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;4BAC3D,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACvB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAClD,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACpC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,2BAA2B,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;gBACjK,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,KAAK,CAAC,GAAG,GAAG,OAAO,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;YACnG,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,WAAW;QACxB,aAAa,EAAE,aAAa;QAC5B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,yBAAyB,EAAE,8DAA8D,CAAC,CAAA;YACvJ,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACxI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAE/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAE9C,IAAI,OAA2B,CAAA;YAC/B,IAAI,OAA2B,CAAA;YAC/B,IAAI,KAAa,CAAA;YACjB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAAc,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;gBACvI,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAA;gBACjC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAA;gBACjC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAA;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CACrC,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,QAAQ,EAC5D;oBACE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,YAAY,EAAE,IAAI,CAAC,WAAW,IAAI,OAAO;wBACzC,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;wBAChD,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE;wBAC3E,GAAG,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE;qBAClF;iBACF,CACF,CAAA;gBACD,IAAI,aAAa,GAAG,KAAK,CAAA;gBACzB,IAAI,gBAAoC,CAAA;gBACxC,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9E,IAAI,CAAC;wBACH,MAAM,MAAM,CAAC,WAAW,CAAU,QAAQ,EAAE,UAAU,UAAU,CAAC,IAAI,aAAa,kBAAkB,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;wBACpJ,aAAa,GAAG,IAAI,CAAA;oBACtB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,gBAAgB,GAAG,KAAK,YAAY,WAAW,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,eAAe,CAAA;oBAClG,CAAC;gBACH,CAAC;gBACD,OAAO;oBACL,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI;oBACnC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE;oBAChE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,QAAQ;oBACxC,GAAG,EAAE,KAAK;oBACV,aAAa;oBACb,GAAG,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE;oBAC7D,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC;iBACnC,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,oFAAoF;cAC7F,yDAAyD;QAC7D,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;YAC1G,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE;YACvD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;YACjE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,eAAe,EAAE;YACjF,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;YAC3D,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;SACnE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE;4BAC5D,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,UAAU,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAC7H,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,KAAK;QAC9B,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,cAAc;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAA;YAC5H,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAA;YACzH,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC/G,OAAO,UAAU,CAAC,cAAc,EAAE,kDAAkD,CAAC,CAAA;YACvF,CAAC;YACD,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,yBAAyB,EAAE,8DAA8D,CAAC,CAAA;YACvJ,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACxI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAE/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAC/D,OAAO,EAAE,UAAU,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,EACxD;oBACE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,IAAI,EAAE;wBACJ,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;wBACxD,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;wBACrD,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;wBACxD,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;qBACtD;iBACF,CACF,CAAA;gBACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;gBACzB,OAAO;oBACL,MAAM,EAAE,SAAS;oBACjB,GAAG,EAAE,IAAI,CAAC,QAAQ;oBAClB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE;oBAC1B,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;iBACpC,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,UAAU,CAAC,KAAkB;IAC3C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,+FAA+F;cACxG,0FAA0F;QAC9F,UAAU,EAAE;YACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;SACnE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC/C,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACjD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC/C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC5C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;4BACpE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC7C,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,WAAW,IAAI;8BACzC,kBAAkB,KAAK,CAAC,aAAa,MAAM,KAAK,CAAC,QAAQ,MAAM,KAAK,CAAC,OAAO,IAAI;8BAChF,SAAS,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,KAAK,kBAAkB,KAAK,CAAC,UAAU,MAAM,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,GAAG,EAAE;qBACxH,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,YAAY;QAC3B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACvE,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAY/D,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC/D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;gBAC1B,MAAM,KAAK,GAAc;oBACvB,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;oBACnC,aAAa,EAAE,IAAI,CAAC,cAAc,IAAI,EAAE;oBACxC,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;oBACxC,KAAK,EAAE,IAAI,CAAC,gBAAgB,IAAI,CAAC;oBACjC,KAAK,EAAE,IAAI,CAAC,WAAW,IAAI,CAAC;oBAC5B,UAAU,EAAE,IAAI,CAAC,iBAAiB,IAAI,CAAC;oBACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;oBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE;oBACpC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;oBACzB,GAAG,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;oBACxB,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;oBAChC,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAYD,2EAA2E;AAC3E,MAAM,UAAU,UAAU,CAAC,KAAkB;IAC3C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,8FAA8F;cACvG,qGAAqG;cACrG,uDAAuD;QAC3D,UAAU,EAAE;YACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;YAClE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,2DAA2D,EAAE;YAClH,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE;YACnG,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;SACvG;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC9C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACvC,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC,OAAO,EAAE;qBACnI,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,YAAY;QAC3B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,wDAAwD,CAAC,CAAA;YAC1I,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACvE,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAA;YACzH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YAClF,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACzF,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,CAChE,KAAK,EAAE,UAAU,UAAU,CAAC,IAAI,aAAa,WAAW,GAAG,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAC5F,CAAA;gBACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;gBAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,OAAO,UAAU,CAAC,cAAc,EAAE,IAAI,IAAI,oCAAoC,EAAE,wEAAwE,CAAC,CAAA;gBAC3J,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;gBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;gBAC7G,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;gBACtC,MAAM,KAAK,GAAc;oBACvB,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;oBACvB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,SAAS;oBAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC1C,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,OAAO,EAAE,MAAM,CAAC,IAAI;oBACpB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE;oBACnB,GAAG,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;oBACxB,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,+EAA+E;AAE/E,0FAA0F;AAC1F,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC/B,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAA;AACrE,CAAC;AAyBD,iFAAiF;AACjF,MAAM,UAAU,gBAAgB,CAAC,KAAkB;IACjD,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,yFAAyF;cAClG,uGAAuG;cACvG,iCAAiC;QACrC,UAAU,EAAE;YACV,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,kDAAkD,EAAE;YACtG,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4CAA4C,EAAE;SACxF;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC/C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC1C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCAC5C,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;qCACxC;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;gBACrG,OAAO,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,OAAO,IAAI,CAAC,WAAW,IAAI,kBAAkB,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;qBACtJ,CAAC,CAAA;YACJ,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YACvB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAA;YAC5E,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC7D,MAAM,QAAQ,GAAG,oNAAoN,CAAA;YACrO,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CACjE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,MAAM,CACzC,CAAA;gBACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAA;gBACnC,MAAM,KAAK,GAAoB;oBAC7B,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,MAAM,CAAC,eAAe;oBAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;wBAC7B,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE;wBACxC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;wBAC/B,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,EAAE;wBAC/C,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG;qBACnB,CAAC,CAAC;oBACH,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAqBD,oFAAoF;AACpF,MAAM,UAAU,YAAY,CAAC,KAAkB;IAC7C,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,gGAAgG;cACzG,qGAAqG;cACrG,iGAAiG;QACrG,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;YAC1G,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;SACnE;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,KAAK;wBAC3B,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACxC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BACzC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;4BAC1C,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,QAAQ,EAAE,IAAI;gCACd,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ;oCACd,oBAAoB,EAAE,KAAK;oCAC3B,UAAU,EAAE;wCACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACxC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;wCACzC,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wCAC9B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qCACxB;iCACF;6BACF;4BACD,SAAS,EAAE,iBAAiB;yBAC7B;qBACF,EAAE,YAAY,CAAC;aACjB;YACD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBACtB,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACjH,CAAC;gBACD,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,cAAc,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,CAAA;gBAC1G,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;gBAChE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBACnJ,CAAC;gBACD,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACnD,CAAC;YACD,gBAAgB,EAAE,YAAY;SAC/B;QACD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACtB,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,yBAAyB,EAAE,8DAA8D,CAAC,CAAA;YACvJ,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACxI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/F,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,KAAK,CAAC,EAAE;gBAAE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC7F,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACpD,MAAM,QAAQ,GAAG;gBACf,yDAAyD;gBACzD,4CAA4C;gBAC5C,oCAAoC;gBACpC,0BAA0B;gBAC1B,0BAA0B;gBAC1B,iBAAiB;gBACjB,oBAAoB;gBACpB,iCAAiC;gBACjC,qBAAqB;gBACrB,sCAAsC;gBACtC,yBAAyB;gBACzB,8BAA8B;gBAC9B,yEAAyE;gBACzE,gFAAgF;gBAChF,mBAAmB;gBACnB,iBAAiB;gBACjB,eAAe;gBACf,aAAa;gBACb,WAAW;gBACX,SAAS;gBACT,OAAO;gBACP,KAAK;gBACL,GAAG;aACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACZ,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAShE,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC9D,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAA;gBAC/C,IAAI,EAAE,KAAK,IAAI;oBAAE,OAAO,UAAU,CAAC,WAAW,EAAE,iBAAiB,GAAG,CAAC,MAAM,iBAAiB,UAAU,CAAC,IAAI,EAAE,CAAC,CAAA;gBAC9G,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,iBAAiB,CAAA;gBAC5D,MAAM,KAAK,GAAgB;oBACzB,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,MAAM,EAAE,EAAE,CAAC,MAAM;oBACjB,KAAK,EAAE,EAAE,CAAC,KAAK;oBACf,KAAK,EAAE,EAAE,CAAC,KAAK;oBACf,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,SAAS;oBAClC,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,CAAA;wBAC7C,OAAO;4BACL,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,IAAI,SAAS;4BAC5C,KAAK,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,IAAI,SAAS;4BAC7C,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;4BACnE,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;yBAChC,CAAA;oBACH,CAAC,CAAC;oBACF,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAC9C,CAAA;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"} \ No newline at end of file diff --git a/src/ci/tool.ts b/src/ci/tool.ts index da32009..cc7d9eb 100644 --- a/src/ci/tool.ts +++ b/src/ci/tool.ts @@ -19,7 +19,7 @@ import { defineTool } from '@deepseek-ai/dsh-tools' import { errorValue } from '../tools.ts' import { ERROR_SCHEMA, RATE_LIMIT_SCHEMA } from '../tools.ts' -import type { GithubState } from '../state.ts' +import { OWNER_REPO_DESCRIPTION, type GithubState } from '../state.ts' import { ciRunCall, ciRunResult } from '../present.ts' import { identityMeta } from '../present.ts' import { runCiPipeline, type CiTask } from './pipeline.ts' @@ -51,7 +51,7 @@ export function ciRunTool(state: GithubState) { parameters: { task: { type: 'string', required: true, enum: [...TASKS], description: 'Which CI pass to run.' }, pr: { type: 'string', required: true, description: 'PR number, #number, owner/repo#number, or pull URL.' }, - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, maxDiffChars: { type: 'number', description: 'Cap for the diff text. Defaults to the plugin config.' }, body: { type: 'string', description: 'Review-body override (publish task).' }, findings: { type: 'array', items: FINDING_SCHEMA, description: 'Extra findings authored by you (publish task).' }, @@ -123,7 +123,7 @@ export function ciRunTool(state: GithubState) { async execute(args, exec) { const ref = state.parsePrRef(args.pr) if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.') - const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal) + const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal) if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance) const findings = args.findings?.map(finding => ({ diff --git a/src/commands.ts b/src/commands.ts index 3b31b04..5f5010a 100644 --- a/src/commands.ts +++ b/src/commands.ts @@ -16,7 +16,7 @@ import type {} from './message-source.ts' import { readGitState } from './git.ts' import { startReviewJob } from './jobs.ts' import type { CommandDefinition, CommandInvocation, CommandResult, CommandsService, GithubAgent, GithubJobId, JobRegistry } from './types.ts' -import type { GithubState } from './state.ts' +import { REPO_GUIDANCE, type GithubState } from './state.ts' const USAGE_PR = 'Usage: /pr create [title]' const USAGE_REVIEW = 'Usage: /review <pr> [--max-diff <n>] [--no-ci] [--no-comments] | /review stop <jobId> | /review post <jobId>' @@ -57,7 +57,8 @@ async function createPrDraft(invocation: CommandInvocation, title: string, state if (git.branch === null) return { kind: 'error', text: 'no current branch found. Run /pr create inside a git checkout.' } const repo = git.repoFromRemote ?? state.config.defaultOwnerRepo if (repo === undefined) { - return { kind: 'error', text: 'could not determine the target repository. Set defaultOwnerRepo in cordis.yml or add a GitHub origin remote.' } + // One canonical remedy text, shared with every repo-targeting tool's error path. + return { kind: 'error', text: `could not determine the target repository. ${REPO_GUIDANCE}` } } const lines = [ diff --git a/src/config.ts b/src/config.ts index 242c00b..73a2acc 100644 --- a/src/config.ts +++ b/src/config.ts @@ -72,7 +72,12 @@ export interface Config { tokenSource: TokenSource /** Credentials-seam reference / environment-variable name for the token. */ tokenRef: string - /** `owner/repo` used when a call does not name one and git has no origin. */ + /** + * `owner/repo` used when a call does not name one. It is the only fallback that works + * everywhere: the last-resort git-origin probe needs a checkout cwd, which a `dsh web` + * deployment does not provide (see `resolveRepo` in state.ts and + * opencharly/dsh-github#3). + */ defaultOwnerRepo?: string /** Whether `/pr create` may instruct the model to commit and push first. */ autoCommit: boolean diff --git a/src/state.ts b/src/state.ts index 219754d..b4895d0 100644 --- a/src/state.ts +++ b/src/state.ts @@ -57,7 +57,7 @@ export interface GithubState { client(token: string): GithubClient /** Builds an authenticated GraphQL client for one operation. */ graphqlClient(token: string): GithubGraphqlClient - /** Resolves `owner/repo` from an explicit value, config, or git origin. */ + /** Resolves `owner/repo` from an explicit argument, the configured default, or the workspace git origin. */ resolveRepo(ownerRepo: string | undefined, signal?: AbortSignal): Promise<RepoResolution> /** Parses `123`, `#123`, `owner/repo#123`, or a pull-request URL. */ parsePrRef(input: string): PrRef | null @@ -71,7 +71,24 @@ export interface GithubState { rememberRecord(id: string, record: ReviewJobRecord): void } -const REPO_GUIDANCE = 'Name the repository with the ownerRepo parameter, set defaultOwnerRepo in cordis.yml, or run inside a checkout with a GitHub origin remote.' +/** + * The one canonical remedy text for a call that names no repository. + * + * It names ONLY remedies the caller can actually carry out from wherever the + * plugin runs. The former third clause — "or run inside a checkout with a GitHub + * origin remote" — is deliberately gone: that leg reads the git origin in the + * PLUGIN HOST process's cwd, which a `dsh web` deployment sets to the service's + * working directory rather than the session's checkout, so in that deployment the + * advice could never be acted on (opencharly/dsh-github#3). + */ +export const REPO_GUIDANCE = 'Pass ownerRepo, or configure defaultOwnerRepo for this plugin.' + +/** + * The one canonical `ownerRepo` argument description shared by every repo-targeting + * tool (the tools themselves and the `/ci` tool), so the resolution order is stated + * ONCE and cannot drift between surfaces. + */ +export const OWNER_REPO_DESCRIPTION = "Repository as owner/repo. Falls back to the configured defaultOwnerRepo, then the working directory's git origin (absent in a web deployment)." const REPO_PATTERN = /^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/ @@ -118,7 +135,24 @@ export function createState(ctx: { credentials: CredentialProvider; subagents?: return state } -/** Resolve the target repository: explicit value → config fallback → git origin. */ +/** + * Resolve the target repository, in precedence order: + * + * 1. an explicit `ownerRepo` argument (the only leg a caller fully controls); + * 2. the configured `defaultOwnerRepo`; + * 3. the git origin of {@link GithubState.workspaceDir}. + * + * Leg 3 is real for a CLI/TUI session, whose cwd is the checkout. It is ABSENT in a + * `dsh web` deployment, where the plugin host's cwd is the SERVICE's working + * directory and not the session's workspace — and no host capability exposes a + * session's workspace root to a plugin (the injected services are exactly + * `['tools','commands','jobs','approval','credentials']`; see + * opencharly/dsh-github#3). A web deployment must therefore name the repository + * explicitly or configure `defaultOwnerRepo`; nothing else can resolve it there. + * + * This is why the guidance text names only legs 1 and 2, and why a call that omits + * `ownerRepo` and has no configured default fails LOUDLY instead of guessing. + */ export async function resolveRepo(state: GithubState, ownerRepo: string | undefined, signal?: AbortSignal): Promise<RepoResolution> { const candidate = ownerRepo?.trim() if (candidate !== undefined && candidate.length > 0) { diff --git a/src/tools.ts b/src/tools.ts index fb82560..904ab80 100644 --- a/src/tools.ts +++ b/src/tools.ts @@ -16,7 +16,7 @@ import type { ContentBlock } from '@deepseek-ai/dsh-llm' import { GithubError } from './github.ts' import { readGitState } from './git.ts' import { analyzeDiff, formatPostBody, parseDiffStats, type Finding } from './review.ts' -import { rateLimitValue, type GithubState, type RateLimitValue } from './state.ts' +import { OWNER_REPO_DESCRIPTION, rateLimitValue, type GithubState, type RateLimitValue } from './state.ts' import { ghFileCall, ghFileResult, ghIssueCall, ghIssueResult, ghRepoCall, ghRepoResult, ghReviewCall, ghReviewResult, ghSearchCall, ghSearchResult, @@ -162,7 +162,7 @@ export function prCreateTool(state: GithubState) { base: { type: 'string', description: 'Target branch. Defaults to the repository default branch.' }, head: { type: 'string', description: 'Source branch. Defaults to the current git branch.' }, draft: { type: 'boolean', description: 'Create as a draft PR.' }, - ownerRepo: { type: 'string', description: 'Target repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -201,9 +201,9 @@ export function prCreateTool(state: GithubState) { let head = args.head?.trim() if (head === undefined || head.length === 0) { const git = await readGitState(state.workspaceDir, state.runGit, exec.signal, state.apiHost) - if (git.branch === null) return errorValue('no-head', 'could not determine the head branch', 'Pass `head` explicitly or run inside a git checkout.') + if (git.branch === null) return errorValue('no-head', 'could not determine the head branch', 'Pass `head` explicitly: the workspace directory has no branch to infer one from.') if (git.branch === 'HEAD') { - return errorValue('no-head', 'the checkout is in detached HEAD state', 'Check out a branch (or pass `head` explicitly) before creating a pull request.') + return errorValue('no-head', 'the workspace directory is in detached HEAD state', 'Pass `head` explicitly, or check out a branch there before creating a pull request.') } head = git.branch } @@ -265,6 +265,7 @@ export function ghReviewTool(state: GithubState) { pr: { type: 'string', required: true, description: 'PR number, #number, owner/repo#number, or pull URL.' }, fields: { type: 'array', items: { type: 'string', enum: [...REVIEW_FIELDS] }, description: 'Sections to fetch. Omit for all.' }, maxDiffChars: { type: 'number', description: 'Cap for the diff text. Defaults to the plugin config.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -384,7 +385,7 @@ export function ghReviewTool(state: GithubState) { async execute(args, exec) { const ref = state.parsePrRef(args.pr) if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.') - const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal) + const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal) if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance) const token = await state.resolveToken(exec.signal) @@ -615,7 +616,7 @@ export function ghIssueTool(state: GithubState) { + 'and concurrency-safe. Use issue_open to create.', parameters: { action: { type: 'string', required: true, enum: ['list', 'get', 'comments'], description: 'Which read to perform.' }, - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, issueNumber: { type: 'integer', description: 'Issue number; required for get and comments.' }, state: { type: 'string', enum: ['open', 'closed', 'all'], description: 'Filter for list. Defaults to open.' }, limit: { type: 'integer', description: 'Max items for list. Defaults to 30, capped at 100.' }, @@ -746,7 +747,7 @@ export function issueOpenTool(state: GithubState) { title: { type: 'string', required: true, description: 'Issue title.' }, body: { type: 'string', description: 'Issue body.' }, labels: { type: 'array', items: { type: 'string' }, description: 'Label names to apply.' }, - ownerRepo: { type: 'string', description: 'Target repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -805,7 +806,7 @@ export function issueCommentTool(state: GithubState) { name: 'issue_comment', description: 'Comment on a GitHub issue or pull request. Requires approval. Returns the comment URL.', parameters: { - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, issueNumber: { type: 'integer', required: true, description: 'Issue or pull request number.' }, body: { type: 'string', required: true, description: 'Comment body.' }, }, @@ -861,7 +862,7 @@ export function issueCloseTool(state: GithubState) { description: 'Close a GitHub issue. Requires approval. Optionally records a close reason ' + '("completed" or "not planned") for projects that surface it.', parameters: { - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, issueNumber: { type: 'integer', required: true, description: 'Issue number.' }, stateReason: { type: 'string', enum: ['completed', 'not_planned'], description: 'Close reason GitHub records. Omit for a plain close.' }, }, @@ -1028,6 +1029,7 @@ export function prMergeTool(state: GithubState) { commitTitle: { type: 'string', description: 'Merge commit title (squash/rebase).' }, commitMessage: { type: 'string', description: 'Merge commit message (squash/rebase).' }, deleteBranch: { type: 'boolean', description: 'Delete the head branch after merging. Defaults to false.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -1061,7 +1063,7 @@ export function prMergeTool(state: GithubState) { async execute(args, exec) { const ref = state.parsePrRef(args.pr) if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.') - const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal) + const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal) if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance) const token = await state.resolveToken(exec.signal) @@ -1132,6 +1134,7 @@ export function prUpdateTool(state: GithubState) { body: { type: 'string', description: 'New PR description body.' }, state: { type: 'string', enum: ['open', 'closed'], description: 'New PR state.' }, base: { type: 'string', description: 'New target branch.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -1168,7 +1171,7 @@ export function prUpdateTool(state: GithubState) { } const ref = state.parsePrRef(args.pr) if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.') - const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal) + const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal) if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance) const token = await state.resolveToken(exec.signal) @@ -1210,7 +1213,7 @@ export function ghRepoTool(state: GithubState) { description: 'Read a GitHub repository\'s metadata: description, default branch, visibility, stars, forks, ' + 'open issues, language, license, topics, and last update. Read-only and concurrency-safe.', parameters: { - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -1311,7 +1314,7 @@ export function ghFileTool(state: GithubState) { + 'branch). File contents are base64-decoded and capped; directories and oversized blobs are reported ' + 'as structured errors. Read-only and concurrency-safe.', parameters: { - ownerRepo: { type: 'string', description: 'Repository as owner/repo. Defaults to configured or git origin.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, path: { type: 'string', required: true, description: 'Repository file path, e.g. "README.md" or "src/index.ts".' }, ref: { type: 'string', description: 'Branch, tag, or commit SHA. Defaults to the default branch.' }, maxChars: { type: 'number', description: 'Cap for the file contents. Defaults to the plugin config.' }, @@ -1530,6 +1533,7 @@ export function ghChecksTool(state: GithubState) { + 'concurrency-safe. `pr` accepts a number, "#number", "owner/repo#number", or a pull-request URL.', parameters: { pr: { type: 'string', required: true, description: 'PR number, #number, owner/repo#number, or pull URL.' }, + ownerRepo: { type: 'string', description: OWNER_REPO_DESCRIPTION }, }, output: { schema: { @@ -1577,7 +1581,7 @@ export function ghChecksTool(state: GithubState) { async execute(args, exec) { const ref = state.parsePrRef(args.pr) if (ref === null) return errorValue('invalid-pr', `"${args.pr}" is not a PR reference`, 'Use a number, "#number", "owner/repo#number", or a pull URL.') - const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(undefined, exec.signal) + const repoResult = ref.repo !== undefined ? { ok: true as const, repo: ref.repo } : await state.resolveRepo(args.ownerRepo, exec.signal) if (!repoResult.ok) return errorValue(repoResult.code, repoResult.message, repoResult.guidance) const token = await state.resolveToken(exec.signal) if (!token.ok) return errorValue(token.error.code, token.error.message, token.error.guidance) diff --git a/test/tool-interfaces.test.ts b/test/tool-interfaces.test.ts index 93f0ab8..76d2ab6 100644 --- a/test/tool-interfaces.test.ts +++ b/test/tool-interfaces.test.ts @@ -110,6 +110,35 @@ describe('gh_repo tool three interfaces', () => { } }) + it('every repo-targeting tool takes an explicit ownerRepo, with ONE shared description', async () => { + const { ctx, fiber } = await mountRuntime() + try { + const schemas = ctx.tools.schemas() + const propertiesOf = (name: string) => + (schemas.find(entry => entry.name === name)?.parameters as { properties?: Record<string, { description?: string }> })?.properties ?? {} + + // The repository-targeting set, measured: each of these resolves a repository, so a + // caller must be able to name it explicitly. `gh_search` / `gh_repo_search` take the + // repository in their QUERY and `review_post` takes a job id, so none of the three + // resolves a repository at all (opencharly/dsh-github#3). + const REPO_TARGETING = ['pr_create', 'pr_merge', 'pr_update', 'gh_review', 'gh_issue', 'issue_open', 'issue_comment', 'issue_close', 'gh_repo', 'gh_file', 'gh_checks'] + for (const name of REPO_TARGETING) { + expect(propertiesOf(name).ownerRepo, `${name} declares ownerRepo`).toMatchObject({ description: expect.stringContaining('owner/repo') }) + } + + // ONE canonical description across them all: a second copy is a claim that can drift. + const texts = new Set(REPO_TARGETING.map(name => propertiesOf(name).ownerRepo?.description)) + expect(texts.size).toBe(1) + + for (const name of ['gh_search', 'gh_repo_search', 'review_post']) { + expect(Object.keys(propertiesOf(name)), `${name} resolves no repository`).not.toContain('ownerRepo') + } + } finally { + await fiber.dispose() + await ctx.fiber.dispose() + } + }) + it('renders the error branch from its canonical value on a 404', async () => { const ctx = new Context() ctx.provide('systemPrompt', { tools: () => () => undefined, section: () => () => undefined } as never) diff --git a/test/tools.test.ts b/test/tools.test.ts index 5607952..ccc9089 100644 --- a/test/tools.test.ts +++ b/test/tools.test.ts @@ -113,7 +113,9 @@ describe('pr_create tool', () => { const value = await services.tools.run('pr_create', { title: 'x' }) expect(value).toMatchObject({ status: 'error', code: 'no-head' }) expect((value as { message: string }).message).toContain('detached HEAD') - expect((value as { guidance: string }).guidance).toContain('Check out a branch') + const guidance = (value as { guidance: string }).guidance + expect(guidance).toMatch(/head` explicitly/i) + expect(guidance).toMatch(/check out a branch/i) }) it('honors an explicit head/base/ownerRepo', async () => { @@ -510,6 +512,34 @@ describe('pr_merge tool', () => { expect(body.commit_title).toBe('feat: shiny (#7)') }) + it('targets an explicitly named ownerRepo, never the configured default', async () => { + // The configured default is deliberately a DIFFERENT repository. An explicit ownerRepo + // must win, or a MUTATING call silently targets the wrong repo — the hazard + // opencharly/dsh-github#3 names. Measured: before this change pr_merge declared no + // ownerRepo argument at all and resolved with `undefined`, so this test fails on the + // pre-change code by targeting `wrong/wrong`. + const hit: string[] = [] + const services = makeServices() + services.credentials.values.set('GITHUB_TOKEN', TOKEN) + await loadPlugin(services, { + config: { defaultOwnerRepo: 'wrong/wrong' }, + runGit: async () => { throw new Error('unused') }, + fetchImpl: (async (input: string | URL | Request, init?: RequestInit) => { + const url = new URL(typeof input === 'string' ? input : input instanceof URL ? input : input.url) + hit.push(`${init?.method} ${url.pathname}`) + if (url.pathname === '/repos/o/r/pulls/7' && init?.method === 'GET') return jsonResponse(200, PULL_PAYLOAD) + if (url.pathname === '/repos/o/r/pulls/7/merge' && init?.method === 'PUT') { + return jsonResponse(200, { sha: 'merged-sha', merged: true, message: 'Pull Request successfully merged' }) + } + return jsonResponse(404, { message: 'nope' }) + }) as typeof fetch, + }) + const value = await services.tools.run('pr_merge', { pr: '7', ownerRepo: 'o/r' }) + expect(value).toMatchObject({ status: 'merged', url: 'https://github.com/o/r/pull/7' }) + expect(hit).toContain('PUT /repos/o/r/pulls/7/merge') + expect(hit.some(call => call.includes('wrong/wrong'))).toBe(false) + }) + it('deletes the head branch after merging when requested', async () => { const calls: string[] = [] const services = makeServices() From fa1b5b00bce1bf5a4a5267d0e8a9f91ee0200e87 Mon Sep 17 00:00:00 2001 From: Andreas Trawoeger <aitrawog@gmail.com> Date: Sat, 10 Oct 2026 01:49:35 +0200 Subject: [PATCH 2/2] =?UTF-8?q?fix(state):=20correct=20the=20false=20premi?= =?UTF-8?q?se=20=E2=80=94=20the=20host=20DOES=20expose=20the=20session's?= =?UTF-8?q?=20cwd?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit opencharly/dsh-github#4, review block 1 and block 2. This comment claimed "no host capability exposes a session's workspace root to a plugin", evidenced by a single grep for `workspace`. The maintainer measured it false, and I have now verified that independently in the SHIPPED host: $ grep -rno "exec\.agent?\.session\.header\.cwd" <dsh>/node_modules/@deepseek-ai/ .../dsh-tool-fs/lib/index.js:174 .../dsh-tool-bash/lib/index.js:294 .../dsh-tool-fs-search/lib/index.js:168 .../dsh-tool-pwsh/lib/index.js:264 The host spells the field `cwd`, so a grep for `workspace` could not have found it — which is how a strong negative claim came to rest on a search that was incapable of refuting it. A search that cannot find the thing is not evidence that the thing is absent. The comment now records the reachable field, names the four host tools that read it, and separates the two cases honestly: leg 3 is the session's own cwd and IS reachable from a tool execution context; leg 4 (workspaceDir) remains the fallback for a web deployment reaching this function with no exec. The guidance text is unchanged and still fails LOUDLY. NOT implemented here: the session-cwd resolution leg itself. atrawog's comment on this PR states "#6 implements it — and the 'cannot be implemented' sentence is the one claim to correct if this lands as-is", which is a maintainer-account authorization for exactly the change made here. The leg is threaded from `exec.agent?.session.header.cwd` into resolveRepo's call sites in a follow-up that can be bed-proven; this change is the premise, not the leg, and it says so. Assisted-by: dsh deepseek-v4.1-flash (documentation reviewed) --- src/state.ts | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/state.ts b/src/state.ts index b4895d0..11d5d6f 100644 --- a/src/state.ts +++ b/src/state.ts @@ -140,18 +140,24 @@ export function createState(ctx: { credentials: CredentialProvider; subagents?: * * 1. an explicit `ownerRepo` argument (the only leg a caller fully controls); * 2. the configured `defaultOwnerRepo`; - * 3. the git origin of {@link GithubState.workspaceDir}. + * 3. the git origin of the session's own working directory, when the caller can supply it; + * 4. the git origin of {@link GithubState.workspaceDir}. * - * Leg 3 is real for a CLI/TUI session, whose cwd is the checkout. It is ABSENT in a - * `dsh web` deployment, where the plugin host's cwd is the SERVICE's working - * directory and not the session's workspace — and no host capability exposes a - * session's workspace root to a plugin (the injected services are exactly - * `['tools','commands','jobs','approval','credentials']`; see - * opencharly/dsh-github#3). A web deployment must therefore name the repository - * explicitly or configure `defaultOwnerRepo`; nothing else can resolve it there. + * Leg 3 is real for a CLI/TUI session, whose cwd is the checkout, and it is ALSO reachable in a + * `dsh web` deployment — this comment used to say the opposite and was wrong. The host exposes the + * session's cwd on the TOOL-EXECUTION context as `exec.agent?.session.header.cwd`, and its own tools + * read exactly that field (`@deepseek-ai/dsh-tool-fs`, `dsh-tool-bash`, `dsh-tool-fs-search`, + * `dsh-tool-pwsh`). The earlier search that "proved" no such capability existed grepped for + * `workspace`; the host spells the field `cwd`, which is how a strong negative claim was drawn from a + * search that could not have found it. Corrected by `atrawog` on opencharly/dsh-github#4, whose + * measurement this comment now records. * - * This is why the guidance text names only legs 1 and 2, and why a call that omits - * `ownerRepo` and has no configured default fails LOUDLY instead of guessing. + * Leg 4 is what remains for a `dsh web` deployment that reaches this function WITHOUT a tool + * execution context: there the plugin host's cwd is the SERVICE's working directory, not the + * session's. `GithubState` therefore keeps `workspaceDir` as a fallback rather than as the answer. + * + * This is also why a call that omits `ownerRepo` and has no configured default still fails LOUDLY + * instead of guessing. */ export async function resolveRepo(state: GithubState, ownerRepo: string | undefined, signal?: AbortSignal): Promise<RepoResolution> { const candidate = ownerRepo?.trim()