@tangle-network/browser-agent-driver 0.14.4 → 0.15.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/dist/brain/index.d.ts +44 -0
- package/dist/brain/index.d.ts.map +1 -1
- package/dist/brain/index.js +157 -14
- package/dist/brain/index.js.map +1 -1
- package/dist/drivers/cursor-overlay.d.ts +0 -5
- package/dist/drivers/cursor-overlay.d.ts.map +1 -1
- package/dist/drivers/cursor-overlay.js +0 -5
- package/dist/drivers/cursor-overlay.js.map +1 -1
- package/dist/drivers/playwright.d.ts +3 -3
- package/dist/drivers/playwright.d.ts.map +1 -1
- package/dist/drivers/playwright.js +14 -12
- package/dist/drivers/playwright.js.map +1 -1
- package/dist/runner/runner.d.ts.map +1 -1
- package/dist/runner/runner.js +45 -5
- package/dist/runner/runner.js.map +1 -1
- package/dist/types.d.ts +7 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/brain/index.d.ts
CHANGED
|
@@ -17,6 +17,15 @@ export interface BrainDecision {
|
|
|
17
17
|
tokensUsed?: number;
|
|
18
18
|
inputTokens?: number;
|
|
19
19
|
outputTokens?: number;
|
|
20
|
+
/**
|
|
21
|
+
* Prompt-cache hit tokens (provider-agnostic). Reads from the AI SDK's
|
|
22
|
+
* unified `usage.inputTokenDetails.cacheReadTokens` field. Populated by:
|
|
23
|
+
* - OpenAI / ZAI / GLM via automatic server-side caching
|
|
24
|
+
* - Anthropic via the cache_control markers set in buildSystemForDecide
|
|
25
|
+
*/
|
|
26
|
+
cacheReadInputTokens?: number;
|
|
27
|
+
/** Prompt-cache write tokens (cache miss, first turn — provider-agnostic) */
|
|
28
|
+
cacheCreationInputTokens?: number;
|
|
20
29
|
/** Which model handled this decision (for cost tracking with adaptive routing) */
|
|
21
30
|
modelUsed?: string;
|
|
22
31
|
}
|
|
@@ -89,8 +98,43 @@ export declare class Brain {
|
|
|
89
98
|
* Saves ~800 tokens per turn on simple navigation tasks.
|
|
90
99
|
*/
|
|
91
100
|
private buildSystemPrompt;
|
|
101
|
+
/**
|
|
102
|
+
* Same as buildSystemPrompt but returns the parts so the caller can decide
|
|
103
|
+
* how to send them. For Anthropic, decide() ships them as a SystemModelMessage[]
|
|
104
|
+
* with cache_control on the stable CORE_RULES prefix; other providers join.
|
|
105
|
+
*
|
|
106
|
+
* The first slot is ALWAYS CORE_RULES (or the user's custom override) so the
|
|
107
|
+
* cache breakpoint placement is deterministic.
|
|
108
|
+
*/
|
|
109
|
+
private composeSystemPromptParts;
|
|
110
|
+
/**
|
|
111
|
+
* Build the system prompt for `decide()` in the form best suited to the
|
|
112
|
+
* active provider:
|
|
113
|
+
* - Anthropic: a SystemModelMessage[] with `cache_control: ephemeral`
|
|
114
|
+
* on the CORE_RULES slot. Subsequent turns get a cache hit on the
|
|
115
|
+
* ~1500-token prefix (90% cheaper input + faster TTFT).
|
|
116
|
+
* - Everything else: a single concatenated string (current behavior).
|
|
117
|
+
*
|
|
118
|
+
* Custom system prompts (set via config) are passed verbatim — caching
|
|
119
|
+
* is opt-in via the default prompt path only.
|
|
120
|
+
*/
|
|
121
|
+
private buildSystemForDecide;
|
|
92
122
|
/** Reset conversation history (call between scenarios) */
|
|
93
123
|
reset(): void;
|
|
124
|
+
/**
|
|
125
|
+
* Pre-warm the provider connection: instantiate the model client and fire a
|
|
126
|
+
* tiny generateText so DNS+TLS+HTTP/2 keep-alive are established BEFORE
|
|
127
|
+
* turn 1's decide call. Without this, turn 1's first LLM call eats 600ms
|
|
128
|
+
* (Anthropic) to 1200ms (OpenAI) of cold-start that has nothing to do with
|
|
129
|
+
* model latency.
|
|
130
|
+
*
|
|
131
|
+
* Cost: ~1 input token + 1 output token per run (negligible). Skips
|
|
132
|
+
* silently for CLI-spawning providers (claude-code, codex-cli) where
|
|
133
|
+
* connection warmup doesn't apply, and for sandbox-backend.
|
|
134
|
+
*
|
|
135
|
+
* Disable via BAD_NO_WARMUP=1 if a provider rejects 1-token calls.
|
|
136
|
+
*/
|
|
137
|
+
warmup(): Promise<void>;
|
|
94
138
|
/** Get current conversation history */
|
|
95
139
|
getHistory(): ModelMessage[];
|
|
96
140
|
/** Inject a system-level feedback message into history */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/brain/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/brain/index.ts"],"names":[],"mappings":"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"}
|
package/dist/brain/index.js
CHANGED
|
@@ -405,9 +405,13 @@ export class Brain {
|
|
|
405
405
|
async generate(system, messages, selection, maxOutputTokens = 800) {
|
|
406
406
|
const providerName = selection?.provider || this.provider;
|
|
407
407
|
const modelName = this.resolveModelName(providerName, selection?.model || this.modelName);
|
|
408
|
+
// Sandbox backend doesn't accept structured system messages — flatten.
|
|
409
|
+
const systemForSandbox = typeof system === 'string'
|
|
410
|
+
? system
|
|
411
|
+
: system.map(m => m.content).join('\n\n');
|
|
408
412
|
if (providerName === 'sandbox-backend') {
|
|
409
413
|
const result = await generateWithSandboxBackend({
|
|
410
|
-
system,
|
|
414
|
+
system: systemForSandbox,
|
|
411
415
|
messages,
|
|
412
416
|
model: modelName,
|
|
413
417
|
timeoutMs: this.llmTimeoutMs,
|
|
@@ -422,18 +426,72 @@ export class Brain {
|
|
|
422
426
|
provider: providerName,
|
|
423
427
|
model: modelName,
|
|
424
428
|
});
|
|
429
|
+
// Anthropic supports structured system messages with cache_control. For
|
|
430
|
+
// every other provider, flatten back to a string — they ignore the array
|
|
431
|
+
// form's per-message provider options anyway, and some (claude-code,
|
|
432
|
+
// codex-cli) wrap their own subprocess CLI which only takes plain text.
|
|
433
|
+
const systemForRequest = providerName === 'anthropic' || typeof system === 'string'
|
|
434
|
+
? system
|
|
435
|
+
: systemForSandbox;
|
|
425
436
|
const result = await generateText({
|
|
426
437
|
model,
|
|
427
|
-
system,
|
|
438
|
+
system: systemForRequest,
|
|
428
439
|
messages,
|
|
429
440
|
...this.generationOptions(maxOutputTokens, { provider: providerName, model: modelName }),
|
|
430
441
|
abortSignal: AbortSignal.timeout(this.llmTimeoutMs),
|
|
431
442
|
});
|
|
443
|
+
// Extract prompt-cache stats from the AI SDK's PROVIDER-AGNOSTIC fields:
|
|
444
|
+
// result.usage.inputTokenDetails.{cacheReadTokens, cacheWriteTokens}
|
|
445
|
+
//
|
|
446
|
+
// These flow uniformly from every provider that supports prompt caching:
|
|
447
|
+
// - OpenAI (gpt-5.4, gpt-4.1-mini): AUTOMATIC server-side caching for
|
|
448
|
+
// >1024 token prefixes, no markers needed. Returns cached_tokens.
|
|
449
|
+
// - Anthropic (claude-*): EXPLICIT cache_control markers required (we
|
|
450
|
+
// set them in buildSystemForDecide). Returns cache_read_input_tokens.
|
|
451
|
+
// - ZAI / GLM (zai-coding-plan via OpenAI-compatible endpoint): AUTOMATIC
|
|
452
|
+
// server-side caching, returns cached_tokens in prompt_tokens_details.
|
|
453
|
+
// - Google Gemini: explicit `cachedContent` ID-based caching (different
|
|
454
|
+
// paradigm — not currently exercised).
|
|
455
|
+
//
|
|
456
|
+
// The unified inputTokenDetails fields mean we get cache observability
|
|
457
|
+
// for free across providers without per-provider extraction code.
|
|
458
|
+
const inputDetails = result.usage?.inputTokenDetails;
|
|
459
|
+
let cacheReadInputTokens = typeof inputDetails?.cacheReadTokens === 'number'
|
|
460
|
+
? inputDetails.cacheReadTokens
|
|
461
|
+
: undefined;
|
|
462
|
+
let cacheCreationInputTokens = typeof inputDetails?.cacheWriteTokens === 'number'
|
|
463
|
+
? inputDetails.cacheWriteTokens
|
|
464
|
+
: undefined;
|
|
465
|
+
// Fallback: some providers expose cache stats only via providerMetadata.
|
|
466
|
+
// Anthropic uses cacheReadInputTokens / cacheCreationInputTokens directly,
|
|
467
|
+
// OpenAI sometimes lands cached_tokens under providerMetadata.openai.
|
|
468
|
+
if (cacheReadInputTokens === undefined || cacheCreationInputTokens === undefined) {
|
|
469
|
+
const meta = result.providerMetadata;
|
|
470
|
+
const anthropicMeta = meta?.anthropic;
|
|
471
|
+
const openaiMeta = meta?.openai;
|
|
472
|
+
if (cacheReadInputTokens === undefined) {
|
|
473
|
+
const fromAnthropic = typeof anthropicMeta?.cacheReadInputTokens === 'number'
|
|
474
|
+
? anthropicMeta.cacheReadInputTokens
|
|
475
|
+
: undefined;
|
|
476
|
+
const fromOpenAI = typeof openaiMeta?.cachedPromptTokens === 'number'
|
|
477
|
+
? openaiMeta.cachedPromptTokens
|
|
478
|
+
: undefined;
|
|
479
|
+
cacheReadInputTokens = fromAnthropic ?? fromOpenAI;
|
|
480
|
+
}
|
|
481
|
+
if (cacheCreationInputTokens === undefined) {
|
|
482
|
+
const fromAnthropic = typeof anthropicMeta?.cacheCreationInputTokens === 'number'
|
|
483
|
+
? anthropicMeta.cacheCreationInputTokens
|
|
484
|
+
: undefined;
|
|
485
|
+
cacheCreationInputTokens = fromAnthropic;
|
|
486
|
+
}
|
|
487
|
+
}
|
|
432
488
|
return {
|
|
433
489
|
text: result.text,
|
|
434
490
|
tokensUsed: result.usage?.totalTokens,
|
|
435
491
|
inputTokens: result.usage?.inputTokens ?? undefined,
|
|
436
492
|
outputTokens: result.usage?.outputTokens ?? undefined,
|
|
493
|
+
cacheReadInputTokens,
|
|
494
|
+
cacheCreationInputTokens,
|
|
437
495
|
};
|
|
438
496
|
}
|
|
439
497
|
/**
|
|
@@ -457,30 +515,105 @@ export class Brain {
|
|
|
457
515
|
* Saves ~800 tokens per turn on simple navigation tasks.
|
|
458
516
|
*/
|
|
459
517
|
buildSystemPrompt(goal, state, turn) {
|
|
460
|
-
|
|
518
|
+
return this.composeSystemPromptParts(goal, state, turn).join('');
|
|
519
|
+
}
|
|
520
|
+
/**
|
|
521
|
+
* Same as buildSystemPrompt but returns the parts so the caller can decide
|
|
522
|
+
* how to send them. For Anthropic, decide() ships them as a SystemModelMessage[]
|
|
523
|
+
* with cache_control on the stable CORE_RULES prefix; other providers join.
|
|
524
|
+
*
|
|
525
|
+
* The first slot is ALWAYS CORE_RULES (or the user's custom override) so the
|
|
526
|
+
* cache breakpoint placement is deterministic.
|
|
527
|
+
*/
|
|
528
|
+
composeSystemPromptParts(goal, state, turn) {
|
|
461
529
|
if (this.systemPrompt !== SYSTEM_PROMPT)
|
|
462
|
-
return this.systemPrompt;
|
|
463
|
-
|
|
464
|
-
// Search rules: page has searchbox/combobox roles or URL contains /search
|
|
530
|
+
return [this.systemPrompt];
|
|
531
|
+
const parts = [CORE_RULES];
|
|
465
532
|
const snapshotSample = state.snapshot.length > 4000 ? state.snapshot.slice(0, 4000) : state.snapshot;
|
|
466
533
|
if (SEARCH_SNAPSHOT_PATTERN.test(snapshotSample) || /\/search\b/i.test(state.url)) {
|
|
467
|
-
|
|
534
|
+
parts.push(SEARCH_RULES);
|
|
468
535
|
}
|
|
469
|
-
// Data extraction rules: goal mentions extraction-related keywords
|
|
470
536
|
if (DATA_EXTRACTION_PATTERN.test(goal)) {
|
|
471
|
-
|
|
537
|
+
parts.push(DATA_EXTRACTION_RULES);
|
|
472
538
|
}
|
|
473
|
-
// Heavy page rules: large snapshot or late in the run
|
|
474
539
|
if (state.snapshot.length > 10_000 || turn > 10) {
|
|
475
|
-
|
|
540
|
+
parts.push(HEAVY_PAGE_RULES);
|
|
541
|
+
}
|
|
542
|
+
parts.push(REASONING_SUFFIX);
|
|
543
|
+
return parts;
|
|
544
|
+
}
|
|
545
|
+
/**
|
|
546
|
+
* Build the system prompt for `decide()` in the form best suited to the
|
|
547
|
+
* active provider:
|
|
548
|
+
* - Anthropic: a SystemModelMessage[] with `cache_control: ephemeral`
|
|
549
|
+
* on the CORE_RULES slot. Subsequent turns get a cache hit on the
|
|
550
|
+
* ~1500-token prefix (90% cheaper input + faster TTFT).
|
|
551
|
+
* - Everything else: a single concatenated string (current behavior).
|
|
552
|
+
*
|
|
553
|
+
* Custom system prompts (set via config) are passed verbatim — caching
|
|
554
|
+
* is opt-in via the default prompt path only.
|
|
555
|
+
*/
|
|
556
|
+
buildSystemForDecide(goal, state, turn, providerName) {
|
|
557
|
+
const parts = this.composeSystemPromptParts(goal, state, turn);
|
|
558
|
+
if (providerName !== 'anthropic' || this.systemPrompt !== SYSTEM_PROMPT || parts.length === 0) {
|
|
559
|
+
return parts.join('');
|
|
476
560
|
}
|
|
477
|
-
|
|
478
|
-
|
|
561
|
+
// Anthropic path: first slot is CORE_RULES (cached), remaining parts ship
|
|
562
|
+
// as a separate uncached system message so the prefix stays byte-stable
|
|
563
|
+
// across turns and the cache hits.
|
|
564
|
+
const corePart = {
|
|
565
|
+
role: 'system',
|
|
566
|
+
content: parts[0],
|
|
567
|
+
providerOptions: {
|
|
568
|
+
anthropic: {
|
|
569
|
+
cacheControl: { type: 'ephemeral' },
|
|
570
|
+
},
|
|
571
|
+
},
|
|
572
|
+
};
|
|
573
|
+
if (parts.length === 1)
|
|
574
|
+
return [corePart];
|
|
575
|
+
return [corePart, { role: 'system', content: parts.slice(1).join('') }];
|
|
479
576
|
}
|
|
480
577
|
/** Reset conversation history (call between scenarios) */
|
|
481
578
|
reset() {
|
|
482
579
|
this.history = [];
|
|
483
580
|
}
|
|
581
|
+
/**
|
|
582
|
+
* Pre-warm the provider connection: instantiate the model client and fire a
|
|
583
|
+
* tiny generateText so DNS+TLS+HTTP/2 keep-alive are established BEFORE
|
|
584
|
+
* turn 1's decide call. Without this, turn 1's first LLM call eats 600ms
|
|
585
|
+
* (Anthropic) to 1200ms (OpenAI) of cold-start that has nothing to do with
|
|
586
|
+
* model latency.
|
|
587
|
+
*
|
|
588
|
+
* Cost: ~1 input token + 1 output token per run (negligible). Skips
|
|
589
|
+
* silently for CLI-spawning providers (claude-code, codex-cli) where
|
|
590
|
+
* connection warmup doesn't apply, and for sandbox-backend.
|
|
591
|
+
*
|
|
592
|
+
* Disable via BAD_NO_WARMUP=1 if a provider rejects 1-token calls.
|
|
593
|
+
*/
|
|
594
|
+
async warmup() {
|
|
595
|
+
if (process.env.BAD_NO_WARMUP === '1')
|
|
596
|
+
return;
|
|
597
|
+
if (this.provider === 'codex-cli'
|
|
598
|
+
|| this.provider === 'claude-code'
|
|
599
|
+
|| this.provider === 'sandbox-backend') {
|
|
600
|
+
return;
|
|
601
|
+
}
|
|
602
|
+
try {
|
|
603
|
+
const model = await this.getModel();
|
|
604
|
+
// 1-token "ping" — provider charges for the input but it's the cheapest
|
|
605
|
+
// possible request shape. Errors are swallowed; warmup is best-effort.
|
|
606
|
+
await generateText({
|
|
607
|
+
model,
|
|
608
|
+
messages: [{ role: 'user', content: 'hi' }],
|
|
609
|
+
...this.generationOptions(1),
|
|
610
|
+
abortSignal: AbortSignal.timeout(10_000),
|
|
611
|
+
}).catch(() => undefined);
|
|
612
|
+
}
|
|
613
|
+
catch {
|
|
614
|
+
// Best-effort: any failure here just means turn 1 pays the cold-start.
|
|
615
|
+
}
|
|
616
|
+
}
|
|
484
617
|
/** Get current conversation history */
|
|
485
618
|
getHistory() {
|
|
486
619
|
return [...this.history];
|
|
@@ -742,7 +875,7 @@ ${visibleSnapshot}`;
|
|
|
742
875
|
];
|
|
743
876
|
const dynamicSystemPrompt = useCompactFirstTurn
|
|
744
877
|
? FIRST_TURN_COMPACT_PROMPT
|
|
745
|
-
: this.
|
|
878
|
+
: this.buildSystemForDecide(goal, state, turnInfo?.current ?? 1, effectiveProvider);
|
|
746
879
|
const modelOpts = { provider: effectiveProvider, model: effectiveModel };
|
|
747
880
|
// Bump output budget near max turns so data-heavy completions don't truncate
|
|
748
881
|
const nearingEnd = turnInfo && turnInfo.current >= turnInfo.max - 3;
|
|
@@ -752,6 +885,8 @@ ${visibleSnapshot}`;
|
|
|
752
885
|
let tokensUsed = result.tokensUsed;
|
|
753
886
|
let inputTokens = result.inputTokens;
|
|
754
887
|
let outputTokens = result.outputTokens;
|
|
888
|
+
let cacheReadInputTokens = result.cacheReadInputTokens;
|
|
889
|
+
let cacheCreationInputTokens = result.cacheCreationInputTokens;
|
|
755
890
|
if (!raw) {
|
|
756
891
|
throw new Error('Brain.decide: LLM returned empty response — possible rate limit or model error');
|
|
757
892
|
}
|
|
@@ -782,6 +917,12 @@ ${visibleSnapshot}`;
|
|
|
782
917
|
tokensUsed = (tokensUsed ?? 0) + (retryResult.tokensUsed ?? 0);
|
|
783
918
|
inputTokens = (inputTokens ?? 0) + (retryResult.inputTokens ?? 0);
|
|
784
919
|
outputTokens = (outputTokens ?? 0) + (retryResult.outputTokens ?? 0);
|
|
920
|
+
if (retryResult.cacheReadInputTokens !== undefined) {
|
|
921
|
+
cacheReadInputTokens = (cacheReadInputTokens ?? 0) + retryResult.cacheReadInputTokens;
|
|
922
|
+
}
|
|
923
|
+
if (retryResult.cacheCreationInputTokens !== undefined) {
|
|
924
|
+
cacheCreationInputTokens = (cacheCreationInputTokens ?? 0) + retryResult.cacheCreationInputTokens;
|
|
925
|
+
}
|
|
785
926
|
}
|
|
786
927
|
}
|
|
787
928
|
catch {
|
|
@@ -802,6 +943,8 @@ ${visibleSnapshot}`;
|
|
|
802
943
|
tokensUsed,
|
|
803
944
|
inputTokens,
|
|
804
945
|
outputTokens,
|
|
946
|
+
cacheReadInputTokens,
|
|
947
|
+
cacheCreationInputTokens,
|
|
805
948
|
modelUsed: effectiveModel,
|
|
806
949
|
};
|
|
807
950
|
}
|
package/dist/brain/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/brain/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAGlC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,kFAAkF;AAClF,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yIAkDsH,CAAC;AAE1I,0FAA0F;AAC1F,MAAM,YAAY,GAAG;;;uUAGkT,CAAC;AAExU,qFAAqF;AACrF,MAAM,qBAAqB,GAAG;;;;6iBAI+gB,CAAC;AAE9iB,0FAA0F;AAC1F,MAAM,gBAAgB,GAAG;;;kVAGyT,CAAC;AAEnV,qEAAqE;AACrE,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;iaAawY,CAAC;AAEla,2FAA2F;AAC3F,MAAM,aAAa,GAAG,UAAU,GAAG,YAAY,GAAG,qBAAqB,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAE9G,kEAAkE;AAClE,MAAM,uBAAuB,GAAG,mEAAmE,CAAC;AAEpG,kEAAkE;AAClE,MAAM,uBAAuB,GAAG,mCAAmC,CAAC;AAEpE,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;2BAkBP,CAAC;AAE5B,MAAM,iBAAiB,GAAG;;sGAE4E,CAAC;AAEvG,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kFAoCsD,CAAC;AAEnF,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;kFAkB0D,CAAC;AAsCnF,MAAM,OAAO,KAAK;IACR,UAAU,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC9C,QAAQ,CAA0G;IAClH,SAAS,CAAS;IAClB,oBAAoB,CAAU;IAC9B,YAAY,CAAU;IACtB,WAAW,CAA2G;IACtH,cAAc,CAAU;IACxB,OAAO,CAAU;IACjB,KAAK,CAAU;IACf,OAAO,GAAmB,EAAE,CAAC;IAC7B,eAAe,CAAS;IACxB,aAAa,CAAU;IACvB,cAAc,CAA8B;IAC5C,YAAY,CAAS;IACrB,gBAAgB,CAAU;IAC1B,eAAe,CAAU;IACzB,YAAY,CAAS;IACrB,cAAc,CAAU;IACxB,aAAa,CAA2G;IACxH,cAAc,CAAU;IACxB,kBAAkB,CAAU;IAC5B,qBAAqB,CAAU;IAC/B,sBAAsB,CAAU;IAExC,YAAY,SAAsB,EAAE;QAClC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC;QAClD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC;QAC3C,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,KAAK,IAAI,CAAC;QACjE,iGAAiG;QACjG,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAChG,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,aAAa,CAAC;QACzD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;QACpD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,KAAK,KAAK,CAAC;QAC7C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzF,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,KAAK,IAAI,CAAC;QACzD,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,CAAC;QACpD,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC1D,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAC;QAC5D,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC;QAC5C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACzD,CAAC;IAEO,gBAAgB,CACtB,QAAiH,EACjH,cAAuB;QAEvB,OAAO,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE;YACxD,kBAAkB,EAAE,QAAQ,KAAK,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS;SACzF,CAAC,CAAC;IACL,CAAC;IAEO,qBAAqB,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;QACtD,wEAAwE;QACxE,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAEO,iBAAiB,CACvB,eAAuB,EACvB,SAAkJ;QAElJ,MAAM,YAAY,GAAG,SAAS,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,SAAS,EAAE,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1F,sEAAsE;QACtE,wEAAwE;QACxE,6DAA6D;QAC7D,MAAM,aAAa,GACjB,YAAY,KAAK,WAAW;YAC5B,YAAY,KAAK,aAAa;YAC9B,YAAY,KAAK,iBAAiB;YAClC,CAAC,YAAY,KAAK,iBAAiB,IAAI,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7E,OAAO;YACL,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;SAC9C,CAAC;IACJ,CAAC;IAED,oGAAoG;IACpG,KAAK,CAAC,gBAAgB,CAAC,SAA4E;QACjG,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACjC,CAAC;IAED,oEAAoE;IAC5D,KAAK,CAAC,QAAQ,CAAC,SAAkJ;QACvK,MAAM,YAAY,GAAG,SAAS,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,SAAS,EAAE,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1F,MAAM,MAAM,GAAG,qBAAqB,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACxE,MAAM,QAAQ,GAAG,GAAG,YAAY,IAAI,SAAS,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,IAAI,KAAoB,CAAC;QACzB,QAAQ,YAAY,EAAE,CAAC;YACrB,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAC9D,MAAM,QAAQ,GAAG,eAAe,CAAC;oBAC/B,MAAM;oBACN,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnD,CAAC,CAAC;gBACH,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAkB,CAAC;gBAC7C,MAAM;YACR,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACpE,MAAM,QAAQ,GAAG,wBAAwB,CAAC;oBACxC,MAAM;oBACN,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnD,CAAC,CAAC;gBACH,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAkB,CAAC;gBAC7C,MAAM;YACR,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;gBAChE,MAAM,GAAG,GAA2B,EAAE,CAAC;gBACvC,IAAI,MAAM;oBAAE,GAAG,CAAC,cAAc,GAAG,MAAM,CAAC;gBACxC,KAAK,GAAG,SAAS,CAAC,SAAS,EAAE;oBAC3B,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,GAAG;oBAC7C,gBAAgB,EAAE,IAAI;oBACtB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAChD,CAAkB,CAAC;gBACpB,MAAM;YACR,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;gBACzE,MAAM,GAAG,GAA2B,EAAE,CAAC;gBACvC,IAAI,MAAM;oBAAE,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAC;gBAC3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC;oBAChC,eAAe,EAAE;wBACf,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,0BAA0B,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC7G,cAAc,EAAE,SAAS;wBACzB,+BAA+B,EAAE,KAAK;wBACtC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACxC,GAAG,CAAC,IAAI,CAAC,KAAK;4BACZ,CAAC,CAAC;gCACE,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;oCACxB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;oCAC1B,IAAI,IAAI;wCAAE,OAAO,CAAC,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;gCACnD,CAAC;6BACF;4BACH,CAAC,CAAC,EAAE,CAAC;wBACP,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAChD;iBACF,CAAC,CAAC;gBACH,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAkB,CAAC;gBAC7C,MAAM;YACR,CAAC;YACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;gBACvB,oEAAoE;gBACpE,qCAAqC;gBACrC,+DAA+D;gBAC/D,iEAAiE;gBACjE,qEAAqE;gBACrE,oEAAoE;gBACpE,qCAAqC;gBACrC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,IAAI,KAAK,CACb,+EAA+E,CAChF,CAAC;gBACJ,CAAC;gBACD,IAAI,uBAAuB,CAAC,SAAS,CAAC,EAAE,CAAC;oBACvC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;oBACzE,MAAM,GAAG,GAA2B;wBAClC,+DAA+D;wBAC/D,6DAA6D;wBAC7D,qDAAqD;wBACrD,kBAAkB,EAAE,sBAAsB;wBAC1C,oBAAoB,EAAE,MAAM;wBAC5B,+DAA+D;wBAC/D,sDAAsD;wBACtD,iBAAiB,EAAE,MAAM;qBAC1B,CAAC;oBACF,MAAM,QAAQ,GAAG,gBAAgB,CAAC;wBAChC,eAAe,EAAE;4BACf,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,0BAA0B,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC7G,cAAc,EAAE,SAAS;4BACzB,+BAA+B,EAAE,KAAK;4BACtC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACxC,GAAG,CAAC,IAAI,CAAC,KAAK;gCACZ,CAAC,CAAC;oCACE,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;wCACxB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;wCAC1B,IAAI,IAAI;4CAAE,OAAO,CAAC,KAAK,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;oCACvD,CAAC;iCACF;gCACH,CAAC,CAAC,EAAE,CAAC;4BACP,GAAG;yBACJ;qBACF,CAAC,CAAC;oBACH,oEAAoE;oBACpE,gEAAgE;oBAChE,kEAAkE;oBAClE,kEAAkE;oBAClE,mEAAmE;oBACnE,oDAAoD;oBACpD,MAAM,OAAO,GAAG,SAAS,KAAK,aAAa,IAAI,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;oBACzF,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAkB,CAAC;oBAC3C,MAAM;gBACR,CAAC;gBACD,8DAA8D;gBAC9D,2DAA2D;gBAC3D,mEAAmE;gBACnE,gEAAgE;gBAChE,8CAA8C;gBAC9C,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACxD,MAAM,QAAQ,GAAG,YAAY,CAAC;oBAC5B,MAAM;oBACN,OAAO,EAAE,mBAAmB;iBAC7B,CAAC,CAAC;gBACH,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAkB,CAAC;gBAClD,MAAM;YACR,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACR,mEAAmE;gBACnE,oEAAoE;gBACpE,gEAAgE;gBAChE,gEAAgE;gBAChE,iEAAiE;gBACjE,UAAU;gBACV,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACxD,MAAM,QAAQ,GAAG,YAAY,CAAC;oBAC5B,MAAM,EAAE,MAAM,IAAI,EAAE;oBACpB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnD,CAAC,CAAC;gBACH,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAkB,CAAC;gBAClD,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,QAAQ,CACpB,MAAc,EACd,QAAwB,EACxB,SAAkJ,EAClJ,eAAe,GAAG,GAAG;QAErB,MAAM,YAAY,GAAG,SAAS,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,SAAS,EAAE,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QAE1F,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,0BAA0B,CAAC;gBAC9C,MAAM;gBACN,QAAQ;gBACR,KAAK,EAAE,SAAS;gBAChB,SAAS,EAAE,IAAI,CAAC,YAAY;gBAC5B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,kBAAkB;gBACpC,cAAc,EAAE,IAAI,CAAC,qBAAqB;gBAC1C,oBAAoB,EAAE,IAAI,CAAC,sBAAsB;aAClD,CAAC,CAAC;YACH,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC;YAChC,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;YAChC,KAAK;YACL,MAAM;YACN,QAAQ;YACR,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YACxF,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;SACpD,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,WAAW;YACrC,WAAW,EAAE,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,SAAS;YACnD,YAAY,EAAE,MAAM,CAAC,KAAK,EAAE,YAAY,IAAI,SAAS;SACtD,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACK,wBAAwB,CAC9B,MAAiB,EACjB,aAAsB,EACtB,SAA4C;QAE5C,wEAAwE;QACxE,+DAA+D;QAC/D,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,IAAY,EAAE,KAAgB,EAAE,IAAY;QACpE,+DAA+D;QAC/D,IAAI,IAAI,CAAC,YAAY,KAAK,aAAa;YAAE,OAAO,IAAI,CAAC,YAAY,CAAA;QAEjE,IAAI,MAAM,GAAG,UAAU,CAAA;QAEvB,0EAA0E;QAC1E,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAA;QACpG,IAAI,uBAAuB,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAClF,MAAM,IAAI,YAAY,CAAA;QACxB,CAAC;QAED,mEAAmE;QACnE,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,qBAAqB,CAAA;QACjC,CAAC;QAED,sDAAsD;QACtD,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;YAChD,MAAM,IAAI,gBAAgB,CAAA;QAC5B,CAAC;QAED,MAAM,IAAI,gBAAgB,CAAA;QAC1B,OAAO,MAAM,CAAA;IACf,CAAC;IAED,0DAA0D;IAC1D,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,uCAAuC;IACvC,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,0DAA0D;IAC1D,cAAc,CAAC,QAAgB;QAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,QAAQ,EAAE,EAAE,CAAC,CAAC;IAChF,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,IAAY,EAAE,UAAmB,EAAE,WAAW,GAAG,KAAK;QAC7E,MAAM,eAAe,GAAG,CAAC,CAAC,UAAU,IAAI,CACtC,IAAI,CAAC,cAAc,KAAK,QAAQ;eAC7B,CAAC,IAAI,CAAC,cAAc,KAAK,MAAM,IAAI,WAAW,CAAC,CACnD,CAAC;QACF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE;YAC/B;gBACE,IAAI,EAAE,OAAgB;gBACtB,KAAK,EAAE,UAAU;gBACjB,SAAS,EAAE,YAAY;aACxB;SACF,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,cAAc;QACpB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEzC,0DAA0D;QAC1D,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAClD,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACpC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM;YACtC,CAAC;QACH,CAAC;QACD,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC;YAC3C,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YACrC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAExB,0BAA0B;QAC1B,yDAAyD;QACzD,+EAA+E;QAC/E,qFAAqF;QACrF,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAEhE,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACnC,mCAAmC;YACnC,IAAI,GAAG,IAAI,cAAc;gBAAE,OAAO,GAAG,CAAC;YAEtC,iEAAiE;YACjE,IAAI,GAAG,GAAG,iBAAiB,EAAE,CAAC;gBAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC7B,MAAM,GAAG,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/D,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAkB,CAAC;gBAC7E,CAAC;gBACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBACxB,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAkB,CAAC;gBACxE,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC;YAED,oEAAoE;YACpE,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO,GAAG,CAAC;YAEpC,MAAM,YAAY,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACvF,MAAM,SAAS,GAAG,YAAY,EAAE,IAAI,KAAK,WAAW;gBAClD,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAC/B,OAAO,YAAY,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CACrE;gBACH,CAAC,CAAC,EAAE,CAAC;YAEP,6CAA6C;YAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO;qBAC1B,MAAM,CAAC,CAAC,IAAI,EAA0C,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;qBAC9E,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACd,GAAG,IAAI;oBACP,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;iBACnD,CAAC,CAAC,CAAC;gBACN,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,SAAS,EAAkB,CAAC;YACxD,CAAC;YAED,wBAAwB;YACxB,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,EAAkB,CAAC;YAC7F,CAAC;YAED,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,eAAe,CAAC,GAAiB;QACvC,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;YAC1C,CAAC,CAAC,GAAG,CAAC,OAAO;YACb,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;gBAC1B,CAAC,CAAC,GAAG,CAAC,OAAO;qBACR,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;qBACrE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;qBAClB,IAAI,CAAC,IAAI,CAAC;gBACf,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACxD,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;QACvC,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QAClD,OAAO,sBAAsB,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IACnE,CAAC;IAEO,oBAAoB,CAAC,GAAW;QACtC,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,SAAS,CAAC;YAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC;YACvB,IAAI,QAAQ;gBAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG;gBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACpE,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,4BAA4B,CAAC,GAAW;QAC9C,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,MAAM,CAAC,MAAM,EAAE,QAAQ;gBAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACpE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;gBACtC,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACpC,IAAI,EAAE,EAAE,QAAQ;wBAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,cAAc;QAChB,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,IAAY,EAAE,SAAmB;QACzD,OAAO,IAAI,CAAC,OAAO,CACjB,oEAAoE,EACpE,CAAC,KAAK,EAAE,EAAE;YACR,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,aAAa,KAAK,CAAC,CAAC;gBAAE,OAAO,gCAAgC,CAAC;YAClE,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;YACpD,MAAM,YAAY,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACvE,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC;gBACvC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtB,CAAC,CAAC,MAAM,CAAC;YACX,OAAO,8BAA8B,YAAY,2BAA2B,YAAY,GAAG,CAAC;QAC9F,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CACV,IAAY,EACZ,KAAgB,EAChB,YAAqB,EACrB,QAA2C,EAC3C,OAAmC;QAEnC,MAAM,mBAAmB,GAAG,IAAI,CAAC,gBAAgB,IAAI,QAAQ,EAAE,OAAO,KAAK,CAAC,CAAC;QAC7E,MAAM,kBAAkB,GAAG,IAAI,CAAC,eAAe,KAAK,KAAK,CAAC,GAAG,CAAC;QAC9D,MAAM,WAAW,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;QAEvD,yEAAyE;QACzE,yEAAyE;QACzE,0EAA0E;QAC1E,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,CAAC;QACtC,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACzG,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,WAAW,GAAG,kBAAkB;eACjC,CAAC,WAAW;eACZ,OAAO,KAAK,SAAS;eACrB,WAAW,GAAG,CAAC;eACf,SAAS,GAAG,CAAC;eACb,WAAW,GAAG,SAAS,GAAG,GAAG,CAAC;QAEnC,+EAA+E;QAC/E,MAAM,cAAc,GAAG,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3D,IAAI,eAAuB,CAAC;QAC5B,IAAI,cAAsB,CAAC;QAC3B,IAAI,WAAW,EAAE,CAAC;YAChB,iEAAiE;YACjE,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,IAAI,OAAQ,CAAC,KAAK,CAAC,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,OAAQ,CAAC,KAAK,CAAC,CAAC;YACnE,IAAI,OAAQ,CAAC,OAAO,CAAC,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,OAAQ,CAAC,OAAO,CAAC,CAAC;YACzE,IAAI,OAAQ,CAAC,OAAO,CAAC,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,OAAQ,CAAC,OAAO,CAAC,CAAC;YACzE,KAAK,CAAC,IAAI,CAAC,IAAI,OAAQ,CAAC,cAAc,4DAA4D,CAAC,CAAC;YACpG,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,cAAc,GAAG,iDAAiD,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,mBAAmB;gBACnC,CAAC,CAAC,wBAAwB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC1C,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACnD,cAAc,GAAG,UAAU,CAAC;QAC9B,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC;QAEjC,mEAAmE;QACnE,qEAAqE;QACrE,IAAI,WAAW,GAAG,SAAS,IAAI;;;OAG5B,KAAK,CAAC,GAAG;SACP,KAAK,CAAC,KAAK;;EAElB,cAAc;EACd,eAAe,EAAE,CAAC;QAEhB,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC;YAClD,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC;YACnD,WAAW,IAAI,aAAa,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,GAAG,KAAK,SAAS,aAAa,CAAC;YACxF,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACpB,WAAW,IAAI,kEAAkE,CAAC;YACpF,CAAC;iBAAM,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;gBAC1B,WAAW,IAAI,sHAAsH,CAAC;YACxI,CAAC;iBAAM,IAAI,UAAU,IAAI,GAAG,EAAE,CAAC;gBAC7B,WAAW,IAAI,uKAAuK,CAAC;YACzL,CAAC;QACH,CAAC;QAED,iFAAiF;QACjF,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAClG,WAAW,IAAI,4CAA4C,KAAK,CAAC,YAAY,EAAE,CAAC;QAClF,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,WAAW,IAAI,OAAO,YAAY,EAAE,CAAC;QACvC,CAAC;QAED,WAAW,IAAI,kCAAkC,CAAC;QAElD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC,CAAC;QACxG,MAAM,WAAW,GAAG,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QACjF,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC5F,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAE5F,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACxD,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,CACxC,IAAI,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,cAAc,KAAK,MAAM,IAAI,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC,CACtG,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,WAAW,KAAK,CAAC,GAAG,cAAc,WAAW,EAAE,CAAC,CAAC;YACpF,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,KAAK,iBAAiB,IAAI,cAAc,UAAU,QAAQ,EAAE,OAAO,IAAI,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;YAClI,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAmB;YAC/B,GAAG,IAAI,CAAC,cAAc,EAAE;YACxB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE;SACvC,CAAC;QAEF,MAAM,mBAAmB,GAAG,mBAAmB;YAC7C,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC,CAAA;QAE/D,MAAM,SAAS,GAAG,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QACzE,6EAA6E;QAC7E,MAAM,UAAU,GAAG,QAAQ,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAExF,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC;QACtB,IAAI,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACnC,IAAI,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACrC,IAAI,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAEvC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;QACpG,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE7B,2EAA2E;QAC3E,uEAAuE;QACvE,uCAAuC;QACvC,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACxF,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YACpE,CAAC;YACD,MAAM,aAAa,GAAmB;gBACpC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE;gBACtC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE;gBACnC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,gHAAgH,EAAE;aAC5I,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;gBAClG,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;oBACrB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACjD,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,6BAA6B,CAAC,EAAE,CAAC;wBACtE,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC;wBACvB,MAAM,GAAG,WAAW,CAAC;oBACvB,CAAC;oBACD,UAAU,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;oBAC/D,WAAW,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;oBAClE,YAAY,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;gBACvE,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,gEAAgE;YAClE,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QAEvD,mBAAmB;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;QAED,OAAO;YACL,GAAG,MAAM;YACT,GAAG;YACH,UAAU;YACV,WAAW;YACX,YAAY;YACZ,SAAS,EAAE,cAAc;SAC1B,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAgB,EAAE,IAAY;QAC3C,MAAM,WAAW,GAAG,kCAAkC,IAAI;;;OAGvD,KAAK,CAAC,GAAG;SACP,KAAK,CAAC,KAAK;;sDAEkC,CAAC;QAEnD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAE/E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAChC,eAAe,EACf,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EACxC,SAAS,EACT,GAAG,CACJ,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAErC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAC1C,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,wBAAwB;gBACzD,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;gBAClE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBACzD,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;gBACxE,GAAG;gBACH,UAAU;aACX,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,KAAK,EAAE,CAAC;gBACR,UAAU,EAAE,qCAAqC;gBACjD,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,EAAE;gBACV,WAAW,EAAE,EAAE;gBACf,GAAG;gBACH,UAAU;aACX,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,IAAY,EACZ,KAAgB,EAChB,UAA+D,EAC/D,YAAqB;QAErB,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7C,mFAAmF;QACnF,MAAM,KAAK,GAAG;YACZ,SAAS,IAAI,EAAE;YACf,EAAE;YACF,SAAS,KAAK,CAAC,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE;YACrC,EAAE;YACF,aAAa;YACb,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CACxC,GAAG,KAAK,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,MAAM,SAAS,CAAC,IAAI,WAAW,SAAS,CAAC,KAAK,GAAG,CAChF;SACF,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QAC/B,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,2CAA2C,CAAC,CAAC;QAE5D,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CACvC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAChB,KAAK,CAAC,UAAU,EAChB,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC;QACzE,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,SAAS,CAAC;QACzE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAChC,iBAAiB,EACjB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EACxC,EAAE,QAAQ,EAAE,KAAK,EAAE,EACnB,GAAG,CACJ,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAErC,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnF,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC;YACxE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO;gBACL,QAAQ;gBACR,SAAS,EAAE,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,8BAA8B;gBACnG,UAAU,EAAE,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;oBAC/C,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC7C,CAAC,CAAC,GAAG;gBACP,GAAG;gBACH,UAAU;aACX,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;YAC5E,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,QAAQ,CAAC,GAAG;gBACtB,SAAS,EAAE,+EAA+E;gBAC1F,UAAU,EAAE,GAAG;gBACf,GAAG;gBACH,UAAU;aACX,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,oBAAoB,CACxB,KAAgB,EAChB,IAAY,EACZ,aAAqB;QAErB,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,SAAS,IAAI;;0BAEX,aAAa;;;OAGhC,KAAK,CAAC,GAAG;SACP,KAAK,CAAC,KAAK;;;EAGlB,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,OAAO,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE;;0EAEV,CAAC;QAEvE,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAE/E,wEAAwE;QACxE,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,YAAY;YACnE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC;YACrC,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,YAAY;YAChE,CAAC,CAAC,IAAI,CAAC,YAAY;YACnB,CAAC,CAAC,SAAS,CAAC;QAEd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAChC;;;;iKAI2J,EAC3J,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EACxC,cAAc,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,EAC5F,GAAG,CACJ,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC;QAExB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,KAAK,IAAI;gBAClC,UAAU,EAAE,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;oBAC/C,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC7C,CAAC,CAAC,GAAG;gBACP,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAC/D,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;aAC7D,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,qDAAqD;YACrD,OAAO;gBACL,QAAQ,EAAE,KAAK;gBACf,UAAU,EAAE,CAAC;gBACb,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,CAAC,4CAA4C,CAAC;aACxD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CACf,KAAgB,EAChB,IAAY,EACZ,WAAqB,EACrB,YAAqB;QAErB,MAAM,WAAW,GAAG,SAAS,IAAI;;;EAGnC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;OAGjD,KAAK,CAAC,GAAG;SACP,KAAK,CAAC,KAAK;;;EAGlB,KAAK,CAAC,QAAQ;;gEAEgD,CAAC;QAE7D,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAE/E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAChC,YAAY,IAAI,mBAAmB,EACnC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EACxC,SAAS,EACT,IAAI,CACL,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAErC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,kEAAkE;YAClE,IAAI,MAA+B,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;oBAC9B,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;YAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC;YACpI,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAEjE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;YACxE,MAAM,UAAU,GAAG,CAAC,CAAU,EAAsB,EAAE,CACpD,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEnE,MAAM,QAAQ,GAAoB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;gBAC9D,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC;oBACnD,QAAQ,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAA8B;oBACvG,QAAQ,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAA8B;oBAC1G,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC;oBACxC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;oBAClC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;oBACtC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjD,mBAAmB;oBACnB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/E,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/E,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,KAAe,CAAC;wBACpC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAA+B,EAAE;wBAC9C,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC,CAAC;gBACL,CAAC,CAAC,EAAE,CAAC;YAEP,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,OAAO,MAAM,CAAC,iBAAiB,KAAK,QAAQ;gBAChG,CAAC,CAAC,MAAM,CAAC,iBAA4C;gBACrD,CAAC,CAAC,SAAS,CAAC;YAEd,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAC1C,QAAQ;gBACR,GAAG;gBACH,UAAU;gBACV,iBAAiB;aAClB,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,KAAK,EAAE,CAAC;gBACR,QAAQ,EAAE,EAAE;gBACZ,GAAG;gBACH,UAAU;aACX,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CACpB,cAAsB,EACtB,MAAc;QAEd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAChC;;;;;;;;;;;;;;;;;mFAiB6E,EAC7E,CAAC;gBACC,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,WAAW,MAAM,oBAAoB,cAAc,EAAE;aAC/D,CAAC,EACF,SAAS,EACT,GAAG,CACJ,CAAC;QAEF,IAAI,CAAC;YACH,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,OAAO,EAAE,CAAC;YAEtC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;YACxE,OAAO,MAAM;iBACV,MAAM,CAAC,CAAC,CAA0B,EAAE,EAAE,CACrC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAc,CAAC;gBACjC,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ;gBACzB,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAC5B;iBACA,GAAG,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC;gBACpC,IAAI,EAAE,CAAC,CAAC,IAAmD;gBAC3D,GAAG,EAAE,CAAC,CAAC,GAAa;gBACpB,KAAK,EAAE,CAAC,CAAC,KAAe;aACzB,CAAC,CAAC,CAAC;QACR,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,GAAW;QACvB,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAEtB,6BAA6B;QAC7B,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;YAC5B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ;YAC3C,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW;YACrD,eAAe,EAAE,UAAU,EAAE,OAAO;SACrC,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEhC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;YAC9F,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC;YAEzF,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC1C,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,aAAa,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;YAC9E,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAEtD,OAAO;gBACL,MAAM;gBACN,WAAW,EAAE,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC;gBACpD,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ;gBAChE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;gBAC1D,WAAW,EAAE,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;gBACpF,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,eAAe;aAChE,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,UAAU,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACpE,OAAO;gBACL,sEAAsE;gBACtE,8EAA8E;gBAC9E,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE;gBACpC,SAAS,EAAE,gCAAgC,UAAU,wBAAwB;aAC9E,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAED;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,GAAG,GAAa,EAAE,CAAA;IAExB,mFAAmF;IACnF,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE;QACjC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAA;QACnE,IAAI,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;QACnB,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;IACxE,CAAC,CAAA;IAED,qEAAqE;IACrE,wEAAwE;IACxE,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE,CACxC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE3B,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAElC,sDAAsD;QACtD,IAAI,CAAC,MAAM,IAAI,6BAA6B,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/D,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAClB,CAAC,EAAE,CAAA;YACH,SAAQ;QACV,CAAC;QAED,2EAA2E;QAC3E,MAAM,KAAK,GAAgD,CAAC,MAAM,CAAC,CAAA;QACnE,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACb,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAChC,IACE,CAAC,IAAI;gBACL,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;gBAC7B,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;gBACzB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI;gBAC5B,MAAK;YACP,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAChB,CAAC,EAAE,CAAA;QACL,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,uCAAuC;YACvC,KAAK,MAAM,CAAC,IAAI,KAAK;gBAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACzC,CAAC;aAAM,CAAC;YACN,gDAAgD;YAChD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YACpC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,MAAM,KAAK,CAAC,MAAM,GAAG,CAAC,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,IAAI,CAAC,IAAI,IAAI,CAAC,CAAA;QACnG,CAAC;QACD,CAAC,GAAG,CAAC,CAAA;IACP,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACvB,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,QAAgB,EAAE,QAAQ,GAAG,MAAM;IACzD,iFAAiF;IACjF,IAAI,QAAQ,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;QAC5B,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAEjD,+EAA+E;IAC/E,sEAAsE;IACtE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,iGAAiG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,0DAA0D;IAC1D,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAI,eAAe,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;QACvC,OAAO,eAAe,GAAG,UAAU,UAAU,CAAC,MAAM,2CAA2C,CAAC;IAClG,CAAC;IAED,0EAA0E;IAC1E,oEAAoE;IACpE,sCAAsC;IACtC,2EAA2E;IAC3E,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,gEAAgE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAChF,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,SAAS,GAAG,QAAQ,GAAG,YAAY,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,yBAAyB;IAChF,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;YAChD,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACrD,CAAC,CAAC,WAAW,CAAC;QAChB,OAAO,YAAY,GAAG,IAAI,GAAG,QAAQ;YACnC,UAAU,WAAW,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,kBAAkB,UAAU,CAAC,MAAM,+BAA+B,CAAC;IACnJ,CAAC;IAED,yDAAyD;IACzD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,yCAAyC,CAAC;AACjF,CAAC;AAED,SAAS,wBAAwB,CAAC,QAAgB;IAChD,MAAM,OAAO,GAAG,kBAAkB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,MAAM,QAAQ,GAAG,IAAI,CAAC;IACtB,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3C,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,qDAAqD,CAAC;AAC1F,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA+B,EAAE,YAAyB;IAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,SAAS;QAClD,MAAM,QAAQ,GAAG,KAAgC,CAAC;QAClD,MAAM,UAAU,GAAG,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,SAAS;QAC3D,IAAI,CAAC;YACH,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,kDAAkD;QACpD,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1D,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,UAAkB,EAAE,IAA6B;IACvE,MAAM,UAAU,GAAG,CAAC,KAAa,EAAU,EAAE;QAC3C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,qBAAqB,KAAK,YAAY,CAAC,CAAC;QACtG,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,KAAa,EAAU,EAAE;QACvC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxC,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,QAAgB,EAAU,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE7F,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,OAAO;YACV,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/D,KAAK,MAAM;YACT,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACpF,KAAK,OAAO;YACV,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACvF,KAAK,OAAO;YACV,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/D,KAAK,QAAQ;YACX,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACxF,KAAK,QAAQ;YACX,OAAO;gBACL,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;gBAClD,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClE,CAAC;QACJ,KAAK,UAAU;YACb,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,KAAK,MAAM;YACT,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;QACpD,KAAK,UAAU;YACb,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9D,KAAK,WAAW;YACd,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/D,KAAK,eAAe;YAClB,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;QACrC,KAAK,UAAU;YACb,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1D,KAAK,OAAO;YACV,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,oBAAoB,EAAE,CAAC;QAC/E;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/brain/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,9 +18,4 @@
|
|
|
18
18
|
* passed to `page.addInitScript`. Pure DOM/CSS — no dependencies.
|
|
19
19
|
*/
|
|
20
20
|
export declare const CURSOR_OVERLAY_INIT_SCRIPT = "\n(() => {\n if (window.__bad_overlay_installed) return;\n window.__bad_overlay_installed = true;\n\n const NS = 'http://www.w3.org/2000/svg';\n const Z = 2147483647; // max i32\n\n // \u2500\u2500 Root container (absolute, ignores pointer events) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n const root = document.createElement('div');\n root.id = '__bad_overlay_root';\n Object.assign(root.style, {\n position: 'fixed',\n inset: '0',\n width: '100vw',\n height: '100vh',\n pointerEvents: 'none',\n zIndex: String(Z),\n });\n\n // \u2500\u2500 Cursor sprite (SVG arrow) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n const cursor = document.createElementNS(NS, 'svg');\n cursor.setAttribute('width', '24');\n cursor.setAttribute('height', '24');\n cursor.setAttribute('viewBox', '0 0 24 24');\n cursor.setAttribute('fill', 'none');\n Object.assign(cursor.style, {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: 'translate(-100px, -100px)',\n transition: 'transform 220ms cubic-bezier(0.22, 1, 0.36, 1)',\n pointerEvents: 'none',\n filter: 'drop-shadow(0 1px 2px rgba(0,0,0,0.4))',\n });\n cursor.innerHTML = `\n <path d=\"M3 2 L21 12 L13 14 L9 22 Z\" fill=\"#ffffff\" stroke=\"#0b1220\" stroke-width=\"1.5\" stroke-linejoin=\"round\"/>\n `;\n\n // \u2500\u2500 Pulse ring (animated on click) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n const ring = document.createElement('div');\n Object.assign(ring.style, {\n position: 'fixed',\n left: '0',\n top: '0',\n width: '0',\n height: '0',\n borderRadius: '9999px',\n border: '3px solid rgba(79, 70, 229, 0.95)',\n transform: 'translate(-100px, -100px)',\n pointerEvents: 'none',\n opacity: '0',\n transition: 'all 500ms ease-out',\n });\n\n // \u2500\u2500 Highlight box (drawn around the target element) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n const box = document.createElement('div');\n box.id = '__bad_overlay_box';\n Object.assign(box.style, {\n position: 'fixed',\n left: '0',\n top: '0',\n width: '0',\n height: '0',\n border: '2px solid rgba(34, 197, 94, 0.95)',\n borderRadius: '6px',\n background: 'rgba(34, 197, 94, 0.08)',\n boxShadow: '0 0 0 4px rgba(34, 197, 94, 0.18)',\n transform: 'translate(-100px, -100px)',\n pointerEvents: 'none',\n transition: 'all 180ms ease-out',\n opacity: '0',\n });\n\n // \u2500\u2500 Action label (shows \"click\" / \"type\" / etc next to cursor) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n const label = document.createElement('div');\n Object.assign(label.style, {\n position: 'fixed',\n left: '0',\n top: '0',\n padding: '4px 10px',\n background: 'rgba(11, 18, 32, 0.92)',\n color: '#ffffff',\n fontFamily: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif',\n fontSize: '12px',\n fontWeight: '600',\n borderRadius: '6px',\n transform: 'translate(-200px, -200px)',\n pointerEvents: 'none',\n opacity: '0',\n transition: 'all 220ms cubic-bezier(0.22, 1, 0.36, 1)',\n boxShadow: '0 4px 12px rgba(0,0,0,0.3)',\n whiteSpace: 'nowrap',\n });\n\n // Append to documentElement (not body) so the overlay is not affected by\n // body's stacking context \u2014 many modern sites apply transform/will-change\n // to body which would clip a max-z-index child appended to body.\n // Bound the retry loop so a body-less doc (XML, PDF viewer, chrome://)\n // doesn't spin requestAnimationFrame forever.\n let attachAttempts = 0;\n function attach() {\n const host = document.documentElement || document.body;\n if (!host) {\n if (++attachAttempts > 60) return; // ~1 second of attempts\n requestAnimationFrame(attach);\n return;\n }\n host.appendChild(root);\n root.appendChild(box);\n root.appendChild(ring);\n root.appendChild(cursor);\n root.appendChild(label);\n }\n attach();\n\n // \u2500\u2500 Public API \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n window.__bad_overlay = {\n /**\n * Highlight a target element by CSS selector. Returns the rect or null.\n * Used when the caller has a stable CSS selector.\n */\n highlight(selector) {\n try {\n const el = typeof selector === 'string'\n ? document.querySelector(selector)\n : null;\n if (!el) return null;\n const rect = el.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return null;\n Object.assign(box.style, {\n width: rect.width + 'px',\n height: rect.height + 'px',\n transform: `translate(${rect.left}px, ${rect.top}px)`,\n opacity: '1',\n });\n return { x: rect.left + rect.width / 2, y: rect.top + rect.height / 2, width: rect.width, height: rect.height };\n } catch { return null; }\n },\n\n /**\n * Highlight an arbitrary rect at given page coordinates. Used when the\n * caller already computed the rect via Playwright's boundingBox (i.e.,\n * the @ref selector isn't a real CSS selector).\n */\n highlightRect(x, y, width, height) {\n try {\n Object.assign(box.style, {\n width: width + 'px',\n height: height + 'px',\n transform: `translate(${x}px, ${y}px)`,\n opacity: '1',\n });\n } catch { /* never let cosmetic overlay break a run */ }\n },\n\n /**\n * Move the cursor to (x, y) and show a label.\n */\n moveTo(x, y, labelText) {\n cursor.style.transform = `translate(${x - 4}px, ${y - 4}px)`;\n if (labelText) {\n label.textContent = labelText;\n Object.assign(label.style, {\n transform: `translate(${x + 16}px, ${y + 16}px)`,\n opacity: '1',\n });\n }\n },\n\n /**\n * Pulse a click ring at (x, y).\n */\n pulseClick(x, y) {\n // reset\n Object.assign(ring.style, {\n width: '0',\n height: '0',\n transform: `translate(${x}px, ${y}px)`,\n opacity: '1',\n });\n // expand\n requestAnimationFrame(() => {\n Object.assign(ring.style, {\n width: '60px',\n height: '60px',\n transform: `translate(${x - 30}px, ${y - 30}px)`,\n opacity: '0',\n });\n });\n },\n\n /**\n * Hide all overlay elements.\n */\n hide() {\n box.style.opacity = '0';\n label.style.opacity = '0';\n ring.style.opacity = '0';\n },\n\n /**\n * Hide just the highlight box (cursor + label stay).\n */\n clearHighlight() {\n box.style.opacity = '0';\n },\n };\n})();\n";
|
|
21
|
-
/**
|
|
22
|
-
* Wait time after `moveTo` so the cursor animation finishes before the
|
|
23
|
-
* actual action fires. Tuned to match the CSS transition duration.
|
|
24
|
-
*/
|
|
25
|
-
export declare const CURSOR_ANIMATION_MS = 240;
|
|
26
21
|
//# sourceMappingURL=cursor-overlay.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor-overlay.d.ts","sourceRoot":"","sources":["../../src/drivers/cursor-overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,eAAO,MAAM,0BAA0B,01OAiNtC,CAAA
|
|
1
|
+
{"version":3,"file":"cursor-overlay.d.ts","sourceRoot":"","sources":["../../src/drivers/cursor-overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,eAAO,MAAM,0BAA0B,01OAiNtC,CAAA"}
|
|
@@ -227,9 +227,4 @@ export const CURSOR_OVERLAY_INIT_SCRIPT = `
|
|
|
227
227
|
};
|
|
228
228
|
})();
|
|
229
229
|
`;
|
|
230
|
-
/**
|
|
231
|
-
* Wait time after `moveTo` so the cursor animation finishes before the
|
|
232
|
-
* actual action fires. Tuned to match the CSS transition duration.
|
|
233
|
-
*/
|
|
234
|
-
export const CURSOR_ANIMATION_MS = 240;
|
|
235
230
|
//# sourceMappingURL=cursor-overlay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor-overlay.js","sourceRoot":"","sources":["../../src/drivers/cursor-overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiNzC,CAAA
|
|
1
|
+
{"version":3,"file":"cursor-overlay.js","sourceRoot":"","sources":["../../src/drivers/cursor-overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiNzC,CAAA"}
|
|
@@ -50,9 +50,9 @@ export interface PlaywrightDriverOptions {
|
|
|
50
50
|
*
|
|
51
51
|
* Default: false. Enable for demo recordings, debugging, and the session viewer.
|
|
52
52
|
*
|
|
53
|
-
* **Performance
|
|
54
|
-
*
|
|
55
|
-
*
|
|
53
|
+
* **Performance:** zero added wall time. The overlay's CSS transition runs
|
|
54
|
+
* asynchronously alongside the actual click — the cursor in the next
|
|
55
|
+
* screenshot lands wherever the transition has reached by then.
|
|
56
56
|
*/
|
|
57
57
|
showCursor?: boolean;
|
|
58
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playwright.d.ts","sourceRoot":"","sources":["../../src/drivers/playwright.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAWrD,iDAAiD;AACjD,MAAM,WAAW,aAAa;IAC5B,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,6CAA6C;IAC7C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qEAAqE;IACrE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sEAAsE;IACtE,cAAc,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAC7C,6EAA6E;IAC7E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,qBAAa,gBAAiB,YAAW,MAAM;IAc3C,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,OAAO;IAdjB,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,YAAY,CAAK;IACzB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB,CAAC,CAAgB;gBAGnC,IAAI,EAAE,IAAI,EACV,OAAO,GAAE,uBAA4B;IAU/C;;;OAGG;YACW,oBAAoB;IAWlC;;;;;;;OAOG;YACW,uBAAuB;
|
|
1
|
+
{"version":3,"file":"playwright.d.ts","sourceRoot":"","sources":["../../src/drivers/playwright.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAWrD,iDAAiD;AACjD,MAAM,WAAW,aAAa;IAC5B,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,6CAA6C;IAC7C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qEAAqE;IACrE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sEAAsE;IACtE,cAAc,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IAC7C,6EAA6E;IAC7E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,qBAAa,gBAAiB,YAAW,MAAM;IAc3C,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,OAAO;IAdjB,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,YAAY,CAAK;IACzB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB,CAAC,CAAgB;gBAGnC,IAAI,EAAE,IAAI,EACV,OAAO,GAAE,uBAA4B;IAU/C;;;OAGG;YACW,oBAAoB;IAWlC;;;;;;;OAOG;YACW,uBAAuB;IA4CrC,0DAA0D;IAC1D,aAAa,IAAI,aAAa,GAAG,SAAS;IAI1C,OAAO,IAAI,IAAI;IAIf,MAAM,IAAI,MAAM;IAIV,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;YAS1D,SAAS;IAWvB;;;OAGG;IACG,qBAAqB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuC5E;;;OAGG;YACW,gBAAgB;IAcxB,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC;IAmDnC;;OAEG;YACW,UAAU;IA4DxB;;OAEG;YACW,iBAAiB;IAwCzB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B;;;OAGG;YACW,mBAAmB;YAUnB,aAAa;IAUrB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CAuJrD"}
|