@duetso/agent 0.1.151 → 0.1.154
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/package.json +3 -1
- package/dist/src/cli/rpc.d.ts +3 -2
- package/dist/src/cli/rpc.d.ts.map +1 -1
- package/dist/src/cli/rpc.js +7 -1
- package/dist/src/cli/rpc.js.map +1 -1
- package/dist/src/memory/loader.d.ts.map +1 -1
- package/dist/src/memory/loader.js +1 -4
- package/dist/src/memory/loader.js.map +1 -1
- package/dist/src/memory/observational.d.ts +32 -11
- package/dist/src/memory/observational.d.ts.map +1 -1
- package/dist/src/memory/observational.js +36 -12
- package/dist/src/memory/observational.js.map +1 -1
- package/dist/src/memory/storage.d.ts.map +1 -1
- package/dist/src/memory/storage.js +1 -3
- package/dist/src/memory/storage.js.map +1 -1
- package/dist/src/session/session.d.ts +16 -1
- package/dist/src/session/session.d.ts.map +1 -1
- package/dist/src/session/session.js +21 -6
- package/dist/src/session/session.js.map +1 -1
- package/dist/src/tui/app.d.ts.map +1 -1
- package/dist/src/tui/app.js +3 -0
- package/dist/src/tui/app.js.map +1 -1
- package/dist/src/tui/slash-commands.d.ts +8 -0
- package/dist/src/tui/slash-commands.d.ts.map +1 -1
- package/dist/src/tui/slash-commands.js +22 -0
- package/dist/src/tui/slash-commands.js.map +1 -1
- package/dist/src/tui/tool-formatters.js +0 -6
- package/dist/src/tui/tool-formatters.js.map +1 -1
- package/dist/src/turn-runner/duration.d.ts +36 -0
- package/dist/src/turn-runner/duration.d.ts.map +1 -0
- package/dist/src/turn-runner/duration.js +93 -0
- package/dist/src/turn-runner/duration.js.map +1 -0
- package/dist/src/turn-runner/prompts.js +7 -4
- package/dist/src/turn-runner/prompts.js.map +1 -1
- package/dist/src/turn-runner/skill-context.d.ts.map +1 -1
- package/dist/src/turn-runner/skill-context.js +4 -1
- package/dist/src/turn-runner/skill-context.js.map +1 -1
- package/dist/src/turn-runner/skills.d.ts.map +1 -1
- package/dist/src/turn-runner/skills.js +38 -9
- package/dist/src/turn-runner/skills.js.map +1 -1
- package/dist/src/turn-runner/state-compaction.d.ts +11 -0
- package/dist/src/turn-runner/state-compaction.d.ts.map +1 -1
- package/dist/src/turn-runner/state-compaction.js +11 -0
- package/dist/src/turn-runner/state-compaction.js.map +1 -1
- package/dist/src/turn-runner/state-machine-controller.d.ts.map +1 -1
- package/dist/src/turn-runner/state-machine-controller.js +23 -4
- package/dist/src/turn-runner/state-machine-controller.js.map +1 -1
- package/dist/src/turn-runner/tools.d.ts +5 -4
- package/dist/src/turn-runner/tools.d.ts.map +1 -1
- package/dist/src/turn-runner/tools.js +65 -69
- package/dist/src/turn-runner/tools.js.map +1 -1
- package/dist/src/turn-runner/turn-runner.d.ts +51 -4
- package/dist/src/turn-runner/turn-runner.d.ts.map +1 -1
- package/dist/src/turn-runner/turn-runner.js +180 -9
- package/dist/src/turn-runner/turn-runner.js.map +1 -1
- package/dist/src/turn-runner/wire-shaping.d.ts +5 -15
- package/dist/src/turn-runner/wire-shaping.d.ts.map +1 -1
- package/dist/src/turn-runner/wire-shaping.js +12 -5
- package/dist/src/turn-runner/wire-shaping.js.map +1 -1
- package/dist/src/types/config.d.ts +6 -4
- package/dist/src/types/config.d.ts.map +1 -1
- package/dist/src/types/memory.d.ts +6 -2
- package/dist/src/types/memory.d.ts.map +1 -1
- package/dist/src/types/protocol.d.ts +69 -1
- package/dist/src/types/protocol.d.ts.map +1 -1
- package/dist/src/types/state-machine.d.ts +24 -5
- package/dist/src/types/state-machine.d.ts.map +1 -1
- package/package.json +3 -1
|
@@ -2,6 +2,7 @@ import { Agent, } from "@earendil-works/pi-agent-core";
|
|
|
2
2
|
import { getEnvApiKey, isContextOverflow, } from "@earendil-works/pi-ai";
|
|
3
3
|
import dedent from "dedent";
|
|
4
4
|
import { assistantText } from "../core/serializer.js";
|
|
5
|
+
import { scheduledStateFallbackWakeAt } from "./duration.js";
|
|
5
6
|
import { toXML } from "../lib/xml.js";
|
|
6
7
|
import { createObservationalContextTransform, DEFAULT_EFFECTIVE_CONTEXT, estimateTokens, resolveObservationalMemorySettings, stripObservationalContextMessages, updateObservationalMemory, } from "../memory/observational.js";
|
|
7
8
|
import { rebuildMemoryContextPack } from "../memory/context-pack.js";
|
|
@@ -9,7 +10,7 @@ import { createEmbeddingClient } from "../memory/embedding.js";
|
|
|
9
10
|
import { loadStoredMemory } from "../memory/storage.js";
|
|
10
11
|
import { MemoryContextCache } from "../memory/store.js";
|
|
11
12
|
import { DEFAULT_CLI_MEMORY_MODEL, DEFAULT_CLI_MODEL, resolveModelName, } from "../model-resolution/resolver.js";
|
|
12
|
-
import { compactTurnState } from "./state-compaction.js";
|
|
13
|
+
import { COMPACT_MESSAGE_TOKENS_RATIO, compactTurnState, } from "./state-compaction.js";
|
|
13
14
|
import { agentEventToTurnEvents, agentMessageText } from "./agent-events.js";
|
|
14
15
|
import { createRecallMemorySystemPromptLayer, createSourceOfTruthSystemPromptLayer, createStateMachineSystemPromptLayer, } from "./prompts.js";
|
|
15
16
|
import { applyEvictionHorizon, calculateWireTokens, createInitialHorizon, findEvictionHorizon, } from "./wire-shaping.js";
|
|
@@ -127,6 +128,15 @@ export class TurnRunner {
|
|
|
127
128
|
* transitions, but it emits one public terminal event for the whole chain.
|
|
128
129
|
*/
|
|
129
130
|
activeTurnPromise;
|
|
131
|
+
/**
|
|
132
|
+
* In-flight `compact()` promise, published while the drain + horizon
|
|
133
|
+
* advance is running so concurrent `turn()` calls can serialize behind
|
|
134
|
+
* it. Compact has no `activeTurnPromise` (it does not start a turn
|
|
135
|
+
* chain), so this is the only signal a fire-and-forget caller (e.g. the
|
|
136
|
+
* TUI `/compact` slash command followed immediately by a prompt) has
|
|
137
|
+
* that the wire-shaping horizon is mid-advance.
|
|
138
|
+
*/
|
|
139
|
+
compactInFlight;
|
|
130
140
|
/** Latest runner-owned state, hydrated by start() and advanced by terminal events. */
|
|
131
141
|
state;
|
|
132
142
|
/** True after `start()` has emitted the initial `turn_started` event. */
|
|
@@ -179,6 +189,144 @@ export class TurnRunner {
|
|
|
179
189
|
this.requireStarted();
|
|
180
190
|
this.replaceFollowUpQueue(command.prompts);
|
|
181
191
|
}
|
|
192
|
+
/**
|
|
193
|
+
* Compact the runner's wire-visible message tail on demand by advancing
|
|
194
|
+
* the sticky `wireGuardHorizon` so the next request to the actor model
|
|
195
|
+
* dispatches a smaller prompt.
|
|
196
|
+
*
|
|
197
|
+
* Critical: this does **not** mutate `state.agent.messages` or the live
|
|
198
|
+
* parent agent's transcript. The durable transcript is the source of
|
|
199
|
+
* truth for resume, snapshotting, observer/reflector passes, and the
|
|
200
|
+
* TUI scrollback; destroying it would lose information the wire-shaping
|
|
201
|
+
* pipeline is specifically designed to preserve. Instead this reuses
|
|
202
|
+
* the same horizon-advance mechanism that
|
|
203
|
+
* `createObservationalContextTransform` runs every turn — it just
|
|
204
|
+
* forces it now, against a tighter token target than the automatic
|
|
205
|
+
* trigger uses.
|
|
206
|
+
*
|
|
207
|
+
* Target selection:
|
|
208
|
+
* - When the current wire-tail tokens exceed
|
|
209
|
+
* `COMPACT_MESSAGE_TOKENS_RATIO` (20%) of the parent agent's
|
|
210
|
+
* effective context window, the target is that 20% ceiling —
|
|
211
|
+
* leaving 80% headroom for system prompt, memory packs, the next
|
|
212
|
+
* user prompt, and the next assistant response.
|
|
213
|
+
* - When the wire-tail is already under 20%, the target halves the
|
|
214
|
+
* current wire-tail tokens instead. `compact` is user-initiated, so
|
|
215
|
+
* even an already-light session must produce visible relief.
|
|
216
|
+
*
|
|
217
|
+
* On a successful horizon advance the memory context pack is refreshed
|
|
218
|
+
* (same fire-and-forget call the transform's `onCompaction` handler
|
|
219
|
+
* uses) so the rendered prefix lines up with the new horizon and the
|
|
220
|
+
* next prompt-cache fault is paid once instead of twice.
|
|
221
|
+
*
|
|
222
|
+
* Rejected with a soft warning when a turn chain is in flight —
|
|
223
|
+
* mutating the horizon mid-stream would invalidate the request the
|
|
224
|
+
* parent (or a state agent) is already dispatching. `activeTurnPromise`
|
|
225
|
+
* is the single source of truth here, so poll/timer sleeps pass the
|
|
226
|
+
* gate cleanly: the chain has already resolved to the `sleep` terminal
|
|
227
|
+
* before compact is allowed to run.
|
|
228
|
+
*/
|
|
229
|
+
async compact() {
|
|
230
|
+
this.requireStarted();
|
|
231
|
+
// `activeTurnPromise` is the single source of truth for "a turn chain
|
|
232
|
+
// is in flight" — it covers the parent agent dispatching, a state
|
|
233
|
+
// agent dispatching while the parent is paused, and a poll/script
|
|
234
|
+
// command currently executing. Sleep terminals (poll/timer waits)
|
|
235
|
+
// have already resolved the chain and cleared this, so compact is
|
|
236
|
+
// free to run during those waits.
|
|
237
|
+
if (this.activeTurnPromise || this.compactInFlight) {
|
|
238
|
+
this.emit({
|
|
239
|
+
type: "system",
|
|
240
|
+
level: "warn",
|
|
241
|
+
message: this.compactInFlight
|
|
242
|
+
? "compact ignored: a compact pass is already in progress."
|
|
243
|
+
: "compact ignored: a turn chain is in flight; send compact between turns.",
|
|
244
|
+
});
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
// Publish the compact promise so concurrent `turn()` calls observe
|
|
248
|
+
// it and serialize behind us. Fire-and-forget callers (e.g. the TUI
|
|
249
|
+
// `/compact` slash command) would otherwise let a follow-up prompt
|
|
250
|
+
// dispatch with the pre-compact wire-tail and race the horizon
|
|
251
|
+
// mutation. The promise resolves to `void` after the inner body
|
|
252
|
+
// finishes, so `turn()` only needs to await, not inspect a result.
|
|
253
|
+
const inFlight = this.runCompact();
|
|
254
|
+
this.compactInFlight = inFlight;
|
|
255
|
+
try {
|
|
256
|
+
await inFlight;
|
|
257
|
+
}
|
|
258
|
+
finally {
|
|
259
|
+
if (this.compactInFlight === inFlight) {
|
|
260
|
+
this.compactInFlight = undefined;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
async runCompact() {
|
|
265
|
+
try {
|
|
266
|
+
const state = this.requireRunnerState();
|
|
267
|
+
// Drain: observe any unobserved tail before evicting it from the
|
|
268
|
+
// wire. `updateObservationalMemory` internally computes the
|
|
269
|
+
// unobserved tail via `getUnobservedMessageTail`, so this is
|
|
270
|
+
// idempotent when the observer already ran on those turns and
|
|
271
|
+
// does real work only when there's something new to capture.
|
|
272
|
+
// Wrapped because memory-model calls can fail; a failed drain
|
|
273
|
+
// should still let the user's compact request advance the horizon.
|
|
274
|
+
try {
|
|
275
|
+
await this.updateMemoryAfterAgentRun(state.agent.messages, state.options);
|
|
276
|
+
}
|
|
277
|
+
catch (error) {
|
|
278
|
+
this.emit({
|
|
279
|
+
type: "system",
|
|
280
|
+
level: "warn",
|
|
281
|
+
message: `compact: observation drain failed (${truncateForSystemMessage(error instanceof Error ? error.message : String(error))}); evicting anyway.`,
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
// Rebuild the rendered pack so the new observations from the
|
|
285
|
+
// drain (and anything else freshly written) are part of the
|
|
286
|
+
// prefix the next turn ships with the trimmed wire-tail.
|
|
287
|
+
await this.refreshMemoryContextPack();
|
|
288
|
+
const observable = stripObservationalContextMessages(state.agent.messages);
|
|
289
|
+
const previousHorizon = this.wireGuardHorizon.evictionHorizon;
|
|
290
|
+
const currentRetained = applyEvictionHorizon(observable, previousHorizon);
|
|
291
|
+
const beforeTokens = calculateWireTokens(currentRetained);
|
|
292
|
+
const contextWindow = this.effectiveContextWindow();
|
|
293
|
+
const ceiling = Math.max(1, Math.floor(contextWindow * COMPACT_MESSAGE_TOKENS_RATIO));
|
|
294
|
+
const overCeiling = beforeTokens > ceiling;
|
|
295
|
+
const target = overCeiling ? ceiling : Math.max(1, Math.floor(beforeTokens / 2));
|
|
296
|
+
const targetLabel = overCeiling
|
|
297
|
+
? `target ${target} = 20% of ${contextWindow}`
|
|
298
|
+
: `target ${target} = 50% of current ${beforeTokens}`;
|
|
299
|
+
const newHorizon = findEvictionHorizon(observable, previousHorizon, (candidate) => calculateWireTokens(candidate) <= target);
|
|
300
|
+
if (newHorizon === previousHorizon) {
|
|
301
|
+
this.emit({
|
|
302
|
+
type: "system",
|
|
303
|
+
level: "info",
|
|
304
|
+
message: `compact: nothing to evict (wire-tail ~${beforeTokens} tokens; ${targetLabel}).`,
|
|
305
|
+
});
|
|
306
|
+
return;
|
|
307
|
+
}
|
|
308
|
+
this.wireGuardHorizon.evictionHorizon = newHorizon;
|
|
309
|
+
const retainedAfter = applyEvictionHorizon(observable, newHorizon);
|
|
310
|
+
const afterTokens = calculateWireTokens(retainedAfter);
|
|
311
|
+
const dropped = currentRetained.length - retainedAfter.length;
|
|
312
|
+
this.emit({
|
|
313
|
+
type: "system",
|
|
314
|
+
level: "info",
|
|
315
|
+
message: `compact: dropped ${dropped} older wire message(s); wire-tail ~${beforeTokens} → ~${afterTokens} tokens (${targetLabel}).`,
|
|
316
|
+
});
|
|
317
|
+
}
|
|
318
|
+
catch (error) {
|
|
319
|
+
// The drain and pack-refresh have their own try/catch; this outer
|
|
320
|
+
// catch guards against an unexpected throw in the horizon-advance
|
|
321
|
+
// path so `runCompact` always settles cleanly and `compactInFlight`
|
|
322
|
+
// resets via the caller's finally.
|
|
323
|
+
this.emit({
|
|
324
|
+
type: "system",
|
|
325
|
+
level: "warn",
|
|
326
|
+
message: `compact: failed (${truncateForSystemMessage(error instanceof Error ? error.message : String(error))}).`,
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
}
|
|
182
330
|
/**
|
|
183
331
|
* Set up a session before any turn runs. Loads memory and skills, then
|
|
184
332
|
* emits `turn_started` with the initial state (a fresh state, or the
|
|
@@ -200,6 +348,14 @@ export class TurnRunner {
|
|
|
200
348
|
}
|
|
201
349
|
: createInitialTurnState(mode, this.resolveTurnOptions(startOptions));
|
|
202
350
|
this.stateMachineController.hydrate(state.stateMachine);
|
|
351
|
+
// Hydrate the wire-shaping object in place. `this.wireGuardHorizon` is
|
|
352
|
+
// referenced by the observational context transform; replacing the
|
|
353
|
+
// reference would orphan the transform's view. `Object.assign` over
|
|
354
|
+
// the fresh default lets the persisted state contribute every field
|
|
355
|
+
// it carries without this code knowing the field list.
|
|
356
|
+
if (state.wireGuardHorizon) {
|
|
357
|
+
Object.assign(this.wireGuardHorizon, state.wireGuardHorizon);
|
|
358
|
+
}
|
|
203
359
|
this.setState(state);
|
|
204
360
|
this.initializeParentAgent();
|
|
205
361
|
this.started = true;
|
|
@@ -211,6 +367,15 @@ export class TurnRunner {
|
|
|
211
367
|
this.requireStarted();
|
|
212
368
|
await this.ensureMemoryLoaded();
|
|
213
369
|
await this.ensureSkillsLoaded();
|
|
370
|
+
// Serialize behind an in-flight compact. Compact advances the wire
|
|
371
|
+
// horizon and may write observations to the durable store; a turn
|
|
372
|
+
// started concurrently would dispatch the pre-compact wire-tail and
|
|
373
|
+
// race the horizon mutation. Awaiting here gives fire-and-forget
|
|
374
|
+
// callers (TUI `/compact` then a prompt) the same ordering RPC mode
|
|
375
|
+
// gets for free by awaiting `compact` between iterations.
|
|
376
|
+
if (this.compactInFlight) {
|
|
377
|
+
await this.compactInFlight;
|
|
378
|
+
}
|
|
214
379
|
if (this.activeTurnPromise) {
|
|
215
380
|
// turn() is the concurrency boundary: repeated calls extend or queue
|
|
216
381
|
// behind the active chain instead of creating a separate parent transcript.
|
|
@@ -544,8 +709,7 @@ export class TurnRunner {
|
|
|
544
709
|
}
|
|
545
710
|
const state = currentScheduledState(terminal.state.stateMachine);
|
|
546
711
|
const progress = state ? terminal.state.stateMachine?.progress?.states[state.name] : undefined;
|
|
547
|
-
const wakeAt = progress?.nextWakeAt ??
|
|
548
|
-
(state?.kind === "poll" ? Date.now() + state.intervalMs : (state?.wakeAt ?? Date.now()));
|
|
712
|
+
const wakeAt = progress?.nextWakeAt ?? scheduledStateFallbackWakeAt(state);
|
|
549
713
|
return {
|
|
550
714
|
type: "sleep",
|
|
551
715
|
wakeAt,
|
|
@@ -813,6 +977,16 @@ export class TurnRunner {
|
|
|
813
977
|
todos: copyOptionalArray(state.todos ?? this.state?.todos),
|
|
814
978
|
followUpQueue: copyOptionalArray(state.followUpQueue ?? this.state?.followUpQueue),
|
|
815
979
|
queuedCommands: copyOptionalArray(state.queuedCommands ?? this.state?.queuedCommands),
|
|
980
|
+
// Carry wire-shaping state through every snapshot so persistence
|
|
981
|
+
// layers (state.json, terminal payloads, getState consumers) see
|
|
982
|
+
// the current value. Copy by spread so consumers can't mutate the
|
|
983
|
+
// runner's live object. Omit when nothing has moved off the
|
|
984
|
+
// fresh-runner default so untouched sessions stay schema-clean;
|
|
985
|
+
// `evictionHorizon` is the only field today, so it doubles as the
|
|
986
|
+
// dirty sentinel — revisit when more wire-shaping fields land.
|
|
987
|
+
...(this.wireGuardHorizon.evictionHorizon > 0
|
|
988
|
+
? { wireGuardHorizon: { ...this.wireGuardHorizon } }
|
|
989
|
+
: {}),
|
|
816
990
|
};
|
|
817
991
|
return this.applyAutoStateCompaction(snapshot);
|
|
818
992
|
}
|
|
@@ -1017,10 +1191,7 @@ export class TurnRunner {
|
|
|
1017
1191
|
};
|
|
1018
1192
|
if (mode === "agent") {
|
|
1019
1193
|
return {
|
|
1020
|
-
tools: [
|
|
1021
|
-
...createDefaultTurnRunnerTools(cwd, todoStorage, skills, recallStorage),
|
|
1022
|
-
...mcpTools,
|
|
1023
|
-
],
|
|
1194
|
+
tools: [...createDefaultTurnRunnerTools(cwd, todoStorage, recallStorage), ...mcpTools],
|
|
1024
1195
|
};
|
|
1025
1196
|
}
|
|
1026
1197
|
return {
|
|
@@ -1560,7 +1731,7 @@ export class TurnRunner {
|
|
|
1560
1731
|
/**
|
|
1561
1732
|
* Estimate the per-segment occupancy of the parent agent's input before
|
|
1562
1733
|
* reconciliation with provider `totalTokens`. System prompt and memory
|
|
1563
|
-
* packs use the same `ceil(chars/
|
|
1734
|
+
* packs use the same `ceil(chars / CHARS_PER_TOKEN)` heuristic as the memory pipeline so
|
|
1564
1735
|
* compaction triggers stay on the same scale as `MEMORY_BUDGET_RATIOS`.
|
|
1565
1736
|
*
|
|
1566
1737
|
* The message tail uses {@link calculateWireTokens} over the
|
|
@@ -1568,7 +1739,7 @@ export class TurnRunner {
|
|
|
1568
1739
|
* messages already dropped by wire-shaping stop counting against the
|
|
1569
1740
|
* `messages` segment instead of inflating it from the runner's full
|
|
1570
1741
|
* retained transcript. Text and structured blocks (`toolCall`, thinking,
|
|
1571
|
-
* etc.) use `ceil(chars/
|
|
1742
|
+
* etc.) use `ceil(chars / CHARS_PER_TOKEN)`, and image blocks contribute a fixed
|
|
1572
1743
|
* per-image estimate rather than their base64 byte length.
|
|
1573
1744
|
*
|
|
1574
1745
|
* `emitParentAgentEvent` rescales all four segments with
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn-runner.js","sourceRoot":"","sources":["../../../src/turn-runner/turn-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"turn-runner.js","sourceRoot":"","sources":["../../../src/turn-runner/turn-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,GAIN,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,YAAY,EACZ,iBAAiB,GAGlB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,4BAA4B,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EACL,mCAAmC,EACnC,yBAAyB,EACzB,cAAc,EACd,kCAAkC,EAClC,iCAAiC,EACjC,yBAAyB,GAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAgC,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EACL,wBAAwB,EACxB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,GAEjB,MAAM,uBAAuB,CAAC;AAuB/B,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EACL,mCAAmC,EACnC,oCAAoC,EACpC,mCAAmC,GACpC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,0BAA0B,EAC1B,8CAA8C,EAE9C,yBAAyB,GAE1B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,iBAAiB,EAAmB,MAAM,UAAU,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EACL,sBAAsB,GAIvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,EAC7B,qBAAqB,GAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA4CpE,oFAAoF;AACpF,MAAM,kBAAkB,GAAG;IACzB,cAAc;IACd,UAAU;IACV,aAAa;IACb,cAAc;CAC8C,CAAC;AAE/D;;;;;;;;GAQG;AACH,MAAM,UAAU,oCAAoC,CAClD,IAA4B,EAC5B,WAAmB;IAEnB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;IACpD,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IAC3E,CAAC;IAED,MAAM,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3C,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;QACd,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC;IAED,MAAM,QAAQ,GAAa,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAEnD,IAAI,MAAgB,CAAC;IACrB,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,oEAAoE;QACpE,uEAAuE;QACvE,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;QACvB,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC;QACtC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YACpE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAE,IAAI,KAAK,CAAC,CAAC,CAAE,CAAC;YACpD,IAAI,SAAS,GAAG,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC/B,CAAC;gBACD,IAAI,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAE;aAC5C,CAAC,CAAC,CAAC;YACJ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,IAAI,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,oEAAoE;QACpE,gEAAgE;QAChE,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACxD,IAAI,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/B,CAAC;YACD,IAAI,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,CAAE;SACtC,CAAC,CAAC,CAAC;QACJ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,CAAC,CAAE;QACxB,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAE;QACpB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAE;QACvB,YAAY,EAAE,MAAM,CAAC,CAAC,CAAE;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,UAAU;IAwEA;IAvEJ,aAAa,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC7D,iFAAiF;IAC9D,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACrD,mEAAmE;IAC3D,iBAAiB,CAA2B;IACpD;;;;OAIG;IACK,WAAW,CAAS;IAC5B,2FAA2F;IACnF,kBAAkB,GAAG,KAAK,CAAC;IACnC,2EAA2E;IACnE,mBAAmB,GAA4B,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACxE,sEAAsE;IACrD,sBAAsB,CAAyB;IAChE,qFAAqF;IAC7E,qBAAqB,CAA8B;IAC3D;;;;;;OAMG;IACK,sBAAsB,GAAG,KAAK,CAAC;IACvC;;;;;OAKG;IACK,iBAAiB,CAA8B;IACvD;;;;;;;OAOG;IACK,eAAe,CAAiB;IACxC,sFAAsF;IAC9E,KAAK,CAAa;IAC1B,yEAAyE;IACjE,OAAO,GAAG,KAAK,CAAC;IACxB,qGAAqG;IAC7F,SAAS,CAAkB;IACnC;;;;;;;;;;OAUG;IACO,uBAAuB,CAI/B;IACF,kFAAkF;IAC1E,YAAY,GAAG,KAAK,CAAC;IAC7B,0EAA0E;IAClE,UAAU,CAAc;IACb,YAAY,CAAe;IAE9C,YAAqB,MAAwB;QAAxB,WAAM,GAAN,MAAM,CAAkB;QAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,sBAAsB,GAAG,IAAI,sBAAsB,CAAC;YACvD,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;YAChC,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;YAC/D,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;SAC3F,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,CAAC;QACnC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,MAAM,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,CAAC;QACxC,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACnC,MAAM,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED,SAAS,CAAC,OAAyB;QACjC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,OAAqC;QACrD,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,sEAAsE;QACtE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kCAAkC;QAClC,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACnD,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,IAAI,CAAC,eAAe;oBAC3B,CAAC,CAAC,yDAAyD;oBAC3D,CAAC,CAAC,yEAAyE;aAC9E,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,mEAAmE;QACnE,oEAAoE;QACpE,mEAAmE;QACnE,+DAA+D;QAC/D,gEAAgE;QAChE,mEAAmE;QACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC;QACjB,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;gBACtC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxC,iEAAiE;YACjE,4DAA4D;YAC5D,6DAA6D;YAC7D,8DAA8D;YAC9D,6DAA6D;YAC7D,8DAA8D;YAC9D,mEAAmE;YACnE,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE,sCAAsC,wBAAwB,CACrE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,qBAAqB;iBACvB,CAAC,CAAC;YACL,CAAC;YACD,6DAA6D;YAC7D,4DAA4D;YAC5D,yDAAyD;YACzD,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAEtC,MAAM,UAAU,GAAG,iCAAiC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;YAC9D,MAAM,eAAe,GAAG,oBAAoB,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;YAC1E,MAAM,YAAY,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;YAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACpD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,4BAA4B,CAAC,CAAC,CAAC;YACtF,MAAM,WAAW,GAAG,YAAY,GAAG,OAAO,CAAC;YAC3C,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC;YACjF,MAAM,WAAW,GAAG,WAAW;gBAC7B,CAAC,CAAC,UAAU,MAAM,aAAa,aAAa,EAAE;gBAC9C,CAAC,CAAC,UAAU,MAAM,qBAAqB,YAAY,EAAE,CAAC;YACxD,MAAM,UAAU,GAAG,mBAAmB,CACpC,UAAU,EACV,eAAe,EACf,CAAC,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,MAAM,CACxD,CAAC;YACF,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;gBACnC,IAAI,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE,yCAAyC,YAAY,YAAY,WAAW,IAAI;iBAC1F,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,UAAU,CAAC;YACnD,MAAM,aAAa,GAAG,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YACnE,MAAM,WAAW,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;YACvD,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,oBAAoB,OAAO,sCAAsC,YAAY,OAAO,WAAW,YAAY,WAAW,IAAI;aACpI,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,kEAAkE;YAClE,kEAAkE;YAClE,oEAAoE;YACpE,mCAAmC;YACnC,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,oBAAoB,wBAAwB,CACnD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,IAAI;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,CAAC,OAAyB;QACnC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;QACxD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;QACrC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK;YACzB,CAAC,CAAC;gBACE,GAAG,OAAO,CAAC,KAAK;gBAChB,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;aACtE;YACH,CAAC,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACxD,uEAAuE;QACvE,mEAAmE;QACnE,oEAAoE;QACpE,oEAAoE;QACpE,uDAAuD;QACvD,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC3B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QAC1D,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAoB;QAC7B,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,mEAAmE;QACnE,kEAAkE;QAClE,oEAAoE;QACpE,iEAAiE;QACjE,oEAAoE;QACpE,0DAA0D;QAC1D,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,eAAe,CAAC;QAC7B,CAAC;QACD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,qEAAqE;YACrE,4EAA4E;YAC5E,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC,iBAAiB,CAAC;QAChC,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC;YACH,OAAO,MAAM,iBAAiB,CAAC;QACjC,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,iBAAiB,KAAK,iBAAiB,EAAE,CAAC;gBACjD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,OAAoB;QAC7C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC;YACH,IAAI,QAA2B,CAAC;YAChC,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAClD,QAAQ,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YACxD,QAAQ,GAAG,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACtE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,QAAQ,GAAG;oBACT,GAAG,QAAQ;oBACX,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,GAAG,CAAC,IAAI,CAAC,uBAAuB;wBAC9B,CAAC,CAAC;4BACE,sBAAsB,EAAE,IAAI,CAAC,uBAAuB,CAAC,sBAAsB;4BAC3E,kBAAkB,EAAE,IAAI,CAAC,uBAAuB,CAAC,kBAAkB;4BACnE,gBAAgB,EAAE,IAAI,CAAC,uBAAuB,CAAC,gBAAgB;yBAChE;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,OAAO,QAAQ,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,OAAoB;QACnD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9B,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9B,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAEO,6BAA6B,CAAC,OAAoB;QACxD,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxF,yEAAyE;YACzE,6EAA6E;YAC7E,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;YACnD,IAAI,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,EAAE,CAAC;gBAChD,IAAI,OAAO,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;oBACrC,mEAAmE;oBACnE,qEAAqE;oBACrE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,sCAAsC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC9D,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEO,kBAAkB,CAAC,KAAY,EAAE,OAA8C;QACrF,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACtE,MAAM,YAAY,GAAG,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5D,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3C,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAEO,sCAAsC,CAC5C,OAAe,EACf,OAA8C;QAE9C,MAAM,MAAM,GAAG,IAAI,CAAC,oCAAoC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC3E,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC;QACpC,KAAK,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;YACvB,IAAI,IAAI,CAAC,qBAAqB,KAAK,MAAM;gBAAE,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACpF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,oCAAoC,CAChD,OAAe,EACf,OAA8C;QAE9C,MAAM,MAAM,GACV,OAAO,CAAC,QAAQ,KAAK,OAAO;YAC1B,CAAC,CAAC,MAAM,CAAA;;;;;;cAMF,OAAO;WACV;YACH,CAAC,CAAC,OAAO,CAAC;QACd,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;YACjC,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;SAC/D,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,QAA2B;QAC/D,IAAI,MAAM,GAAG,QAAQ,CAAC;QACtB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,IACE,MAAM,CAAC,IAAI,KAAK,OAAO;gBACvB,IAAI,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,EACjF,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,IACE,MAAM,CAAC,IAAI,KAAK,aAAa;gBAC7B,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,EAC1D,CAAC;gBACD,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;gBAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC1B,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzC,IAAI,CAAC,MAAM;gBAAE,MAAM;YACnB,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,CAAC,QAAQ,CAAC;gBACZ,GAAG,MAAM,CAAC,KAAK;gBACf,aAAa,EAAE,IAAI,CAAC,gBAAgB,EAAE;gBACtC,cAAc,EAAE,IAAI,CAAC,iBAAiB,EAAE;aACzC,CAAC,CAAC;YACH,sEAAsE;YACtE,+DAA+D;YAC/D,oEAAoE;YACpE,0DAA0D;YAC1D,mEAAmE;YACnE,qEAAqE;YACrE,6DAA6D;YAC7D,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACjE,SAAS;YACX,CAAC;YACD,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,oBAAoB,CAAC,OAA8C;QACzE,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC1F,MAAM,IAAI,GAAG,MAAM,CAAA;;;QAGf,SAAS;KACZ,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,GAAG,IAAI,OAAO,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;IACpF,CAAC;IAEO,kBAAkB,CAAC,OAAoB;QAC7C,IACE,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC;YACxD,OAAO,CAAC,QAAQ,KAAK,WAAW,EAChC,CAAC;YACD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;IACjE,CAAC;IAEO,oBAAoB,CAAC,OAAiC;QAC5D,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,WAAW,EAAE,kBAAkB,EAAE,CAAC;QACvC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAC5C,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,qBAAqB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAEO,6BAA6B,CAAC,OAAiC;QACrE,IAAI,CAAC,4BAA4B,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,kBAAkB;YAAE,OAAO;QACnD,IAAI,CAAC,iBAAiB,CAAC;YACrB,GAAG,IAAI,CAAC,iBAAiB,EAAE;YAC3B,GAAG,OAAO,CAAC,GAAG,CACZ,CAAC,KAAK,EAAE,EAAE,CACR,CAAC;gBACC,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAA6B,CACjC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,4BAA4B;QAClC,IAAI,CAAC,iBAAiB,CACpB,IAAI,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CACpF,CAAC;IACJ,CAAC;IAEO,sBAAsB,CAC5B,OAAoB;QAEpB,OAAO,CACL,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,KAAK,WAAW,CAC7F,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAAC,OAAe,EAAE,MAA0B;QACtE,MAAM,KAAK,GACT,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;QAClE,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAEO,0BAA0B,CAAC,OAAoB;QACrD,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;YAAE,OAAO;QAClD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;;;OAKG;IACK,oBAAoB,CAAC,OAAe;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QACtE,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,OAAO;QACzB,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAEO,kBAAkB;QACxB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACjD,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,aAAa,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,SAAS,CAAC,QAA8B;QACtC,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,MAAM,uBAAuB,GAAG,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,CAAC;QAC5E,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACrD,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAsB;YAClC,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE;gBACL,GAAG,gBAAgB;gBACnB,MAAM,EAAE,aAAa;gBACrB,KAAK,EAAE,EAAE,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE;aAC1D;SACF,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC,kBAAkB,IAAI,uBAAuB,EAAE,CAAC;YACvD,yEAAyE;YACzE,mEAAmE;YACnE,wEAAwE;YACxE,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,CAAC;QACnC,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAClC,CAAC;IAES,IAAI,CAAC,KAAgB;QAC7B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACzC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAES,KAAK,CAAC,MAAM,CAAC,OAA0B;QAC/C,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,6BAA6B,CAAC,EAAE,GAAG,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1F,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAClF,MAAM,YAAY,GAAG,0BAA0B,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,cAAc,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;QACtF,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,QAA2B,CAAC;QAChC,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,MAAM,IAAI,CAAC,uCAAuC,CAAC;gBAC5D,KAAK;gBACL,MAAM;gBACN,MAAM;gBACN,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,+BAA+B,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACvE,CAAC;IAES,KAAK,CAAC,MAAM,CAAC,OAA0B;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,QAAQ;YACd,OAAO;YACP,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,IAAI;QAClB,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChD,MAAM,KAAK,GAAc,EAAE,GAAG,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAEjE,IAAI,aAAa,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACxC,wEAAwE;YACxE,oEAAoE;YACpE,8CAA8C;YAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC;YACxD,IAAI,MAAM;gBAAE,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACjE,CAAC;QAED,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,WAAW;YACnB,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,kBAAkB;SAC3B,CAAC;IACJ,CAAC;IAEO,+BAA+B,CACrC,aAAwB,EACxB,QAA2B;QAE3B,IACE,aAAa,CAAC,MAAM,KAAK,UAAU;YACnC,QAAQ,CAAC,IAAI,KAAK,UAAU;YAC5B,CAAC,yBAAyB,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,EACvD,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,IAAI,8BAA8B;aAC7E,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/F,MAAM,MAAM,GAAG,QAAQ,EAAE,UAAU,IAAI,4BAA4B,CAAC,KAAK,CAAC,CAAC;QAC3E,OAAO;YACL,IAAI,EAAE,OAAO;YACb,MAAM;YACN,KAAK,EAAE,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE;SACjD,CAAC;IACJ,CAAC;IAEO,0BAA0B,CAChC,MAAmC,EACnC,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE;QAErC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAC5C,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,iBAAiB;gBACpB,OAAO,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC;YACjF,KAAK,KAAK;gBACR,OAAO;oBACL,IAAI,EAAE,KAAK;oBACX,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE;iBACjD,CAAC;YACJ,KAAK,OAAO;gBACV,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC;YAC3F,KAAK,aAAa;gBAChB,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;YAC7E,KAAK,UAAU;gBACb,OAAO,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,MAAmC,EACnC,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE;QAErC,IAAI,IAAI,GAAG,MAAM,CAAC;QAClB,IAAI,KAAK,GAAG,SAAS,CAAC;QACtB,wEAAwE;QACxE,2EAA2E;QAC3E,iCAAiC;QACjC,OAAO,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACvC,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC;gBAChD,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,WAAW;gBACnB,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;aAC3D,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW;gBAAE,OAAO,MAAM,CAAC;YAC/E,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YACrB,IAAI,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC,qBAAqB,CAAC;QACpC,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7B,uDAAuD;YACvD,0DAA0D;YAC1D,kEAAkE;YAClE,iEAAiE;YACjE,kEAAkE;YAClE,kEAAkE;YAClE,mEAAmE;YACnE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,qCAAqC,EAAE,CAAC;YACxE,IAAI,YAAY;gBAAE,OAAO,YAAY,CAAC;YACtC,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACK,KAAK,CAAC,qCAAqC;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,CAAC;QACzD,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,OAAO,CAAC,oBAAoB;YAAE,OAAO,SAAS,CAAC;QACzE,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,EAAE,CAAC;QACvD,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,CAAC;QAClE,IAAI,CAAC,gBAAgB,EAAE,QAAQ;YAAE,OAAO,SAAS,CAAC;QAClD,MAAM,oBAAoB,GAAG,8CAA8C,CAAC;YAC1E,OAAO,EAAE,gBAAgB;SAC1B,CAAC,CAAC;QACH,uEAAuE;QACvE,wEAAwE;QACxE,6CAA6C;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1F,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC;YACtD,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,oBAAoB;YAC5B,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAChD,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACpE,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAC1D,YAAY,EACZ,YAAY,CAAC,OAAO,CAAC,KAAK,CAC3B,CAAC;QACF,IAAI,QAAQ;YAAE,OAAO,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACxF,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAC1C,SAAiB,EACjB,MAAgB;QAEhB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;YAC9C,MAAM,gBAAgB,GACpB,OAAO,KAAK,CAAC;gBACX,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,iBAAiB,OAAO,6GAA6G,CAAC;YAC5I,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAC1F,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC;gBACtD,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,MAAM,CAAA;uBACC,SAAS;;YAEpB,KAAK,CAAC;oBACN,eAAe,EAAE;wBACf,MAAM,EAAE,MAAM,IAAI,IAAI;qBACvB;iBACF,CAAC;;YAEA,gBAAgB,IAAI,EAAE;;;;;;;;;;;;;;;;SAgBzB;gBACD,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC;aACpC,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gCAAgC,CACxD,YAAY,EACZ,YAAY,CAAC,OAAO,CAAC,KAAK,CAC3B,CAAC;YACF,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,SAAS;YACX,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,0EAA0E;SAClF,CAAC;IACJ,CAAC;IAES,sBAAsB,CAAC,KAGhC;QACC,IAAI,OAAO,GAA4B,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACxD,MAAM,KAAK,GAAc;YACvB,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,OAAO;YAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;SAC3C,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAC5B;YACE,KAAK;YACL,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY;YAC5C,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,KAAK,CAAC,KAAK,CAAC;YAC9D,4DAA4D;YAC5D,4DAA4D;YAC5D,0BAA0B;YAC1B,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;SAC9C,EACD,CAAC,MAAM,EAAE,EAAE;YACT,OAAO,GAAG,MAAM,CAAC;QACnB,CAAC,CACF,CAAC;QACF,IAAI,WAAqC,CAAC;QAC1C,IAAI,iBAAqC,CAAC;QAC1C,MAAM,MAAM,GAAG,GAAqB,EAAE;YACpC,IAAI,OAAO,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBACzC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;YACvD,CAAC;YACD,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;gBAC7B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YAC7D,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3E,CAAC,CAAC;QAEF,MAAM,MAAM,GAAoB;YAC9B,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;SACxB,CAAC;QACF,OAAO;YACL,MAAM,EAAE,KAAK,IAAI,EAAE;gBACjB,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAC7E,IAAI,CAAC;oBACH,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBACjC,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;oBAC7C,OAAO,iBAAiB,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAChE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,iBAAiB;wBAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;oBACtD,IAAI,KAAK,YAAY,KAAK;wBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;oBAC5E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClD,CAAC;wBAAS,CAAC;oBACT,mEAAmE;oBACnE,kEAAkE;oBAClE,4DAA4D;oBAC5D,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAC1D,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;oBAC3B,WAAW,EAAE,EAAE,CAAC;gBAClB,CAAC;YACH,CAAC;YACD,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;gBACpB,iBAAiB,GAAG,MAAM,CAAC;gBAC3B,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,WAAW,EAAE,EAAE,CAAC;YAClB,CAAC;YACD,oBAAoB,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS;YAC5E,iBAAiB,EAAE,GAAG,EAAE,CAAC,iBAAiB;SAC3C,CAAC;IACJ,CAAC;IAEO,kBAAkB;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAEO,aAAa,CAAC,KAAgB;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW;YAClC,CAAC,CAAC;gBACE,GAAG,KAAK,CAAC,KAAK;gBACd,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM;gBAC1B,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ;aAC1C;YACH,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;QAChB,MAAM,QAAQ,GAAc;YAC1B,GAAG,KAAK;YACR,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE;YACtD,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;YAC1D,aAAa,EAAE,iBAAiB,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC;YAClF,cAAc,EAAE,iBAAiB,CAAC,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC;YACrF,iEAAiE;YACjE,iEAAiE;YACjE,kEAAkE;YAClE,4DAA4D;YAC5D,gEAAgE;YAChE,kEAAkE;YAClE,+DAA+D;YAC/D,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,CAAC;gBAC3C,CAAC,CAAC,EAAE,gBAAgB,EAAE,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,EAAE;gBACpD,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QACF,OAAO,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACK,wBAAwB,CAAC,KAAgB;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChD,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC3E,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CACV,qEAAqE,OAAO,2BAA2B,KAAK,uBAAuB,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,WAAW,EAAE,CAC1K,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,wBAAwB;QAC9B,0EAA0E;QAC1E,0EAA0E;QAC1E,+BAA+B;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC;QAChD,IAAI,OAAO,KAAK,KAAK;YAAE,OAAO,SAAS,CAAC;QACxC,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,EAAE,CAAC;QACzD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,QAAQ,CAAC,KAAgB;QAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAEO,wBAAwB;QAC9B,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAEO,gBAAgB;QACtB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IAEO,gBAAgB,CAAC,OAAiC;QACxD,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IAEO,iBAAiB;QACvB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;IAEO,iBAAiB,CAAC,QAAuB;QAC/C,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IAEO,kBAAkB;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1C,MAAM,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,QAAQ,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAClC,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,QAAQ;QACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IACxC,CAAC;IAEO,QAAQ,CAAC,KAAiB;QAChC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,0EAA0E;IAC1E,8EAA8E;IAC9E,6EAA6E;IAC7E,kCAAkC;IAC1B,6BAA6B,CAAC,KAAgB;QACpD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CACxB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CACrE,CAAC;QACF,IAAI,OAAO;YAAE,OAAO,KAAK,CAAC;QAC1B,MAAM,OAAO,GAAc,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QACnD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAES,kBAAkB;QAC1B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEO,qBAAqB;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxC,oEAAoE;QACpE,qEAAqE;QACrE,qEAAqE;QACrE,iEAAiE;QACjE,8DAA8D;QAC9D,mEAAmE;QACnE,mEAAmE;QACnE,0CAA0C;QAC1C,uEAAuE;QACvE,8DAA8D;QAC9D,mEAAmE;QACnE,8CAA8C;QAC9C,MAAM,MAAM,GAAG;YACb,KAAK,CAAC,IAAI,KAAK,OAAO;gBACpB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,mCAAmC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YAC7E,IAAI,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,mCAAmC,EAAE,CAAC,CAAC,CAAC,SAAS;YAC1F,8DAA8D;YAC9D,+DAA+D;YAC/D,iDAAiD;YACjD,oCAAoC,EAAE;SACvC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACrD,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,IAAI,CAAC,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CACjC;YACE,KAAK;YACL,kBAAkB;YAClB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC;SAChC,EACD,CAAC,MAAM,EAAE,EAAE;YACT,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC;QACpC,CAAC,CACF,CAAC;QACF,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAClC,CAAC;IAES,KAAK,CAAC,uCAAuC,CAAC,KAKvD;QACC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC;YACtD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACtF,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1E,CAAC;IAEO,KAAK,CAAC,gCAAgC,CAC5C,YAA+B,EAC/B,KAAgB;QAEhB,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,SAAS,CAAC;QAC3D,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACtD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACpE,CAAC;QACD,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,iCAAiC,EAAE,CAAC;YACpE,IACE,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE;gBACxC,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,EAAE,QAAQ,EACnD,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EACH,+FAA+F;iBAClG,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GACd,YAAY,CAAC,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;YAC3F,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC;gBACvC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC3F,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,UAAU;gBAC3C,YAAY,EAAE,UAAU;aACzB,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC;gBAC7C,KAAK,EAAE,UAAU;aAClB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,4BAA4B,EAAE,CAAC;YAC/D,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,2CAA2C;aACnD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAChF,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC;gBACvC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC3F,UAAU,EAAE,KAAK,CAAC,IAA2C;gBAC7D,YAAY,EAAE,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK;aAClD,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChF,CAAC;IAES,WAAW,CACnB,IAAc,EACd,WAAoB;QAIpB,MAAM,GAAG,GAAG,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAC5D,MAAM,WAAW,GAAG;YAClB,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC/B,QAAQ,EAAE,CAAC,KAAiB,EAAE,EAAE;gBAC9B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACrB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YACtC,CAAC;SACF,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC;QAC9C,MAAM,aAAa,GAA4B;YAC7C,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO;YACjD,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK;YACpC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,8DAA8D;YAC9D,8DAA8D;YAC9D,cAAc,EAAE,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC;SACxD,CAAC;QACF,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,OAAO;gBACL,KAAK,EAAE,CAAC,GAAG,4BAA4B,CAAC,GAAG,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,GAAG,QAAQ,CAAC;aACvF,CAAC;QACJ,CAAC;QAED,OAAO;YACL,KAAK,EAAE;gBACL,GAAG,qBAAqB,CAAC;oBACvB,GAAG;oBACH,IAAI;oBACJ,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,EAAE,UAAU;oBACzE,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE;oBAC/D,oBAAoB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,eAAe,EAAE;oBACzE,WAAW;oBACX,MAAM;oBACN,aAAa;iBACd,CAAC;gBACF,GAAG,QAAQ;aACZ;SACF,CAAC;IACJ,CAAC;IAEO,4BAA4B,CAAC,KAAY;QAC/C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAC5C,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAES,KAAK,CAAC,YAAY,CAC1B,KAAgB,EAChB,MAAc,EACd,MAAuB;QAEvB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC;YACtD,KAAK;YACL,MAAM;YACN,MAAM;SACP,CAAC,CAAC;QACH,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAES,KAAK,CAAC,cAAc,CAAC,KAAuB;QACpD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxC,IAAI,CAAC,mBAAmB,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC5C,MAAM,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QACzD,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAEjC,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/C,mEAAmE;YACnE,iEAAiE;YACjE,6DAA6D;YAC7D,6DAA6D;YAC7D,gEAAgE;YAChE,0DAA0D;YAC1D,8DAA8D;YAC9D,mBAAmB;YACnB,IAAI,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9C,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;YACzB,CAAC;YACD,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBACjC,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,WAAW,EAAE,CAAC;YACd,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,OAAO;gBACL,OAAO,EAAE,IAAI,CAAC,mBAAmB;gBACjC,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,EAAE;aACnE,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;QACtC,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,MAAM,KAAK,GAAG;YACZ,GAAG,KAAK,CAAC,KAAK;YACd,MAAM;YACN,KAAK,EAAE;gBACL,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK;gBACpB,MAAM;gBACN,QAAQ;aACT;YACD,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK;YACvC,aAAa,EAAE,IAAI,EAAE,aAAa,IAAI,KAAK,CAAC,KAAK,CAAC,aAAa;YAC/D,cAAc,EAAE,IAAI,EAAE,cAAc,IAAI,KAAK,CAAC,KAAK,CAAC,cAAc;SAC/C,CAAC;QACtB,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;QAED,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,mBAAmB;YACjC,OAAO,EAAE;gBACP,IAAI,EAAE,UAAU;gBAChB,MAAM;gBACN,KAAK;gBACL,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC;gBAC/B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY;aAChC;YACD,WAAW;SACZ,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAAC,OAAgB;QAC5C,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAClC,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,uBAAuB,CAAC,KAAuB;QAC3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACrC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACO,6BAA6B,CAAC,KAAY;QAClD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY;YAAE,OAAO,KAAK,CAAC;QAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;QACtC,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO,KAAK,CAAC;QACnE,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;YAAE,OAAO,KAAK,CAAC;QAEnF,8DAA8D;QAC9D,+DAA+D;QAC/D,yCAAyC;QACzC,MAAM,UAAU,GAAG,iCAAiC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjD,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;QAC9D,MAAM,UAAU,GAAG,mBAAmB,CACpC,UAAU,EACV,eAAe,EACf,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,IAAI,MAAM,CAC1C,CAAC;QACF,IAAI,UAAU,KAAK,eAAe;YAAE,OAAO,KAAK,CAAC;QAEjD,QAAQ,CAAC,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,UAAU,CAAC;QAEnD,MAAM,SAAS,GAAG,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC;QACtE,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,6BAA6B,OAAO,iBAAiB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,gBAAgB;SACvG,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACO,KAAK,CAAC,0BAA0B,CACxC,KAAY,EACZ,SAA+B,8BAA8B;QAE7D,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,OAAO,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY;gBAAE,OAAO;YACtC,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAAE,OAAO;YACjE,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,MAAM,GACV,cAAc,EAAE,IAAI,KAAK,WAAW,IAAI,cAAc,CAAC,YAAY;gBACjE,CAAC,CAAC,cAAc,CAAC,YAAY;gBAC7B,CAAC,CAAC,gBAAgB,CAAC;YACvB,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,mBAAmB,wBAAwB,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,EAAE,cAAc,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,WAAW,IAAI;aAChK,CAAC,CAAC;YACH,gEAAgE;YAChE,+DAA+D;YAC/D,kEAAkE;YAClE,uCAAuC;YACvC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;YAC3B,MAAM,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YACzD,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;YACrB,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;YACvB,6DAA6D;YAC7D,4DAA4D;YAC5D,6DAA6D;YAC7D,8DAA8D;YAC9D,8DAA8D;YAC9D,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,oBAAoB,CAAC;YAC5E,OAAO,GAAG,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAES,KAAK,CAAC,yBAAyB,CACvC,QAAwB,EACxB,OAAgC;QAEhC,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC3C,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC;QAChD,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC;YAC7C,OAAO;YACP,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,gBAAgB,EAAE,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;YAC3F,UAAU,EAAE,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC;YACjD,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC5B,QAAQ;YACR,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;YACrC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC3C,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,CAAC;SAC/D,CAAC,CAAC;QAEH,6DAA6D;QAC7D,iEAAiE;QACjE,iEAAiE;QACjE,kEAAkE;QAClE,wCAAwC;QACxC,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,wBAAwB;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC;QAChD,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC;YACH,MAAM,wBAAwB,CAAC;gBAC7B,OAAO;gBACP,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,QAAQ,EAAE,kCAAkC,CAC1C,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,EACzE,IAAI,CAAC,MAAM,CAAC,MAAM,CACnB;gBACD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACrF,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,4DAA4D;YAC5D,8DAA8D;QAChE,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,uBAAuB,CAAC,OAAgC;QACtD,OAAO,OAAO,EAAE,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,wBAAwB,CAAC;IACrF,CAAC;IAES,WAAW,CACnB,KAAuB,EACvB,eAA2D;QAE3D,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,IAAI,iBAAiB,CAAC,CAAC;QACnE,wEAAwE;QACxE,6EAA6E;QAC7E,wEAAwE;QACxE,OAAO,IAAI,KAAK,CAAC;YACf,YAAY,EAAE;gBACZ,KAAK;gBACL,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,QAAQ;gBAChD,YAAY,EAAE,IAAI,CAAC,wCAAwC,CAAC;oBAC1D,MAAM,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC;oBAClC,MAAM,EAAE,KAAK,CAAC,MAAM;iBACrB,CAAC;gBACF,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ;gBACpC,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB;YACD,gBAAgB,EAAE,IAAI,CAAC,qBAAqB,EAAE;YAC9C,aAAa,EAAE,UAAU;YACzB,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;gBACvC,IAAI,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvC,eAAe,EAAE,CAAC,OAAO,CAAC,CAAC;gBAC7B,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,SAAS,EAAE,YAAY;SACxB,CAAC,CAAC;IACL,CAAC;IAES,qBAAqB;QAC7B,qEAAqE;QACrE,mEAAmE;QACnE,oEAAoE;QACpE,qEAAqE;QACrE,6DAA6D;QAC7D,OAAO,mCAAmC,CAAC;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,gBAAgB,EAAE,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;YAC3F,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC5B,OAAO,EAAE,IAAI,CAAC,gBAAgB;YAC9B,iEAAiE;YACjE,+DAA+D;YAC/D,6DAA6D;YAC7D,yCAAyC;YACzC,YAAY,EAAE,GAAG,EAAE;gBACjB,KAAK,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACvC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,iEAAiE;IACjE,wEAAwE;IACxE,iEAAiE;IACjE,qEAAqE;IACrE,mCAAmC;IAChB,gBAAgB,GAAqB,oBAAoB,EAAE,CAAC;IAE/E,KAAK,CAAC,SAAS;QACb,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;IACvC,CAAC;IAED,yFAAyF;IACzF,KAAK,CAAC,qBAAqB;QACzB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC;IACnD,CAAC;IAED,oFAAoF;IACpF,KAAK,CAAC,kBAAkB;QACtB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC;IAChD,CAAC;IAED,oBAAoB,CAAC,OAAe;QAClC,OAAO,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,yBAAyB,CAAC,OAAuC;QAC7E,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC7E,IAAI,CAAC,UAAU,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,gEAAgE;QAChE,8DAA8D;QAC9D,kEAAkE;QAClE,iEAAiE;QACjE,oBAAoB;QACpB,EAAE;QACF,uDAAuD;QACvD,kEAAkE;QAClE,oEAAoE;QACpE,iDAAiD;QACjD,IAAI,CAAC,iBAAiB,GAAG,MAAM,gBAAgB,CAC7C,IAAI,CAAC,MAAM,CAAC,YAAY,EACxB,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAChC;YACE,KAAK,EAAE,qBAAqB,EAAE;YAC9B,WAAW,EAAE;gBACX,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,QAAQ,EAAE,kCAAkC,CAC1C,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,EACzE,IAAI,CAAC,MAAM,CAAC,MAAM,CACnB;gBACD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACrF;YACD,kEAAkE;YAClE,iEAAiE;YACjE,+DAA+D;YAC/D,iEAAiE;YACjE,4BAA4B;YAC5B,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;gBAClB,gEAAgE;gBAChE,6DAA6D;gBAC7D,gEAAgE;gBAChE,kDAAkD;gBAClD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YACxD,CAAC;YACD,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;gBACnC,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACpF,IAAI,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE,kCAAkC,MAAM,qBAAqB,UAAU,sBAAsB;iBACvG,CAAC,CAAC;YACL,CAAC;SACF,CACF,CAAC;IACJ,CAAC;IAES,wCAAwC,CAAC,KAGlD;QACC,OAAO,IAAI,CAAC,YAAY,CAAC,oCAAoC,CAAC,KAAK,CAAC,CAAC;IACvE,CAAC;IAEO,eAAe,CACrB,KAAgB,EAChB,OAAwE;QAExE,OAAO;YACL,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE;SACjD,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACK,iBAAiB,CAAC,OAA2B;QACnD,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACnC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QACvD,CAAC;QACD,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,OAAqB,EAAE,IAAkB;QAC1D,OAAO;YACL,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,iBAAiB;YAC9E,WAAW,EACT,OAAO,EAAE,WAAW;gBACpB,IAAI,EAAE,WAAW;gBACjB,IAAI,CAAC,MAAM,CAAC,WAAW;gBACvB,wBAAwB;YAC1B,aAAa,EAAE,OAAO,EAAE,aAAa,IAAI,IAAI,EAAE,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa;SAC1F,CAAC;IACJ,CAAC;IAES,WAAW,CAAC,KAA8B;QAClD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAES,cAAc,CAAC,KAAiB,EAAE,MAAwB;QAClE,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACpE,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,KAAK,MAAM,SAAS,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAES,oBAAoB,CAAC,KAAiB;QAC9C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO;QAE/E,wEAAwE;QACxE,0EAA0E;QAC1E,8EAA8E;QAC9E,0EAA0E;QAC1E,uEAAuE;QACvE,sEAAsE;QACtE,IAAI,CAAC,uBAAuB,GAAG;YAC7B,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,EAAE;YACrD,kBAAkB,EAAE,oCAAoC,CACtD,IAAI,CAAC,0BAA0B,EAAE,EACjC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAChC;YACD,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK;SACtC,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACO,aAAa,CAAC,MAAwB;QAC9C,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,uBAAuB;YAAE,OAAO;QAC7D,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,gBAAgB,EAAE,IAAI,CAAC,uBAAuB,CAAC,gBAAgB;YAC/D,sBAAsB,EAAE,IAAI,CAAC,uBAAuB,CAAC,sBAAsB;YAC3E,kBAAkB,EAAE,IAAI,CAAC,uBAAuB,CAAC,kBAAkB;YACnE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACO,0BAA0B;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1C,MAAM,UAAU,GAAG,oBAAoB,CACrC,KAAK,CAAC,KAAK,CAAC,QAAQ,EACpB,IAAI,CAAC,gBAAgB,CAAC,eAAe,CACtC,CAAC;QACF,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC1D,OAAO;YACL,YAAY,EAAE,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;YACtD,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACtF,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SACzF,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACO,sBAAsB;QAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;QACxE,OAAO,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACO,uBAAuB,CAAC,WAAoB;QACpD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,yBAAyB,CAAC;QAC5E,OAAO,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClF,CAAC;CACF;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAAC,OAAe,EAAE,KAAK,GAAG,GAAG;IAC5D,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,IAAI,SAAS,CAAC,MAAM,IAAI,KAAK;QAAE,OAAO,SAAS,CAAC;IAChD,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;AAC7C,CAAC;AAED,6EAA6E;AAC7E,SAAS,qBAAqB,CAAC,MAAqC;IAClE,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5B,IAAI,EAAE,OAAgB;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAC5B,OAAe,EACf,MAAqC;IAMrC,MAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,OAAO,GACX,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAClG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;AAC1D,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AgentMessage } from "@earendil-works/pi-agent-core";
|
|
2
|
+
import type { WireGuardHorizon } from "../types/protocol.js";
|
|
2
3
|
/**
|
|
3
4
|
* Byte-budget safety net for the dispatched message list. The token-budget
|
|
4
5
|
* trigger in `createObservationalContextTransform` is the primary gate for
|
|
@@ -39,22 +40,11 @@ export declare const WIRE_BYTE_TARGET: number;
|
|
|
39
40
|
*/
|
|
40
41
|
export declare const IMAGE_WIRE_TOKEN_ESTIMATE = 1600;
|
|
41
42
|
/**
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
* stays content-deterministic across turns: subsequent turns produce the
|
|
47
|
-
* same shape and re-hit the provider's prompt cache.
|
|
48
|
-
*
|
|
49
|
-
* Tracked in-memory on the runner instance; resets on session resume.
|
|
50
|
-
* That costs at most one cold cache miss per resume — the provider-side
|
|
51
|
-
* prompt cache typically does not survive resume gaps anyway, so
|
|
52
|
-
* persisting the horizon would buy little.
|
|
43
|
+
* Fresh-runner default. Persistence round-trips `WireGuardHorizon` through
|
|
44
|
+
* `TurnState.wireGuardHorizon`, so resumed sessions hydrate over this
|
|
45
|
+
* default in place via `Object.assign` to preserve the reference identity
|
|
46
|
+
* held by the observational context transform.
|
|
53
47
|
*/
|
|
54
|
-
export interface WireGuardHorizon {
|
|
55
|
-
/** Messages with `timestamp <= evictionHorizon` are dropped from the wire. */
|
|
56
|
-
evictionHorizon: number;
|
|
57
|
-
}
|
|
58
48
|
export declare function createInitialHorizon(): WireGuardHorizon;
|
|
59
49
|
export declare function calculateWireBytes(messages: AgentMessage[]): number;
|
|
60
50
|
export declare function calculateWireTokens(messages: AgentMessage[]): number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire-shaping.d.ts","sourceRoot":"","sources":["../../../src/turn-runner/wire-shaping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,QAAmB,CAAC;AAElD;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,QAAsC,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,yBAAyB,OAAQ,CAAC;AAU/C
|
|
1
|
+
{"version":3,"file":"wire-shaping.d.ts","sourceRoot":"","sources":["../../../src/turn-runner/wire-shaping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,QAAmB,CAAC;AAElD;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,QAAsC,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,yBAAyB,OAAQ,CAAC;AAU/C;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,CAEvD;AA+DD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,CAInE;AA+BD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,CAIpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE,CAW9F;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,YAAY,EAAE,EACxB,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,OAAO,GACtD,MAAM,CASR"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { CHARS_PER_TOKEN } from "../memory/observational.js";
|
|
1
2
|
/**
|
|
2
3
|
* Byte-budget safety net for the dispatched message list. The token-budget
|
|
3
4
|
* trigger in `createObservationalContextTransform` is the primary gate for
|
|
@@ -44,6 +45,12 @@ export const IMAGE_WIRE_TOKEN_ESTIMATE = 1_600;
|
|
|
44
45
|
* that the memory transform prepends to the dispatched message list.
|
|
45
46
|
*/
|
|
46
47
|
const MIN_HISTORY_TAIL = 1;
|
|
48
|
+
/**
|
|
49
|
+
* Fresh-runner default. Persistence round-trips `WireGuardHorizon` through
|
|
50
|
+
* `TurnState.wireGuardHorizon`, so resumed sessions hydrate over this
|
|
51
|
+
* default in place via `Object.assign` to preserve the reference identity
|
|
52
|
+
* held by the observational context transform.
|
|
53
|
+
*/
|
|
47
54
|
export function createInitialHorizon() {
|
|
48
55
|
return { evictionHorizon: 0 };
|
|
49
56
|
}
|
|
@@ -103,8 +110,8 @@ export function calculateWireBytes(messages) {
|
|
|
103
110
|
}
|
|
104
111
|
/**
|
|
105
112
|
* Token-side companion to {@link calculateWireBytes}. Text and structured
|
|
106
|
-
* blocks use the same `ceil(chars/
|
|
107
|
-
* elsewhere, but image blocks contribute a fixed
|
|
113
|
+
* blocks use the same `ceil(chars / CHARS_PER_TOKEN)` heuristic the memory
|
|
114
|
+
* pipeline uses elsewhere, but image blocks contribute a fixed
|
|
108
115
|
* {@link IMAGE_WIRE_TOKEN_ESTIMATE} regardless of base64 size — the
|
|
109
116
|
* provider's per-image charge is bounded and unrelated to payload bytes.
|
|
110
117
|
* This is the value the eviction gate and the context-window usage bar
|
|
@@ -114,7 +121,7 @@ export function calculateWireBytes(messages) {
|
|
|
114
121
|
function calculateMessageTokens(msg) {
|
|
115
122
|
const content = msg.content;
|
|
116
123
|
if (typeof content === "string")
|
|
117
|
-
return Math.ceil(content.length /
|
|
124
|
+
return Math.ceil(content.length / CHARS_PER_TOKEN);
|
|
118
125
|
if (!Array.isArray(content))
|
|
119
126
|
return 0;
|
|
120
127
|
let total = 0;
|
|
@@ -122,10 +129,10 @@ function calculateMessageTokens(msg) {
|
|
|
122
129
|
if (isImageBlock(block))
|
|
123
130
|
total += IMAGE_WIRE_TOKEN_ESTIMATE;
|
|
124
131
|
else if (isTextBlock(block))
|
|
125
|
-
total += Math.ceil(block.text.length /
|
|
132
|
+
total += Math.ceil(block.text.length / CHARS_PER_TOKEN);
|
|
126
133
|
else if (block && typeof block === "object") {
|
|
127
134
|
try {
|
|
128
|
-
total += Math.ceil(JSON.stringify(block).length /
|
|
135
|
+
total += Math.ceil(JSON.stringify(block).length / CHARS_PER_TOKEN);
|
|
129
136
|
}
|
|
130
137
|
catch {
|
|
131
138
|
total += 64;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire-shaping.js","sourceRoot":"","sources":["../../../src/turn-runner/wire-shaping.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wire-shaping.js","sourceRoot":"","sources":["../../../src/turn-runner/wire-shaping.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,11 +19,13 @@ export interface TurnRunnerConfig extends TurnOptions {
|
|
|
19
19
|
*/
|
|
20
20
|
sessionId?: string;
|
|
21
21
|
/**
|
|
22
|
-
* Target ceiling, in tokens, for the actor model's per-turn input.
|
|
23
|
-
* memory
|
|
24
|
-
* reflection trigger and buffer
|
|
25
|
-
*
|
|
22
|
+
* Target ceiling, in tokens, for the actor model's per-turn input. The
|
|
23
|
+
* local-session memory budgets (raw-message compaction trigger, raw-tail
|
|
24
|
+
* buffer, reflection trigger and buffer) are derived from this single
|
|
25
|
+
* number via fixed ratios in `deriveMemoryBudgets`; see
|
|
26
26
|
* `MEMORY_BUDGET_RATIOS` in `src/memory/observational.ts` for the table.
|
|
27
|
+
* The cross-session global pack uses a fixed cap
|
|
28
|
+
* (`GLOBAL_CONTEXT_TOKEN_BUDGET`) instead of scaling with this value.
|
|
27
29
|
*
|
|
28
30
|
* Defaults to 200_000. The runner clamps the resolved value to
|
|
29
31
|
* `min(effectiveContext, model.contextWindow)` at use-time so a user
|