@scotthuang/agent-knock-knock 0.13.11 → 0.13.13
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/CHANGELOG.md +23 -0
- package/README.md +8 -9
- package/dist/src/codex-app-server-interaction-client.d.ts +72 -0
- package/dist/src/codex-app-server-interaction-client.js +311 -0
- package/dist/src/codex-app-server-interaction-client.js.map +1 -0
- package/dist/src/codex-app-server-questionnaire.d.ts +73 -0
- package/dist/src/codex-app-server-questionnaire.js +366 -0
- package/dist/src/codex-app-server-questionnaire.js.map +1 -0
- package/dist/src/codex-app-server-read-client.d.ts +118 -0
- package/dist/src/codex-app-server-read-client.js +300 -0
- package/dist/src/codex-app-server-read-client.js.map +1 -0
- package/dist/src/codex-app-server-transport.d.ts +11 -0
- package/dist/src/codex-app-server-transport.js +47 -0
- package/dist/src/codex-app-server-transport.js.map +1 -0
- package/dist/src/codex-async-question-adapter.d.ts +5 -0
- package/dist/src/codex-async-question-adapter.js +61 -17
- package/dist/src/codex-async-question-adapter.js.map +1 -1
- package/dist/src/codex-fullscreen-composer-proof.d.ts +23 -0
- package/dist/src/codex-fullscreen-composer-proof.js +125 -0
- package/dist/src/codex-fullscreen-composer-proof.js.map +1 -0
- package/dist/src/codex-lifecycle-compatibility.d.ts +5 -0
- package/dist/src/codex-lifecycle-compatibility.js +13 -1
- package/dist/src/codex-lifecycle-compatibility.js.map +1 -1
- package/dist/src/codex-paginated-answer-proof.d.ts +25 -0
- package/dist/src/codex-paginated-answer-proof.js +189 -0
- package/dist/src/codex-paginated-answer-proof.js.map +1 -0
- package/dist/src/codex-paginated-async-answer.d.ts +36 -0
- package/dist/src/codex-paginated-async-answer.js +322 -0
- package/dist/src/codex-paginated-async-answer.js.map +1 -0
- package/dist/src/codex-paginated-async-response.d.ts +21 -0
- package/dist/src/codex-paginated-async-response.js +118 -0
- package/dist/src/codex-paginated-async-response.js.map +1 -0
- package/dist/src/codex-paginated-observation.d.ts +30 -0
- package/dist/src/codex-paginated-observation.js +139 -0
- package/dist/src/codex-paginated-observation.js.map +1 -0
- package/dist/src/codex-paginated-questionnaire-runtime.d.ts +33 -0
- package/dist/src/codex-paginated-questionnaire-runtime.js +157 -0
- package/dist/src/codex-paginated-questionnaire-runtime.js.map +1 -0
- package/dist/src/codex-paginated-task.d.ts +78 -0
- package/dist/src/codex-paginated-task.js +441 -0
- package/dist/src/codex-paginated-task.js.map +1 -0
- package/dist/src/codex-paginated-thread-binding.d.ts +18 -0
- package/dist/src/codex-paginated-thread-binding.js +56 -0
- package/dist/src/codex-paginated-thread-binding.js.map +1 -0
- package/dist/src/codex-paginated-thread-facts.d.ts +11 -0
- package/dist/src/codex-paginated-thread-facts.js +2 -0
- package/dist/src/codex-paginated-thread-facts.js.map +1 -0
- package/dist/src/codex-paginated-watch.d.ts +29 -0
- package/dist/src/codex-paginated-watch.js +107 -0
- package/dist/src/codex-paginated-watch.js.map +1 -0
- package/dist/src/codex-terminal-agent-adapter.js +127 -7
- package/dist/src/codex-terminal-agent-adapter.js.map +1 -1
- package/dist/src/store.d.ts +1 -1
- package/dist/src/store.js +2 -2
- package/dist/src/store.js.map +1 -1
- package/dist/src/terminal-agent-adapter.d.ts +3 -0
- package/dist/src/terminal-agent-adapter.js.map +1 -1
- package/dist/src/terminal-agent-bridge.d.ts +13 -5
- package/dist/src/terminal-agent-bridge.js +28 -103
- package/dist/src/terminal-agent-bridge.js.map +1 -1
- package/dist/src/terminal-approval-fingerprint.d.ts +7 -0
- package/dist/src/terminal-approval-fingerprint.js +107 -0
- package/dist/src/terminal-approval-fingerprint.js.map +1 -0
- package/dist/src/terminal-command-cli-ports.d.ts +1 -0
- package/dist/src/terminal-composer-classifier.js +39 -1
- package/dist/src/terminal-composer-classifier.js.map +1 -1
- package/dist/src/terminal-control-provider.d.ts +6 -2
- package/dist/src/terminal-control-provider.js +4 -4
- package/dist/src/terminal-control-provider.js.map +1 -1
- package/dist/src/terminal-human-explicit-send-cli-adapter.js +22 -15
- package/dist/src/terminal-human-explicit-send-cli-adapter.js.map +1 -1
- package/dist/src/terminal-interaction-core.js +3 -1
- package/dist/src/terminal-interaction-core.js.map +1 -1
- package/dist/src/terminal-interaction-response-bridge.d.ts +21 -1
- package/dist/src/terminal-interaction-response-bridge.js +148 -3
- package/dist/src/terminal-interaction-response-bridge.js.map +1 -1
- package/dist/src/terminal-list-cli-adapter.js +4 -4
- package/dist/src/terminal-list-cli-adapter.js.map +1 -1
- package/dist/src/terminal-list-facts.d.ts +1 -1
- package/dist/src/terminal-list-facts.js +1 -1
- package/dist/src/terminal-list-facts.js.map +1 -1
- package/dist/src/terminal-managed-send-cli-adapter.d.ts +1 -1
- package/dist/src/terminal-managed-send-cli-adapter.js +27 -0
- package/dist/src/terminal-managed-send-cli-adapter.js.map +1 -1
- package/dist/src/terminal-model-control-bridge.d.ts +1 -1
- package/dist/src/terminal-model-control-bridge.js +1 -1
- package/dist/src/terminal-model-control-bridge.js.map +1 -1
- package/dist/src/terminal-model-control-profile.d.ts +3 -1
- package/dist/src/terminal-model-control-profile.js +47 -1
- package/dist/src/terminal-model-control-profile.js.map +1 -1
- package/dist/src/terminal-model-control.js +63 -21
- package/dist/src/terminal-model-control.js.map +1 -1
- package/dist/src/terminal-monitor-decision-policy.d.ts +1 -1
- package/dist/src/terminal-native-inspection-bridge.d.ts +6 -1
- package/dist/src/terminal-native-inspection-bridge.js +126 -79
- package/dist/src/terminal-native-inspection-bridge.js.map +1 -1
- package/dist/src/terminal-questionnaire-adapter.js +20 -16
- package/dist/src/terminal-questionnaire-adapter.js.map +1 -1
- package/dist/src/terminal-runtime-cli-adapter.js +17 -0
- package/dist/src/terminal-runtime-cli-adapter.js.map +1 -1
- package/dist/src/terminal-send-watch-policy.d.ts +38 -0
- package/dist/src/terminal-send-watch-policy.js +79 -0
- package/dist/src/terminal-send-watch-policy.js.map +1 -0
- package/dist/src/terminal-submission-facts.d.ts +1 -1
- package/dist/src/terminal-submission-facts.js +11 -9
- package/dist/src/terminal-submission-facts.js.map +1 -1
- package/dist/src/terminal-watch-cli-adapter.d.ts +9 -1
- package/dist/src/terminal-watch-cli-adapter.js +199 -210
- package/dist/src/terminal-watch-cli-adapter.js.map +1 -1
- package/dist/src/terminal-watch-codec.js +23 -1
- package/dist/src/terminal-watch-codec.js.map +1 -1
- package/dist/src/terminal-watch-interaction-runtime.js +27 -6
- package/dist/src/terminal-watch-interaction-runtime.js.map +1 -1
- package/dist/src/terminal-watch-presentation.d.ts +4 -0
- package/dist/src/terminal-watch-presentation.js +153 -0
- package/dist/src/terminal-watch-presentation.js.map +1 -0
- package/dist/src/terminal-watch-record.d.ts +4 -2
- package/dist/src/terminal-watch-record.js +15 -10
- package/dist/src/terminal-watch-record.js.map +1 -1
- package/dist/src/terminal-watch-service.js +13 -1
- package/dist/src/terminal-watch-service.js.map +1 -1
- package/docs/codex-0.158.0-compatibility.md +129 -0
- package/docs/codex-0.159.0-compatibility.md +150 -0
- package/docs/quickstart-herdr.md +3 -3
- package/docs/quickstart-tmux.md +5 -5
- package/package.json +7 -3
- package/templates/openclaw-skills/agent-knock-knock/SKILL.md +14 -12
|
@@ -32,8 +32,8 @@ export declare function decideTerminalMonitorApproval(input: TerminalMonitorAppr
|
|
|
32
32
|
markPromptCleared: boolean;
|
|
33
33
|
suppressions: TerminalMonitorApprovalSuppression[];
|
|
34
34
|
notification: {
|
|
35
|
-
reason?: undefined;
|
|
36
35
|
kind: string;
|
|
36
|
+
reason?: undefined;
|
|
37
37
|
};
|
|
38
38
|
} | {
|
|
39
39
|
markPromptCleared: boolean;
|
|
@@ -48,6 +48,8 @@ export interface TerminalNativeInspectionBeforeEnterContext {
|
|
|
48
48
|
}
|
|
49
49
|
export interface TerminalNativeInspectionOptions {
|
|
50
50
|
runtime?: TerminalRuntimeIdentity;
|
|
51
|
+
/** Private, in-lock paginated status read; public native inspection stays idle-only. */
|
|
52
|
+
allowWorkingCodexStatus?: true;
|
|
51
53
|
/**
|
|
52
54
|
* Gives the CLI one final in-lock authorization point for its Store binding
|
|
53
55
|
* and action-token fences. The bridge recaptures the exact composer and
|
|
@@ -168,9 +170,12 @@ export declare class TerminalNativeInspectionBridge<TStatus> {
|
|
|
168
170
|
*/
|
|
169
171
|
dismissNativeInspection(agent: ExecutorKind, terminalControl: TerminalControlRef, plan: TerminalNativeInspectionPlan, request: TerminalNativeInspectionObservationRequest, expectedEvidenceFingerprint: string, options?: TerminalNativeInspectionDismissalOptions): Promise<TerminalNativeInspectionDismissalResult>;
|
|
170
172
|
private captureCodexReadyComposer;
|
|
173
|
+
private captureCodexReadyComposerFrame;
|
|
174
|
+
private captureCodexStatusViewportBeforeInput;
|
|
171
175
|
private assertFinalCodexStatusViewport;
|
|
172
176
|
private settleNativeInspectionComposer;
|
|
173
177
|
private revalidateNativeInspectionComposer;
|
|
178
|
+
private captureCodexStyledStatusPopup;
|
|
174
179
|
}
|
|
175
180
|
export declare function assertTerminalMutationCapabilities({ provider, terminal, semantic, transport }: {
|
|
176
181
|
provider: TerminalControlProvider;
|
|
@@ -198,7 +203,7 @@ export declare function exactClaudeComposerFrame(screen: string): {
|
|
|
198
203
|
} | undefined;
|
|
199
204
|
export declare function claudeNativeInspectionTrailingIsFooter(lines: readonly string[]): boolean;
|
|
200
205
|
export declare function stripTerminalEscapeSequences(value: string): string;
|
|
201
|
-
export declare function exactCodexReadyStyledComposerCapture(screen: string): {
|
|
206
|
+
export declare function exactCodexReadyStyledComposerCapture(screen: string, agentVersion?: string): {
|
|
202
207
|
digest: string;
|
|
203
208
|
} | undefined;
|
|
204
209
|
/**
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { isCodexPaginatedVersion } from "./codex-lifecycle-compatibility.js";
|
|
1
2
|
import { createHash } from "node:crypto";
|
|
3
|
+
import { captureCodexFullscreenComposerFrame, exactCodexFullscreenSlashComposerCapture } from "./codex-fullscreen-composer-proof.js";
|
|
2
4
|
import { TerminalControlInputNotSentError } from "./terminal-control-provider.js";
|
|
3
5
|
import { sameTerminalControlIncarnation } from "./terminal-control-ref.js";
|
|
4
6
|
import { CODEX_EXACT_CANDIDATE_GRACE_CAPTURES, CODEX_MULTILINE_SETTLE_POLL_MS, CODEX_MULTILINE_SETTLE_SCROLLBACK_LINES, CODEX_MULTILINE_STABLE_CAPTURES, CODEX_PASTE_ENTER_SETTLE_MS } from "./terminal-text-submission-bridge.js";
|
|
@@ -50,6 +52,14 @@ const CODEX_NATIVE_STATUS_POPUP_BY_PROFILE = {
|
|
|
50
52
|
" /status show current session configuration and token usage",
|
|
51
53
|
" /statusline configure which items appear in the status line"
|
|
52
54
|
],
|
|
55
|
+
"codex-tui-0.158.0": [
|
|
56
|
+
"› /status show current session configuration and token usage",
|
|
57
|
+
" /statusline configure which items appear in the status line"
|
|
58
|
+
],
|
|
59
|
+
"codex-tui-0.159.0": [
|
|
60
|
+
"› /status show current session configuration and token usage",
|
|
61
|
+
" /statusline configure which items appear in the status line"
|
|
62
|
+
],
|
|
53
63
|
"codex-tui-generic-v1": [
|
|
54
64
|
" /status show current session configuration and token usage",
|
|
55
65
|
" /statusline configure which items appear in the status line"
|
|
@@ -72,6 +82,8 @@ const CODEX_NATIVE_STATUS_MIN_VIEWPORT_BY_PROFILE = {
|
|
|
72
82
|
"codex-tui-0.153.4": 80,
|
|
73
83
|
"codex-tui-0.154.0": 80,
|
|
74
84
|
"codex-tui-0.155.1": 80,
|
|
85
|
+
"codex-tui-0.158.0": 80,
|
|
86
|
+
"codex-tui-0.159.0": 80,
|
|
75
87
|
"codex-tui-generic-v1": 80
|
|
76
88
|
};
|
|
77
89
|
const CLAUDE_NATIVE_STATUS_POPUP_BY_PROFILE = {
|
|
@@ -250,6 +262,10 @@ export class TerminalNativeInspectionBridge {
|
|
|
250
262
|
* composer and terminal-identity fences used by native inspection.
|
|
251
263
|
*/
|
|
252
264
|
async submitCodexStatusProbe(terminalControl, agentVersion, options = {}) {
|
|
265
|
+
if (options.allowWorkingCodexStatus && (!isCodexPaginatedVersion(agentVersion) ||
|
|
266
|
+
options.runtime?.agentVersion !== agentVersion)) {
|
|
267
|
+
throw nativeInspectionSubmissionError("not_started", new Error("working native status requires the same exact verified paginated Codex runtime"), "unsupported_profile");
|
|
268
|
+
}
|
|
253
269
|
const adapter = this.registry.require("codex");
|
|
254
270
|
let plan;
|
|
255
271
|
try {
|
|
@@ -268,7 +284,10 @@ export class TerminalNativeInspectionBridge {
|
|
|
268
284
|
catch (error) {
|
|
269
285
|
throw nativeInspectionSubmissionError("not_started", error, "unsupported_profile");
|
|
270
286
|
}
|
|
271
|
-
const result = await this.submitClosedNativeInspection("codex", terminalControl, plan, options, {
|
|
287
|
+
const result = await this.submitClosedNativeInspection("codex", terminalControl, plan, options, {
|
|
288
|
+
requireCodexReadyComposer: true,
|
|
289
|
+
allowWorkingCodexStatus: options.allowWorkingCodexStatus === true
|
|
290
|
+
});
|
|
272
291
|
if (!result.preTextScreenDigest) {
|
|
273
292
|
throw new Error("Codex /status pre-text composer evidence is missing");
|
|
274
293
|
}
|
|
@@ -312,7 +331,7 @@ export class TerminalNativeInspectionBridge {
|
|
|
312
331
|
let preTextScreenDigest;
|
|
313
332
|
if (safety.requireCodexReadyComposer) {
|
|
314
333
|
try {
|
|
315
|
-
const ready = await this.captureCodexReadyComposer(adapter, verifiedForText, plan, options.runtime);
|
|
334
|
+
const ready = await this.captureCodexReadyComposer(adapter, verifiedForText, plan, options.runtime, safety.allowWorkingCodexStatus);
|
|
316
335
|
verifiedForText = ready.terminalControl;
|
|
317
336
|
preTextScreenDigest = ready.screenDigest;
|
|
318
337
|
}
|
|
@@ -336,7 +355,7 @@ export class TerminalNativeInspectionBridge {
|
|
|
336
355
|
}
|
|
337
356
|
let settled;
|
|
338
357
|
try {
|
|
339
|
-
settled = await this.settleNativeInspectionComposer(adapter, terminalControl, plan, options.runtime);
|
|
358
|
+
settled = await this.settleNativeInspectionComposer(adapter, terminalControl, plan, options.runtime, safety.allowWorkingCodexStatus);
|
|
340
359
|
await options.beforeEnter?.({
|
|
341
360
|
agent: adapter.agent,
|
|
342
361
|
terminalControl: settled.terminalControl,
|
|
@@ -354,7 +373,7 @@ export class TerminalNativeInspectionBridge {
|
|
|
354
373
|
// human input while that proof is in flight. Keep the exact composer
|
|
355
374
|
// capture as the final substantive asynchronous evidence before the
|
|
356
375
|
// single Enter attempt.
|
|
357
|
-
settled = await this.revalidateNativeInspectionComposer(adapter, settled.terminalControl, plan, settled.materialization, options.runtime);
|
|
376
|
+
settled = await this.revalidateNativeInspectionComposer(adapter, settled.terminalControl, plan, settled.materialization, options.runtime, safety.allowWorkingCodexStatus);
|
|
358
377
|
}
|
|
359
378
|
catch (error) {
|
|
360
379
|
throw nativeInspectionSubmissionError("text_injected", error, "composer_not_exact");
|
|
@@ -486,7 +505,7 @@ export class TerminalNativeInspectionBridge {
|
|
|
486
505
|
throw new NativeInspectionDismissalError(error instanceof Error ? error.message : String(error), { cause: error });
|
|
487
506
|
}
|
|
488
507
|
}
|
|
489
|
-
async captureCodexReadyComposer(adapter, terminalControl, plan, runtime) {
|
|
508
|
+
async captureCodexReadyComposer(adapter, terminalControl, plan, runtime, allowWorkingCodexStatus = false) {
|
|
490
509
|
if (adapter.agent !== "codex") {
|
|
491
510
|
throw new NativeInspectionDiagnosticError("unsupported_profile", "the closed Codex /status probe requires the Codex adapter");
|
|
492
511
|
}
|
|
@@ -494,71 +513,8 @@ export class TerminalNativeInspectionBridge {
|
|
|
494
513
|
if (minimumViewport === undefined) {
|
|
495
514
|
throw new NativeInspectionDiagnosticError("unsupported_profile", `Codex ${plan.behaviorProfile} has no exact /status viewport profile`);
|
|
496
515
|
}
|
|
497
|
-
const
|
|
498
|
-
|
|
499
|
-
const endpoint = this.terminalProvider.endpoint(verified);
|
|
500
|
-
const viewportInspector = this.terminalProvider.inspectViewport;
|
|
501
|
-
let exactViewport;
|
|
502
|
-
let viewportUnavailableReason = "terminal provider has no exact viewport inspector";
|
|
503
|
-
if (viewportInspector) {
|
|
504
|
-
let viewport;
|
|
505
|
-
try {
|
|
506
|
-
viewport = await viewportInspector.call(this.terminalProvider, endpoint);
|
|
507
|
-
}
|
|
508
|
-
catch (error) {
|
|
509
|
-
throw new NativeInspectionDiagnosticError("viewport_unavailable", `Codex /status viewport inspection failed before terminal input: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
|
|
510
|
-
}
|
|
511
|
-
if (viewport) {
|
|
512
|
-
if (!Number.isSafeInteger(viewport.columns) ||
|
|
513
|
-
viewport.columns <= 0 ||
|
|
514
|
-
!Number.isSafeInteger(viewport.rows) ||
|
|
515
|
-
viewport.rows <= 0) {
|
|
516
|
-
throw new NativeInspectionDiagnosticError("viewport_unavailable", "Codex /status viewport inspector returned invalid geometry");
|
|
517
|
-
}
|
|
518
|
-
exactViewport = viewport.columns;
|
|
519
|
-
}
|
|
520
|
-
else {
|
|
521
|
-
viewportUnavailableReason =
|
|
522
|
-
"terminal provider could not prove exact viewport geometry";
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
const styledScreen = await this.terminalProvider.capture(endpoint, { scrollbackLines: 40, preserveEscapes: true });
|
|
526
|
-
const plainScreen = stripTerminalEscapeSequences(styledScreen);
|
|
527
|
-
const inspection = adapter.inspectScreen({ screen: plainScreen, runtime });
|
|
528
|
-
assertNativeInspectionComposerSafe(inspection, adapter.displayName);
|
|
529
|
-
const composer = exactCodexReadyStyledComposerCapture(styledScreen);
|
|
530
|
-
if (!composer) {
|
|
531
|
-
throw new NativeInspectionDiagnosticError("composer_not_ready", "Codex composer contains non-placeholder input or is not at the exact idle prompt");
|
|
532
|
-
}
|
|
533
|
-
const inferredViewport = inferCodexVisibleViewportColumns(styledScreen);
|
|
534
|
-
const observedViewport = exactViewport ?? inferredViewport;
|
|
535
|
-
if ((observedViewport !== undefined && observedViewport < minimumViewport) ||
|
|
536
|
-
hasTruncatedCodexStatusSessionLine(plainScreen)) {
|
|
537
|
-
throw new NativeInspectionDiagnosticError("viewport_too_narrow", `Codex /status requires a proven viewport of at least ` +
|
|
538
|
-
`${minimumViewport} columns to preserve the complete Session UUID` +
|
|
539
|
-
`${observedViewport === undefined
|
|
540
|
-
? ""
|
|
541
|
-
: `; observed ${observedViewport}`}; widen or zoom the pane before retrying`);
|
|
542
|
-
}
|
|
543
|
-
if (exactViewport === undefined) {
|
|
544
|
-
throw new NativeInspectionDiagnosticError("viewport_unavailable", `Codex /status requires exact terminal viewport geometry before input; ` +
|
|
545
|
-
viewportUnavailableReason +
|
|
546
|
-
`${inferredViewport === undefined
|
|
547
|
-
? ""
|
|
548
|
-
: ` (ANSI fallback estimated ${inferredViewport} columns)`}`);
|
|
549
|
-
}
|
|
550
|
-
const reverified = await this.verifyTerminalIdentity(adapter.agent, verified, runtime);
|
|
551
|
-
if (!sameTerminalControlIdentity(verified, reverified)) {
|
|
552
|
-
throw new NativeInspectionDiagnosticError("identity_unverified", "terminal control identity changed after the Codex pre-text composer capture");
|
|
553
|
-
}
|
|
554
|
-
return {
|
|
555
|
-
terminalControl: reverified,
|
|
556
|
-
screenDigest: nativeInspectionScreenFingerprint(styledScreen),
|
|
557
|
-
composerDigest: composer.digest
|
|
558
|
-
};
|
|
559
|
-
};
|
|
560
|
-
const first = await captureReady(terminalControl);
|
|
561
|
-
const second = await captureReady(first.terminalControl);
|
|
516
|
+
const first = await this.captureCodexReadyComposerFrame(adapter, terminalControl, minimumViewport, runtime, allowWorkingCodexStatus);
|
|
517
|
+
const second = await this.captureCodexReadyComposerFrame(adapter, first.terminalControl, minimumViewport, runtime, allowWorkingCodexStatus);
|
|
562
518
|
if (second.composerDigest !== first.composerDigest) {
|
|
563
519
|
throw new NativeInspectionDiagnosticError("composer_not_ready", "Codex empty composer changed across its stable pre-text captures");
|
|
564
520
|
}
|
|
@@ -567,6 +523,66 @@ export class TerminalNativeInspectionBridge {
|
|
|
567
523
|
screenDigest: second.screenDigest
|
|
568
524
|
};
|
|
569
525
|
}
|
|
526
|
+
async captureCodexReadyComposerFrame(adapter, control, minimumViewport, runtime, allowWorkingCodexStatus = false) {
|
|
527
|
+
const verified = await this.verifyTerminalIdentity(adapter.agent, control, runtime);
|
|
528
|
+
const endpoint = this.terminalProvider.endpoint(verified);
|
|
529
|
+
const { exactViewport, viewportUnavailableReason } = await this.captureCodexStatusViewportBeforeInput(endpoint);
|
|
530
|
+
const styledScreen = await this.terminalProvider.capture(endpoint, { scrollbackLines: 40, preserveEscapes: true });
|
|
531
|
+
const plainScreen = stripTerminalEscapeSequences(styledScreen);
|
|
532
|
+
const inspection = adapter.inspectScreen({ screen: plainScreen, runtime });
|
|
533
|
+
assertNativeInspectionComposerSafe(inspection, adapter.displayName, allowWorkingCodexStatus);
|
|
534
|
+
const composer = exactCodexReadyStyledComposerCapture(styledScreen, runtime?.agentVersion);
|
|
535
|
+
if (!composer) {
|
|
536
|
+
throw new NativeInspectionDiagnosticError("composer_not_ready", "Codex composer contains non-placeholder input or is not at the exact idle prompt");
|
|
537
|
+
}
|
|
538
|
+
const inferredViewport = inferCodexVisibleViewportColumns(styledScreen);
|
|
539
|
+
const observedViewport = exactViewport ?? inferredViewport;
|
|
540
|
+
if ((observedViewport !== undefined && observedViewport < minimumViewport) ||
|
|
541
|
+
hasTruncatedCodexStatusSessionLine(plainScreen)) {
|
|
542
|
+
throw new NativeInspectionDiagnosticError("viewport_too_narrow", `Codex /status requires a proven viewport of at least ` +
|
|
543
|
+
`${minimumViewport} columns to preserve the complete Session UUID` +
|
|
544
|
+
`${observedViewport === undefined
|
|
545
|
+
? ""
|
|
546
|
+
: `; observed ${observedViewport}`}; widen or zoom the pane before retrying`);
|
|
547
|
+
}
|
|
548
|
+
if (exactViewport === undefined) {
|
|
549
|
+
throw new NativeInspectionDiagnosticError("viewport_unavailable", `Codex /status requires exact terminal viewport geometry before input; ` +
|
|
550
|
+
viewportUnavailableReason + `${inferredViewport === undefined
|
|
551
|
+
? "" : ` (ANSI fallback estimated ${inferredViewport} columns)`}`);
|
|
552
|
+
}
|
|
553
|
+
const reverified = await this.verifyTerminalIdentity(adapter.agent, verified, runtime);
|
|
554
|
+
if (!sameTerminalControlIdentity(verified, reverified)) {
|
|
555
|
+
throw new NativeInspectionDiagnosticError("identity_unverified", "terminal control identity changed after the Codex pre-text composer capture");
|
|
556
|
+
}
|
|
557
|
+
return { terminalControl: reverified,
|
|
558
|
+
screenDigest: nativeInspectionScreenFingerprint(styledScreen), composerDigest: composer.digest };
|
|
559
|
+
}
|
|
560
|
+
async captureCodexStatusViewportBeforeInput(endpoint) {
|
|
561
|
+
const inspector = this.terminalProvider.inspectViewport;
|
|
562
|
+
if (!inspector)
|
|
563
|
+
return {
|
|
564
|
+
viewportUnavailableReason: "terminal provider has no exact viewport inspector"
|
|
565
|
+
};
|
|
566
|
+
let viewport;
|
|
567
|
+
try {
|
|
568
|
+
viewport = await inspector.call(this.terminalProvider, endpoint);
|
|
569
|
+
}
|
|
570
|
+
catch (error) {
|
|
571
|
+
throw new NativeInspectionDiagnosticError("viewport_unavailable", `Codex /status viewport inspection failed before terminal input: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
|
|
572
|
+
}
|
|
573
|
+
if (!viewport)
|
|
574
|
+
return {
|
|
575
|
+
viewportUnavailableReason: "terminal provider could not prove exact viewport geometry"
|
|
576
|
+
};
|
|
577
|
+
if (!Number.isSafeInteger(viewport.columns) || viewport.columns <= 0 ||
|
|
578
|
+
!Number.isSafeInteger(viewport.rows) || viewport.rows <= 0) {
|
|
579
|
+
throw new NativeInspectionDiagnosticError("viewport_unavailable", "Codex /status viewport inspector returned invalid geometry");
|
|
580
|
+
}
|
|
581
|
+
return {
|
|
582
|
+
exactViewport: viewport.columns,
|
|
583
|
+
viewportUnavailableReason: "terminal provider has no exact viewport inspector"
|
|
584
|
+
};
|
|
585
|
+
}
|
|
570
586
|
async assertFinalCodexStatusViewport(terminalControl, plan, runtime) {
|
|
571
587
|
const minimumViewport = CODEX_NATIVE_STATUS_MIN_VIEWPORT_BY_PROFILE[plan.behaviorProfile];
|
|
572
588
|
if (minimumViewport === undefined) {
|
|
@@ -601,7 +617,7 @@ export class TerminalNativeInspectionBridge {
|
|
|
601
617
|
}
|
|
602
618
|
return reverified;
|
|
603
619
|
}
|
|
604
|
-
async settleNativeInspectionComposer(adapter, terminalControl, plan, runtime) {
|
|
620
|
+
async settleNativeInspectionComposer(adapter, terminalControl, plan, runtime, allowWorkingCodexStatus = false) {
|
|
605
621
|
const startedAt = this.nowMs();
|
|
606
622
|
const settleTimeoutMs = plan.composer.maximumSettleMs;
|
|
607
623
|
let stableDigest;
|
|
@@ -615,7 +631,7 @@ export class TerminalNativeInspectionBridge {
|
|
|
615
631
|
runtime,
|
|
616
632
|
scrollbackLines: CODEX_MULTILINE_SETTLE_SCROLLBACK_LINES
|
|
617
633
|
});
|
|
618
|
-
assertNativeInspectionComposerSafe(captured.inspection);
|
|
634
|
+
assertNativeInspectionComposerSafe(captured.inspection, adapter.displayName, allowWorkingCodexStatus);
|
|
619
635
|
const materialized = exactNativeInspectionComposerCapture(adapter.agent, captured.screen, plan);
|
|
620
636
|
const now = this.nowMs();
|
|
621
637
|
if (materialized) {
|
|
@@ -638,7 +654,7 @@ export class TerminalNativeInspectionBridge {
|
|
|
638
654
|
stableForMs,
|
|
639
655
|
stableCaptures
|
|
640
656
|
};
|
|
641
|
-
return this.revalidateNativeInspectionComposer(adapter, captured.terminalControl, plan, evidence, runtime);
|
|
657
|
+
return this.revalidateNativeInspectionComposer(adapter, captured.terminalControl, plan, evidence, runtime, allowWorkingCodexStatus);
|
|
642
658
|
}
|
|
643
659
|
}
|
|
644
660
|
else {
|
|
@@ -671,12 +687,12 @@ export class TerminalNativeInspectionBridge {
|
|
|
671
687
|
? `${adapter.displayName} /status slash popup was truncated by the viewport; widen or zoom the pane before retrying manually`
|
|
672
688
|
: `${adapter.displayName} /status composer did not become exact, idle, and stable before the bounded submit deadline`);
|
|
673
689
|
}
|
|
674
|
-
async revalidateNativeInspectionComposer(adapter, terminalControl, plan, expected, runtime) {
|
|
690
|
+
async revalidateNativeInspectionComposer(adapter, terminalControl, plan, expected, runtime, allowWorkingCodexStatus = false) {
|
|
675
691
|
const captured = await this.captureInspection(adapter, terminalControl, {
|
|
676
692
|
runtime,
|
|
677
693
|
scrollbackLines: CODEX_MULTILINE_SETTLE_SCROLLBACK_LINES
|
|
678
694
|
});
|
|
679
|
-
assertNativeInspectionComposerSafe(captured.inspection);
|
|
695
|
+
assertNativeInspectionComposerSafe(captured.inspection, adapter.displayName, allowWorkingCodexStatus);
|
|
680
696
|
const materialized = exactNativeInspectionComposerCapture(adapter.agent, captured.screen, plan);
|
|
681
697
|
if (!materialized ||
|
|
682
698
|
materialized.digest !== expected.digest ||
|
|
@@ -697,13 +713,29 @@ export class TerminalNativeInspectionBridge {
|
|
|
697
713
|
if (!sameTerminalControlIdentity(captured.terminalControl, verifiedImmediatelyBeforeEnter)) {
|
|
698
714
|
throw new NativeInspectionDiagnosticError("identity_unverified", `terminal control identity changed after the final ${adapter.displayName} /status composer capture`);
|
|
699
715
|
}
|
|
716
|
+
const finalScreen = codexFullscreenStatusVersion(plan) !== undefined
|
|
717
|
+
? await this.captureCodexStyledStatusPopup(verifiedImmediatelyBeforeEnter, plan, expected, runtime, allowWorkingCodexStatus)
|
|
718
|
+
: captured.screen;
|
|
700
719
|
return {
|
|
701
720
|
terminalControl: verifiedImmediatelyBeforeEnter,
|
|
702
|
-
screenDigest: nativeInspectionScreenFingerprint(
|
|
721
|
+
screenDigest: nativeInspectionScreenFingerprint(finalScreen),
|
|
703
722
|
evidenceInventory: baseline.evidenceInventory,
|
|
704
723
|
materialization: expected
|
|
705
724
|
};
|
|
706
725
|
}
|
|
726
|
+
async captureCodexStyledStatusPopup(control, plan, expected, runtime, allowWorking = false) {
|
|
727
|
+
const styledScreen = await this.terminalProvider.capture(this.terminalProvider.endpoint(control), { scrollbackLines: CODEX_MULTILINE_SETTLE_SCROLLBACK_LINES, preserveEscapes: true });
|
|
728
|
+
const plainScreen = stripTerminalEscapeSequences(styledScreen);
|
|
729
|
+
const adapter = this.registry.require("codex");
|
|
730
|
+
assertNativeInspectionComposerSafe(adapter.inspectScreen({ screen: plainScreen, runtime }), adapter.displayName, allowWorking);
|
|
731
|
+
const styled = exactCodexFullscreenSlashComposerCapture(styledScreen, plan.command, CODEX_NATIVE_STATUS_POPUP_BY_PROFILE[plan.behaviorProfile] ?? [], true, codexFullscreenStatusVersion(plan));
|
|
732
|
+
const materialized = exactNativeInspectionComposerCapture("codex", plainScreen, plan);
|
|
733
|
+
if (!styled || !materialized || materialized.digest !== expected.digest ||
|
|
734
|
+
materialized.kind !== expected.kind) {
|
|
735
|
+
throw new NativeInspectionDiagnosticError("composer_drift", "Codex fullscreen /status lost its exact styled popup before Enter");
|
|
736
|
+
}
|
|
737
|
+
return styledScreen;
|
|
738
|
+
}
|
|
707
739
|
}
|
|
708
740
|
function sameTerminalControlIdentity(left, right) {
|
|
709
741
|
return sameTerminalControlIncarnation(left, right);
|
|
@@ -794,10 +826,10 @@ function assertClosedNativeInspectionDismissal(plan) {
|
|
|
794
826
|
throw new Error("native inspection has no closed modal dismissal plan");
|
|
795
827
|
}
|
|
796
828
|
}
|
|
797
|
-
function assertNativeInspectionComposerSafe(inspection, displayName = "terminal agent") {
|
|
829
|
+
function assertNativeInspectionComposerSafe(inspection, displayName = "terminal agent", allowWorkingCodexStatus = false) {
|
|
798
830
|
if (inspection.approval.blocked ||
|
|
799
831
|
inspection.activity.state === "awaiting_approval" ||
|
|
800
|
-
inspection.activity.state === "working") {
|
|
832
|
+
inspection.activity.state === "working" && !allowWorkingCodexStatus) {
|
|
801
833
|
throw new NativeInspectionDiagnosticError("composer_not_ready", `${displayName} became busy or blocked while its /status composer was settling`);
|
|
802
834
|
}
|
|
803
835
|
// Codex's generic activity parser deliberately reports a non-empty slash
|
|
@@ -812,6 +844,10 @@ function exactNativeInspectionComposerCapture(agent, screen, plan) {
|
|
|
812
844
|
: exactClaudeNativeInspectionComposerCapture(screen, plan);
|
|
813
845
|
}
|
|
814
846
|
function exactCodexNativeInspectionComposerCapture(screen, plan) {
|
|
847
|
+
if (codexFullscreenStatusVersion(plan) !== undefined) {
|
|
848
|
+
const captured = exactCodexFullscreenSlashComposerCapture(stripTerminalEscapeSequences(screen), plan.command, CODEX_NATIVE_STATUS_POPUP_BY_PROFILE[plan.behaviorProfile], false, codexFullscreenStatusVersion(plan));
|
|
849
|
+
return captured && { digest: captured.digest, kind: "exact_slash_popup" };
|
|
850
|
+
}
|
|
815
851
|
const lines = screen.replace(/\r\n?/gu, "\n").split("\n");
|
|
816
852
|
let currentComposerIndex = -1;
|
|
817
853
|
for (let index = lines.length - 1; index >= 0; index -= 1) {
|
|
@@ -983,7 +1019,14 @@ function bareDigestFromNativeInspectionScreenFingerprint(fingerprint) {
|
|
|
983
1019
|
export function stripTerminalEscapeSequences(value) {
|
|
984
1020
|
return value.replace(/\x1B(?:\[[0-?]*[ -/]*[@-~]|\][^\x07\x1B]*(?:\x07|\x1B\\))/gu, "");
|
|
985
1021
|
}
|
|
986
|
-
export function exactCodexReadyStyledComposerCapture(screen) {
|
|
1022
|
+
export function exactCodexReadyStyledComposerCapture(screen, agentVersion) {
|
|
1023
|
+
if (isCodexPaginatedVersion(agentVersion)) {
|
|
1024
|
+
const frame = captureCodexFullscreenComposerFrame(screen, agentVersion);
|
|
1025
|
+
if (!frame || !frame.hasShortcutFooter ||
|
|
1026
|
+
!["", "Ask Codex to do anything"].includes(frame.composerText)) {
|
|
1027
|
+
return undefined;
|
|
1028
|
+
}
|
|
1029
|
+
}
|
|
987
1030
|
const lines = screen.replace(/\r\n?/gu, "\n").split("\n");
|
|
988
1031
|
while (lines.length > 0 &&
|
|
989
1032
|
stripTerminalEscapeSequences(lines.at(-1) ?? "").trim().length === 0) {
|
|
@@ -1129,4 +1172,8 @@ function codexNativeInspectionComposerMismatchDiagnostic(screen, plan) {
|
|
|
1129
1172
|
? "composer_viewport_truncated"
|
|
1130
1173
|
: "composer_not_exact";
|
|
1131
1174
|
}
|
|
1175
|
+
function codexFullscreenStatusVersion(plan) {
|
|
1176
|
+
const version = /^codex-tui-(.+)$/u.exec(plan.behaviorProfile)?.[1];
|
|
1177
|
+
return isCodexPaginatedVersion(version) ? version : undefined;
|
|
1178
|
+
}
|
|
1132
1179
|
//# sourceMappingURL=terminal-native-inspection-bridge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-native-inspection-bridge.js","sourceRoot":"","sources":["../../src/terminal-native-inspection-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAazC,OAAO,EACL,gCAAgC,EAGjC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,8BAA8B,EAI/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oCAAoC,EACpC,8BAA8B,EAC9B,uCAAuC,EACvC,+BAA+B,EAC/B,2BAA2B,EAC5B,MAAM,sCAAsC,CAAC;AAE9C,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAChC,6CAA6C,CAAC;AAEhD,2EAA2E;AAC3E,+EAA+E;AAC/E,0BAA0B;AAC1B,MAAM,oCAAoC,GAEtC;IACF,mBAAmB,EAAE;QACnB,+DAA+D;KAChE;IACD,mBAAmB,EAAE;QACnB,+DAA+D;KAChE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,mBAAmB,EAAE;QACnB,mEAAmE;QACnE,gEAAgE;KACjE;IACD,sBAAsB,EAAE;QACtB,mEAAmE;QACnE,gEAAgE;KACjE;CACF,CAAC;AACF,0EAA0E;AAC1E,2EAA2E;AAC3E,+EAA+E;AAC/E,6EAA6E;AAC7E,mEAAmE;AACnE,MAAM,2CAA2C,GAE7C;IACF,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,mBAAmB,EAAE,EAAE;IACvB,sBAAsB,EAAE,EAAE;CAC3B,CAAC;AACF,MAAM,qCAAqC,GAEvC;IACF,mCAAmC,EAAE;QACnC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;IACD,mCAAmC,EAAE;QACnC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;IACD,mCAAmC,EAAE;QACnC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;IACD,mCAAmC,EAAE;QACnC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;IACD,mCAAmC,EAAE;QACnC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;IACD,mCAAmC,EAAE;QACnC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;IACD,mCAAmC,EAAE;QACnC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;IACD,mCAAmC,EAAE;QACnC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;IACD,yCAAyC,EAAE;QACzC,wGAAwG;QACxG,iDAAiD;QACjD,8CAA8C;QAC9C,0DAA0D;KAC3D;CACF,CAAC;AACF,MAAM,sCAAsC,GAExC;IACF,mCAAmC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;IACD,mCAAmC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;IACD,mCAAmC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;IACD,mCAAmC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;IACD,mCAAmC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;IACD,mCAAmC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;IACD,mCAAmC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;IACD,mCAAmC,EAAE;QACnC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;IACD,yCAAyC,EAAE;QACzC,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,KAAK;KACvB;CACF,CAAC;AAsBF;;;;;;GAMG;AACH,MAAM,OAAO,+BAAgC,SAAQ,KAAK;IAK7C,KAAK;IAJP,IAAI,GAAG,yCAAyC,CAAC;IACjD,UAAU,CAAU;IAE7B,YACW,KAAsC,EAC/C,OAAe,EACf,OAAO,GAGH,EAAE;QAEN,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;qBAPf,KAAK;QAQd,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,KAAK,KAAK,aAAa,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACvC,CAAC;IAEQ,UAAU,CAAwC;CAC5D;AAED,MAAM,+BAAgC,SAAQ,KAAK;IAEtC,UAAU;IADrB,YACW,UAAgD,EACzD,OAAe,EACf,OAAO,GAAwB,EAAE;QAEjC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;0BAJf,UAAU;QAKnB,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAChD,CAAC;CACF;AAED,4EAA4E;AAC5E,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IAC9C,IAAI,GAAG,wCAAwC,CAAC;IAChD,UAAU,GAAG,IAAI,CAAC;IAE3B,YAAY,OAAe,EAAE,OAAO,GAAwB,EAAE;QAC5D,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;IAC/C,CAAC;CACF;AA4HD;;;GAGG;AACH,MAAM,OAAO,8BAA8B;IAChC,QAAQ,CAA+B;IACvC,gBAAgB,CAA0B;IAEnD,YAAY,OAIX;QACC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAEgB,OAAO,CAA2C;IAE3D,iBAAiB,CACvB,OAA6B,EAC7B,eAAmC,EACnC,OAAO,GAGH,EAAE;QAEN,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IAEO,sBAAsB,CAC5B,KAAmB,EACnB,eAAmC,EACnC,OAAiC;QAEjC,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAEO,KAAK;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,YAAoB;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,sBAAsB,CAC1B,KAAmB,EACnB,eAAmC,EACnC,IAAkC,EAClC,OAAO,GAAoC,EAAE;QAE7C,OAAO,IAAI,CAAC,4BAA4B,CACtC,KAAK,EACL,eAAe,EACf,IAAI,EACJ,OAAO,EACP,EAAE,yBAAyB,EAAE,KAAK,KAAK,OAAO,EAAE,CACjD,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,sBAAsB,CAC1B,eAAmC,EACnC,YAAoB,EACpB,OAAO,GAAoC,EAAE;QAE7C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,IAAkC,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,YAAY,CAAC,CAAC;YACjE,IACE,UAAU,EAAE,MAAM,KAAK,WAAW;gBAClC,UAAU,CAAC,gBAAgB,KAAK,IAAI,EACpC,CAAC;gBACD,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,UAAU,EAAE,MAAM;oBAChB,SAAS,YAAY,yCAAyC,CACjE,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAC5C,EAAE,IAAI,EAAE,QAAQ,EAAE,EAClB,UAAU,CACX,CAAC;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,SAAS,YAAY,wCAAwC,CAC9D,CAAC;YACJ,CAAC;YACD,IAAI,GAAG,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,+BAA+B,CACnC,aAAa,EACb,KAAK,EACL,qBAAqB,CACtB,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,4BAA4B,CACpD,OAAO,EACP,eAAe,EACf,IAAI,EACJ,OAAO,EACP,EAAE,yBAAyB,EAAE,IAAI,EAAE,CACpC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,OAAO;YACL,GAAG,MAAM;YACT,KAAK,EAAE,OAAO;YACd,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,yBAAyB,EACvB,+CAA+C,CAC7C,MAAM,CAAC,oBAAoB,CAC5B;YACH,0BAA0B,EAAE,uCAAuC;SACpE,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,4BAA4B,CACxC,KAAmB,EACnB,eAAmC,EACnC,IAAkC,EAClC,OAAwC,EACxC,MAAM,GAA4C,EAAE;QAIpD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,gCAAgC,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;YACjE,kCAAkC,CAAC;gBACjC,QAAQ,EAAE,IAAI,CAAC,gBAAgB;gBAC/B,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAC;gBACzD,QAAQ,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;gBACxC,SAAS,EAAE;oBACT,4BAA4B;oBAC5B,gBAAgB;oBAChB,eAAe;oBACf,cAAc;oBACd,GAAG,CAAC,MAAM,CAAC,yBAAyB;wBAClC,CAAC,CAAC,CAAC,cAAuB,CAAC;wBAC3B,CAAC,CAAC,EAAE,CAAC;iBACR;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,+BAA+B,CACnC,aAAa,EACb,KAAK,EACL,wBAAwB,CACzB,CAAC;QACJ,CAAC;QAED,IAAI,eAAmC,CAAC;QACxC,IAAI,CAAC;YACH,eAAe,GAAG,MAAM,IAAI,CAAC,sBAAsB,CACjD,OAAO,CAAC,KAAK,EACb,eAAe,EACf,OAAO,CAAC,OAAO,CAChB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,+BAA+B,CACnC,aAAa,EACb,KAAK,EACL,qBAAqB,CACtB,CAAC;QACJ,CAAC;QAED,IAAI,mBAAuC,CAAC;QAC5C,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAChD,OAAO,EACP,eAAe,EACf,IAAI,EACJ,OAAO,CAAC,OAAO,CAChB,CAAC;gBACF,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;gBACxC,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,+BAA+B,CACnC,aAAa,EACb,KAAK,EACL,oBAAoB,CACrB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACxD,MAAM,IAAI,gCAAgC,CACxC,GAAG,OAAO,CAAC,WAAW,6CAA6C,CACpE,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAClC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,eAAe,CAAC,EAC/C,IAAI,CAAC,OAAO,CACb,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gCAAgC,EAAE,CAAC;gBACtD,MAAM,+BAA+B,CACnC,aAAa,EACb,KAAK,EACL,wBAAwB,CACzB,CAAC;YACJ,CAAC;YACD,wEAAwE;YACxE,qEAAqE;YACrE,MAAM,+BAA+B,CACnC,eAAe,EACf,KAAK,EACL,wBAAwB,CACzB,CAAC;QACJ,CAAC;QAED,IAAI,OAMH,CAAC;QACF,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACjD,OAAO,EACP,eAAe,EACf,IAAI,EACJ,OAAO,CAAC,OAAO,CAChB,CAAC;YACF,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,IAAI;gBACJ,oBAAoB,EAAE,OAAO,CAAC,YAAY;gBAC1C,eAAe,EAAE,OAAO,CAAC,eAAe;aACzC,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;gBACrC,OAAO,GAAG;oBACR,GAAG,OAAO;oBACV,eAAe,EAAE,MAAM,IAAI,CAAC,8BAA8B,CACxD,OAAO,CAAC,eAAe,EACvB,IAAI,EACJ,OAAO,CAAC,OAAO,CAChB;iBACF,CAAC;YACJ,CAAC;YACD,qEAAqE;YACrE,qEAAqE;YACrE,oEAAoE;YACpE,wBAAwB;YACxB,OAAO,GAAG,MAAM,IAAI,CAAC,kCAAkC,CACrD,OAAO,EACP,OAAO,CAAC,eAAe,EACvB,IAAI,EACJ,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,OAAO,CAChB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,+BAA+B,CACnC,eAAe,EACf,KAAK,EACL,oBAAoB,CACrB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,wEAAwE;YACxE,+DAA+D;YAC/D,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAClC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EACvD,CAAC,KAAK,CAAC,CACR,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,+BAA+B,CACnC,iBAAiB,EACjB,KAAK,EACL,iBAAiB,CAClB,CAAC;QACJ,CAAC;QAED,OAAO;YACL,KAAK,EAAE,kBAAkB;YACzB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,oBAAoB,EAAE,OAAO,CAAC,YAAY;YAC1C,yBAAyB,EAAE,OAAO,CAAC,iBAAiB;YACpD,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,UAAU,EAAE,CAAC;YACb,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,KAAmB,EACnB,eAAmC,EACnC,OAAmD,EACnD,OAAO,GAGH,EAAE;QAEN,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,GAAG,OAAO,CAAC,WAAW,iDAAiD,CACxE,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE;YACtE,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,eAAe,EAAE,OAAO,CAAC,eAAe;SACzC,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,iCAAiC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxE,MAAM,kBAAkB,GAAG,OAAO,CAAC,uBAAuB,CAAC;YACzD,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,yBAAyB,EAAE,OAAO,CAAC,yBAAyB;YAC5D,yBAAyB,EAAE,OAAO,CAAC,yBAAyB;YAC5D,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;YACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC,CAAC;QACH,MAAM,WAAW,GACf,OAAO,CAAC,KAAK,KAAK,QAAQ;YAC1B,OAAO,CAAC,OAAO,EAAE,0BAA0B,KAAK,IAAI;YACpD,kBAAkB,CAAC,MAAM,KAAK,UAAU;YACxC,kBAAkB,CAAC,QAAQ,KAAK,qBAAqB;YACnD,CAAC,CAAC;gBACE,GAAG,kBAAkB;gBACrB,QAAQ,EAAE,6CAA6C;aACxD;YACH,CAAC,CAAC,kBAAkB,CAAC;QACzB,OAAO;YACL,eAAe,EAAE,QAAQ,CAAC,eAAe;YACzC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CACvC,OAAO,EACP,QAAQ,CAAC,eAAe,EACxB,QAAQ,CAAC,UAAU,EACnB,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CACtD;YACD,YAAY;YACZ,WAAW;SACZ,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,uBAAuB,CAC3B,KAAmB,EACnB,eAAmC,EACnC,IAAkC,EAClC,OAAmD,EACnD,2BAAmC,EACnC,OAAO,GAA6C,EAAE;QAEtD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,gCAAgC,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;YACjE,qCAAqC,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,8BAA8B,CACtC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;QAED,MAAM,iBAAiB,GAAG,KAAK,EAC7B,OAA2B,EACE,EAAE;YAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE;gBAC9D,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,eAAe,EAAE,OAAO,CAAC,eAAe;aACzC,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;gBACpD,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,yBAAyB,EAAE,OAAO,CAAC,yBAAyB;gBAC5D,yBAAyB,EAAE,OAAO,CAAC,yBAAyB;gBAC5D,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;gBACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;gBAClD,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC,CAAC;YACH,IACE,CAAC,WAAW;gBACZ,WAAW,CAAC,MAAM,KAAK,UAAU;gBACjC,WAAW,CAAC,MAAM,EAAE,IAAI,KAAK,eAAe;gBAC5C,WAAW,CAAC,mBAAmB,KAAK,2BAA2B,EAC/D,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,WAAW,EAAE,MAAM;oBACnB,8DAA8D,CAC/D,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAChD,OAAO,CAAC,KAAK,EACb,QAAQ,CAAC,eAAe,EACxB,OAAO,CAAC,OAAO,CAChB,CAAC;YACF,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;YACJ,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,IAAI,QAAQ,GAAG,MAAM,iBAAiB,CAAC,eAAe,CAAC,CAAC;YACxD,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC;gBAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,eAAe,EAAE,QAAQ;gBACzB,IAAI;gBACJ,mBAAmB,EAAE,2BAA2B;aACjD,CAAC,CAAC;YACH,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAClC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EACxC,IAAI,CAAC,cAAc,CAAC,SAAU,CAAC,IAAI,CACpC,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,8BAA8B,CACtC,gFAAgF,EAChF,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,KAAK,EAAE,oBAAoB;gBAC3B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,eAAe,EAAE,QAAQ;gBACzB,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,SAAU,CAAC,IAAI;gBACzC,YAAY,EAAE,CAAC;aAChB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,8BAA8B,EAAE,CAAC;gBACpD,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,IAAI,8BAA8B,CACtC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,OAA6B,EAC7B,eAAmC,EACnC,IAAkC,EAClC,OAAiC;QAKjC,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YAC9B,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QACD,MAAM,eAAe,GACnB,2CAA2C,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpE,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,SAAS,IAAI,CAAC,eAAe,wCAAwC,CACtE,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,KAAK,EAAE,OAA2B,EAAE,EAAE;YACzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAChD,OAAO,CAAC,KAAK,EACb,OAAO,EACP,OAAO,CACR,CAAC;YACF,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC1D,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;YAChE,IAAI,aAAiC,CAAC;YACtC,IAAI,yBAAyB,GAC3B,mDAAmD,CAAC;YACtD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,IAAI,QAAsC,CAAC;gBAC3C,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,CACrC,IAAI,CAAC,gBAAgB,EACrB,QAAQ,CACT,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,IAAI,+BAA+B,CACvC,sBAAsB,EACtB,mEACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,EACF,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;gBACJ,CAAC;gBACD,IAAI,QAAQ,EAAE,CAAC;oBACb,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC;wBACvC,QAAQ,CAAC,OAAO,IAAI,CAAC;wBACrB,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;wBACpC,QAAQ,CAAC,IAAI,IAAI,CAAC,EAClB,CAAC;wBACD,MAAM,IAAI,+BAA+B,CACvC,sBAAsB,EACtB,4DAA4D,CAC7D,CAAC;oBACJ,CAAC;oBACD,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACnC,CAAC;qBAAM,CAAC;oBACN,yBAAyB;wBACvB,2DAA2D,CAAC;gBAChE,CAAC;YACH,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CACtD,QAAQ,EACR,EAAE,eAAe,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAC/C,CAAC;YACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;YAC/D,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;YAC3E,kCAAkC,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YACpE,MAAM,QAAQ,GAAG,oCAAoC,CAAC,YAAY,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,+BAA+B,CACvC,oBAAoB,EACpB,kFAAkF,CACnF,CAAC;YACJ,CAAC;YACD,MAAM,gBAAgB,GAAG,gCAAgC,CAAC,YAAY,CAAC,CAAC;YACxE,MAAM,gBAAgB,GAAG,aAAa,IAAI,gBAAgB,CAAC;YAC3D,IACE,CAAC,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,GAAG,eAAe,CAAC;gBACtE,kCAAkC,CAAC,WAAW,CAAC,EAC/C,CAAC;gBACD,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,uDAAuD;oBACrD,GAAG,eAAe,gDAAgD;oBAClE,GAAG,gBAAgB,KAAK,SAAS;wBAC/B,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,cAAc,gBAAgB,EAAE,0CAA0C,CACjF,CAAC;YACJ,CAAC;YACD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,+BAA+B,CACvC,sBAAsB,EACtB,wEAAwE;oBACtE,yBAAyB;oBACzB,GAAG,gBAAgB,KAAK,SAAS;wBAC/B,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,6BAA6B,gBAAgB,WAAW,EAAE,CACjE,CAAC;YACJ,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAClD,OAAO,CAAC,KAAK,EACb,QAAQ,EACR,OAAO,CACR,CAAC;YACF,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC;gBACvD,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,6EAA6E,CAC9E,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,eAAe,EAAE,UAAU;gBAC3B,YAAY,EAAE,iCAAiC,CAAC,YAAY,CAAC;gBAC7D,cAAc,EAAE,QAAQ,CAAC,MAAM;aAChC,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACzD,IAAI,MAAM,CAAC,cAAc,KAAK,KAAK,CAAC,cAAc,EAAE,CAAC;YACnD,MAAM,IAAI,+BAA+B,CACvC,oBAAoB,EACpB,kEAAkE,CACnE,CAAC;QACJ,CAAC;QACD,OAAO;YACL,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAC1C,eAAmC,EACnC,IAAkC,EAClC,OAAiC;QAEjC,MAAM,eAAe,GACnB,2CAA2C,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpE,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,SAAS,IAAI,CAAC,eAAe,wCAAwC,CACtE,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAChD,OAAO,EACP,eAAe,EACf,OAAO,CACR,CAAC;QACF,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;QAChE,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,+BAA+B,CACvC,sBAAsB,EACtB,kFAAkF,CACnF,CAAC;QACJ,CAAC;QACD,IAAI,QAAsC,CAAC;QAC3C,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,CACrC,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACzC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,+BAA+B,CACvC,sBAAsB,EACtB,sEACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,EACF,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;QACD,IACE,CAAC,QAAQ;YACT,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC;YACvC,QAAQ,CAAC,OAAO,IAAI,CAAC;YACrB,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;YACpC,QAAQ,CAAC,IAAI,IAAI,CAAC,EAClB,CAAC;YACD,MAAM,IAAI,+BAA+B,CACvC,sBAAsB,EACtB,mFAAmF,CACpF,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,CAAC,OAAO,GAAG,eAAe,EAAE,CAAC;YACvC,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,sCAAsC,QAAQ,CAAC,OAAO,yBAAyB;gBAC7E,YAAY,eAAe,qDAAqD,CACnF,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAClD,OAAO,EACP,QAAQ,EACR,OAAO,CACR,CAAC;QACF,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,wEAAwE,CACzE,CAAC;QACJ,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAC1C,OAA6B,EAC7B,eAAmC,EACnC,IAAkC,EAClC,OAAiC;QAQjC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;QACtD,IAAI,YAAgC,CAAC;QACrC,IAAI,UAAmE,CAAC;QACxE,IAAI,WAA+B,CAAC;QACpC,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,sBAAsB,GAAG,CAAC,CAAC;QAC/B,IAAI,sBAAsB,GACxB,oBAAoB,CAAC;QAEvB,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE;gBACtE,OAAO;gBACP,eAAe,EAAE,uCAAuC;aACzD,CAAC,CAAC;YACH,kCAAkC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACxD,MAAM,YAAY,GAAG,oCAAoC,CACvD,OAAO,CAAC,KAAK,EACb,QAAQ,CAAC,MAAM,EACf,IAAI,CACL,CAAC;YACF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YACzB,IAAI,YAAY,EAAE,CAAC;gBACjB,IACE,YAAY,CAAC,MAAM,KAAK,YAAY;oBACpC,YAAY,CAAC,IAAI,KAAK,UAAU,EAChC,CAAC;oBACD,cAAc,IAAI,CAAC,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;oBACnC,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC;oBAC/B,WAAW,GAAG,GAAG,CAAC;oBAClB,cAAc,GAAG,CAAC,CAAC;gBACrB,CAAC;gBACD,MAAM,WAAW,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,WAAW,CAAC;gBACtE,IACE,cAAc,IAAI,+BAA+B;oBACjD,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,EAC5C,CAAC;oBACD,MAAM,QAAQ,GAAG;wBACf,IAAI,EAAE,YAAY,CAAC,IAAI;wBACvB,MAAM,EAAE,YAAY,CAAC,MAAM;wBAC3B,WAAW;wBACX,cAAc;qBAC2C,CAAC;oBAC5D,OAAO,IAAI,CAAC,kCAAkC,CAC5C,OAAO,EACP,QAAQ,CAAC,eAAe,EACxB,IAAI,EACJ,QAAQ,EACR,OAAO,CACR,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,sBAAsB,GAAG,OAAO,CAAC,KAAK,KAAK,OAAO;oBAChD,CAAC,CAAC,+CAA+C,CAC7C,QAAQ,CAAC,MAAM,EACf,IAAI,CACL;oBACH,CAAC,CAAC,oBAAoB,CAAC;gBACzB,YAAY,GAAG,SAAS,CAAC;gBACzB,UAAU,GAAG,SAAS,CAAC;gBACvB,WAAW,GAAG,SAAS,CAAC;gBACxB,cAAc,GAAG,CAAC,CAAC;YACrB,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,SAAS,CAAC;YACzC,MAAM,SAAS,GAAG,eAAe,GAAG,OAAO,CAAC;YAC5C,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpC,MAAM;YACR,CAAC;YACD,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;gBACnB,sBAAsB,IAAI,CAAC,CAAC;gBAC5B,IACE,sBAAsB,GAAG,oCAAoC,EAC7D,CAAC;oBACD,MAAM;gBACR,CAAC;YACH,CAAC;YACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe;gBACrD,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,WAAW,CAAC,CAAC;YAC/D,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CACvB,8BAA8B,EAC9B,SAAS,GAAG,CAAC;gBACX,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC,CACnC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,+BAA+B,CACvC,sBAAsB,EACtB,sBAAsB,KAAK,6BAA6B;YACtD,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,qGAAqG;YAC7H,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,6FAA6F,CACxH,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,kCAAkC,CAC9C,OAA6B,EAC7B,eAAmC,EACnC,IAAkC,EAClC,QAAyD,EACzD,OAAiC;QAQjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,eAAe,EAAE;YACtE,OAAO;YACP,eAAe,EAAE,uCAAuC;SACzD,CAAC,CAAC;QACH,kCAAkC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,YAAY,GAAG,oCAAoC,CACvD,OAAO,CAAC,KAAK,EACb,QAAQ,CAAC,MAAM,EACf,IAAI,CACL,CAAC;QACF,IACE,CAAC,YAAY;YACb,YAAY,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;YACvC,YAAY,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EACnC,CAAC;YACD,MAAM,IAAI,+BAA+B,CACvC,gBAAgB,EAChB,GAAG,OAAO,CAAC,WAAW,+DAA+D,CACtF,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;YACjD,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC,CAAC;QACH,IACE,CAAC,QAAQ;YACT,QAAQ,CAAC,MAAM,KAAK,WAAW;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAC1C,CAAC;YACD,MAAM,IAAI,+BAA+B,CACvC,mBAAmB,EACnB,QAAQ,EAAE,MAAM;gBACd,GAAG,OAAO,CAAC,WAAW,sDAAsD,CAC/E,CAAC;QACJ,CAAC;QACD,MAAM,8BAA8B,GAAG,MAAM,IAAI,CAAC,sBAAsB,CACtE,OAAO,CAAC,KAAK,EACb,QAAQ,CAAC,eAAe,EACxB,OAAO,CACR,CAAC;QACF,IACE,CAAC,2BAA2B,CAC1B,QAAQ,CAAC,eAAe,EACxB,8BAA8B,CAC/B,EACD,CAAC;YACD,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,qDAAqD,OAAO,CAAC,WAAW,2BAA2B,CACpG,CAAC;QACJ,CAAC;QACD,OAAO;YACL,eAAe,EAAE,8BAA8B;YAC/C,YAAY,EAAE,iCAAiC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAChE,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,eAAe,EAAE,QAAQ;SAC1B,CAAC;IACJ,CAAC;CAEF;AAED,SAAS,2BAA2B,CAClC,IAAwB,EACxB,KAAyB;IAEzB,OAAO,8BAA8B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,kCAAkC,CAAC,EACjD,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EAMV;IACC,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CACrD,CAAC,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,UAAU,CAAC;QACpD,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC5C,CAAC;IACF,MAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CACvD,CAAC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,CACpD,CAAC;IACF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClE,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG;QACd,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,KAAK,EAAE,CAAC;QACtD,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,KAAK,EAAE,CAAC;KACxD,CAAC;IACF,MAAM,IAAI,gCAAgC,CACxC,kDAAkD;QAClD,GAAG,QAAQ,CAAC,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,IAAI;QAC7D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CACnB,CAAC;AACJ,CAAC;AAED,SAAS,+BAA+B,CACtC,KAAsC,EACtC,KAAc,EACd,kBAAyD;IAEzD,MAAM,UAAU,GAAG,KAAK,YAAY,+BAA+B;QACjE,CAAC,CAAC,KAAK,CAAC,UAAU;QAClB,CAAC,CAAC,KAAK,YAAY,+BAA+B;YAChD,CAAC,CAAC,KAAK,CAAC,UAAU;YAClB,CAAC,CAAC,kBAAkB,CAAC;IACzB,IAAI,KAAK,YAAY,+BAA+B,EAAE,CAAC;QACrD,MAAM,SAAS,GAAoD;YACjE,WAAW,EAAE,CAAC;YACd,aAAa,EAAE,CAAC;YAChB,eAAe,EAAE,CAAC;SACnB,CAAC;QACF,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,+BAA+B,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE;YAC/D,KAAK,EAAE,KAAK;YACZ,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IACD,OAAO,IAAI,+BAA+B,CACxC,KAAK,EACL,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAC7B,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CACvC,OAA6B,EAC7B,eAAmC,EACnC,IAAkC;IAElC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,WAAW,kCAAkC,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,WAAW,8CAA8C,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,KAAK,OAAO;QAC5C,oCAAoC,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,SAAS,CAAC;IAC3E,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,KAAK,QAAQ;QAC9C,qCAAqC,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,SAAS,CAAC;IAC5E,MAAM,cAAc,GAAG,YAAY;QACjC,CAAC,CAAC,EAAE,eAAe,EAAE,2BAA2B,EAAE,eAAe,EAAE,KAAK,EAAE;QAC1E,CAAC,CAAC,sCAAsC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACjE,MAAM,iBAAiB,GAAG,YAAY;QACpC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,KAAK,QAAQ;YAC7C,IAAI,CAAC,cAAc,CAAC,SAAS,KAAK,SAAS;YAC3C,IAAI,CAAC,QAAQ,CAAC,eAAe,KAAK,cAAc,EAAE,eAAe;YACjE,IAAI,CAAC,QAAQ,CAAC,eAAe,KAAK,cAAc,CAAC,eAAe;QAClE,CAAC,CAAC,aAAa;YACb,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,KAAK,OAAO;gBAC5C,IAAI,CAAC,QAAQ,CAAC,eAAe,KAAK,cAAc,EAAE,eAAe;gBACjE,IAAI,CAAC,QAAQ,CAAC,eAAe,KAAK,cAAc,CAAC,eAAe;gBAChE,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,KAAK,qBAAqB;gBACjE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC;oBAChD,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC,CAAC,KAAK,CAAC;IACZ,IACE,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ;QAChC,IAAI,CAAC,OAAO,KAAK,SAAS;QAC1B,IAAI,CAAC,MAAM,KAAK,WAAW;QAC3B,IAAI,CAAC,YAAY,KAAK,IAAI;QAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO;QAC9B,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,eAAe,GAAG,CAAC;QACjC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe;QAC7D,IAAI,CAAC,cAAc,CAAC,IAAI,KAAK,eAAe;QAC5C,CAAC,iBAAiB,EAClB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED,SAAS,qCAAqC,CAC5C,IAAkC;IAElC,IACE,IAAI,CAAC,cAAc,CAAC,YAAY,KAAK,OAAO;QAC5C,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,KAAK,qBAAqB;QACjE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC;YAChD,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,EAC5B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAED,SAAS,kCAAkC,CACzC,UAAoC,EACpC,WAAW,GAAG,gBAAgB;IAE9B,IACE,UAAU,CAAC,QAAQ,CAAC,OAAO;QAC3B,UAAU,CAAC,QAAQ,CAAC,KAAK,KAAK,mBAAmB;QACjD,UAAU,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS,EACvC,CAAC;QACD,MAAM,IAAI,+BAA+B,CACvC,oBAAoB,EACpB,GAAG,WAAW,iEAAiE,CAChF,CAAC;IACJ,CAAC;IACD,yEAAyE;IACzE,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,qCAAqC;AACvC,CAAC;AAED,SAAS,oCAAoC,CAC3C,KAAmB,EACnB,MAAc,EACd,IAAkC;IAKlC,OAAO,KAAK,KAAK,OAAO;QACtB,CAAC,CAAC,yCAAyC,CAAC,MAAM,EAAE,IAAI,CAAC;QACzD,CAAC,CAAC,0CAA0C,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,yCAAyC,CAChD,MAAc,EACd,IAAkC;IAKlC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,oBAAoB,GAAG,CAAC,CAAC,CAAC;IAC9B,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC7C,oBAAoB,GAAG,KAAK,CAAC;YAC7B,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,YAAY,GAAG,KAAK,CAAC,oBAAoB,CAAC;SAC7C,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;SACxB,OAAO,EAAE,CAAC;IACb,IAAI,YAAY,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,CAC3D,cAAc,GAAG,oBAAoB;QACrC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CACxC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CACxB,oBAAoB,EACpB,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAC7C,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,MAAM,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3E,IAAI,IAAiD,CAAC;IACtD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,IAAI,GAAG,sBAAsB,CAAC;IAChC,CAAC;SAAM,IACL,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,oCAAoC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EAC5E,CAAC;QACD,IAAI,GAAG,mBAAmB,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;KACrE,CAAC;AACJ,CAAC;AAED,SAAS,0CAA0C,CACjD,MAAc,EACd,IAAkC;IAKlC,MAAM,KAAK,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACvE,IACE,YAAY,CAAC,MAAM,KAAK,CAAC;QACzB,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvC,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,OAAO,EACnE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,IAAiD,CAAC;IACtD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,sCAAsC,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9E,IAAI,GAAG,sBAAsB,CAAC;IAChC,CAAC;SAAM,CAAC;QACN,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YAClD,CAAC;iBAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;oBACjC,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IACE,CAAC,wCAAwC,CACvC,WAAW,EACX,qCAAqC,CAAC,IAAI,CAAC,eAAe,CAAC,CAC5D,EACD,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,GAAG,mBAAmB,CAAC;IAC7B,CAAC;IACD,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC;aACzB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1E,MAAM,CAAC,KAAK,CAAC;KACjB,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,wCAAwC,CAC/C,QAA2B,EAC3B,QAAuC;IAEvC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACtC,OAAO,CACL,UAAU,GAAG,CAAC;YACd,MAAM,CAAC,MAAM,IAAI,UAAU,GAAG,EAAE;YAChC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CACzB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAAc;IAEd,MAAM,KAAK,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,KAAK,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACxC,CACE,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAC3B,sCAAsC,CAAC,KAAK,CAAC,QAAQ,CAAC,CACvD,CACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yCAAyC,CACvD,MAAc;IAEd,OAAO,yBAAyB,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAc;IAOrD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC;SACnE,KAAK,CAAC,IAAI,CAAC,CAAC;IACf,MAAM,cAAc,GAAG,KAAK;SACzB,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACjE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IACjC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,UAAU,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;IACzC,OAAO;QACL,KAAK;QACL,SAAS;QACT,UAAU;QACV,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,EAAE,UAAU,CAAC;aACjD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3C,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;aAClC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sCAAsC,CACpD,KAAwB;IAExB,OAAO,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,gCAAgC,CAAC,IAAY;IACpD,OAAO,mHAAmH;SACvH,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,iCAAiC,CAAC,MAAc;IACvD,OAAO,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,+CAA+C,CACtD,WAAmB;IAEnB,MAAM,KAAK,GAAG,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAa;IACxD,OAAO,KAAK,CAAC,OAAO,CAClB,6DAA6D,EAC7D,EAAE,CACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oCAAoC,CAClD,MAAc;IAEd,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1D,OACE,KAAK,CAAC,MAAM,GAAG,CAAC;QAChB,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EACpE,CAAC;QACD,KAAK,CAAC,GAAG,EAAE,CAAC;IACd,CAAC;IACD,MAAM,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACjE,qBAAqB,CAAC,IAAI,CACxB,4BAA4B,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAC7C,CACF,CAAC;IACF,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,MAAM,OAAO,GAA+C,EAAE,CAAC;IAC/D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC;QACjD,IAAI,YAAY,CAAC,KAAK,CAAC,KAAK,MAAM,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,0DAA0D;iBACtE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YACnC,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;oBAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE;wBAC5B,CAAC,CAAC,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACvD,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,EAAE,CAAC;wBACjE,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;wBAC9B,IACE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;4BAC3B,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,EAC1B,CAAC;4BACD,SAAS,IAAI,CAAC,CAAC;4BACf,SAAS;wBACX,CAAC;wBACD,IACE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;4BAC3B,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,EAC1B,CAAC;4BACD,SAAS,IAAI,CAAC,CAAC;4BACf,SAAS;wBACX,CAAC;wBACD,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;4BAC9B,GAAG,GAAG,KAAK,CAAC;wBACd,CAAC;6BAAM,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;4BACtB,GAAG,GAAG,IAAI,CAAC;wBACb,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC1B,SAAS;YACX,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM;QACR,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACjC,KAAK,IAAI,SAAS,CAAC,MAAM,CAAC;IAC5B,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CACtD,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,CACvC,CAAC;IACF,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;SAC3C,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACvD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;KAChE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gCAAgC,CAAC,MAAc;IAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;SACrD,GAAG,CAAC,4BAA4B,CAAC,CAAC;IACrC,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CACvC,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,CACtC,CAAC;IACF,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAClC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,EAC3D,CAAC,CACF,CAAC;IACF,IAAI,QAAQ,GAAG,EAAE,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAC9C,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,QAAQ,CACzD,CAAC;IACF,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAC7C,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAC1C,CAAC;IACF,OAAO,WAAW,CAAC,MAAM,IAAI,CAAC,IAAI,aAAa;QAC7C,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,kCAAkC,CAAC,MAAc;IACxD,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAC/D,MAAM,KAAK,GAAG,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,CAAC,6EAA6E;aAClF,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,+CAA+C,CACtD,MAAc,EACd,IAAkC;IAElC,MAAM,YAAY,GAAG,oCAAoC,CACvD,IAAI,CAAC,eAAe,CACrB,CAAC;IACF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,aAAa,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC7C,aAAa,GAAG,KAAK,CAAC;YACtB,MAAM;QACR,CAAC;IACH,CAAC;IACD,IACE,aAAa,GAAG,CAAC;QACjB,KAAK,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,OAAO,EACxE,CAAC;QACD,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAClD,KAAK,GAAG,aAAa,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CACjE,CAAC;IACF,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAC3B,aAAa,GAAG,CAAC,EACjB,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAC7C,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;YACrD,kBAAkB,GAAG,IAAI,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,OAAO,oBAAoB,CAAC;QAC9B,CAAC;QACD,kBAAkB,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IACD,MAAM,kBAAkB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAClD,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CACjC,CAAC;IACF,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,IAAI,kBAAkB,CAAC,MAAM;QACtE,WAAW,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC/B,MAAM,eAAe,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACvC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;gBAC5B,CAAC,CAAC,GAAG,CAAC;YACR,OAAO,kBAAkB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,OAAO,kBAAkB,IAAI,gBAAgB;QAC3C,CAAC,CAAC,6BAA6B;QAC/B,CAAC,CAAC,oBAAoB,CAAC;AAC3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"terminal-native-inspection-bridge.js","sourceRoot":"","sources":["../../src/terminal-native-inspection-bridge.ts"],"names":[],"mappings":"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"}
|