@plurnk/plurnk-mcp 3.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -4
- package/SPEC.md +73 -20
- package/dist/McpExecutor.d.ts.map +1 -1
- package/dist/McpExecutor.js +5 -0
- package/dist/McpExecutor.js.map +1 -1
- package/dist/Module.d.ts.map +1 -1
- package/dist/Module.js +9 -2
- package/dist/Module.js.map +1 -1
- package/dist/PreparationDiagnostics.d.ts +11 -0
- package/dist/PreparationDiagnostics.d.ts.map +1 -0
- package/dist/PreparationDiagnostics.js +68 -0
- package/dist/PreparationDiagnostics.js.map +1 -0
- package/dist/client.d.ts +2 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +33 -6
- package/dist/client.js.map +1 -1
- package/dist/protocol.d.ts +2 -2
- package/dist/protocol.js +2 -2
- package/dist/protocolHeaders.d.ts +15 -0
- package/dist/protocolHeaders.d.ts.map +1 -1
- package/dist/protocolHeaders.js +64 -30
- package/dist/protocolHeaders.js.map +1 -1
- package/docs/mcp.md +17 -5
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -99,7 +99,7 @@ exact RFC 9457 Problem Details:
|
|
|
99
99
|
} } } }
|
|
100
100
|
```
|
|
101
101
|
|
|
102
|
-
The model manages the same family through ````` ````mcp (list|discover|add|enable|disable|remove) `````
|
|
102
|
+
The model manages the same family through ````` ````mcp (list|discover|add|replace|enable|disable|remove) `````
|
|
103
103
|
(`discover` while a registry is configured), each change a proposal reviewed by the worker's owner unless `PLURNK_SERVICE_PROPOSALS` accepts or
|
|
104
104
|
rejects it. Disabling is durable and workspace-shared; enabling an unavailable server retries its
|
|
105
105
|
connection.
|
|
@@ -205,9 +205,11 @@ failures rather than retryable server downtime.
|
|
|
205
205
|
|
|
206
206
|
```sh
|
|
207
207
|
npm test -w @plurnk/plurnk-mcp
|
|
208
|
-
npm run test:
|
|
208
|
+
PLURNK_MODEL=<selector> npm run test:live:specimen -w @plurnk/plurnk-service -- "live mcp: current third-party stdio and HTTP servers compose through the assembled product"
|
|
209
209
|
```
|
|
210
210
|
|
|
211
211
|
The package gate runs the exact current SDK and official conformance
|
|
212
|
-
requirements. The
|
|
213
|
-
|
|
212
|
+
requirements. The live specimen composes representative current stdio and
|
|
213
|
+
Streamable HTTP servers through the assembled daemon and AG-UI product with a
|
|
214
|
+
scripted model; it runs in every live tier whose host has `npx`, the npm
|
|
215
|
+
registry and the remote server, and skips by name otherwise.
|
package/SPEC.md
CHANGED
|
@@ -11,7 +11,7 @@ executor, resource, proposal, entry, Problem, and lifecycle contracts.
|
|
|
11
11
|
|
|
12
12
|
The host's own wire authority is revision `2026-07-28`, specification commit
|
|
13
13
|
`5f5440bb26a62e2cf3440b92da5a667efa03b267`. The implementation exact-pins
|
|
14
|
-
`@modelcontextprotocol/client@2.
|
|
14
|
+
`@modelcontextprotocol/client@2.3.1`. SDK exports are not protocol authority:
|
|
15
15
|
that package deliberately retains legacy and deprecated API shapes. It owns
|
|
16
16
|
core negotiation and transport; this package owns only exact-pinned extension
|
|
17
17
|
wire that the SDK does not yet implement.
|
|
@@ -194,6 +194,18 @@ case-insensitively, and body/header disagreement fails instead of guessing.
|
|
|
194
194
|
For `tasks/get`, `tasks/update`, and `tasks/cancel`, `Mcp-Name` is the encoded
|
|
195
195
|
`taskId` required by the Tasks extension.
|
|
196
196
|
|
|
197
|
+
§mcp-header-declarations **A tool with an invalid `x-mcp-header` declaration is never called.** Before
|
|
198
|
+
either request leg of a tool call, Tasks or direct, the tool's `inputSchema` is scanned for
|
|
199
|
+
`x-mcp-header` declarations: each sits on a property reached through `properties` alone, never under
|
|
200
|
+
`items`, `additionalProperties`, a combinator, a conditional, `$defs` or a `$ref` target; names a
|
|
201
|
+
non-empty RFC 9110 token that is unique case-insensitively; and types `string`, `integer` or `boolean`,
|
|
202
|
+
never `number` (SEP-2243). The definition the caller supplies is the one scanned; otherwise the server's
|
|
203
|
+
listing supplies it, and a Tasks call whose listing lacks the tool fails as unlisted. A definition that
|
|
204
|
+
breaks any of these refuses the call with `tool-header-invalid` ({§problems-mcp}) naming the tool and
|
|
205
|
+
the declaration, and no request is sent. A direct call never waits on a failed listing
|
|
206
|
+
({§mcp-catalog-deadline}): with no definition at hand there is nothing to scan and no routing header to
|
|
207
|
+
derive, so it proceeds as a plain `tools/call`.
|
|
208
|
+
|
|
197
209
|
## §mcp-errors Error allocation
|
|
198
210
|
|
|
199
211
|
| Condition | Code and boundary |
|
|
@@ -361,20 +373,33 @@ whether the family serves discovery ({§mcp-registry-discovery}). An invalid one
|
|
|
361
373
|
other configuration error surfaces in the family's diagnostics at runtime, and all of them in the
|
|
362
374
|
offline check ({§operator-config-offline-validation}). It claims no HTTP mounts.
|
|
363
375
|
|
|
364
|
-
§mcp-launch-environment **
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
`
|
|
371
|
-
|
|
376
|
+
§mcp-launch-environment **Ambient inheritance and explicit bindings are distinct.** A stdio
|
|
377
|
+
server receives these layers in order; it never receives the invoking worker's overrides.
|
|
378
|
+
|
|
379
|
+
| Layer | Environment |
|
|
380
|
+
|---|---|
|
|
381
|
+
| Ambient base | The operator's environment excluding `PLURNK_*` and provider credential names ({§exec-env-scoped}). The model-command inherit/exclude selectors do not apply. |
|
|
382
|
+
| Workspace | Shared `env` values and masks ({§workspace-env}); a withheld name cannot be restored by the transport's own defaults. |
|
|
383
|
+
| Definition | Explicit `env` values. Native `${NAME}` references resolve once against the operator environment with workspace values and masks applied, including names excluded from ambient inheritance. Missing references fail preparation before launch. |
|
|
384
|
+
|
|
385
|
+
An explicit credential binding belongs to the server's complete definition and its existing
|
|
386
|
+
admission and approval path ({§functionality-model-projection}, {§capability-admission}).
|
|
387
|
+
Configured definitions and approved live additions use the same resolution; no operator-only
|
|
388
|
+
grant is required. Auto-approval retains its ordinary meaning. Resolved values are never copied
|
|
389
|
+
back into definitions. These rules limit inherited exposure, not the authority of an approved
|
|
390
|
+
program to disclose what it receives. Agent Plugin definitions retain {§mcp-plugin-configuration},
|
|
391
|
+
including their distinct literal-string and placeholder rules.
|
|
392
|
+
|
|
393
|
+
A running server keeps its launch environment: `disable` and `enable` restart it after an
|
|
394
|
+
environment change; there is no automatic restart or stale-configuration state. HTTP servers
|
|
395
|
+
have no local process environment; their native header and authorization references use the
|
|
396
|
+
same workspace-composed operator environment.
|
|
372
397
|
|
|
373
398
|
§mcp-management-actions MCP is one family of workspace Functionality ({§functionality-coordinator}). The
|
|
374
|
-
coordinator publishes `workspace.mcp.list | add | enable | disable | remove`, with `discover`
|
|
399
|
+
coordinator publishes `workspace.mcp.list | add | replace | enable | disable | remove`, with `discover`
|
|
375
400
|
while a registry is configured, and the model's
|
|
376
401
|
`mcp` runtime with the common semantics, durable state, and publication; this module
|
|
377
|
-
registers the family adapter and owns protocol truth beneath it. `available` is the configured service baseline; `add` and `remove` change workspace state ({§mcp-definitions}), and
|
|
402
|
+
registers the family adapter and owns protocol truth beneath it. `available` is the configured service baseline; `add`, `replace` ({§functionality-replacement}), and `remove` change workspace state ({§mcp-definitions}), and
|
|
378
403
|
`discover` searches the MCP Registry ({§mcp-registry-discovery}). `prepare` connects the enabled set, reusing
|
|
379
404
|
unchanged live attachments, and returns one runtime and resource facet per connected server,
|
|
380
405
|
one outcome per alias (`active` with catalog detail — negotiated protocol version, server identity,
|
|
@@ -428,6 +453,28 @@ Resource and prompt failures retain one caught remote diagnostic only through
|
|
|
428
453
|
the executor-owned `PLURNK_EXECS_ERROR_DETAIL_LIMIT` bound; complete causes stay
|
|
429
454
|
in daemon diagnostics. No MCP resource Problem admits an unbounded SDK message.
|
|
430
455
|
|
|
456
|
+
§mcp-preparation-diagnostics **Unavailable preparation reports observations.**
|
|
457
|
+
The `server-unavailable` Problem carries these extensions; `list` projects the
|
|
458
|
+
same published Problem rather than reconstructing it from an earlier catalog.
|
|
459
|
+
|
|
460
|
+
| Field | Observation |
|
|
461
|
+
|---|---|
|
|
462
|
+
| `elapsedMs` | Measured preparation call time, rounded to milliseconds; excludes subsequent adapter cleanup. |
|
|
463
|
+
| `timeoutMs` | Configured connection/catalog timeout; not a claim that negotiation, catalog loading, and cleanup share one total deadline. |
|
|
464
|
+
| `diagnostic` | Bounded cause-chain text, innermost causes first, when available. OAuth error text remains excluded. |
|
|
465
|
+
| `stderr` | Bounded tail of stderr exposed by the public session transport, when nonempty. |
|
|
466
|
+
|
|
467
|
+
Each text field is bounded by `PLURNK_EXECS_ERROR_DETAIL_LIMIT`; zero omits
|
|
468
|
+
text. Redaction precedes truncation and masks known launch-environment values,
|
|
469
|
+
configured arguments/headers, referenced environment values, and URL userinfo.
|
|
470
|
+
This is known-value redaction, not classification of arbitrary server content.
|
|
471
|
+
Stderr capture retains only the bounded tail plus overlap needed to redact a
|
|
472
|
+
value crossing its boundary; it does not replace ordinary daemon stderr.
|
|
473
|
+
Overlap retained for redaction is never displayed when replacements shorten
|
|
474
|
+
the visible diagnostic or stderr window.
|
|
475
|
+
Unavailable process exit codes, signals, and negotiation-probe stderr are
|
|
476
|
+
omitted. Transport closure does not prove a particular process exit.
|
|
477
|
+
|
|
431
478
|
§oauth-continuation A URL-only HTTP definition is sufficient to reach the client
|
|
432
479
|
sign-in handoff. An unauthenticated 401 publishes `authorization-required` with
|
|
433
480
|
an empty `authorization` object, not retryable downtime. No browser is opened,
|
|
@@ -815,15 +862,19 @@ target is an internal contract violation rather than a conservative guess.
|
|
|
815
862
|
## §mcp-conformance Conformance authority
|
|
816
863
|
|
|
817
864
|
Protocol conformance runs through official
|
|
818
|
-
`@modelcontextprotocol/conformance@0.2.0-alpha.
|
|
819
|
-
`2026-07-28` requirement manifest
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
865
|
+
`@modelcontextprotocol/conformance@0.2.0-alpha.12`, whose immutable
|
|
866
|
+
`2026-07-28` requirement manifest names the thirty-nine client scenarios of
|
|
867
|
+
that revision, the SEP-2243 `http-invalid-tool-headers` scenario among them
|
|
868
|
+
({§mcp-header-declarations}). Its required client leg must pass; `not_scored`
|
|
869
|
+
probes remain visible without changing that verdict. The adopted
|
|
870
|
+
`auth/client-credentials-basic` extension runs as a separate named gate
|
|
871
|
+
requiring successful grant and bearer checks; an empty or skipped report never
|
|
872
|
+
passes. Extension scenarios have no dated-spec filter and do not alter the core
|
|
873
|
+
pass rate. The `auth/client-credentials-jwt`, `auth/enterprise-managed-authorization`,
|
|
874
|
+
`auth/dpop`, `auth/dpop-nonce` and `auth/wif-jwt-bearer` extensions are not
|
|
875
|
+
adopted and stay `not_scored`; the JWT arm remains excluded under
|
|
876
|
+
{§oauth-client-credentials}. Atlas and third-party stdio/Streamable HTTP
|
|
877
|
+
servers are composition evidence only.
|
|
827
878
|
|
|
828
879
|
§problems-mcp **MCP Problems.** Every code minted here, its status, and the sentence that is its contract (placeholders in *italics* are filled at emission; a fixed recovery follows its detail).
|
|
829
880
|
|
|
@@ -850,4 +901,6 @@ stdio/Streamable HTTP servers are composition evidence only.
|
|
|
850
901
|
| `server-not-connected` | 409 | MCP server '*name*' is not connected for this workspace. |
|
|
851
902
|
| `completion-parameters-invalid` | 400 | MCP completion requires 'ref' and 'argument' objects. |
|
|
852
903
|
| `server-unavailable` | 502 | Configured MCP server '*name*' is unavailable. |
|
|
904
|
+
| `resource-part-not-found` | 404 | The resource response does not contain the requested part. |
|
|
853
905
|
| `server-redirected` | 502 | MCP endpoint *url* redirected to *location*; plurnk follows no redirect, so the server's url must be the endpoint itself ({§mcp-redirect-refused}). |
|
|
906
|
+
| `tool-header-invalid` | 502 | MCP tool '*name*' declares an invalid x-mcp-header; the tool was not called ({§mcp-header-declarations}). The declaration read is the `declaration` field. |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpExecutor.d.ts","sourceRoot":"","sources":["../src/McpExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EAIf,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EACR,WAAW,EACX,MAAM,EACN,QAAQ,EACR,UAAU,EAEV,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,gBAAgB,EAAE,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"McpExecutor.d.ts","sourceRoot":"","sources":["../src/McpExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EAIf,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EACR,WAAW,EACX,MAAM,EACN,QAAQ,EACR,UAAU,EAEV,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,gBAAgB,EAAE,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,8BAA8B,CAAC;AAIjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAY9C,eAAO,MAAM,aAAa,SAChB,MAAM,WACH,aAAa,GAAG,SAAS,KACnC,MAOF,CAAC;AAGF,eAAO,MAAM,oBAAoB,SACvB,MAAM,WACH,aAAa,GAAG,SAAS,KACnC,kBAKF,CAAC;AAMF,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,cAAc,WAAkB,eAAe,WAAW,MAAM,UAAU,QAAQ,CAAC,OAAO,CAAC,KAAG,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAqBvJ,CAAC;AAwBF,eAAO,MAAM,WAAW,SAAU,MAAM,WAAW,kBAAkB,eAAe,OAAO,iBAAiB,MAAM,KAAG,WAenH,CAAC;AAuBH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,YAAY;;IAoBjD,YACI,QAAQ,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAC5C,UAAU,EAAE,gBAAgB,EAC5B,eAAe,EAAE,MAAM,MAAM,IAAI,EACjC,MAAM,GAAE,OAAO,CAAC,UAAU,CAAM,EAMnC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAOpD;IAEQ,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAK7C;IAED,IAAa,gBAAgB,IAAI,MAAM,CAEtC;IAyBD,YAAY,IAAI,mBAAmB,CAKlC;IAED,IAAI,OAAO,IAAI,aAAa,CAK3B;IAEc,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC,CASvE;IAEK,gBAAgB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAsBzE;IAEK,GAAG,CAAC,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,MAAM,EACN,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,KAAK,GACR,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAmIhC;CACJ"}
|
package/dist/McpExecutor.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { BaseExecutor, ErrorDetail, Results, RuntimeInvocation, } from "@plurnk/plurnk-execs";
|
|
2
2
|
import { formatJsonDocument } from "@plurnk/plurnk-contracts";
|
|
3
3
|
import { resourcePath } from "./McpResources.js";
|
|
4
|
+
import { HeaderDeclarationError } from "./protocolHeaders.js";
|
|
4
5
|
import ContentProjection from "./ContentProjection.js";
|
|
5
6
|
import { toolRegistry as presentTools } from "./ToolPresentation.js";
|
|
6
7
|
import { summaryLine } from "./Summary.js";
|
|
@@ -269,6 +270,10 @@ export default class McpExecutor extends BaseExecutor {
|
|
|
269
270
|
return { status: 200, ...(page === null ? {} : { page }) };
|
|
270
271
|
}
|
|
271
272
|
catch (error) {
|
|
273
|
+
if (error instanceof HeaderDeclarationError) {
|
|
274
|
+
// {§mcp-header-declarations} — refused before any request leg; the declaration is a field.
|
|
275
|
+
return fail("tool-header-invalid", 502, `MCP tool '${target}' declares an invalid x-mcp-header; the tool was not called.`, { tool: target, declaration: error.declaration, retryable: false });
|
|
276
|
+
}
|
|
272
277
|
return fail(signal.aborted ? "cancelled" : "tool-call-failed", signal.aborted ? 499 : 502, signal.aborted
|
|
273
278
|
? "The MCP tool call was cancelled."
|
|
274
279
|
: "The MCP tool call failed.", {
|
package/dist/McpExecutor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpExecutor.js","sourceRoot":"","sources":["../src/McpExecutor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"McpExecutor.js","sourceRoot":"","sources":["../src/McpExecutor.ts"],"names":[],"mappings":"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"}
|
package/dist/Module.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../src/Module.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,iBAAiB,EAAuB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAgG5I,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACpC;AAED,UAAU,kBAAkB;IACxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;
|
|
1
|
+
{"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../src/Module.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,iBAAiB,EAAuB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAgG5I,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACpC;AAED,UAAU,kBAAkB;IACxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AA2GD,eAAO,MAAM,gBAAgB,gBACZ,SAAS,kBAAkB,EAAE,KAC3C,OAAO,CAAC,IAAI,CAUd,CAAC;AAyEF,KAAK,SAAS,GAAG,IAAI,CAAC,eAAe,EACjC,gBAAgB,GAAG,qBAAqB,GAAG,0BAA0B,GAAG,yBAAyB,GAAG,sBAAsB,CAAC,GACzH,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,oBAAoB,CAAC;AAEpE,MAAM,CAAC,OAAO,OAAO,MAAO,YAAW,YAAY,CAAC,SAAS,CAAC;;IAM1D,QAAQ,CAAC,SAAS,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAqBtD,MAAM,CAAC,IAAI,CAAC,OAAO,GAAE,aAAkB,GAAG,MAAM,CAE/C;IAED,OAAO,eAaN;IAEK,KAAK,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CA0D1C;IA4iBD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAGpB;CAeJ"}
|
package/dist/Module.js
CHANGED
|
@@ -54,7 +54,7 @@ const causeOf = (error, type, seen = new Set()) => {
|
|
|
54
54
|
}
|
|
55
55
|
return causeOf(error.cause, type, seen);
|
|
56
56
|
};
|
|
57
|
-
const preparationError = (definition, authorization, cause, closeCause) => {
|
|
57
|
+
const preparationError = (definition, authorization, cause, closeCause, observation = {}) => {
|
|
58
58
|
const completeCause = closeCause === undefined
|
|
59
59
|
? cause
|
|
60
60
|
: new AggregateError([cause, closeCause], `MCP server '${definition.name}' preparation and cleanup failed.`);
|
|
@@ -87,6 +87,7 @@ const preparationError = (definition, authorization, cause, closeCause) => {
|
|
|
87
87
|
server: definition.name,
|
|
88
88
|
type: definition.type,
|
|
89
89
|
retryable: true,
|
|
90
|
+
...observation,
|
|
90
91
|
}, completeCause);
|
|
91
92
|
};
|
|
92
93
|
export const closeConnections = async (connections) => {
|
|
@@ -342,6 +343,7 @@ export default class Module {
|
|
|
342
343
|
}, cause);
|
|
343
344
|
}
|
|
344
345
|
let candidate = connection;
|
|
346
|
+
const started = performance.now();
|
|
345
347
|
try {
|
|
346
348
|
const environment = await this.#workspaceEnvironment(workspaceId);
|
|
347
349
|
this.#assertOpen();
|
|
@@ -385,6 +387,7 @@ export default class Module {
|
|
|
385
387
|
};
|
|
386
388
|
}
|
|
387
389
|
catch (cause) {
|
|
390
|
+
const elapsedMs = Math.round(performance.now() - started);
|
|
388
391
|
if (cause instanceof AuthorizationRequiredError && candidate !== undefined) {
|
|
389
392
|
return {
|
|
390
393
|
...(context === undefined ? {} : { context }),
|
|
@@ -403,7 +406,11 @@ export default class Module {
|
|
|
403
406
|
closeCause = error;
|
|
404
407
|
}
|
|
405
408
|
}
|
|
406
|
-
throw preparationError(definition, definition.type === "streamable-http" ? definition.authorization : undefined, cause, closeCause
|
|
409
|
+
throw preparationError(definition, definition.type === "streamable-http" ? definition.authorization : undefined, cause, closeCause, {
|
|
410
|
+
elapsedMs,
|
|
411
|
+
timeoutMs: connectTimeoutMs(this.#env),
|
|
412
|
+
...(isClientCredentialsRejection(cause) ? {} : candidate?.preparationDiagnostic(cause)),
|
|
413
|
+
});
|
|
407
414
|
}
|
|
408
415
|
}
|
|
409
416
|
// {§functionality-adapter} two-phase preparation: reuse unchanged live
|
package/dist/Module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Module.js","sourceRoot":"","sources":["../src/Module.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,+EAA+E;AAC/E,0DAA0D;AAC1D,8IAA8I;AAC9I,0DAA0D;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAM/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACH,QAAQ,GAeX,MAAM,0BAA0B,CAAC;AAElC,OAAO,gBAAgB,EAAE,EACrB,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EACH,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,cAAc,GAGjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAuB,MAAM,eAAe,CAAC;AACpG,OAAO,WAAW,EAAE,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,KAAK,GAAG,oBAAoB,CAAC;AACnC,MAAM,MAAM,GAAG,KAAK,CAAC;AACrB,MAAM,eAAe,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAW,CAAC;AAClE,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAW,CAAC;AAC5E,MAAM,cAAc,GAAG,EAAE,IAAI,EAAE,wDAAwD,EAAW,CAAC;AACnG,MAAM,WAAW,GAAG,CAChB,UAAgD,EAChD,QAAQ,GAAsB,EAAE,EACtB,EAAE,CAAC,CAAC;IACd,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU;IACV,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC;CAChE,CAAC,CAAC;AA4BH,MAAM,oBAAoB,GAAG,CAAC,UAAsB,EAAgC,EAAE,CAClF,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;AAqB1E,MAAM,iBAAkB,SAAQ,KAAK;IACxB,OAAO,CAAiB;IAEjC,YAAY,OAAuB,EAAE,KAAe;QAChD,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED,MAAM,WAAW,GAAG,CAChB,IAAY,EACZ,MAAc,EACd,MAAc,EACd,UAAU,GAAsC,EAAE,EAClD,KAAe,EACE,EAAE,CAAC,IAAI,iBAAiB,CACzC,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE;IACpD,KAAK,EAAE,gBAAgB;IACvB,GAAG,UAAU;CAChB,CAAC,EACF,KAAK,CACR,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAa,EAAE,CAC3C,KAAK,YAAY,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAElE,4EAA4E;AAC5E,MAAM,OAAO,GAAG,CAAI,KAAc,EAAE,IAA0C,EAAE,IAAI,GAAG,IAAI,GAAG,EAAW,EAAiB,EAAE;IACxH,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACrF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChB,IAAI,KAAK,YAAY,IAAI;QAAE,OAAO,KAAK,CAAC;IACxC,KAAK,MAAM,KAAK,IAAI,KAAK,YAAY,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACtE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;IAC1C,CAAC;IACD,OAAO,OAAO,CAAE,KAA6B,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACrB,UAA+B,EAC/B,aAA2C,EAC3C,KAAc,EACd,UAAoB,EACH,EAAE;IACnB,MAAM,aAAa,GAAG,UAAU,KAAK,SAAS;QAC1C,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,IAAI,cAAc,CAChB,CAAC,KAAK,EAAE,UAAU,CAAC,EACnB,eAAe,UAAU,CAAC,IAAI,mCAAmC,CACpE,CAAC;IACN,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IAC9C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,EACtE,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,aAAa,CAAC,CAAC;IAClE,2EAA2E;IAC3E,kCAAkC;IAClC,IAAI,aAAa,EAAE,IAAI,KAAK,oBAAoB,IAAI,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC;QACtF,OAAO,WAAW,CACd,iCAAiC,EACjC,GAAG,EACH,eAAe,UAAU,CAAC,IAAI,0CAA0C,EACxE;YACI,MAAM,EAAE,UAAU,CAAC,IAAI;YACvB,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,GAAG,CAAC,aAAa,CAAC,MAAM,KAAK,SAAS;gBAClC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC;YACvC,SAAS,EAAE,KAAK;SACnB,EACD,aAAa,CAChB,CAAC;IACN,CAAC;IACD,iFAAiF;IACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IAClD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,WAAW,CACd,mBAAmB,EACnB,GAAG,EACH,QAAQ,CAAC,OAAO,EAChB,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,EACxI,aAAa,CAChB,CAAC;IACN,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC1C,IAAI,IAAI,EAAE,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE,iBAAiB,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1E,OAAO,WAAW,CAAC,8BAA8B,EAAE,GAAG,EAClD,eAAe,UAAU,CAAC,IAAI,uCAAuC,EACrE,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,aAAa,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,WAAW,CACd,oBAAoB,EACpB,GAAG,EACH,0BAA0B,UAAU,CAAC,IAAI,mBAAmB,EAC5D;QACI,MAAM,EAAE,UAAU,CAAC,IAAI;QACvB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,SAAS,EAAE,IAAI;KAClB,EACD,aAAa,CAChB,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACjC,WAA0C,EAC7B,EAAE;IACf,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACpC,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CACpE,CAAC;IACF,MAAM,MAAM,GAAG,OAAO;SACjB,MAAM,CAAC,CAAC,MAAM,EAAmC,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC;SACjF,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;IACvE,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAkC,EAAE,CAChE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IAChE,CAAC,CAAC,KAAgC;IAClC,CAAC,CAAC,IAAI,CAAC;AAEf,MAAM,gBAAgB,GAAG,CACrB,MAAyC,EACzC,OAA0B,EACtB,EAAE;IACN,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,WAAW,CACb,oBAAoB,EACpB,GAAG,EACH,6BAA6B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EACjD,EAAE,SAAS,EAAE,KAAK,EAAE,CACvB,CAAC;IACN,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACnB,MAAyC,EACzC,GAAW,EACL,EAAE;IACR,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,WAAW,CACb,oBAAoB,EACpB,GAAG,EACH,IAAI,GAAG,+BAA+B,EACtC,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CACnC,CAAC;IACN,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,OAA4B,EAA+B,EAAE;IACtF,IAAI,OAAO,CAAC,KAAK,KAAK,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACtG,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;AAChD,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,KAAiB,EAAW,EAAE,CACjE,iBAAiB,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAE1F,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAiB,EAAE;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC7D,MAAM,OAAO,GAAI,KAA4C,CAAC,OAAO;WAC7D,KAAyD,CAAC,MAAM,EAAE,OAAO,CAAC;IAClF,OAAO,OAAO,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,QAAqB,EAAU,EAAE;IACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,OAAO;QACH,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;QAC9B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;QACvD,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM;QACnC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,CAAC,MAAM;QACnD,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM;KAClC,CAAC;AACN,CAAC,CAAC;AAaF,MAAM,CAAC,OAAO,OAAO,MAAM;IACd,IAAI,CAAoB;IACjC,oGAAoG;IACpG,2EAA2E;IAC3E,uCAAuC;IAC9B,SAAS,CAAkB;IAC3B,SAAS,CAAoC;IACtD,qBAAqB,CAAyC;IAC9D,QAAQ,CAAqC;IACpC,qBAAqB,GAAG,IAAI,GAAG,EAA6B,CAAC;IACtE,oBAAoB,CAAoC;IACxD,eAAe,CAAwC;IACvD,MAAM,CAA+B;IACrC,gFAAgF;IAChF,wDAAwD;IAC/C,YAAY,GAAG,IAAI,GAAG,EAA2C,CAAC;IAClE,WAAW,GAAG,IAAI,GAAG,EAAuC,CAAC;IAC7D,QAAQ,GAAG,IAAI,GAAG,EAAgC,CAAC;IACnD,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnC,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,cAAc,GAAG,IAAI,GAAG,EAA0B,CAAC;IACnD,gBAAgB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAChE,OAAO,CAAwC;IAC/C,OAAO,GAAG,KAAK,CAAC;IAChB,SAAS,GAAyB,IAAI,CAAC;IAEvC,MAAM,CAAC,IAAI,CAAC,OAAO,GAAkB,EAAE;QACnC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;IAClD,CAAC;IAED,YAAoB,OAA0B;QAC1C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,QAAQ,GAAoB,IAAI,CAAC;QACrC,IAAI,SAAS,GAA6B,EAAE,CAAC;QAC7C,IAAI,CAAC;YACD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,GAAG,KAAK,IAAI;gBAAE,QAAQ,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,CAAC,KAAK,YAAY,kBAAkB,CAAC;gBAAE,MAAM,KAAK,CAAC;YACxD,SAAS,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAe;QACvB,IAAI,CAAC,QAAQ,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACxE,IAAI,CAAC,qBAAqB,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACzF,IAAI,CAAC,oBAAoB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7D,IAAI,CAAC,eAAe,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAChG,IAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,4BAA4B,CAAC;YAC7C,MAAM,EAAE,MAAM;YACd,cAAc,EAAE,KAAK;YACrB,OAAO,EAAE,oBAAoB;YAC7B,gBAAgB,EAAE,cAAc;YAChC,OAAO,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,0BAA0B,CAAC,EAAE,EAAE;YACrJ,OAAO,EAAE,aAAa,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;YACtD,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzB,SAAS,EAAE;oBACP,MAAM,EAAE,CAAC,OAAO,CAAC;oBACjB,OAAO,EAAE,uGAAuG;iBACnH;gBACD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC;aACvD,CAAC;YACF,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAClD,oBAAoB,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE;YAC5F,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACpC,OAAO,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;YACpD,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;YACpE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;SACnE,CAAC,CAAC;QACH,qDAAqD;QACrD,IAAI,CAAC,oBAAoB,CAAC;YACtB,IAAI,EAAE,2BAA2B;YACjC,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,WAAW,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC5G,YAAY,EAAE,EAAE,IAAI,EAAE,wDAAwD,EAAE;YAChF,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;SACvF,CAAC,CAAC;QACH,IAAI,CAAC,oBAAoB,CAAC;YACtB,IAAI,EAAE,8BAA8B;YACpC,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,WAAW,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC5G,YAAY,EAAE,EAAE,IAAI,EAAE,6DAA6D,EAAE;YACrF,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;SAC1F,CAAC,CAAC;QACH,IAAI,CAAC,oBAAoB,CAAC;YACtB,IAAI,EAAE,wBAAwB;YAC9B,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,WAAW,CAAC;gBACrB,MAAM,EAAE,eAAe;gBACvB,GAAG,EAAE,WAAW;gBAChB,QAAQ,EAAE,WAAW;gBACrB,OAAO,EAAE,WAAW;aACvB,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;YACjC,YAAY,EAAE,WAAW;YACzB,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC;SACjG,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAqC;QAClD,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;QACjC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9D,OAAO,qBAAqB,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE;YAC1F,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;SAChF,CAAC,CAAC;IACP,CAAC;IAED,qFAAqF;IACrF,iFAAiF;IACjF,KAAK,CAAC,iBAAiB,CAAC,QAAqC;QACzD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,sFAAsF;IACtF,KAAK,CAAC,SAAS,CAAC,KAAiC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAY;QACvE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAM,CAAC;QAC1B,IAAI,OAAyB,CAAC;QAC9B,IAAI,CAAC;YACD,OAAO,GAAG,MAAM,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,WAAW,CAAC,iBAAiB,EAAE,GAAG,EAAE,KAAK,YAAY,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,IAAI,WAAW,EAAE;gBACxI,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI;aAC/B,EAAE,KAAK,CAAC,CAAC;QACd,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAA0B,EAAE,CAAC,CAAC;YAC5E,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAClF,UAAU,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE;SAC5E,CAAC,CAAC,CAAC;IACR,CAAC;IAED,yFAAyF;IACzF,KAAK,CAAC,MAAM,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,UAA+B,CAAC;QACpC,IAAI,CAAC;YACD,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,WAAW,CAAC,oBAAoB,EAAE,GAAG,EAAE,uCAAuC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,CAAC,CAAC;QACvH,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QAChF,IAAI,KAAK,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,WAAW,CAAC,gBAAgB,EAAE,GAAG,EAAE,UAAU,KAAK,uCAAuC,UAAU,CAAC,IAAI,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5K,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IACjC,CAAC;IAED,WAAW;QACP,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC/D,CAAC;IAED,cAAc;QACV,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,WAAW,CAAC,WAAmB,EAAE,IAAY;QACzC,OAAO,GAAG,WAAW,IAAI,IAAI,EAAE,CAAC;IACpC,CAAC;IAED,OAAO,CAAC,WAAmB;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACtD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,iBAAiB,WAAW,0CAA0C,CAAC,CAAC;QAC5F,CAAC;QACD,OAAO,MAAM,EAAE,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,WAAwC;QACtD,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACpC,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAChD,CAAC;QACF,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBAChC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvC,SAAS;YACb,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;IAC9F,CAAC;IAED,gGAAgG;IAChG,KAAK,CAAC,kBAAkB,CACpB,WAAmB,EACnB,OAAmB,EACnB,UAA6B,EAC7B,gBAAyB;QAEzB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QACxC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,mGAAmG;QACnG,IAAI,QAAoB,CAAC;QACzB,IAAI,CAAC;YACD,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,WAAW,CAAC,yBAAyB,EAAE,GAAG,EAAE,eAAe,UAAU,CAAC,IAAI,oCAAoC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE;gBAC1K,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK;aAC5C,EAAE,KAAK,CAAC,CAAC;QACd,CAAC;QACD,IAAI,SAAS,GAAG,UAAU,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;YAClE,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,kGAAkG;YAClG,kGAAkG;YAClG,SAAS,KAAK,IAAI,gBAAgB,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACnE,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC;gBAC/D,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,GAAG,KAAK,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChL,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;gBACrD,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACrD,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE;oBACxB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;wBACjB,OAAO,CAAC,KAAK,CAAC,eAAe,UAAU,CAAC,IAAI,2BAA2B,EAAE,KAAK,CAAC,CAAC;wBAChF,OAAO;oBACX,CAAC;oBACD,IAAI,IAAI,CAAC,OAAO;wBAAE,OAAO;oBACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC1E,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC;gBACD,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC7B,OAAO,CAAC,KAAK,CAAC,eAAe,UAAU,CAAC,IAAI,2BAA2B,EAAE,KAAK,CAAC,CAAC;gBACpF,CAAC;aACJ,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,WAAW,CAC5B,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EACzC,SAAS,EACT,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAC/B,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAC5B,CAAC;YACF,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,gBAAgB,EAAE,CAAC;YACvD,OAAO;gBACH,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;gBAC7C,IAAI,EAAE,QAAQ;gBACd,UAAU;gBACV,UAAU,EAAE,SAAS;gBACrB,QAAQ;gBACR,OAAO,EAAE;oBACL,cAAc,EAAE,KAAK;oBACrB,IAAI,EAAE,WAAW,CACb,UAAU,CAAC,IAAI,EACf,oBAAoB,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EACvD,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EACxD,QAAQ,CAAC,OAAO,CAAC,YAAY,CAChC;oBACD,QAAQ;oBACR,YAAY;oBACZ,MAAM,EAAE,IAAI,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC;iBACzE;aACJ,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,KAAK,YAAY,0BAA0B,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBACzE,OAAO;oBACH,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;oBAC7C,IAAI,EAAE,wBAAwB;oBAC9B,UAAU;oBACV,UAAU,EAAE,SAAS;oBACrB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;iBAC3C,CAAC;YACN,CAAC;YACD,IAAI,UAAmB,CAAC;YACxB,IAAI,UAAU,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBACtD,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;gBACxC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,UAAU,GAAG,KAAK,CAAC;gBACvB,CAAC;YACL,CAAC;YACD,MAAM,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QACxI,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,uEAAuE;IACvE,2EAA2E;IAC3E,wCAAwC;IACxC,KAAK,CAAC,QAAQ,CAAC,WAAqC;QAChD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC;QAC7D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAI,WAAW,CAAC,QAAmD,IAAI,IAAI,GAAG,EAAsB,CAAC;QACnH,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,QAAQ,EAAE,CAAC;YACxC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAA2B,CAAC;YACnE,IAAI,cAAc,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC;gBAC7F,MAAM,cAAc,GAAG,oBAAoB,CAAC,UAAU,CAAC,EAAE,cAAc,IAAI,CAAC,CAAC;gBAC7E,IAAI,cAAc,GAAG,CAAC;oBAAE,MAAM,WAAW,CACrC,aAAa,EAAE,GAAG,EAClB,eAAe,IAAI,SAAS,cAAc,qBAAqB,EAC/D,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,CACpD,CAAC;YACN,CAAC;QACL,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAgC,CAAC;QACzD,MAAM,KAAK,GAA0B,EAAE,CAAC;QACxC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAgC,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,GAAG,EAA8B,CAAC;QACxD,IAAI,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;gBAClC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAChD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,OAAO,GAAG,KAAmB,CAAC;gBACpC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;gBAC/B,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACpC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;gBACvE,IACI,QAAQ,KAAK,SAAS;uBACnB,KAAK,KAAK,IAAI;uBACd,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;uBACrD,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;uBAC9B,OAAO,EAAE,QAAQ,KAAK,SAAS,IAAI,OAAO,EAAE,UAAU,KAAK,IAAI,EACpE,CAAC;oBACC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACzB,SAAS;gBACb,CAAC;gBACD,IAAI,UAAsB,CAAC;gBAC3B,MAAM,cAAc,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;gBAC3F,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS;uBACnC,KAAK,KAAK,IAAI;uBACd,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;uBAC9B,OAAO,EAAE,QAAQ,KAAK,SAAS,IAAI,OAAO,EAAE,UAAU,KAAK,IAAI;uBAC/D,cAAc,KAAK,SAAS,CAAC;gBACpC,IAAI,OAAO,EAAE,QAAQ,KAAK,SAAS,IAAI,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;oBACnE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC;oBAC9B,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACvC,CAAC;qBAAM,IAAI,WAAW,EAAE,CAAC;oBACrB,+EAA+E;oBAC/E,0EAA0E;oBAC1E,2EAA2E;oBAC3E,UAAU;oBACV,IAAI,CAAC;wBACD,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;oBACrF,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,IAAI,CAAC,WAAW,EAAE,CAAC;wBACnB,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,iEAAiE,EAAE,KAAK,CAAC,CAAC;wBAC3G,UAAU,GAAG,QAAQ,CAAC;oBAC1B,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,KAAK,IAAI,IAAI,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBACjF,IAAI,CAAC;wBACD,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAClH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,IAAI,CAAC,WAAW,EAAE,CAAC;wBACnB,IAAI,OAAO,KAAK,QAAQ;4BAAE,MAAM,KAAK,CAAC;wBACtC,MAAM,OAAO,GAAG,KAAK,YAAY,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;wBAC5G,UAAU,GAAG,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC5F,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,kBAAkB,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC;oBAC3G,CAAC;oBACD,4EAA4E;oBAC5E,IAAI,UAAU;wBAAE,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;yBAC9C,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa;wBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACvE,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC3B,IAAI,UAAU,KAAK,QAAQ;oBAAE,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;YAClE,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7G,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC1G,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,IAAI,cAAc,CAAC,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,EAAE,+CAA+C,CAAC,CAAC;YACzH,MAAM,KAAK,CAAC;QAChB,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;YACpC,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;gBACtB,KAAK,QAAQ;oBAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBAAC,MAAM;gBAC1G,KAAK,aAAa;oBAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;oBAAC,MAAM;gBACrG,KAAK,wBAAwB;oBAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE;wBAC9C,KAAK,EAAE,wBAAwB;wBAC/B,aAAa,EAAE,UAAU,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,gBAAgB,EAAE;qBACvG,CAAC,CAAC;oBAAC,MAAM;YACd,CAAC;QACL,CAAC;QACD,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtH,OAAO;YACH,QAAQ;YACR,SAAS,EAAE,EAAE;YACb,QAAQ;YACR,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,KAAK,IAAI,EAAE;gBACf,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBACzC,yEAAyE;gBACzE,iFAAiF;gBACjF,KAAK,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,IAAI,SAAS,EAAE,CAAC;oBAC1C,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,YAAY;wBAAE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBAC9E,CAAC;gBACD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;oBACnC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,WAAW,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,WAAW,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;wBACtF,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;oBACnC,CAAC;gBACL,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC7G,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;gBACpG,MAAM,QAAQ,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;qBAClC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;qBAC/D,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC9F,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC;oBAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBAChD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO;wBAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAClE,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBAC3B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC;wBAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC7E,CAAC;gBACD,qFAAqF;gBACrF,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACzC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,WAAW,GAAG,CAAC;wBAAE,SAAS;oBACjD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,WAAW,GAAG,CAAC,MAAM,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC/B,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;2BAChF,KAAK,KAAK,IAAI;wBAAE,SAAS;oBAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC1B,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBAC3B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC;wBAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC7E,CAAC;gBACD,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;oBACpC,IAAI,UAAU,CAAC,IAAI,KAAK,wBAAwB,IAAI,UAAU,CAAC,gBAAgB,KAAK,SAAS;wBAAE,SAAS;oBACxG,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBAChD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACvC,IAAI,OAAO,KAAK,SAAS;wBAAE,SAAS;oBACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE;wBACnB,UAAU,EAAE,UAAU,CAAC,UAAU;wBACjC,GAAG,CAAC,UAAU,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC;wBAC5E,UAAU,EAAE,UAAU,CAAC,UAAU;wBACjC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;qBAC9C,CAAC,CAAC;gBACP,CAAC;gBACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,IAAI,CAAC;wBACD,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;oBACrC,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,MAAM,WAAW,CACb,kCAAkC,EAClC,GAAG,EACH,wFAAwF,EACxF,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAClD,KAAK,CACR,CAAC;oBACN,CAAC;gBACL,CAAC;YACL,CAAC;YACD,KAAK,EAAE,KAAK,IAAI,EAAE;gBACd,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YACtE,CAAC;SACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAiB,EAAE,QAAqC;QACpE,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;QACjC,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC;QAC7F,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,iBAAiB,WAAW,4CAA4C,CAAC,CAAC;QAC9F,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,WAAW,GAAG,CAAC;gBAAE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC1E,CAAC;QACD,MAAM,WAAW,GAAI,QAAmD,IAAI,IAAI,GAAG,EAAsB,CAAC;QAC1G,MAAM,WAAW,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,oBAAoB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9G,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,wGAAwG;IACxG,KAAK,CAAC,WAAW,CAAC,QAAqC,EAAE,MAAyC;QAC9F,gBAAgB,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACxC,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,GAAG;eAClG,CAAC,CAAC,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7I,MAAM,WAAW,CAAC,wBAAwB,EAAE,GAAG,EAAE,wEAAwE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACrJ,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACxE,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,WAAW,CAAC,sBAAsB,EAAE,GAAG,EAAE,eAAe,KAAK,wCAAwC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9J,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB;eAClC,CAAC,UAAU,CAAC,aAAa,KAAK,SAAS,IAAI,UAAU,CAAC,aAAa,CAAC,IAAI,KAAK,OAAO,CAAC;eACrF,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,eAAe,CAAC;eAC5F,CAAC,UAAU,CAAC,aAAa,EAAE,WAAW,KAAK,SAAS,IAAI,UAAU,CAAC,aAAa,CAAC,WAAW,KAAK,WAAW,CAAC,EAAE,CAAC;YACnH,MAAM,WAAW,CAAC,8BAA8B,EAAE,GAAG,EACjD,eAAe,KAAK,0DAA0D,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9G,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,UAAU,KAAK,IAAI;YAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,MAAM,WAAW,CAAC,YAAY,EAAE,GAAG,EAAE,eAAe,KAAK,sCAAsC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtJ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;YACtG,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa;gBAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;YAC9G,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,OAAO,EAAE,CAAC;gBACtE,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC9C,MAAM,WAAW,CAAC,uBAAuB,EAAE,GAAG,EAAE,eAAe,KAAK,sDAAsD,EACtH,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,iEAAiE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACrJ,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,OAAO,GAAyB;gBAClC,GAAG,QAAQ;gBACX,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACpD,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxE,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAChC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzB,QAAQ,CAAC,gBAAgB,EAAE,CAAC;gBAC5B,IAAI,QAAQ,CAAC,UAAU,KAAK,oBAAoB,CAAC,OAAO,CAAC;oBAAE,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7G,CAAC;YACD,IAAI,QAAQ,CAAC,IAAI,KAAK,wBAAwB,EAAE,CAAC;gBAC7C,IAAI,QAAQ,CAAC,gBAAgB,KAAK,SAAS;oBAAE,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;gBACjI,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC;YACrF,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAClD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC;gBAAS,CAAC;YAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAAC,CAAC;IAChD,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,cAAc,CAAC,QAAqC,EAAE,MAAyC;QACjG,gBAAgB,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,oEAAoE;YACpE,yDAAyD;YACzD,MAAM,WAAW,CACb,mBAAmB,EACnB,GAAG,EACH,eAAe,KAAK,uCAAuC,EAC3D,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CACjE,CAAC;QACN,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACxE,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YAC1D,MAAM,WAAW,CACb,uBAAuB,EACvB,GAAG,EACH,eAAe,KAAK,sDAAsD,EAC1E,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,iEAAiE,EAAE,SAAS,EAAE,KAAK,EAAE,CAC9I,CAAC;QACN,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,OAAO,CAAC,UAAU,CAAC,WAAW,KAAK,WAAW;gBAAE,MAAM,WAAW,CACjE,wBAAwB,EAAE,GAAG,EAC7B,uCAAuC,KAAK,2BAA2B,EACvE,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CACjE,CAAC;YACF,OAAO,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QACrC,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,KAAK,IAAuC,EAAE;YAC1D,IAAI,CAAC;gBACD,MAAM,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAC9D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,OAAO,OAAO,CAAC,UAAU,CAAC;gBAC1B,MAAM,WAAW,CACb,wBAAwB,EACxB,GAAG,EACH,uCAAuC,KAAK,2BAA2B,EACvE,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAC9D,KAAK,CACR,CAAC;YACN,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,WAAW,CACrE,uBAAuB,EAAE,GAAG,EAC5B,eAAe,KAAK,sDAAsD,EAC1E,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CACjE,CAAC;YACF,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAClD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,CAAC,UAAU,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;QAC7C,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,WAAmB,EAAE,MAAyC;QAC1E,gBAAgB,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACnE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3D,MAAM,WAAW,CACb,sBAAsB,EACtB,GAAG,EACH,eAAe,MAAM,wCAAwC,EAC7D,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAClD,CAAC;QACN,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,GAAG,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACpC,MAAM,WAAW,CAAC,+BAA+B,EAAE,GAAG,EAAE,uDAAuD,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3I,CAAC;QACD,OAAO,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC;YAClC,GAAG,EAAE,GAAY;YACjB,QAAQ,EAAE,QAAiB;YAC3B,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAgB,EAAE,CAAC;SACrF,CAAC,CAAC;IACP,CAAC;IAED,yEAAyE;IACzE,iDAAiD;IACjD,uBAAuB,CAAC,WAAmB,EAAE,IAAY,EAAE,OAAO,GAAG,CAAC;QAClE,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QAClE,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC,EAAE,KAAK,CAAC,CAAC;QACV,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,eAAe,CAAC,WAAmB,EAAE,IAAY,EAAE,OAAO,GAAG,CAAC;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACnD,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACxB,OAAO;QACX,CAAC;QACD,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACnD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;QAC3F,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACxB,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC1B,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;gBAC7D,OAAO;YACX,CAAC;YACD,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,8BAA8B,EAAE,KAAK,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;IACP,CAAC;IAED,oBAAoB,CAAC,GAAW;QAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,IAAI;QACA,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,KAAK;QACP,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACzE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,CAAC;IAClB,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"Module.js","sourceRoot":"","sources":["../src/Module.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface PreparationDiagnostic {
|
|
2
|
+
readonly diagnostic?: string;
|
|
3
|
+
readonly stderr?: string;
|
|
4
|
+
}
|
|
5
|
+
export default class PreparationDiagnostics {
|
|
6
|
+
#private;
|
|
7
|
+
constructor(values: readonly string[], limit: number);
|
|
8
|
+
write(chunk: Buffer): void;
|
|
9
|
+
describe(cause: unknown): PreparationDiagnostic;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=PreparationDiagnostics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreparationDiagnostics.d.ts","sourceRoot":"","sources":["../src/PreparationDiagnostics.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC5B;AAGD,MAAM,CAAC,OAAO,OAAO,sBAAsB;;IAOvC,YAAY,MAAM,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAInD;IAED,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIzB;IA0BD,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,CAgB9C;CACJ"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { StringDecoder } from "node:string_decoder";
|
|
2
|
+
// {§mcp-preparation-diagnostics} One bounded observation of the public transport.
|
|
3
|
+
export default class PreparationDiagnostics {
|
|
4
|
+
#limit;
|
|
5
|
+
#values;
|
|
6
|
+
#overlap;
|
|
7
|
+
#decoder = new StringDecoder("utf8");
|
|
8
|
+
#tail = "";
|
|
9
|
+
constructor(values, limit) {
|
|
10
|
+
this.#limit = limit;
|
|
11
|
+
this.#values = [...new Set(values.filter((value) => value.length > 0))];
|
|
12
|
+
this.#overlap = this.#values.reduce((longest, value) => Math.max(longest, value.length), 0);
|
|
13
|
+
}
|
|
14
|
+
write(chunk) {
|
|
15
|
+
if (this.#limit === 0)
|
|
16
|
+
return;
|
|
17
|
+
const text = this.#tail + this.#decoder.write(chunk);
|
|
18
|
+
this.#tail = text.slice(-(this.#limit + this.#overlap));
|
|
19
|
+
}
|
|
20
|
+
#redact(text, from = 0, to = text.length) {
|
|
21
|
+
// Overlapping values must be masked together; replacing one first must
|
|
22
|
+
// not expose the remainder of another value that overlaps it. Match in
|
|
23
|
+
// the observation context, but publish only the original display window.
|
|
24
|
+
const spans = this.#values.flatMap((value) => {
|
|
25
|
+
const matches = [];
|
|
26
|
+
for (let start = text.indexOf(value); start !== -1; start = text.indexOf(value, start + 1)) {
|
|
27
|
+
const first = Math.max(from, start);
|
|
28
|
+
const end = Math.min(to, start + value.length);
|
|
29
|
+
if (first < end)
|
|
30
|
+
matches.push({ start: first, end });
|
|
31
|
+
}
|
|
32
|
+
return matches;
|
|
33
|
+
});
|
|
34
|
+
spans.sort((a, b) => a.start - b.start || b.end - a.end);
|
|
35
|
+
let result = "";
|
|
36
|
+
let end = from;
|
|
37
|
+
for (const span of spans) {
|
|
38
|
+
if (span.end <= end)
|
|
39
|
+
continue;
|
|
40
|
+
if (span.start >= end)
|
|
41
|
+
result += `${text.slice(end, span.start)}__redacted__`;
|
|
42
|
+
end = span.end;
|
|
43
|
+
}
|
|
44
|
+
return result + text.slice(end, to);
|
|
45
|
+
}
|
|
46
|
+
describe(cause) {
|
|
47
|
+
if (this.#limit === 0)
|
|
48
|
+
return {};
|
|
49
|
+
const seen = new Set();
|
|
50
|
+
const messages = new Set();
|
|
51
|
+
const visit = (error) => {
|
|
52
|
+
if (!(error instanceof Error) || seen.has(error))
|
|
53
|
+
return;
|
|
54
|
+
seen.add(error);
|
|
55
|
+
if (error instanceof AggregateError)
|
|
56
|
+
for (const inner of error.errors)
|
|
57
|
+
visit(inner);
|
|
58
|
+
visit(error.cause);
|
|
59
|
+
messages.add(error.message);
|
|
60
|
+
};
|
|
61
|
+
visit(cause);
|
|
62
|
+
const text = [...messages].join("; ").slice(0, this.#limit + this.#overlap);
|
|
63
|
+
const diagnostic = this.#redact(text, 0, Math.min(text.length, this.#limit)).slice(0, this.#limit).trim();
|
|
64
|
+
const stderr = this.#redact(this.#tail, Math.max(0, this.#tail.length - this.#limit)).slice(-this.#limit).trim();
|
|
65
|
+
return { ...(diagnostic === "" ? {} : { diagnostic }), ...(stderr === "" ? {} : { stderr }) };
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=PreparationDiagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreparationDiagnostics.js","sourceRoot":"","sources":["../src/PreparationDiagnostics.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Client, type CallToolResult, type CompleteRequest, type CompleteResult, type DiscoverResult, type GetPromptResult, type Progress, type ReadResourceResult, type Tool } from "@modelcontextprotocol/client";
|
|
2
2
|
import { type McpServerDefinition } from "@plurnk/plurnk-contracts";
|
|
3
|
+
import { type PreparationDiagnostic } from "./PreparationDiagnostics.ts";
|
|
3
4
|
import { type ClientInteractionHandler } from "./inputRequired.ts";
|
|
4
5
|
import { type PluginContext } from "./PluginConfiguration.ts";
|
|
5
6
|
export interface ServerCatalog {
|
|
@@ -43,6 +44,7 @@ export default class ServerConnection {
|
|
|
43
44
|
get definition(): McpServerDefinition;
|
|
44
45
|
get activeRequests(): number;
|
|
45
46
|
get authorizationUrl(): string | null;
|
|
47
|
+
preparationDiagnostic(cause: unknown): PreparationDiagnostic;
|
|
46
48
|
connect(): Promise<Client>;
|
|
47
49
|
finishAuthorization(callbackUrl: string): Promise<void>;
|
|
48
50
|
tools(signal?: AbortSignal): Promise<Tool[]>;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAOH,MAAM,EAKN,KAAK,cAAc,EAEnB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEnB,KAAK,eAAe,EAGpB,KAAK,QAAQ,EAEb,KAAK,kBAAkB,EAMvB,KAAK,IAAI,EACZ,MAAM,8BAA8B,CAAC;AAKtC,OAAO,EAEH,KAAK,mBAAmB,EAC3B,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -3,12 +3,14 @@ import { OAuthClientFlowError, OAuthError, UnauthorizedError, SdkHttpError, Prot
|
|
|
3
3
|
import { StdioClientTransport, getDefaultEnvironment, } from "@modelcontextprotocol/client/stdio";
|
|
4
4
|
import { Validator, } from "@plurnk/plurnk-contracts";
|
|
5
5
|
import packageJson from "../package.json" with { type: "json" };
|
|
6
|
+
import { ErrorDetail } from "@plurnk/plurnk-execs";
|
|
7
|
+
import PreparationDiagnostics from "./PreparationDiagnostics.js";
|
|
6
8
|
import { connectTimeoutMs, expandReferences, requestTimeoutMs, retryPacing, } from "./config.js";
|
|
7
9
|
import { readDefinition } from "./definition.js";
|
|
8
10
|
import { INPUT_REQUIRED_MAX_ROUNDS, runInputRequiredRequest, } from "./inputRequired.js";
|
|
9
11
|
import InteractiveOAuthProvider from "./oauth.js";
|
|
10
12
|
import ExtensionChannel from "./extensionChannel.js";
|
|
11
|
-
import { mcpRoutingHeaderValue } from "./protocolHeaders.js";
|
|
13
|
+
import { assertHeaderDeclarations, mcpRoutingHeaderValue } from "./protocolHeaders.js";
|
|
12
14
|
import { MCP_OAUTH_CLIENT_CREDENTIALS_EXTENSION_ID, MCP_PROTOCOL_VERSION, } from "./protocol.js";
|
|
13
15
|
import { staticClientCapabilities } from "./capabilityMatrix.js";
|
|
14
16
|
import Subscriptions from "./subscriptions.js";
|
|
@@ -189,6 +191,7 @@ const openTransport = (definition, environment = getDefaultEnvironment()) => {
|
|
|
189
191
|
...definition.args,
|
|
190
192
|
],
|
|
191
193
|
cwd: definition.cwd,
|
|
194
|
+
stderr: "pipe",
|
|
192
195
|
env: {
|
|
193
196
|
// The SDK merges its defaults even with an explicit env. Node spawn
|
|
194
197
|
// accepts undefined to omit a key; the SDK's narrower type does not.
|
|
@@ -399,6 +402,7 @@ export default class ServerConnection {
|
|
|
399
402
|
#resolved;
|
|
400
403
|
#environ;
|
|
401
404
|
#options;
|
|
405
|
+
#diagnostics;
|
|
402
406
|
#client;
|
|
403
407
|
#pendingAuthorization;
|
|
404
408
|
#openingTransport;
|
|
@@ -411,6 +415,12 @@ export default class ServerConnection {
|
|
|
411
415
|
this.#resolved = resolveDefinition(this.#definition, environ, options.cwd, options.plugin, options.oauthRedirectUrl);
|
|
412
416
|
this.#environ = environ;
|
|
413
417
|
this.#options = options;
|
|
418
|
+
const symbolic = JSON.stringify(definition);
|
|
419
|
+
const references = Object.entries(environ).flatMap(([name, value]) => value !== undefined && symbolic.includes(`\${${name}}`) ? [value] : []);
|
|
420
|
+
const values = this.#resolved.type === "stdio"
|
|
421
|
+
? [...Object.values(options.environment ?? getDefaultEnvironment()), ...Object.values(this.#resolved.env), ...this.#resolved.args]
|
|
422
|
+
: [...Object.values(this.#resolved.headers ?? {}), new URL(this.#resolved.url).username, new URL(this.#resolved.url).password];
|
|
423
|
+
this.#diagnostics = new PreparationDiagnostics([...references, ...values.filter((value) => value !== undefined)], ErrorDetail.limit());
|
|
414
424
|
}
|
|
415
425
|
get definition() {
|
|
416
426
|
return structuredClone(this.#definition);
|
|
@@ -421,6 +431,9 @@ export default class ServerConnection {
|
|
|
421
431
|
get authorizationUrl() {
|
|
422
432
|
return this.#pendingAuthorization?.authorizationUrl ?? null;
|
|
423
433
|
}
|
|
434
|
+
preparationDiagnostic(cause) {
|
|
435
|
+
return this.#diagnostics.describe(cause);
|
|
436
|
+
}
|
|
424
437
|
async #open() {
|
|
425
438
|
if (this.#closed)
|
|
426
439
|
throw new Error(`MCP server '${this.#definition.name}' connection is closed.`);
|
|
@@ -438,6 +451,10 @@ export default class ServerConnection {
|
|
|
438
451
|
if (this.#closed)
|
|
439
452
|
throw new Error(`MCP server '${this.#definition.name}' connection is closed.`);
|
|
440
453
|
transport = openTransport(definition, this.#options.environment);
|
|
454
|
+
if (transport instanceof StdioClientTransport && transport.stderr !== null) {
|
|
455
|
+
transport.stderr.on("data", (chunk) => this.#diagnostics.write(chunk));
|
|
456
|
+
transport.stderr.pipe(process.stderr, { end: false });
|
|
457
|
+
}
|
|
441
458
|
this.#openingTransport = transport;
|
|
442
459
|
return openClient(definition, this.#environ, this.#options, transport);
|
|
443
460
|
})().catch((cause) => {
|
|
@@ -602,11 +619,16 @@ export default class ServerConnection {
|
|
|
602
619
|
async callTool(name, args, signal, onProgress, interact, toolDefinition) {
|
|
603
620
|
return this.#request(async ({ client, subscriptions, extensions }, signal) => {
|
|
604
621
|
const timeout = requestTimeoutMs(this.#environ);
|
|
622
|
+
// {§mcp-header-declarations} — the definition is scanned before either leg; an invalid declaration
|
|
623
|
+
// refuses the call here and nothing reaches the transport.
|
|
624
|
+
const listed = async () => (await this.tools(signal))
|
|
625
|
+
.find((candidate) => candidate.name === name);
|
|
605
626
|
if (serverSupportsTasks(serverCapabilities(client))) {
|
|
606
|
-
const tool = toolDefinition ??
|
|
627
|
+
const tool = toolDefinition ?? await listed();
|
|
607
628
|
if (tool === undefined) {
|
|
608
629
|
throw new Error(`MCP server '${this.#definition.name}' did not list tool '${name}'.`);
|
|
609
630
|
}
|
|
631
|
+
assertHeaderDeclarations(tool);
|
|
610
632
|
return callToolWithTasks({
|
|
611
633
|
server: this.#definition.name,
|
|
612
634
|
name,
|
|
@@ -620,6 +642,14 @@ export default class ServerConnection {
|
|
|
620
642
|
subscriptions,
|
|
621
643
|
});
|
|
622
644
|
}
|
|
645
|
+
// The direct leg never waits on a failed listing ({§mcp-catalog-deadline}): a definition at hand is
|
|
646
|
+
// scanned, and a call with none to scan proceeds as it always has, with no routing headers.
|
|
647
|
+
const tool = toolDefinition ?? await listed().catch(() => {
|
|
648
|
+
signal.throwIfAborted();
|
|
649
|
+
return undefined;
|
|
650
|
+
});
|
|
651
|
+
if (tool !== undefined)
|
|
652
|
+
assertHeaderDeclarations(tool);
|
|
623
653
|
return runInputRequiredRequest({
|
|
624
654
|
server: this.#definition.name,
|
|
625
655
|
operation: "tools/call",
|
|
@@ -628,10 +658,7 @@ export default class ServerConnection {
|
|
|
628
658
|
interact,
|
|
629
659
|
onProgress,
|
|
630
660
|
timeout,
|
|
631
|
-
requestLeg: (params, options) => client.callTool(params, {
|
|
632
|
-
...options,
|
|
633
|
-
...(toolDefinition === undefined ? {} : { toolDefinition }),
|
|
634
|
-
}),
|
|
661
|
+
requestLeg: (params, options) => client.callTool(params, { ...options, ...(tool === undefined ? {} : { toolDefinition: tool }) }),
|
|
635
662
|
});
|
|
636
663
|
}, signal);
|
|
637
664
|
}
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EACH,oBAAoB,EACpB,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,MAAM,EACN,yBAAyB,EACzB,6BAA6B,GAqBhC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACH,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACH,SAAS,GAEZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,WAAW,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,sBAAsD,MAAM,6BAA6B,CAAC;AACjG,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EACH,yBAAyB,EACzB,uBAAuB,GAE1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,wBAAwB,MAAM,YAAY,CAAC;AAClD,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EACH,yCAAyC,EACzC,oBAAoB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,mBAA2C,MAAM,0BAA0B,CAAC;AACnF,OAAO,EACH,iBAAiB,EACjB,mBAAmB,GACtB,MAAM,YAAY,CAAC;AAEpB,4EAA4E;AAC5E,+EAA+E;AAC/E,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAA8C,EAAE,CACtF,MAAM,CAAC,iBAAiB,EAAE,EAAE,YAAY;OACrC,MAAM,CAAC,qBAAqB,EAAgD,CAAC;AAoDpF,MAAM,OAAO,GAAG,CAAC,KAAc,EAAU,EAAE,CACvC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE3D,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAa,EAAE,CAC3C,KAAK,YAAY,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAElE,0EAA0E;AAC1E,sDAAsD;AACtD,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,KAAc,EAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;IACxG,IAAI,OAAO,GAAY,SAAS,CAAC;IACjC,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC/C,IACI,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC;YAC9B,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC;YACrC,oBAAoB,CAAC,UAAU,CAAC,OAAO,CAAC,EAC1C,CAAC;YACC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,GAAG,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC,CAAC;AAEH,6FAA6F;AAC7F,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAW,EAAE,CAChD,CAAC,QAAQ,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAEtH,MAAM,iBAAiB,GAAG,CACtB,MAA2B,EAC3B,OAA0B,EAC1B,UAA8B,EAC9B,MAAsB,EACtB,gBAAyB,EACP,EAAE;IACpB,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,eAAe,UAAU,CAAC,IAAI,GAAG,CAAC;IAChD,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACjF,MAAM,MAAM,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAClF,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC/E,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,sEAAsE,CAAC,CAAC;QAC/I,OAAO;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;YACzC,GAAG;YACH,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC9G,CAAC;IACN,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;IACzG,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjN,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC3B,MAAM,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;IAC/C,MAAM,WAAW,GAAG,CAAC,aAAa,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,gBAAgB,CAAC;IAClH,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,aAAa,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC/F,OAAO;YACH,IAAI,EAAE,iBAAiB;YACvB,GAAG;YACH,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;YAC7C,cAAc,EAAE,WAAW;SAC9B,CAAC;IACN,CAAC;IACD,IAAI,aAAa,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,eAAe,UAAU,CAAC,IAAI,uBAAuB,CAAC;QACpE,MAAM,KAAK,GAAG,gBAAgB,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACpE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC;QACpE,OAAO;YACH,IAAI,EAAE,iBAAiB;YACvB,GAAG;YACH,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;YAC7C,YAAY,EAAE,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,EAAE;YAC1C,cAAc,EAAE,UAAU,aAAa,CAAC,KAAK,EAAE;SAClD,CAAC;IACN,CAAC;IACD,IAAI,aAAa,EAAE,IAAI,KAAK,oBAAoB,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAG,gBAAgB,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,GAAG,KAAK,eAAe,CAAC,CAAC;QAC9F,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,+BAA+B,CAAC,CAAC;QAClF,OAAO;YACH,IAAI,EAAE,iBAAiB;YACvB,GAAG;YACH,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;YAC7C,iBAAiB,EAAE,IAAI;YACvB,YAAY,EAAE,IAAI,yBAAyB,CAAC;gBACxC,QAAQ,EAAE,aAAa,CAAC,QAAQ;gBAChC,YAAY,EAAE,MAAM;gBACpB,mEAAmE;gBACnE,kEAAkE;gBAClE,6CAA6C;gBAC7C,GAAG,CAAC,aAAa,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC;gBACvF,GAAG,CAAC,aAAa,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC;aAC/E,CAAC;YACF,cAAc,EAAE,UAAU,aAAa,CAAC,QAAQ,EAAE;SACrD,CAAC;IACN,CAAC;IACD,oEAAoE;IACpE,yDAAyD;IACzD,MAAM,aAAa,GAAG,IAAI,wBAAwB,CAAC;QAC/C,WAAW,EAAE,WAAY;QACzB,GAAG,CAAC,aAAa,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC;QAC7E,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,mBAAmB,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtI,GAAG,CAAC,aAAa,KAAK,SAAS,IAAI,UAAU,IAAI,aAAa;YAC1D,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,gBAAgB,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,GAAG,KAAK,eAAe,CAAC,EAAE;YACpI,CAAC,CAAC,EAAE,CAAC;KACZ,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,aAAa,KAAK,SAAS,IAAI,mBAAmB,IAAI,aAAa;QACtF,CAAC,CAAC,cAAc,aAAa,CAAC,iBAAiB,EAAE;QACjD,CAAC,CAAC,aAAa,KAAK,SAAS,IAAI,UAAU,IAAI,aAAa;YACxD,CAAC,CAAC,gBAAgB,aAAa,CAAC,QAAQ,EAAE;YAC1C,CAAC,CAAC,eAAe,CAAC;IAC1B,OAAO;QACH,IAAI,EAAE,iBAAiB;QACvB,GAAG;QACH,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;QAC7C,YAAY,EAAE,aAAa;QAC3B,aAAa;QACb,cAAc;KACjB,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAC7D,uGAAuG;AACvG,kEAAkE;AAClE,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAmD,CAAC;AAExF,MAAM,aAAa,GAAG,CAClB,UAA8B,EAC9B,WAAW,GAAsB,qBAAqB,EAAE,EACJ,EAAE;IACtD,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAkC,IAAI,6BAA6B,CAC9E,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EACvB;YACI,GAAG,CAAC,UAAU,CAAC,OAAO,KAAK,SAAS;gBAChC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;YACvD,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS;gBACrC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC;YAChD,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,IAAI,GAAG,OAAO,IAAI,EAAE,IAAI,KAAK,QAAQ;oBACvC,CAAC,CAAC,CAAC,GAAG,EAAE;wBACJ,IAAI,CAAC;4BACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAY,CAAC;wBAC5C,CAAC;wBAAC,MAAM,CAAC;4BACL,OAAO,SAAS,CAAC;wBACrB,CAAC;oBACL,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,SAAS,CAAC;gBAChB,MAAM,OAAO,GAAG,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;oBAC7E,CAAC,CAAC,IAA2D;oBAC7D,CAAC,CAAC,SAAS,CAAC;gBAChB,IAAI,IAAI,GAAG,IAAI,CAAC;gBAChB,IACI,CAAC,WAAW,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;uBAC5E,OAAO,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,QAAQ,EAChD,CAAC;oBACC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBAC3C,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;oBACtE,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC;gBAChC,CAAC;gBACD,8EAA8E;gBAC9E,iFAAiF;gBACjF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACnE,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBAClD,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;oBAC9B,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAClH,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBACzC,MAAM,OAAO,CAAC;gBAClB,CAAC;gBACD,OAAO,QAAQ,CAAC;YACpB,CAAC;SACJ,CACJ,CAAC;QACF,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,mEAAmE;IACnE,oEAAoE;IACpE,yEAAyE;IACzE,oEAAoE;IACpE,qDAAqD;IACrD,OAAO,IAAI,oBAAoB,CAAC;QAC5B,OAAO,EAAE,OAAO,CAAC,QAAQ;QACzB,IAAI,EAAE;YACF,IAAI,GAAG,CAAC,oBAAoB,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ;YACvD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;YACnB,IAAI;YACJ,UAAU,CAAC,OAAO;YAClB,GAAG,UAAU,CAAC,IAAI;SACrB;QACD,GAAG,EAAE,UAAU,CAAC,GAAG;QACnB,MAAM,EAAE,MAAM;QACd,GAAG,EAAE;YACD,oEAAoE;YACpE,qEAAqE;YACrE,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;YAC5F,GAAG,WAAW;YACd,GAAG,UAAU,CAAC,GAAG;SACM;KAC9B,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,mGAAmG;AACnG,oGAAoG;AACpG,oGAAoG;AACpG,qGAAqG;AACrG,oGAAoG;AACpG,6EAA6E;AAC7E,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC7B,CAAC,YAAY,EAAE,OAAO,CAAC;IACvB,CAAC,gBAAgB,EAAE,WAAW,CAAC;IAC/B,CAAC,0BAA0B,EAAE,mBAAmB,CAAC;IACjD,CAAC,cAAc,EAAE,SAAS,CAAC;CAC9B,CAAC,CAAC;AAEH,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IACxC,MAAM,CAAS;IACf,MAAM,CAAS;IACxB,YAAY,MAAc,EAAE,MAAc;QACtC,KAAK,CAAC,GAAG,MAAM,gDAAgD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,mDAAmD,CAAC,CAAC;QAC1I,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CACJ;AAED,MAAM,aAAc,SAAQ,MAAM;IAC9B,4FAA4F;IAC5F,mCAAmC;IAC1B,SAAS,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC3C,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C,IAAI,gBAAgB;QAChB,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;IAIQ,KAAK,CAAC,OAAO,CAAC,GAAG,IAAe;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAwD,CAAC;QAC5E,MAAM,UAAU,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnG,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACD,MAAM,GAAG,MAAO,KAAK,CAAC,OAAgE,CAAC,GAAG,IAAI,CAAC,CAAC;QACpG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,sFAAsF;YACtF,IACI,UAAU,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;mBACxD,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS;mBACjC,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB;gBACxE,MAAM,KAAK,CAAC;YACd,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;QACzF,CAAC;QACD,IAAI,UAAU,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC;QAC/E,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;QACnC,IAAI,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC;QACtE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAI,MAA0C,EAAE,UAAU,CAAC;QACrE,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC;QAC5C,IAAI,IAAI,KAAK,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAED,mGAAmG;AACnG,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAC9B,GAAG,CAAS;IACZ,QAAQ,CAAgB;IAEjC,YAAY,GAAW,EAAE,QAAuB;QAC5C,KAAK,CAAC,gBAAgB,GAAG,cAAc,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,QAAQ,EAAE,gFAAgF,CAAC,CAAC;QACnK,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAED,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IACxC,gBAAgB,CAAqB;IAE9C,YAAY,gBAAyB,EAAE,KAAe;QAClD,KAAK,CAAC,oCAAoC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC7C,CAAC;CACJ;AAUD,MAAM,UAAU,GAAG,KAAK,EACpB,UAA8B,EAC9B,OAA0B,EAC1B,OAAgC,EAChC,SAA+D,EAC5C,EAAE;IACrB,MAAM,OAAO,GAAG,CAAC,KAAa,EAAQ,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;IACnF,MAAM,UAAU,GAAG;QACf,IAAI,EAAE,WAAW,CAAC,IAAI;QACtB,OAAO,EAAE,WAAW,CAAC,OAAO;KAC/B,CAAC;IACF,mEAAmE;IACnE,wEAAwE;IACxE,uEAAuE;IACvE,sDAAsD;IACtD,MAAM,kBAAkB,GAAG,wBAAwB,EAAE,CAAC;IACtD,MAAM,kBAAkB,GAAG;QACvB,GAAG,kBAAkB;QACrB,UAAU,EAAE;YACR,GAAG,kBAAkB,CAAC,UAAU;YAChC,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,iBAAiB,IAAI,UAAU,CAAC,iBAAiB,KAAK,IAAI;gBAC9E,CAAC,CAAC,EAAE,CAAC,yCAAyC,CAAC,EAAE,EAAE,EAAE;gBACrD,CAAC,CAAC,EAAE,CAAC;SACZ;KACyB,CAAC;IAC/B,MAAM,MAAM,GAAG,IAAI,aAAa,CAC5B,UAAU,EACV;QACI,YAAY,EAAE,kBAAkB;QAChC,kBAAkB,EAAE;YAChB,IAAI,EAAE,MAAM;SACf;QACD,aAAa,EAAE;YACX,WAAW,EAAE,KAAK;YAClB,SAAS,EAAE,yBAAyB;SACvC;QACD,WAAW,EAAE;YACT,KAAK,EAAE;gBACH,WAAW,EAAE,KAAK;gBAClB,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;aACpD;YACD,SAAS,EAAE;gBACP,WAAW,EAAE,KAAK;gBAClB,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;aACpD;YACD,OAAO,EAAE;gBACL,WAAW,EAAE,KAAK;gBAClB,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;aACpD;SACJ;QACD,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,iBAAiB;YACrC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,cAAc,EAAE;YAC/C,CAAC,CAAC,EAAE,CAAC;KACZ,CACJ,CAAC;IACF,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAQ,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,CAAC;IACzE,IAAI,CAAC;QACD,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE;YAC5B,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC;SACrC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,OAAO,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,SAAS,YAAY,6BAA6B,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjH,MAAM,KAAK,GAAG,OAAO,IAAI,OAAO,CAAC;QACjC,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,KAAK,iBAAiB;YAC1D,CAAC,CAAC,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE;YAClD,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,YAAqB,CAAC;QAC1B,IAAI,CAAC;YACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,YAAY,GAAG,KAAK,CAAC;QACzB,CAAC;QACD,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,0BAA0B,CAChC,gBAAgB,CAAC,IAAI,EACrB,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CACjF,CAAC;QACN,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB;eAChE,UAAU,CAAC,YAAY,KAAK,SAAS;eACrC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,eAAe,CAAC;eAC7F,KAAK,YAAY,YAAY,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC3D,MAAM,IAAI,0BAA0B,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,cAAc,CACpB,CAAC,KAAK,EAAE,YAAY,CAAC,EACrB,OAAO,oBAAoB,iCAAiC,CAC/D,CAAC;QACN,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,OAAO,oBAAoB,qBAAqB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,8EAA8E;IAC9E,6EAA6E;IAC7E,sEAAsE;IACtE,uEAAuE;IACvE,2EAA2E;IAC3E,MAAM,GAAG,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,MAAM,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC;IAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,GAAG,KAAK,QAAQ,IAAI,UAAU,KAAK,oBAAoB,IAAI,QAAQ,KAAK,SAAS,CAAC;IACjG,MAAM,UAAU,GAAG,MAAM;QACrB,CAAC,CAAC,IAAI,gBAAgB,CAAC,SAAS,EAAE;YAC9B,eAAe,EAAE,oBAAoB;YACrC,UAAU;YACV,kBAAkB;YAClB,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;gBACpD,MAAM,EAAE,yBAAyB;gBACjC,MAAM,EAAE,EAAE,SAAS,EAAE;aACxB,CAAC;YACF,OAAO,EAAE,OAAO,CAAC,qBAAqB;SACzC,CAAC;QACF,CAAC,CAAC,IAAI,CAAC;IACX,OAAO;QACH,MAAM;QACN,SAAS;QACT,UAAU;QACV,eAAe,EAAE,UAAU;QAC3B,aAAa,EAAE,IAAI,aAAa,CAAC,MAAM,EAAE;YACrC,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC;YAClC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC;YAC3B,KAAK,EAAE,mBAAmB,CAAC,QAAQ,EAAE,YAAY,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;YACpF,OAAO,EAAE,OAAO,CAAC,qBAAqB;SACzC,CAAC;KACL,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,WAAW,CAAsB;IACjC,SAAS,CAAqB;IAC9B,QAAQ,CAAoB;IAC5B,QAAQ,CAA0B;IAClC,YAAY,CAAyB;IAC9C,OAAO,CAAkC;IACzC,qBAAqB,CAKP;IACd,iBAAiB,CAAmE;IAC3E,SAAS,GAAG,IAAI,GAAG,EAAiB,CAAC;IACrC,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACxC,QAAQ,CAA4B;IACpC,OAAO,GAAG,KAAK,CAAC;IAEhB,YACI,UAA+B,EAC/B,OAAO,GAAsB,OAAO,CAAC,GAAG,EACxC,OAAO,GAA4B,EAAE;QAErC,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACrH,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CACjE,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO;YAC1C,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,qBAAqB,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAClI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QACnI,IAAI,CAAC,YAAY,GAAG,IAAI,sBAAsB,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;IAC5J,CAAC;IAED,IAAI,UAAU;QACV,OAAO,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC/B,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,qBAAqB,EAAE,gBAAgB,IAAI,IAAI,CAAC;IAChE,CAAC;IAED,qBAAqB,CAAC,KAAc;QAChC,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,KAAK;QACP,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,WAAW,CAAC,IAAI,yBAAyB,CAAC,CAAC;QACjG,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC3C,MAAM,IAAI,0BAA0B,CAAC,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC;QACpD,IAAI,SAA2E,CAAC;QAChF,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;YACxB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;YAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC1E,MAAM,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9E,CAAC;YACD,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,WAAW,CAAC,IAAI,yBAAyB,CAAC,CAAC;YACjG,SAAS,GAAG,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACjE,IAAI,SAAS,YAAY,oBAAoB,IAAI,SAAS,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBACzE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC/E,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1D,CAAC;YACD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACnC,OAAO,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC3E,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC1B,IACI,KAAK,YAAY,0BAA0B;mBACxC,KAAK,CAAC,gBAAgB,KAAK,SAAS;mBACpC,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,iBAAiB;mBACzC,IAAI,CAAC,SAAS,CAAC,aAAa,KAAK,SAAS;mBAC1C,SAAS,YAAY,6BAA6B,EACvD,CAAC;gBACC,IAAI,CAAC,qBAAqB,GAAG;oBACzB,SAAS;oBACT,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa;oBACtC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;oBACxC,mBAAmB,EAAE,IAAI;iBAC5B,CAAC;YACN,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO;gBAAE,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACvD,MAAM,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS;gBAAE,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACjF,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,OAAO;QACT,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,WAAmB;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,WAAW,CAAC,IAAI,uCAAuC,CAAC,CAAC;QACjG,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACvD,IACI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;eACpC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;eAC/B,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,EAC5C,CAAC;YACC,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACtF,CAAC;QACD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,QAAQ,CACV,GAA4D,EAC5D,KAAmB;QAEnB,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,EAAQ,CAAC;QAC9C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACvG,IAAI,CAAC;YACD,MAAM,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YAClC,MAAM,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC;gBACD,OAAO,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC7D,IAAI,aAAa,KAAK,IAAI;oBAAE,MAAM,aAAa,CAAC;gBAChD,MAAM,KAAK,CAAC;YAChB,CAAC;QACL,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACvC,OAAO,CAAC,OAAO,EAAE,CAAC;QACtB,CAAC;IACL,CAAC;IAED,kBAAkB,CAAC,MAAkB,EAAE,KAAc;QACjD,IACI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,iBAAiB;eACtC,IAAI,CAAC,SAAS,CAAC,aAAa,KAAK,SAAS;eAC1C,CAAC,CAAC,MAAM,CAAC,SAAS,YAAY,6BAA6B,CAAC,EACjE,CAAC;YACC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC;QAC7E,IAAI,gBAAgB,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QAChD,IAAI,CAAC,qBAAqB,GAAG;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa;YACtC,gBAAgB,EAAE,gBAAgB,CAAC,IAAI;YACvC,mBAAmB,EAAE,KAAK;SAC7B,CAAC;QACF,OAAO,IAAI,0BAA0B,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,KAAK,CAAI,GAAmE,EAAE,KAAmB;QACnG,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE;YAC9C,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,IAAI,eAAe,EAAE,CAAC;YACtC,yFAAyF;YACzF,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YACzF,IAAI,CAAC;gBACD,OAAO,MAAM,GAAG,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;YACtF,CAAC;oBAAS,CAAC;gBACP,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,CAAC;QACL,CAAC,EAAE,KAAK,CAAC,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAoB;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;YACxC,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,SAAS;gBAAE,OAAO,EAAE,CAAC;YAC/D,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC7D,OAAO,KAAK,CAAC;QACjB,CAAC,EAAE,MAAM,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAoB;QAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;YACxC,oEAAoE;YACpE,sEAAsE;YACtE,yCAAyC;YACzC,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACtD,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACrE,YAAY,CAAC,KAAK,KAAK,SAAS;oBAC5B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACrB,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;gBACzE,YAAY,CAAC,SAAS,KAAK,SAAS;oBAChC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACrB,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;gBACjF,YAAY,CAAC,SAAS,KAAK,SAAS;oBAChC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACrB,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC;yBAC7C,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC;gBACnD,YAAY,CAAC,OAAO,KAAK,SAAS;oBAC9B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACrB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;aAChF,CAAC,CAAC;YACH,OAAO;gBACH,eAAe,EAAE,MAAM,CAAC,4BAA4B,EAAE,IAAI,EAAE;gBAC5D,MAAM,EAAE,MAAM,CAAC,gBAAgB,EAAE;gBACjC,YAAY,EAAE,MAAM,CAAC,eAAe,EAAE;gBACtC,YAAY;gBACZ,KAAK;gBACL,SAAS;gBACT,iBAAiB;gBACjB,OAAO;gBACP,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;aAC5C,CAAC;QACN,CAAC,EAAE,MAAM,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAoB;QAIhC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;YACxC,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;gBACtD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC;YACpD,CAAC;YACD,MAAM,CAAC,SAAS,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACrD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC;qBACnC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;gBACvC,MAAM,CAAC,qBAAqB,CAAC,SAAS,EAAE,OAAO,CAAC;qBAC3C,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC;aAClD,CAAC,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;QAC5C,CAAC,EAAE,MAAM,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAoB;QAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;YACxC,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,SAAS;gBAAE,OAAO,EAAE,CAAC;YACjE,OAAO,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAClE,CAAC,EAAE,MAAM,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CAAC,QAAQ,CACV,IAAY,EACZ,IAA6B,EAC7B,MAAoB,EACpB,UAAyC,EACzC,QAAmC,EACnC,cAAqB;QAErB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE;YACzE,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChD,mGAAmG;YACnG,2DAA2D;YAC3D,MAAM,MAAM,GAAG,KAAK,IAA+B,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;iBAC3E,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAClD,IAAI,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAClD,MAAM,IAAI,GAAG,cAAc,IAAI,MAAM,MAAM,EAAE,CAAC;gBAC9C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,WAAW,CAAC,IAAI,wBAAwB,IAAI,IAAI,CAAC,CAAC;gBAC1F,CAAC;gBACD,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBAC/B,OAAO,iBAAiB,CAAC;oBACrB,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;oBAC7B,IAAI;oBACJ,IAAI;oBACJ,IAAI;oBACJ,MAAM;oBACN,UAAU;oBACV,QAAQ;oBACR,OAAO;oBACP,OAAO,EAAE,UAAU,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;oBAC7G,aAAa;iBAChB,CAAC,CAAC;YACP,CAAC;YACD,oGAAoG;YACpG,4FAA4F;YAC5F,MAAM,IAAI,GAAG,cAAc,IAAI,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBACrD,MAAM,CAAC,cAAc,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC;YACrB,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,KAAK,SAAS;gBAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;YACvD,OAAO,uBAAuB,CAAiB;gBAC3C,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;gBAC7B,SAAS,EAAE,YAAY;gBACvB,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE;gBACzC,MAAM;gBACN,QAAQ;gBACR,UAAU;gBACV,OAAO;gBACP,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAC5C,MAAmC,EACnC,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,EAAE,CACzB;aACrD,CAAC,CAAC;QACP,CAAC,EAAE,MAAM,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CAAC,YAAY,CACd,GAAW,EACX,MAAoB,EACpB,QAAmC;QAEnC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,EAAE;YAC7D,MAAM,aAAa,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAChD,OAAO,uBAAuB,CAAqB;gBAC/C,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;gBAC7B,SAAS,EAAE,gBAAgB;gBAC3B,cAAc,EAAE,EAAE,GAAG,EAAE;gBACvB,MAAM;gBACN,QAAQ;gBACR,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACxC,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CACvD,MAAuC,EACvC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,CACJ;aACzD,CAAC,CAAC;QACP,CAAC,EAAE,MAAM,CAAC,CAAC;IACf,CAAC;IAED,KAAK,CAAC,SAAS,CACX,IAAY,EACZ,IAAwC,EACxC,MAAoB,EACpB,QAAmC;QAEnC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,uBAAuB,CAAkB;YACxF,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;YAC7B,SAAS,EAAE,aAAa;YACxB,cAAc,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE;YAC5E,MAAM;YACN,QAAQ;YACR,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC;YACxC,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAC7C,MAAoC,EACpC,OAAO,CACwC;SACtD,CAAC,EAAE,MAAM,CAAC,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,QAAQ,CACV,MAAiC,EACjC,MAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAC9D,MAAM,EACN,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAC/B,EAAE,MAAM,CAAC,CAAC;IACf,CAAC;IAED,eAAe,CACX,MAAoB,EACpB,UAAyC;QAOzC,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChD,OAAO;YACH,MAAM;YACN,OAAO;YACP,eAAe,EAAE,OAAO;YACxB,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;SAClE,CAAC;IACN,CAAC;IAED,KAAK;QACD,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM;QACR,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,WAAW,CAAC,IAAI,yBAAyB,CAAC,CAAC,CAAC;QAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAChD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC3C,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,MAAM,QAAQ,GAAoB,EAAE,CAAC;QACrC,IAAI,gBAAgB,KAAK,SAAS;YAAE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC;QAC5E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CACrB,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE;gBACvD,8EAA8E;gBAC9E,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC/D,UAAU,EAAE,KAAK,EAAE,CAAC;gBACpB,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;YAC5B,CAAC,EACD,GAAG,EAAE,CAAC,SAAS,CAClB,CAAC,CAAC;QACP,CAAC;QACD,IAAI,OAAO,EAAE,mBAAmB,KAAK,IAAI;YAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACxC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,cAAc,CAAC,QAAQ,EAAE,eAAe,IAAI,CAAC,WAAW,CAAC,IAAI,oBAAoB,CAAC,CAAC;QACjG,CAAC;IACL,CAAC;IAED,aAAa,CAAC,KAAc;QACxB,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACJ"}
|
package/dist/protocol.d.ts
CHANGED
|
@@ -3,6 +3,6 @@ export declare const MCP_SPECIFICATION_COMMIT = "5f5440bb26a62e2cf3440b92da5a667
|
|
|
3
3
|
export declare const MCP_TASKS_EXTENSION_ID = "io.modelcontextprotocol/tasks";
|
|
4
4
|
export declare const MCP_OAUTH_CLIENT_CREDENTIALS_EXTENSION_ID = "io.modelcontextprotocol/oauth-client-credentials";
|
|
5
5
|
export declare const MCP_TASKS_SPECIFICATION_COMMIT = "2c1425d9a288b9b1f489430fe1e00bb392b47e48";
|
|
6
|
-
export declare const MCP_CLIENT_VERSION = "2.
|
|
7
|
-
export declare const MCP_CONFORMANCE_VERSION = "0.2.0-alpha.
|
|
6
|
+
export declare const MCP_CLIENT_VERSION = "2.3.1";
|
|
7
|
+
export declare const MCP_CONFORMANCE_VERSION = "0.2.0-alpha.12";
|
|
8
8
|
//# sourceMappingURL=protocol.d.ts.map
|
package/dist/protocol.js
CHANGED
|
@@ -3,6 +3,6 @@ export const MCP_SPECIFICATION_COMMIT = "5f5440bb26a62e2cf3440b92da5a667efa03b26
|
|
|
3
3
|
export const MCP_TASKS_EXTENSION_ID = "io.modelcontextprotocol/tasks";
|
|
4
4
|
export const MCP_OAUTH_CLIENT_CREDENTIALS_EXTENSION_ID = "io.modelcontextprotocol/oauth-client-credentials";
|
|
5
5
|
export const MCP_TASKS_SPECIFICATION_COMMIT = "2c1425d9a288b9b1f489430fe1e00bb392b47e48";
|
|
6
|
-
export const MCP_CLIENT_VERSION = "2.
|
|
7
|
-
export const MCP_CONFORMANCE_VERSION = "0.2.0-alpha.
|
|
6
|
+
export const MCP_CLIENT_VERSION = "2.3.1";
|
|
7
|
+
export const MCP_CONFORMANCE_VERSION = "0.2.0-alpha.12";
|
|
8
8
|
//# sourceMappingURL=protocol.js.map
|
|
@@ -1,4 +1,19 @@
|
|
|
1
1
|
import type { Tool } from "@modelcontextprotocol/client";
|
|
2
2
|
export declare const mcpRoutingHeaderValue: (value: string) => string;
|
|
3
|
+
interface HeaderDeclaration {
|
|
4
|
+
readonly name: string;
|
|
5
|
+
readonly path: readonly string[];
|
|
6
|
+
readonly type: string;
|
|
7
|
+
}
|
|
8
|
+
/** {§mcp-header-declarations} — a tool definition whose `x-mcp-header` declarations break SEP-2243; it is never called. */
|
|
9
|
+
export declare class HeaderDeclarationError extends Error {
|
|
10
|
+
readonly tool: string;
|
|
11
|
+
readonly declaration: string;
|
|
12
|
+
constructor(tool: string, declaration: string);
|
|
13
|
+
}
|
|
14
|
+
export declare const headerDeclarations: (tool: Tool) => HeaderDeclaration[];
|
|
15
|
+
/** {§mcp-header-declarations} — refuses before any request leg; the definition is scanned, nothing is sent. */
|
|
16
|
+
export declare const assertHeaderDeclarations: (tool: Tool) => void;
|
|
3
17
|
export declare const mcpParamHeaders: (tool: Tool, args: Record<string, unknown>) => Readonly<Record<string, string>>;
|
|
18
|
+
export {};
|
|
4
19
|
//# sourceMappingURL=protocolHeaders.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocolHeaders.d.ts","sourceRoot":"","sources":["../src/protocolHeaders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"protocolHeaders.d.ts","sourceRoot":"","sources":["../src/protocolHeaders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AA6BzD,eAAO,MAAM,qBAAqB,UAAW,MAAM,KAAG,MAE3C,CAAC;AAEZ,UAAU,iBAAiB;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAED,2HAA2H;AAC3H,qBAAa,sBAAuB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,YAAY,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAK5C;CACJ;AAKD,eAAO,MAAM,kBAAkB,SAAU,IAAI,KAAG,iBAAiB,EAuChE,CAAC;AAEF,+GAA+G;AAC/G,eAAO,MAAM,wBAAwB,SAAU,IAAI,KAAG,IAErD,CAAC;AAiBF,eAAO,MAAM,eAAe,SAClB,IAAI,QACJ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC9B,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CASjC,CAAC"}
|
package/dist/protocolHeaders.js
CHANGED
|
@@ -1,7 +1,16 @@
|
|
|
1
1
|
const BASE64_PREFIX = "=?base64?";
|
|
2
2
|
const BASE64_SUFFIX = "?=";
|
|
3
3
|
const RFC9110_TOKEN = /^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;
|
|
4
|
-
|
|
4
|
+
// {§mcp-header-declarations} — the types SEP-2243 admits on a declared property; `number` is not one of them.
|
|
5
|
+
const HEADER_TYPES = new Set(["string", "integer", "boolean"]);
|
|
6
|
+
// {§mcp-header-declarations} — subschema keywords a declaration must not sit under: the chain to a declared
|
|
7
|
+
// property runs through `properties` alone. A map-valued keyword holds schemas as its values.
|
|
8
|
+
const UNREACHABLE_KEYWORDS = [
|
|
9
|
+
"items", "prefixItems", "contains", "additionalProperties", "unevaluatedProperties", "unevaluatedItems",
|
|
10
|
+
"propertyNames", "patternProperties", "dependentSchemas", "oneOf", "anyOf", "allOf", "not", "if", "then", "else",
|
|
11
|
+
"$defs", "definitions",
|
|
12
|
+
];
|
|
13
|
+
const MAP_VALUED_KEYWORDS = new Set(["patternProperties", "dependentSchemas", "$defs", "definitions"]);
|
|
5
14
|
const requiresEncoding = (value) => {
|
|
6
15
|
if (value.length === 0 || value !== value.trim())
|
|
7
16
|
return true;
|
|
@@ -19,39 +28,71 @@ const requiresEncoding = (value) => {
|
|
|
19
28
|
export const mcpRoutingHeaderValue = (value) => requiresEncoding(value)
|
|
20
29
|
? `${BASE64_PREFIX}${Buffer.from(value, "utf8").toString("base64")}${BASE64_SUFFIX}`
|
|
21
30
|
: value;
|
|
22
|
-
|
|
31
|
+
/** {§mcp-header-declarations} — a tool definition whose `x-mcp-header` declarations break SEP-2243; it is never called. */
|
|
32
|
+
export class HeaderDeclarationError extends Error {
|
|
33
|
+
tool;
|
|
34
|
+
declaration;
|
|
35
|
+
constructor(tool, declaration) {
|
|
36
|
+
super(`MCP tool '${tool}' declares an invalid x-mcp-header: ${declaration}`);
|
|
37
|
+
this.name = "HeaderDeclarationError";
|
|
38
|
+
this.tool = tool;
|
|
39
|
+
this.declaration = declaration;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
const pathName = (path) => path.length === 0 ? "(root)" : path.join(".");
|
|
43
|
+
// {§mcp-header-declarations} — every declaration the schema carries, or the first one that breaks the contract.
|
|
44
|
+
export const headerDeclarations = (tool) => {
|
|
23
45
|
const declarations = [];
|
|
24
|
-
const seen = new
|
|
25
|
-
|
|
46
|
+
const seen = new Map();
|
|
47
|
+
function refuse(path, what) {
|
|
48
|
+
throw new HeaderDeclarationError(tool.name, `${pathName(path)}: ${what}`);
|
|
49
|
+
}
|
|
50
|
+
const visit = (schema, path, reachable) => {
|
|
26
51
|
if (schema === null || typeof schema !== "object" || Array.isArray(schema))
|
|
27
52
|
return;
|
|
28
53
|
const node = schema;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
54
|
+
if ("x-mcp-header" in node) {
|
|
55
|
+
if (!reachable || path.length === 0)
|
|
56
|
+
refuse(path, "x-mcp-header outside a chain of properties");
|
|
57
|
+
const header = node["x-mcp-header"];
|
|
58
|
+
if (typeof header !== "string" || header.length === 0)
|
|
59
|
+
refuse(path, "x-mcp-header is not a non-empty string");
|
|
60
|
+
if (!RFC9110_TOKEN.test(header))
|
|
61
|
+
refuse(path, `x-mcp-header '${header}' is not an RFC 9110 token`);
|
|
62
|
+
const type = typeof node.type === "string" ? node.type : undefined;
|
|
63
|
+
if (type === undefined || !HEADER_TYPES.has(type)) {
|
|
64
|
+
refuse(path, `x-mcp-header '${header}' on type ${type ?? "(none)"}; permitted on string, integer and boolean`);
|
|
37
65
|
}
|
|
38
66
|
const folded = header.toLowerCase();
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
seen.
|
|
43
|
-
declarations.push({ name: header, path, type
|
|
67
|
+
const prior = seen.get(folded);
|
|
68
|
+
if (prior !== undefined)
|
|
69
|
+
refuse(path, `x-mcp-header '${header}' repeats '${prior}'`);
|
|
70
|
+
seen.set(folded, header);
|
|
71
|
+
declarations.push({ name: header, path, type });
|
|
44
72
|
}
|
|
45
73
|
const properties = node.properties;
|
|
46
|
-
if (properties
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
74
|
+
if (properties !== null && typeof properties === "object" && !Array.isArray(properties)) {
|
|
75
|
+
for (const [name, child] of Object.entries(properties))
|
|
76
|
+
visit(child, [...path, name], reachable);
|
|
77
|
+
}
|
|
78
|
+
for (const keyword of UNREACHABLE_KEYWORDS) {
|
|
79
|
+
const sub = node[keyword];
|
|
80
|
+
if (sub === undefined)
|
|
81
|
+
continue;
|
|
82
|
+
const branches = Array.isArray(sub)
|
|
83
|
+
? sub
|
|
84
|
+
: sub !== null && typeof sub === "object" && MAP_VALUED_KEYWORDS.has(keyword) ? Object.values(sub) : [sub];
|
|
85
|
+
for (const branch of branches)
|
|
86
|
+
visit(branch, [...path, `<${keyword}>`], false);
|
|
50
87
|
}
|
|
51
88
|
};
|
|
52
|
-
visit(tool.inputSchema, []);
|
|
89
|
+
visit(tool.inputSchema, [], true);
|
|
53
90
|
return declarations;
|
|
54
91
|
};
|
|
92
|
+
/** {§mcp-header-declarations} — refuses before any request leg; the definition is scanned, nothing is sent. */
|
|
93
|
+
export const assertHeaderDeclarations = (tool) => {
|
|
94
|
+
headerDeclarations(tool);
|
|
95
|
+
};
|
|
55
96
|
const valueAt = (root, path) => {
|
|
56
97
|
let value = root;
|
|
57
98
|
for (const segment of path) {
|
|
@@ -66,14 +107,7 @@ const primitiveHeaderValue = (value, type) => {
|
|
|
66
107
|
return typeof value === "string" ? value : undefined;
|
|
67
108
|
if (type === "boolean")
|
|
68
109
|
return typeof value === "boolean" ? String(value) : undefined;
|
|
69
|
-
|
|
70
|
-
return undefined;
|
|
71
|
-
if (Number.isInteger(value) && !Number.isSafeInteger(value))
|
|
72
|
-
return undefined;
|
|
73
|
-
if (type === "integer" && (!Number.isSafeInteger(value) || !Number.isInteger(value))) {
|
|
74
|
-
return undefined;
|
|
75
|
-
}
|
|
76
|
-
return String(value);
|
|
110
|
+
return typeof value === "number" && Number.isSafeInteger(value) ? String(value) : undefined;
|
|
77
111
|
};
|
|
78
112
|
export const mcpParamHeaders = (tool, args) => Object.fromEntries(headerDeclarations(tool).flatMap((declaration) => {
|
|
79
113
|
const value = valueAt(args, declaration.path);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocolHeaders.js","sourceRoot":"","sources":["../src/protocolHeaders.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAAG,WAAW,CAAC;AAClC,MAAM,aAAa,GAAG,IAAI,CAAC;AAC3B,MAAM,aAAa,GAAG,gCAAgC,CAAC;AACvD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"protocolHeaders.js","sourceRoot":"","sources":["../src/protocolHeaders.ts"],"names":[],"mappings":"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"}
|
package/docs/mcp.md
CHANGED
|
@@ -21,7 +21,9 @@ definitions without reading the whole catalog:
|
|
|
21
21
|
|
|
22
22
|
The turn-0 catalog lists every enabled server's Markdown document. `list`
|
|
23
23
|
shows every server, including disabled ones and unavailable ones with their
|
|
24
|
-
exact Problem; `enable` turns a server on.
|
|
24
|
+
exact Problem; `enable` turns a server on. An unavailable server's Problem
|
|
25
|
+
reports elapsed preparation time, its configured timeout, and any bounded,
|
|
26
|
+
redacted connection diagnostic or session stderr available to the host.
|
|
25
27
|
|
|
26
28
|
## discover, then add
|
|
27
29
|
|
|
@@ -48,6 +50,11 @@ unless `cwd` supplies an absolute directory. Use absolute project paths in
|
|
|
48
50
|
arguments. This is file placement, not a sandbox or plugin installation.
|
|
49
51
|
A tool marked `readOnlyHint` runs as a read; other tools retain the `host` effect.
|
|
50
52
|
|
|
53
|
+
To change a definition, use `replace` with the same `{alias, definition}` shape.
|
|
54
|
+
Supply the complete definition; omitted fields are not inherited. It retains
|
|
55
|
+
enabledness and preserves the old server if the replacement is refused. A disabled
|
|
56
|
+
definition is saved without connecting; a new alias is created enabled.
|
|
57
|
+
|
|
51
58
|
## Environment
|
|
52
59
|
|
|
53
60
|
Shared definitions may come from `~/.agents/mcp.json`,
|
|
@@ -66,8 +73,8 @@ environment values, and cwd expand only those two placeholders; HTTP values
|
|
|
66
73
|
and all other placeholder-like text remain literal. `list` identifies the
|
|
67
74
|
source. A complete workspace override replaces these plugin semantics too.
|
|
68
75
|
|
|
69
|
-
A local server
|
|
70
|
-
|
|
76
|
+
A local server's inherited environment excludes Plurnk settings and model
|
|
77
|
+
provider keys; explicit definition bindings are separate.
|
|
71
78
|
Workspace variables set with the `env` family (`env.md`) apply on top at
|
|
72
79
|
every server launch; worker-local overrides do not. A running server keeps its
|
|
73
80
|
launch environment; `disable` then `enable` restarts it with the current
|
|
@@ -77,8 +84,13 @@ workspace values, without a daemon restart.
|
|
|
77
84
|
{"scope": "workspace", "alias": "SERVICE_TOKEN", "definition": {"value": "<credential>"}}
|
|
78
85
|
```
|
|
79
86
|
|
|
80
|
-
Native definitions
|
|
81
|
-
|
|
87
|
+
Native definitions resolve `${NAME}` once against the operator's environment
|
|
88
|
+
with workspace values and masks applied, in arguments, environment values,
|
|
89
|
+
working directories, HTTP headers, and authorization. This includes credentials
|
|
90
|
+
excluded from inheritance: `"env": {"GEMINI_API_KEY": "${GEMINI_API_KEY}"}` in a
|
|
91
|
+
native server definition supplies that key only to that server. The definition
|
|
92
|
+
retains the reference, not a copied credential, and follows ordinary launch
|
|
93
|
+
approval. A missing reference prevents launch.
|
|
82
94
|
Structured authorization secrets must be references, not literal credentials.
|
|
83
95
|
|
|
84
96
|
## Authorization
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plurnk/plurnk-mcp",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"description": "Current Model Context Protocol host module for Plurnk.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"plurnk",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"scripts": {
|
|
54
54
|
"test:lint": "tsc --noEmit",
|
|
55
55
|
"test:unit": "node --conditions=plurnk-dev --env-file=.env.defaults --env-file-if-exists=../plurnk-execs/.env.defaults --test \"src/**/*.test.ts\"",
|
|
56
|
-
"test:intg": "node --conditions=plurnk-dev --env-file=.env.defaults --test \"test/intg/*.test.ts\"",
|
|
56
|
+
"test:intg": "node --conditions=plurnk-dev --env-file=.env.defaults --env-file-if-exists=../plurnk-execs/.env.defaults --test \"test/intg/*.test.ts\"",
|
|
57
57
|
"test": "npm run test:lint && npm run test:unit && npm run test:intg",
|
|
58
58
|
"build:clean": "rm -rf dist",
|
|
59
59
|
"build:dist": "tsc -p tsconfig.build.json",
|
|
@@ -64,19 +64,19 @@
|
|
|
64
64
|
},
|
|
65
65
|
"dependencies": {
|
|
66
66
|
"@plurnk/plurnk-agent-plugins": "^2.0.0",
|
|
67
|
-
"@modelcontextprotocol/client": "2.
|
|
67
|
+
"@modelcontextprotocol/client": "2.3.1",
|
|
68
68
|
"@plurnk/plurnk-meta": "^2.0.0",
|
|
69
|
-
"@plurnk/plurnk-contracts": "^3.0
|
|
69
|
+
"@plurnk/plurnk-contracts": "^3.3.0"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
|
-
"@modelcontextprotocol/conformance": "0.2.0-alpha.
|
|
73
|
-
"@modelcontextprotocol/server": "2.
|
|
74
|
-
"zod": "4.6.
|
|
72
|
+
"@modelcontextprotocol/conformance": "0.2.0-alpha.12",
|
|
73
|
+
"@modelcontextprotocol/server": "2.3.1",
|
|
74
|
+
"zod": "4.6.6"
|
|
75
75
|
},
|
|
76
76
|
"peerDependencies": {
|
|
77
77
|
"@plurnk/plurnk-execs": "^3.0.0",
|
|
78
78
|
"@plurnk/plurnk-modules": "^3.0.0",
|
|
79
79
|
"@plurnk/plurnk-schemes": "^3.0.0"
|
|
80
80
|
},
|
|
81
|
-
"gitHead": "
|
|
81
|
+
"gitHead": "1dcf640b6bad0f5972443dd59354a5fc094acf46"
|
|
82
82
|
}
|