@superdurable/dex-agents 0.2.0 → 0.4.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.
Files changed (92) hide show
  1. package/README.md +143 -6
  2. package/dist/src/agent-context-compaction.d.ts +150 -4
  3. package/dist/src/agent-context-compaction.js +253 -5
  4. package/dist/src/agent-context-compaction.js.map +1 -1
  5. package/dist/src/agent-framework-runner.d.ts +89 -0
  6. package/dist/src/agent-framework-runner.js +26 -0
  7. package/dist/src/agent-framework-runner.js.map +1 -1
  8. package/dist/src/agent-session-codecs.js +9 -0
  9. package/dist/src/agent-session-codecs.js.map +1 -1
  10. package/dist/src/agent-session-failure.d.ts +58 -0
  11. package/dist/src/agent-session-failure.js +126 -0
  12. package/dist/src/agent-session-failure.js.map +1 -0
  13. package/dist/src/agent-session-flow-graph-cli.d.ts +2 -0
  14. package/dist/src/agent-session-flow-graph-cli.js +47 -0
  15. package/dist/src/agent-session-flow-graph-cli.js.map +1 -0
  16. package/dist/src/agent-session-flow-graph.d.ts +38 -0
  17. package/dist/src/agent-session-flow-graph.js +54 -0
  18. package/dist/src/agent-session-flow-graph.js.map +1 -0
  19. package/dist/src/agent-session-flow-graph.json +2204 -0
  20. package/dist/src/agent-session-flow.d.ts +23 -2
  21. package/dist/src/agent-session-flow.js +5 -0
  22. package/dist/src/agent-session-flow.js.map +1 -1
  23. package/dist/src/agent-session-spend-limit.d.ts +156 -0
  24. package/dist/src/agent-session-spend-limit.js +42 -0
  25. package/dist/src/agent-session-spend-limit.js.map +1 -0
  26. package/dist/src/agent-session-start.d.ts +49 -0
  27. package/dist/src/agent-session-start.js +67 -0
  28. package/dist/src/agent-session-start.js.map +1 -0
  29. package/dist/src/agent-session-step-options.d.ts +52 -1
  30. package/dist/src/agent-session-step-options.js +34 -2
  31. package/dist/src/agent-session-step-options.js.map +1 -1
  32. package/dist/src/agent-session-steps.d.ts +9 -0
  33. package/dist/src/agent-session-steps.js +247 -50
  34. package/dist/src/agent-session-steps.js.map +1 -1
  35. package/dist/src/agent-session-transitions.d.ts +14 -1
  36. package/dist/src/agent-session-transitions.js +61 -1
  37. package/dist/src/agent-session-transitions.js.map +1 -1
  38. package/dist/src/agent-session-values.d.ts +43 -2
  39. package/dist/src/agent-session-values.js +6 -0
  40. package/dist/src/agent-session-values.js.map +1 -1
  41. package/dist/src/agent-session-wait-steps.js +3 -3
  42. package/dist/src/agent-session-wait-steps.js.map +1 -1
  43. package/dist/src/connectors/connector-input-schema.d.ts +19 -0
  44. package/dist/src/connectors/connector-input-schema.js +228 -0
  45. package/dist/src/connectors/connector-input-schema.js.map +1 -0
  46. package/dist/src/connectors/connector-step-context.d.ts +77 -0
  47. package/dist/src/connectors/connector-step-context.js +124 -0
  48. package/dist/src/connectors/connector-step-context.js.map +1 -0
  49. package/dist/src/connectors/connector-tool-source.d.ts +353 -0
  50. package/dist/src/connectors/connector-tool-source.js +541 -0
  51. package/dist/src/connectors/connector-tool-source.js.map +1 -0
  52. package/dist/src/connectors/index.d.ts +3 -0
  53. package/dist/src/connectors/index.js +11 -0
  54. package/dist/src/connectors/index.js.map +1 -0
  55. package/dist/src/index.d.ts +10 -3
  56. package/dist/src/index.js +8 -2
  57. package/dist/src/index.js.map +1 -1
  58. package/dist/src/stepwise/agent-definition.d.ts +8 -0
  59. package/dist/src/stepwise/index.d.ts +2 -1
  60. package/dist/src/stepwise/index.js +2 -1
  61. package/dist/src/stepwise/index.js.map +1 -1
  62. package/dist/src/stepwise/stepwise-agent-runner.d.ts +15 -32
  63. package/dist/src/stepwise/stepwise-agent-runner.js +37 -200
  64. package/dist/src/stepwise/stepwise-agent-runner.js.map +1 -1
  65. package/dist/src/stepwise/stepwise-agent-session-flow.js +1 -0
  66. package/dist/src/stepwise/stepwise-agent-session-flow.js.map +1 -1
  67. package/dist/src/stepwise/tool-source.d.ts +11 -1
  68. package/dist/src/testing/agent-session-test-client.js +2 -5
  69. package/dist/src/testing/agent-session-test-client.js.map +1 -1
  70. package/dist/src/testing/context-window.d.ts +194 -0
  71. package/dist/src/testing/context-window.js +360 -0
  72. package/dist/src/testing/context-window.js.map +1 -0
  73. package/dist/src/testing/index.d.ts +1 -0
  74. package/dist/src/testing/index.js +1 -0
  75. package/dist/src/testing/index.js.map +1 -1
  76. package/dist/src/tool-source-router.d.ts +211 -0
  77. package/dist/src/tool-source-router.js +380 -0
  78. package/dist/src/tool-source-router.js.map +1 -0
  79. package/dist/src/ui-stream/agent-event-sse.d.ts +3 -2
  80. package/dist/src/ui-stream/agent-event-sse.js +11 -3
  81. package/dist/src/ui-stream/agent-event-sse.js.map +1 -1
  82. package/dist/src/ui-stream/agent-session-record-reader.d.ts +2 -0
  83. package/dist/src/ui-stream/agent-session-record-reader.js +5 -0
  84. package/dist/src/ui-stream/agent-session-record-reader.js.map +1 -1
  85. package/dist/src/ui-stream/agent-ui-message-stream-responses.js +3 -2
  86. package/dist/src/ui-stream/agent-ui-message-stream-responses.js.map +1 -1
  87. package/dist/src/ui-stream/agent-ui-message-stream.js +17 -3
  88. package/dist/src/ui-stream/agent-ui-message-stream.js.map +1 -1
  89. package/dist/src/ui-stream/agent-ui-messages.d.ts +2 -0
  90. package/dist/src/ui-stream/agent-ui-messages.js +5 -3
  91. package/dist/src/ui-stream/agent-ui-messages.js.map +1 -1
  92. package/package.json +15 -3
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAE1D,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAG7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAO1B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,gCAAgC,GAqBjC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,sBAAsB,GAIvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,+BAA+B,EAC/B,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,iCAAiC,EACjC,0BAA0B,EAC1B,uBAAuB,EACvB,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,iCAAiC,EACjC,yCAAyC,EACzC,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GAqDtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,0BAA0B,EAC1B,qCAAqC,EACrC,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EACL,kCAAkC,GAKnC,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAE1D,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAG7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,yBAAyB,EACzB,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,uBAAuB,EACvB,+BAA+B,EAC/B,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,qBAAqB,EACrB,8BAA8B,EAC9B,qBAAqB,EACrB,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,GAKzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,gCAAgC,GAsBjC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,sBAAsB,GAIvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,+BAA+B,EAC/B,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,iCAAiC,EACjC,0BAA0B,EAC1B,uBAAuB,EACvB,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,+BAA+B,EAC/B,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,iCAAiC,EACjC,yCAAyC,EACzC,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GAqDtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,0BAA0B,EAC1B,qCAAqC,EACrC,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,GAKxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC9G,OAAO,EAAE,sBAAsB,EAAgC,MAAM,+BAA+B,CAAC;AACrG,OAAO,EAAE,gCAAgC,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EAAE,iCAAiC,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EACL,kCAAkC,GAKnC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,gBAAgB,EAChB,iCAAiC,GAGlC,MAAM,yBAAyB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { BuiltInTool } from "../agent-built-in-tools.js";
2
2
  import type { CompactionPolicy } from "../agent-context-compaction.js";
3
+ import type { ModelSpendLimit } from "../agent-session-spend-limit.js";
3
4
  import type { ToolPolicy } from "../agent-framework-runner.js";
4
5
  import type { AgentPlan, InteractionMode, SessionSettings, ToolEffect } from "../agent-session-values.js";
5
6
  import type { FunctionTool } from "./function-tool.js";
@@ -155,4 +156,11 @@ export interface AgentDefinition {
155
156
  * client's `estimateInputTokens`. Defaults to no compaction. See {@link CompactionPolicy}.
156
157
  */
157
158
  readonly compaction?: CompactionPolicy;
159
+ /**
160
+ * The application's spend limit, called before and after each model call. Defaults to no checks. See
161
+ * {@link ModelSpendLimit}.
162
+ *
163
+ * @since 0.3.0
164
+ */
165
+ readonly spendLimit?: ModelSpendLimit;
158
166
  }
@@ -3,5 +3,6 @@ export { functionTool, type FunctionTool, type FunctionToolDefinition, type Tool
3
3
  export { type ModelClient, type ModelInputItem, type ModelOutputItem, type ModelOutputWriter, type ModelRequest, type ModelRequestMetadata, type ModelResponse, type ModelSettings, type ModelToolCall, type ModelToolChoice, type ModelToolDefinition, type ModelToolResultItem, type ModelUserTextItem, } from "./model-client.js";
4
4
  export { ScriptedModelClient, defaultMaxRecordedRequests, scriptedModelApi, scriptedModelProvider, type ScriptedModelReply, type ScriptedModelResponder, type ScriptedToolCall, } from "./scripted-model-client.js";
5
5
  export { createStepwiseAgentSessionFlow } from "./stepwise-agent-session-flow.js";
6
- export { StepwiseAgentRunner, buildContextSummaryNote, buildContextSummaryOmissionNote, contextSummaryInstructions, contextSummaryNoteHeader, contextSummaryRequest, defaultToolSourceListingTimeoutMs, } from "./stepwise-agent-runner.js";
6
+ export { buildContextSummaryNote, buildContextSummaryOmissionNote, contextSummaryInstructions, contextSummaryNoteHeader, contextSummaryRequest, } from "../agent-context-compaction.js";
7
+ export { StepwiseAgentRunner, defaultToolSourceListingTimeoutMs } from "./stepwise-agent-runner.js";
7
8
  export { type SourceToolDefinition, type ToolSource } from "./tool-source.js";
@@ -8,5 +8,6 @@
8
8
  export { functionTool, } from "./function-tool.js";
9
9
  export { ScriptedModelClient, defaultMaxRecordedRequests, scriptedModelApi, scriptedModelProvider, } from "./scripted-model-client.js";
10
10
  export { createStepwiseAgentSessionFlow } from "./stepwise-agent-session-flow.js";
11
- export { StepwiseAgentRunner, buildContextSummaryNote, buildContextSummaryOmissionNote, contextSummaryInstructions, contextSummaryNoteHeader, contextSummaryRequest, defaultToolSourceListingTimeoutMs, } from "./stepwise-agent-runner.js";
11
+ export { buildContextSummaryNote, buildContextSummaryOmissionNote, contextSummaryInstructions, contextSummaryNoteHeader, contextSummaryRequest, } from "../agent-context-compaction.js";
12
+ export { StepwiseAgentRunner, defaultToolSourceListingTimeoutMs } from "./stepwise-agent-runner.js";
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stepwise/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAG1D,OAAO,EACL,YAAY,GAIb,MAAM,oBAAoB,CAAC;AAgB5B,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,gBAAgB,EAChB,qBAAqB,GAItB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,+BAA+B,EAC/B,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,iCAAiC,GAClC,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stepwise/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAG1D,OAAO,EACL,YAAY,GAIb,MAAM,oBAAoB,CAAC;AAgB5B,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,gBAAgB,EAChB,qBAAqB,GAItB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EACL,uBAAuB,EACvB,+BAA+B,EAC/B,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,31 +1,12 @@
1
- import type { ContextSummaryRequest, ContextSummaryResult } from "../agent-context-compaction.js";
2
- import { type AgentFrameworkRunner, type AgentTurnContext, type AgentTurnOutcome, type DeferredToolExecution, type DeferredToolOutcome, type ToolTaskCancellation, type ToolTaskPoll, type ToolTaskPollOutcome } from "../agent-framework-runner.js";
3
- import { type ContextSummary, type FrameworkMessage } from "../agent-session-values.js";
1
+ import { type ContextSummaryRequest, type ContextSummaryResult } from "../agent-context-compaction.js";
2
+ export { buildContextSummaryNote, buildContextSummaryOmissionNote, contextSummaryInstructions, contextSummaryNoteHeader, contextSummaryRequest, } from "../agent-context-compaction.js";
3
+ import { type AgentFrameworkRunner, type AgentTurnContext, type AgentTurnOutcome, type DeferredToolExecution, type DeferredToolOutcome, type ToolCallStepOptions, type ToolTaskCancellation, type ToolTaskPoll, type ToolTaskPollOutcome } from "../agent-framework-runner.js";
4
+ import { type AgentToolCall, type FrameworkMessage } from "../agent-session-values.js";
4
5
  import type { AgentDefinition } from "./agent-definition.js";
5
- /** Default {@link AgentDefinition.toolSourceListingTimeoutMs}: 10 seconds. */
6
- export declare const defaultToolSourceListingTimeoutMs = 10000;
6
+ export { defaultToolSourceListingTimeoutMs } from "../tool-source-router.js";
7
7
  export declare const defaultMaxModelCallsPerTurn = 100;
8
- /** First line of the user text that carries the {@link ContextSummary} into the model input. */
9
- export declare const contextSummaryNoteHeader = "[Dex] Summary of the earlier conversation:";
10
- /** Instructions of the model call that writes a {@link ContextSummary}. */
11
- export declare const contextSummaryInstructions: string;
12
- /** Last user text of the model call that writes a {@link ContextSummary}. */
13
- export declare const contextSummaryRequest = "[Dex] Summarize the conversation above. Reply with the summary only.";
14
8
  /** Result of a tool call the model made after the turn's model call limit; the same text as the Python core. */
15
9
  export declare function buildToolCallLimitReachedResult(maxModelCallsPerTurn: number): string;
16
- /**
17
- * Returns the user text that says how many of the oldest messages a summary request left out.
18
- * @param omittedCount - Messages left out, at least 1.
19
- * @returns `[Dex] <omittedCount> earlier messages did not fit in this request and are left out.`, or
20
- * `[Dex] 1 earlier message did not fit in this request and is left out.` for one message.
21
- */
22
- export declare function buildContextSummaryOmissionNote(omittedCount: number): string;
23
- /**
24
- * Returns the user text that puts a summary before the newer messages in a model input.
25
- * @param summary - The session's summary.
26
- * @returns {@link contextSummaryNoteHeader}, a newline, and the summary text.
27
- */
28
- export declare function buildContextSummaryNote(summary: ContextSummary): string;
29
10
  /**
30
11
  * The {@link AgentFrameworkRunner} of the built-in Stepwise loop.
31
12
  *
@@ -54,11 +35,7 @@ export declare class StepwiseAgentRunner implements AgentFrameworkRunner<Deferre
54
35
  readonly supportsPlanMode = true;
55
36
  private readonly functionToolsByName;
56
37
  private readonly toolSources;
57
- private readonly toolSourcesByName;
58
38
  private readonly maxModelCallsPerTurn;
59
- private readonly toolSourceListingTimeoutMs;
60
- /** The last listing of each source, so estimates count its tools without listing again. */
61
- private readonly lastListings;
62
39
  /**
63
40
  * Creates the runner and checks the definition.
64
41
  * @param definition - The agent definition.
@@ -109,6 +86,16 @@ export declare class StepwiseAgentRunner implements AgentFrameworkRunner<Deferre
109
86
  * @throws Any error of the source.
110
87
  */
111
88
  pollToolTask(poll: ToolTaskPoll): Promise<ToolTaskPollOutcome>;
89
+ /**
90
+ * Returns a tool source's options for one call's tool Step. Function tools and sources without
91
+ * `toolCallStepOptions` keep the tool Steps' defaults.
92
+ * @param toolCall - The record whose tool Step starts.
93
+ * @returns The source's options, or `undefined` for the defaults.
94
+ * @throws {RangeError} When a source built the call but the definition no longer has it; the session then uses
95
+ * the defaults.
96
+ * @since 0.4.0
97
+ */
98
+ toolCallStepOptions(toolCall: AgentToolCall): ToolCallStepOptions | undefined;
112
99
  /**
113
100
  * Cancels a tool source's task through the source that built the call; a source without `cancelToolTask` leaves
114
101
  * its task running.
@@ -169,10 +156,6 @@ export declare class StepwiseAgentRunner implements AgentFrameworkRunner<Deferre
169
156
  private estimateItems;
170
157
  /** A built-in enabled only in the session options must not share a function tool's name. */
171
158
  private requireNoBuiltInToolNameClash;
172
- private listSourceTools;
173
- private listOneSource;
174
- private readCachedSourceTools;
175
- private routeToToolSource;
176
159
  private listOfferedTools;
177
160
  /** A session policy wins; otherwise a function tool's own effect and approval apply, as in the Python core. */
178
161
  private resolveModelToolPolicy;
@@ -6,53 +6,24 @@
6
6
  //
7
7
  // SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
8
8
  import { builtInToolDefinitions } from "../agent-built-in-tools.js";
9
+ import { buildContextSummaryNote, buildContextSummaryOmissionNote, contextSummaryInstructions, contextSummaryRequest, } from "../agent-context-compaction.js";
10
+ export { buildContextSummaryNote, buildContextSummaryOmissionNote, contextSummaryInstructions, contextSummaryNoteHeader, contextSummaryRequest, } from "../agent-context-compaction.js";
9
11
  import { ToolExecutionError, } from "../agent-framework-runner.js";
10
12
  import { buildPlanNote } from "../agent-plans.js";
11
13
  import { describeToolCallOutcome, } from "../agent-session-values.js";
12
14
  import { findJsonSchemaViolation, serializeJsonWithSpacedSeparators } from "./json-schema-validation.js";
13
15
  import { pairToolCallsWithResults, readStoredModelInputItem, toStepwiseFrameworkMessage, } from "./stepwise-input-items.js";
14
- const toolSourceMethods = ["listTools", "deferredToolCall", "executeDeferredToolCall", "pollToolTask"];
16
+ import { ToolSourceRouter, defaultToolSourceListingTimeoutMs, readToolSourceEnvelope as readRouterToolSourceEnvelope, writeToolSourceEnvelope as writeRouterToolSourceEnvelope, } from "../tool-source-router.js";
17
+ export { defaultToolSourceListingTimeoutMs } from "../tool-source-router.js";
15
18
  // The runner's envelope around a source's toolSourceReference: the building source's name.
16
19
  const toolSourceNameKey = "stepwise_tool_source";
17
20
  // An unlisted name never reaches a source, so it fails without asking anyone to approve it.
18
21
  const unlistedSourceToolPolicy = { effect: "unclassified", requiresApproval: false };
19
- const toolSourceReferenceKey = "reference";
20
- /** Default {@link AgentDefinition.toolSourceListingTimeoutMs}: 10 seconds. */
21
- export const defaultToolSourceListingTimeoutMs = 10_000;
22
22
  export const defaultMaxModelCallsPerTurn = 100;
23
- /** First line of the user text that carries the {@link ContextSummary} into the model input. */
24
- export const contextSummaryNoteHeader = "[Dex] Summary of the earlier conversation:";
25
- /** Instructions of the model call that writes a {@link ContextSummary}. */
26
- export const contextSummaryInstructions = "You summarize the earlier part of an agent conversation. The agent continues from your " +
27
- "summary and the messages after it, so keep every fact, decision, user request and " +
28
- "preference, open task, and tool result that it still needs, including what an earlier " +
29
- "summary says. Write plain text.";
30
- /** Last user text of the model call that writes a {@link ContextSummary}. */
31
- export const contextSummaryRequest = "[Dex] Summarize the conversation above. Reply with the summary only.";
32
23
  /** Result of a tool call the model made after the turn's model call limit; the same text as the Python core. */
33
24
  export function buildToolCallLimitReachedResult(maxModelCallsPerTurn) {
34
25
  return `The tool call was not run: this turn reached its limit of ${maxModelCallsPerTurn} model calls.`;
35
26
  }
36
- /**
37
- * Returns the user text that says how many of the oldest messages a summary request left out.
38
- * @param omittedCount - Messages left out, at least 1.
39
- * @returns `[Dex] <omittedCount> earlier messages did not fit in this request and are left out.`, or
40
- * `[Dex] 1 earlier message did not fit in this request and is left out.` for one message.
41
- */
42
- export function buildContextSummaryOmissionNote(omittedCount) {
43
- if (omittedCount === 1) {
44
- return "[Dex] 1 earlier message did not fit in this request and is left out.";
45
- }
46
- return `[Dex] ${omittedCount} earlier messages did not fit in this request and are left out.`;
47
- }
48
- /**
49
- * Returns the user text that puts a summary before the newer messages in a model input.
50
- * @param summary - The session's summary.
51
- * @returns {@link contextSummaryNoteHeader}, a newline, and the summary text.
52
- */
53
- export function buildContextSummaryNote(summary) {
54
- return `${contextSummaryNoteHeader}\n${summary.text}`;
55
- }
56
27
  // The summary is not the assistant's answer, so its live text goes nowhere.
57
28
  const discardedModelOutput = {
58
29
  writeTextDelta: () => undefined,
@@ -86,11 +57,7 @@ export class StepwiseAgentRunner {
86
57
  supportsPlanMode = true;
87
58
  functionToolsByName;
88
59
  toolSources;
89
- toolSourcesByName;
90
60
  maxModelCallsPerTurn;
91
- toolSourceListingTimeoutMs;
92
- /** The last listing of each source, so estimates count its tools without listing again. */
93
- lastListings = new Map();
94
61
  /**
95
62
  * Creates the runner and checks the definition.
96
63
  * @param definition - The agent definition.
@@ -127,28 +94,17 @@ export class StepwiseAgentRunner {
127
94
  }
128
95
  functionToolsByName.set(tool.name, tool);
129
96
  }
130
- const toolSources = [...(definition.toolSources ?? [])];
131
- for (const source of toolSources) {
132
- const missing = toolSourceMethods.find((method) => typeof source?.[method] !== "function");
133
- if (missing !== undefined) {
134
- throw new TypeError(`tool source ${String(source)} has no ${missing} method`);
135
- }
136
- }
137
- const toolSourcesByName = new Map();
138
- for (const source of toolSources) {
139
- if (typeof source.sourceName !== "string" || source.sourceName.trim() === "") {
140
- throw new TypeError(`tool source ${String(source)} needs a non-blank sourceName`);
141
- }
142
- if (toolSourcesByName.has(source.sourceName)) {
143
- throw new TypeError(`two tool sources are named ${source.sourceName}`);
144
- }
145
- toolSourcesByName.set(source.sourceName, source);
146
- }
147
- refuseDeclaredToolNameCollisions(toolSources, new Set(functionToolsByName.keys()), enabledBuiltInTools);
148
97
  const toolSourceListingTimeoutMs = definition.toolSourceListingTimeoutMs ?? defaultToolSourceListingTimeoutMs;
149
98
  if (!(toolSourceListingTimeoutMs > 0)) {
150
99
  throw new RangeError("AgentDefinition.toolSourceListingTimeoutMs must be positive");
151
100
  }
101
+ const toolSources = new ToolSourceRouter(definition.toolSources ?? [], {
102
+ sourceNameKey: toolSourceNameKey,
103
+ localToolNames: new Set(functionToolsByName.keys()),
104
+ localToolDescription: "a function tool",
105
+ builtInToolNames: enabledBuiltInTools,
106
+ listingTimeoutMs: toolSourceListingTimeoutMs,
107
+ });
152
108
  if (definition.planModeEnabled === true && !enabledBuiltInTools.has("write_todos")) {
153
109
  throw new TypeError("planModeEnabled requires the write_todos built-in tool");
154
110
  }
@@ -163,8 +119,6 @@ export class StepwiseAgentRunner {
163
119
  this.definition = Object.freeze({ ...definition });
164
120
  this.functionToolsByName = functionToolsByName;
165
121
  this.toolSources = toolSources;
166
- this.toolSourcesByName = toolSourcesByName;
167
- this.toolSourceListingTimeoutMs = toolSourceListingTimeoutMs;
168
122
  this.maxModelCallsPerTurn = maxModelCallsPerTurn;
169
123
  }
170
124
  /**
@@ -190,7 +144,9 @@ export class StepwiseAgentRunner {
190
144
  const modelCallCount = readModelCallCount(turn.frameworkRunState);
191
145
  const unstoredToolResults = buildUnstoredToolResults(turn);
192
146
  const isToolBudgetSpent = modelCallCount >= this.maxModelCallsPerTurn;
193
- const sourceTools = isToolBudgetSpent || turn.interactionMode === "planning" ? new Map() : await this.listSourceTools(turn);
147
+ const sourceTools = isToolBudgetSpent || turn.interactionMode === "planning"
148
+ ? new Map()
149
+ : await this.toolSources.listSourceTools(turn.enabledBuiltInTools ?? new Set());
194
150
  const request = await this.buildModelRequest(turn, unstoredToolResults, modelCallCount, isToolBudgetSpent, sourceTools);
195
151
  const response = await this.resolveModel(turn.sessionSettings).callModel(request, turn.events);
196
152
  requireModelResponse(response);
@@ -220,11 +176,7 @@ export class StepwiseAgentRunner {
220
176
  toolCalls: response.toolCalls.map((toolCall) => {
221
177
  const listed = sourceTools.get(toolCall.toolName);
222
178
  if (listed !== undefined) {
223
- const built = listed.source.deferredToolCall(turn, { ...toolCall, listedTool: listed.tool });
224
- return {
225
- ...built,
226
- toolSourceReference: writeToolSourceEnvelope(listed.source.sourceName, built.toolSourceReference),
227
- };
179
+ return this.toolSources.buildDeferredToolCall(turn, listed, toolCall);
228
180
  }
229
181
  return {
230
182
  toolCallId: toolCall.toolCallId,
@@ -253,11 +205,10 @@ export class StepwiseAgentRunner {
253
205
  const toolCall = call.toolCall;
254
206
  const tool = this.functionToolsByName.get(toolCall.toolName);
255
207
  if (tool === undefined) {
256
- const routed = this.routeToToolSource(toolCall);
257
- if (routed === undefined) {
208
+ if (!this.toolSources.isSourceToolCall(toolCall)) {
258
209
  throw new ToolExecutionError(buildUnknownToolError(toolCall.toolName));
259
210
  }
260
- return routed.source.executeDeferredToolCall({ ...call, toolCall: withToolSourceReference(toolCall, routed.reference) });
211
+ return this.toolSources.executeDeferredToolCall(call);
261
212
  }
262
213
  const toolArguments = parseToolArguments(tool.name, toolCall.arguments);
263
214
  const violation = findJsonSchemaViolation(toolArguments, tool.parameters, "arguments");
@@ -295,11 +246,22 @@ export class StepwiseAgentRunner {
295
246
  * @throws Any error of the source.
296
247
  */
297
248
  async pollToolTask(poll) {
298
- const routed = this.routeToToolSource(poll.toolCall);
299
- if (routed === undefined) {
300
- throw new RangeError(`no tool source built the call of tool ${poll.toolCall.toolName}`);
249
+ return this.toolSources.pollToolTask(poll);
250
+ }
251
+ /**
252
+ * Returns a tool source's options for one call's tool Step. Function tools and sources without
253
+ * `toolCallStepOptions` keep the tool Steps' defaults.
254
+ * @param toolCall - The record whose tool Step starts.
255
+ * @returns The source's options, or `undefined` for the defaults.
256
+ * @throws {RangeError} When a source built the call but the definition no longer has it; the session then uses
257
+ * the defaults.
258
+ * @since 0.4.0
259
+ */
260
+ toolCallStepOptions(toolCall) {
261
+ if (this.functionToolsByName.has(toolCall.toolName)) {
262
+ return undefined;
301
263
  }
302
- return routed.source.pollToolTask({ ...poll, toolCall: withToolSourceReference(poll.toolCall, routed.reference) });
264
+ return this.toolSources.toolCallStepOptions(toolCall);
303
265
  }
304
266
  /**
305
267
  * Cancels a tool source's task through the source that built the call; a source without `cancelToolTask` leaves
@@ -311,14 +273,7 @@ export class StepwiseAgentRunner {
311
273
  * @throws Any error of the source.
312
274
  */
313
275
  async cancelToolTask(cancellation) {
314
- const routed = this.routeToToolSource(cancellation.toolCall);
315
- if (routed === undefined) {
316
- throw new RangeError(`no tool source built the call of tool ${cancellation.toolCall.toolName}`);
317
- }
318
- await routed.source.cancelToolTask?.({
319
- ...cancellation,
320
- toolCall: withToolSourceReference(cancellation.toolCall, routed.reference),
321
- });
276
+ await this.toolSources.cancelToolTask(cancellation);
322
277
  }
323
278
  /**
324
279
  * Returns the results of the turn's tool calls that are not stored yet.
@@ -338,7 +293,7 @@ export class StepwiseAgentRunner {
338
293
  async estimateInputTokens(turn) {
339
294
  const modelCallCount = readModelCallCount(turn.frameworkRunState);
340
295
  const isToolBudgetSpent = modelCallCount >= this.maxModelCallsPerTurn;
341
- const request = await this.buildModelRequest(turn, buildUnstoredToolResults(turn), modelCallCount, isToolBudgetSpent, this.readCachedSourceTools());
296
+ const request = await this.buildModelRequest(turn, buildUnstoredToolResults(turn), modelCallCount, isToolBudgetSpent, this.toolSources.readCachedSourceTools());
342
297
  return this.resolveModel(turn.sessionSettings).estimateInputTokens(request);
343
298
  }
344
299
  /**
@@ -484,75 +439,6 @@ export class StepwiseAgentRunner {
484
439
  }
485
440
  }
486
441
  }
487
- async listSourceTools(turn) {
488
- const enabledBuiltInTools = turn.enabledBuiltInTools ?? new Set();
489
- const functionToolNames = new Set(this.functionToolsByName.keys());
490
- const listed = new Map();
491
- for (const [index, source] of this.toolSources.entries()) {
492
- for (const tool of await this.listOneSource(index, source)) {
493
- refuseSourceToolName(tool.name, functionToolNames, enabledBuiltInTools, listed);
494
- listed.set(tool.name, { index, source, tool });
495
- }
496
- }
497
- return listed;
498
- }
499
- async listOneSource(index, source) {
500
- const listing = source.listTools();
501
- // A listing that outlives this call keeps running; nobody else reads its error.
502
- listing.catch(() => undefined);
503
- let timer;
504
- const timedOut = new Promise((resolve) => {
505
- timer = setTimeout(() => resolve("timed_out"), this.toolSourceListingTimeoutMs);
506
- });
507
- try {
508
- const tools = await Promise.race([listing, timedOut]);
509
- if (tools === "timed_out") {
510
- console.warn(`tool source ${index} listed nothing within ${this.toolSourceListingTimeoutMs} ms`);
511
- return [];
512
- }
513
- this.lastListings.set(index, tools);
514
- return tools;
515
- }
516
- catch (error) {
517
- console.warn(`tool source ${index} could not list its tools: ${error instanceof Error ? error.message : String(error)}`);
518
- return [];
519
- }
520
- finally {
521
- clearTimeout(timer);
522
- }
523
- }
524
- readCachedSourceTools() {
525
- const cached = new Map();
526
- for (const [index, source] of this.toolSources.entries()) {
527
- const tools = source.cachedTools?.() ?? this.lastListings.get(index) ?? [];
528
- for (const tool of tools) {
529
- if (!cached.has(tool.name)) {
530
- cached.set(tool.name, { index, source, tool });
531
- }
532
- }
533
- }
534
- return cached;
535
- }
536
- routeToToolSource(toolCall) {
537
- const envelope = readToolSourceEnvelope(toolCall.toolSourceReference);
538
- if (envelope !== undefined) {
539
- const source = this.toolSourcesByName.get(envelope.sourceName);
540
- if (source === undefined) {
541
- throw new RangeError(`tool source ${envelope.sourceName}, which built the call of tool ${toolCall.toolName}, is not configured on this Worker`);
542
- }
543
- return { source, reference: envelope.reference };
544
- }
545
- const reference = toolCall.toolSourceReference ?? undefined;
546
- if (reference === undefined || this.toolSources.length === 0) {
547
- return undefined;
548
- }
549
- const onlySource = this.toolSources.length === 1 ? this.toolSources[0] : undefined;
550
- if (onlySource !== undefined) {
551
- // A reference the source built itself, such as in a runner subclass.
552
- return { source: onlySource, reference };
553
- }
554
- throw new RangeError(`cannot tell which tool source built the call of ${toolCall.toolName}`);
555
- }
556
442
  listOfferedTools(turn, sourceTools) {
557
443
  const isPlanning = turn.interactionMode === "planning";
558
444
  const enabledBuiltInTools = turn.enabledBuiltInTools ?? new Set();
@@ -583,7 +469,7 @@ export class StepwiseAgentRunner {
583
469
  resolveModelToolPolicy(turn, toolName) {
584
470
  const tool = this.functionToolsByName.get(toolName);
585
471
  const isBuiltIn = turn.enabledBuiltInTools?.has(toolName) === true;
586
- if (tool === undefined && this.toolSources.length > 0 && !isBuiltIn) {
472
+ if (tool === undefined && this.toolSources.hasToolSources && !isBuiltIn) {
587
473
  return unlistedSourceToolPolicy;
588
474
  }
589
475
  const sessionPolicies = turn.toolPolicies ?? this.definition.toolPolicies ?? {};
@@ -741,64 +627,15 @@ function modelRequestMetadata(turn) {
741
627
  attempt: turn.attempt,
742
628
  };
743
629
  }
744
- function refuseSourceToolName(toolName, functionToolNames, builtInTools, otherSourceTools) {
745
- if (builtInTools.has(toolName)) {
746
- throw new TypeError(`tool ${toolName} uses the name of an enabled built-in tool`);
747
- }
748
- if (functionToolNames.has(toolName)) {
749
- throw new TypeError(`tool ${toolName} of a tool source uses the name of a function tool`);
750
- }
751
- if (otherSourceTools.has(toolName)) {
752
- throw new TypeError(`two tool sources list a tool named ${toolName}`);
753
- }
754
- }
755
- function refuseDeclaredToolNameCollisions(toolSources, functionToolNames, builtInTools) {
756
- const declared = new Map();
757
- for (const source of toolSources) {
758
- const names = [...(source.declaredToolNames?.() ?? [])].sort();
759
- for (const toolName of names) {
760
- refuseSourceToolName(toolName, functionToolNames, builtInTools, declared);
761
- }
762
- for (const toolName of names) {
763
- declared.set(toolName, source);
764
- }
765
- }
766
- }
767
630
  /** Error of a call to a tool that no function tool or source listing offers; the same text as the Python core. */
768
631
  export function buildUnknownToolError(toolName) {
769
632
  return `unknown tool ${toolName}`;
770
633
  }
771
634
  /** The runner's `toolSourceReference`: the source's name and its own reference, as JSON text. */
772
635
  export function writeToolSourceEnvelope(sourceName, reference) {
773
- return JSON.stringify({ [toolSourceNameKey]: sourceName, [toolSourceReferenceKey]: reference ?? null });
636
+ return writeRouterToolSourceEnvelope(toolSourceNameKey, sourceName, reference);
774
637
  }
775
638
  export function readToolSourceEnvelope(toolSourceReference) {
776
- if (toolSourceReference === undefined || toolSourceReference === null) {
777
- return undefined;
778
- }
779
- let envelope;
780
- try {
781
- envelope = JSON.parse(toolSourceReference);
782
- }
783
- catch {
784
- return undefined;
785
- }
786
- if (typeof envelope !== "object" || envelope === null || Array.isArray(envelope)) {
787
- return undefined;
788
- }
789
- const sourceName = envelope[toolSourceNameKey];
790
- const reference = envelope[toolSourceReferenceKey];
791
- if (typeof sourceName !== "string") {
792
- return undefined;
793
- }
794
- if (reference !== null && reference !== undefined && typeof reference !== "string") {
795
- return undefined;
796
- }
797
- return { sourceName, reference: reference ?? undefined };
798
- }
799
- /** The record as the source built it: its own reference instead of the runner's envelope. */
800
- function withToolSourceReference(toolCall, reference) {
801
- const { toolSourceReference: _envelope, ...rest } = toolCall;
802
- return (reference === undefined ? rest : { ...rest, toolSourceReference: reference });
639
+ return readRouterToolSourceEnvelope(toolSourceNameKey, toolSourceReference);
803
640
  }
804
641
  //# sourceMappingURL=stepwise-agent-runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stepwise-agent-runner.js","sourceRoot":"","sources":["../../../src/stepwise/stepwise-agent-runner.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAE1D,OAAO,EAAE,sBAAsB,EAAoB,MAAM,4BAA4B,CAAC;AAEtF,OAAO,EACL,kBAAkB,GAWnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EACL,uBAAuB,GAIxB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,uBAAuB,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAazG,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,2BAA2B,CAAC;AASnC,MAAM,iBAAiB,GAAG,CAAC,WAAW,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,cAAc,CAAU,CAAC;AAChH,2FAA2F;AAC3F,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AACjD,4FAA4F;AAC5F,MAAM,wBAAwB,GAAuB,EAAE,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;AACzG,MAAM,sBAAsB,GAAG,WAAW,CAAC;AAE3C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC;AAExD,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAE/C,gGAAgG;AAChG,MAAM,CAAC,MAAM,wBAAwB,GAAG,4CAA4C,CAAC;AAErF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,0BAA0B,GACrC,yFAAyF;IACzF,oFAAoF;IACpF,wFAAwF;IACxF,iCAAiC,CAAC;AAEpC,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,sEAAsE,CAAC;AAE5G,gHAAgH;AAChH,MAAM,UAAU,+BAA+B,CAAC,oBAA4B;IAC1E,OAAO,6DAA6D,oBAAoB,eAAe,CAAC;AAC1G,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAAC,YAAoB;IAClE,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,sEAAsE,CAAC;IAChF,CAAC;IACD,OAAO,SAAS,YAAY,iEAAiE,CAAC;AAChG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAuB;IAC7D,OAAO,GAAG,wBAAwB,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;AACxD,CAAC;AAED,4EAA4E;AAC5E,MAAM,oBAAoB,GAAsB;IAC9C,cAAc,EAAE,GAAG,EAAE,CAAC,SAAS;IAC/B,mBAAmB,EAAE,GAAG,EAAE,CAAC,SAAS;CACrC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,OAAO,mBAAmB;IAC9B,oDAAoD;IACpC,UAAU,CAAkB;IAC5C,+FAA+F;IAC/E,gBAAgB,GAAG,IAAI,CAAC;IACvB,mBAAmB,CAAoC;IACvD,WAAW,CAAwB;IACnC,iBAAiB,CAAkC;IACnD,oBAAoB,CAAS;IAC7B,0BAA0B,CAAS;IACpD,2FAA2F;IAC1E,YAAY,GAAG,IAAI,GAAG,EAA2C,CAAC;IAEnF;;;;;;;;OAQG;IACH,YAAmB,UAA2B;QAC5C,IAAI,OAAO,UAAU,EAAE,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC1E,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,OAAO,UAAU,CAAC,YAAY,KAAK,QAAQ,IAAI,OAAO,UAAU,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YACjG,MAAM,IAAI,SAAS,CAAC,6DAA6D,CAAC,CAAC;QACrF,CAAC;QACD,IAAI,OAAO,UAAU,CAAC,KAAK,EAAE,SAAS,KAAK,UAAU,IAAI,OAAO,UAAU,CAAC,KAAK,CAAC,mBAAmB,KAAK,UAAU,EAAE,CAAC;YACpH,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,UAAU,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,UAAU,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YAC3F,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAS,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;QAC3E,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAwB,CAAC;QAC5D,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YAC1C,IAAI,IAAI,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;gBACnC,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAC;YACvF,CAAC;YACD,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,SAAS,CAAC,sBAAsB,UAAU,CAAC,IAAI,cAAc,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACtF,CAAC;YACD,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,SAAS,CAAC,QAAQ,IAAI,CAAC,IAAI,4CAA4C,CAAC,CAAC;YACrF,CAAC;YACD,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;QACxD,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CACpC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAQ,MAAoD,EAAE,CAAC,MAAM,CAAC,KAAK,UAAU,CAClG,CAAC;YACF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,SAAS,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,WAAW,OAAO,SAAS,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;QACD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAsB,CAAC;QACxD,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;YACjC,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC7E,MAAM,IAAI,SAAS,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;YACpF,CAAC;YACD,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,SAAS,CAAC,8BAA8B,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;QACD,gCAAgC,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC;QACxG,MAAM,0BAA0B,GAAG,UAAU,CAAC,0BAA0B,IAAI,iCAAiC,CAAC;QAC9G,IAAI,CAAC,CAAC,0BAA0B,GAAG,CAAC,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,UAAU,CAAC,6DAA6D,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,UAAU,CAAC,eAAe,KAAK,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YACnF,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,kBAAkB,GAAY,UAAU,CAAC,kBAAkB,IAAI,MAAM,CAAC;QAC5E,IAAI,kBAAkB,KAAK,MAAM,IAAI,kBAAkB,KAAK,UAAU,EAAE,CAAC;YACvE,MAAM,IAAI,SAAS,CAAC,wDAAwD,MAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC5G,CAAC;QACD,MAAM,oBAAoB,GAAG,UAAU,CAAC,oBAAoB,IAAI,2BAA2B,CAAC;QAC5F,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,oBAAoB,IAAI,CAAC,EAAE,CAAC;YAC7E,MAAM,IAAI,UAAU,CAAC,iEAAiE,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,0BAA0B,GAAG,0BAA0B,CAAC;QAC7D,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACI,gBAAgB,CAAC,IAAY;QAClC,OAAO,0BAA0B,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,YAAY,CAAC,IAAsB;QAC9C,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAClE,MAAM,mBAAmB,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC3D,MAAM,iBAAiB,GAAG,cAAc,IAAI,IAAI,CAAC,oBAAoB,CAAC;QACtE,MAAM,WAAW,GACf,iBAAiB,IAAI,IAAI,CAAC,eAAe,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1G,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC1C,IAAI,EACJ,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,WAAW,CACZ,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/F,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;QACnD,MAAM,WAAW,GAAG,CAAC,GAAG,mBAAmB,EAAE,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACtG,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACnD,CAAC;QACD,IAAI,iBAAiB,EAAE,CAAC;YACtB,wFAAwF;YACxF,MAAM,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,CAC1C,CAAC,QAAQ,EAAuB,EAAE,CAAC,CAAC;gBAClC,IAAI,EAAE,aAAa;gBACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,MAAM,EAAE,+BAA+B,CAAC,IAAI,CAAC,oBAAoB,CAAC;aACnE,CAAC,CACH,CAAC;YACF,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,CAAC,GAAG,WAAW,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBAC/E,KAAK;aACN,CAAC;QACJ,CAAC;QACD,OAAO;YACL,IAAI,EAAE,sBAAsB;YAC5B,iBAAiB,EAAE,iCAAiC,CAAC,EAAE,WAAW,EAAE,cAAc,GAAG,CAAC,EAAE,CAAC;YACzF,WAAW;YACX,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAoB,EAAE;gBAC/D,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAClD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC7F,OAAO;wBACL,GAAG,KAAK;wBACR,mBAAmB,EAAE,uBAAuB,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,mBAAmB,CAAC;qBAClG,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,MAAM,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;iBAC7D,CAAC;YACJ,CAAC,CAAC;YACF,KAAK;SACN,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,uBAAuB,CAAC,IAA2B;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,IAAI,kBAAkB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzE,CAAC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3H,CAAC;QACD,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QACxE,MAAM,SAAS,GAAG,uBAAuB,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACvF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,OAAO,GAAoB;YAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;YACrC,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,IAAI,IAAI;YACrD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE;SAClC,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC1D,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC5B,CAAC;QACD,IAAK,MAA6C,EAAE,IAAI,KAAK,sBAAsB,EAAE,CAAC;YACpF,OAAO,MAA6B,CAAC;QACvC,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,iCAAiC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IAC7F,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,YAAY,CAAC,IAAkB;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,UAAU,CAAC,yCAAyC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1F,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,uBAAuB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACrH,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,cAAc,CAAC,YAAkC;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,UAAU,CAAC,yCAAyC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClG,CAAC;QACD,MAAM,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YACnC,GAAG,YAAY;YACf,QAAQ,EAAE,uBAAuB,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;SAC3E,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,2BAA2B,CAAC,IAAsB;QACvD,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,mBAAmB,CAAC,IAAsB;QACrD,MAAM,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAClE,MAAM,iBAAiB,GAAG,cAAc,IAAI,IAAI,CAAC,oBAAoB,CAAC;QACtE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC1C,IAAI,EACJ,wBAAwB,CAAC,IAAI,CAAC,EAC9B,cAAc,EACd,iBAAiB,EACjB,IAAI,CAAC,qBAAqB,EAAE,CAC7B,CAAC;QACF,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,sBAAsB,CAAC,IAAsB,EAAE,mBAA2B;QAC/E,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,KAAK,CAAS,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/D,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;QACpF,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC1D,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7G,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC;YAChD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,mBAAmB,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzG,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACI,KAAK,CAAC,gBAAgB,CAAC,OAA8B;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAClE,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,MAAM,MAAM,GACV,OAAO,CAAC,gBAAgB,KAAK,SAAS;YACpC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,qDAAqD;gBACrD,OAAO,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,eAAe,IAAI,CAAC,CAAC,CAAC;QACvF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,oFAAoF;YACpF,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACzC,KAAK,CAAC,mBAAmB,CAAC,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CACjH,CAAC;YACF,IAAI,MAAM,GACR,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;gBACnF,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,KAAK,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC;YAChE,gFAAgF;YAChF,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,kBAAkB,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzE,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;oBACrB,MAAM;gBACR,CAAC;gBACD,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,KAAK,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC;gBACjG,YAAY,GAAG,GAAG,CAAC;YACrB,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,SAAS,CACpC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC,EAC/E,oBAAoB,CACrB,CAAC;QACF,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC/B,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;IACrF,CAAC;IAEO,mBAAmB,CACzB,OAA8B,EAC9B,UAAqC,EACrC,YAAoB;QAEpB,MAAM,KAAK,GAAqB,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,uBAAuB,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,+BAA+B,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;QAC9E,OAAO;YACL,YAAY,EAAE,0BAA0B;YACxC,UAAU,EAAE,wBAAwB,CAAC,KAAK,CAAC;YAC3C,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,EAAE;YAC7C,QAAQ,EAAE;gBACR,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB;YACD,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;SAC/C,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,IAAsB,EACtB,mBAAmD,EACnD,cAAsB,EACtB,iBAA0B,EAC1B,WAA8B;QAE9B,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC;QACnD,MAAM,YAAY,GAChB,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,uBAAuB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACxG,IAAI,UAAU,GAAoB,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QACtE,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,KAAK,UAAU,IAAI,kBAAkB,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,CAAC;YACxH,UAAU,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;QAC3C,CAAC;QACD,OAAO;YACL,YAAY,EAAE,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAClD,6EAA6E;YAC7E,UAAU,EAAE,wBAAwB,CAAC;gBACnC,GAAG,YAAY;gBACf,GAAG,gCAAgC,CAAC,IAAI,CAAC;gBACzC,GAAG,mBAAmB;aACvB,CAAC;YACF,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC;YACxE,UAAU;YACV,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,EAAE;YAC7C,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC;YACpC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;SAC5C,CAAC;IACJ,CAAC;IAEO,aAAa,CAAC,IAAsB,EAAE,KAAgC;QAC5E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,mBAAmB,CAAC;YACjE,YAAY,EAAE,EAAE;YAChB,UAAU,EAAE,KAAK;YACjB,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,EAAE;YAC7C,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC;YACpC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;SAC5C,CAAC,CAAC;IACL,CAAC;IAED,4FAA4F;IACpF,6BAA6B,CAAC,IAAsB;QAC1D,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,mBAAmB,IAAI,EAAE,EAAE,CAAC;YACzD,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC9C,MAAM,IAAI,SAAS,CAAC,QAAQ,WAAW,4CAA4C,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,IAAsB;QAClD,MAAM,mBAAmB,GAAwB,IAAI,CAAC,mBAAmB,IAAI,IAAI,GAAG,EAAU,CAAC;QAC/F,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;QACnD,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,KAAK,MAAM,IAAI,IAAI,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC3D,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;gBAChF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,MAAkB;QAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QACnC,gFAAgF;QAChF,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,KAAiC,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAc,CAAC,OAAO,EAAE,EAAE;YACpD,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;QACH,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;YACtD,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;gBAC1B,OAAO,CAAC,IAAI,CAAC,eAAe,KAAK,0BAA0B,IAAI,CAAC,0BAA0B,KAAK,CAAC,CAAC;gBACjG,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACpC,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,eAAe,KAAK,8BAA8B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACzH,OAAO,EAAE,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAEO,qBAAqB;QAC3B,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;QACnD,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC3B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,iBAAiB,CACvB,QAA8B;QAE9B,MAAM,QAAQ,GAAG,sBAAsB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QACtE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,IAAI,UAAU,CAClB,eAAe,QAAQ,CAAC,UAAU,kCAAkC,QAAQ,CAAC,QAAQ,oCAAoC,CAC1H,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC;QACnD,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,mBAAmB,IAAI,SAAS,CAAC;QAC5D,IAAI,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7D,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,qEAAqE;YACrE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;QAC3C,CAAC;QACD,MAAM,IAAI,UAAU,CAAC,mDAAmD,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/F,CAAC;IAEO,gBAAgB,CAAC,IAAsB,EAAE,WAA8B;QAC7E,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,KAAK,UAAU,CAAC;QACvD,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,IAAI,IAAI,GAAG,EAAe,CAAC;QAC/E,MAAM,YAAY,GAAG,sBAAsB;aACxC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;aAChE,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC;aACxE,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACpB,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,UAAU,EAAE,UAAU,CAAC,UAAU;SAClC,CAAC,CAAC,CAAC;QACN,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC1E,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC,CAAC;QACJ,MAAM,kBAAkB,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACtE,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,IAAI,CAAC,WAAW;SAC7B,CAAC,CAAC,CAAC;QACJ,OAAO,CAAC,GAAG,aAAa,EAAE,GAAG,kBAAkB,EAAE,GAAG,YAAY,CAAC,CAAC;IACpE,CAAC;IAED,+GAA+G;IACvG,sBAAsB,CAAC,IAAsB,EAAE,QAAgB;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,SAAS,GAAI,IAAI,CAAC,mBAAuD,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;QACxG,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpE,OAAO,wBAAwB,CAAC;QAClC,CAAC;QACD,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC;QAChF,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,6GAA6G;YAC7G,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;QACrD,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,gBAAgB,KAAK,SAAS;YACxC,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACzE,CAAC;IAEO,YAAY,CAAC,eAA4C;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAClD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAC/B,CAAC;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QAClD,IAAI,OAAO,KAAK,EAAE,SAAS,KAAK,UAAU,IAAI,OAAO,KAAK,CAAC,mBAAmB,KAAK,UAAU,EAAE,CAAC;YAC9F,MAAM,IAAI,SAAS,CAAC,yBAAyB,IAAI,CAAC,UAAU,CAAC,IAAI,4BAA4B,CAAC,CAAC;QACjG,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,IAAsB;QACtD,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAClD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC;YAClC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,MAAM;YAC/C,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACvB,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,EAAE;SAC5C,CAAC,CAAC;QACH,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,MAAM,IAAI,SAAS,CAAC,6BAA6B,IAAI,CAAC,UAAU,CAAC,IAAI,2BAA2B,CAAC,CAAC;QACpG,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,6FAA6F;AAC7F,SAAS,kBAAkB,CAAC,IAAsB,EAAE,cAAsB;IACxE,OAAO,CACL,IAAI,CAAC,eAAe,KAAK,UAAU;QACnC,cAAc,KAAK,CAAC;QACpB,IAAI,CAAC,mBAAmB,EAAE,GAAG,CAAC,aAAa,CAAC,KAAK,IAAI;QACrD,IAAI,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAC9B,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CAAC,IAAsB;IAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAChE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,2FAA2F;IAC3F,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;IACvF,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpG,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6GAA6G;AAC7G,SAAS,wBAAwB,CAAC,IAAsB;IACtD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;IACvF,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAC/F,CAAC;IACF,2FAA2F;IAC3F,MAAM,YAAY,GAChB,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,KAAK,IAAI;QACpC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,GAAG,CACL,YAAY;aACT,GAAG,CAAC,wBAAwB,CAAC;aAC7B,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aACvE,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC1C,CAAC;IACR,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;SACvB,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;SAC/D,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SACrF,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SAC3D,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChB,IAAI,EAAE,aAAa;QACnB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,MAAM,EAAE,uBAAuB,CAAC,MAAM,CAAC;KACxC,CAAC,CAAC,CAAC;AACR,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgB,EAAE,aAAqB;IACjE,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,mFAAmF;QACnF,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,QAAQ,gCAAgC,CAAC,CAAC;IAClG,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,kBAAkB,CAAC,yBAAyB,QAAQ,0BAA0B,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,MAA2C,CAAC;AACrD,CAAC;AAED,SAAS,kBAAkB,CAAC,iBAAgC;IAC1D,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;QAC/B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAuC,CAAC;IACnF,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QACxF,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CAAC;AAC5B,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAuB;IACnD,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC;QACrC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;QAClC,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAqB,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,cAAc,CAAC,EACrF,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAC;IACvF,CAAC;AACH,CAAC;AAED,wFAAwF;AACxF,SAAS,kBAAkB,CAAC,KAAgC;IAC1D,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACnC,IAAI,IAAI,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAClD,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACjC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACtC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACvC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,sEAAsE;YACtE,WAAW,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAC7D,SAAS;QACX,CAAC;QACD,0EAA0E;QAC1E,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,SAAS,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACtE,SAAS;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAsB;IAClD,OAAO;QACL,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,EAAE;QAC3C,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,QAAgB,EAChB,iBAAsC,EACtC,YAAiC,EACjC,gBAA8C;IAE9C,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,SAAS,CAAC,QAAQ,QAAQ,4CAA4C,CAAC,CAAC;IACpF,CAAC;IACD,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,SAAS,CAAC,QAAQ,QAAQ,oDAAoD,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,SAAS,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAC;IACxE,CAAC;AACH,CAAC;AAED,SAAS,gCAAgC,CACvC,WAAkC,EAClC,iBAAsC,EACtC,YAAiC;IAEjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC/C,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/D,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC7B,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAC5E,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC7B,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;AACH,CAAC;AAED,kHAAkH;AAClH,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,OAAO,gBAAgB,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,uBAAuB,CAAC,UAAkB,EAAE,SAA6B;IACvF,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC,sBAAsB,CAAC,EAAE,SAAS,IAAI,IAAI,EAAE,CAAC,CAAC;AAC1G,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,mBAAuC;IAEvC,IAAI,mBAAmB,KAAK,SAAS,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;QACtE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,QAAiB,CAAC;IACtB,IAAI,CAAC;QACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,UAAU,GAAI,QAAoC,CAAC,iBAAiB,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAI,QAAoC,CAAC,sBAAsB,CAAC,CAAC;IAChF,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QACnF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,IAAI,SAAS,EAAE,CAAC;AAC3D,CAAC;AAOD,6FAA6F;AAC7F,SAAS,uBAAuB,CAAoC,QAAc,EAAE,SAA6B;IAC/G,MAAM,EAAE,mBAAmB,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC;IAC7D,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,CAAS,CAAC;AAChG,CAAC"}
1
+ {"version":3,"file":"stepwise-agent-runner.js","sourceRoot":"","sources":["../../../src/stepwise/stepwise-agent-runner.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,7 @@ export function createStepwiseAgentSessionFlow(definition, flowType) {
50
50
  ? {}
51
51
  : { eventStreamCapacityBytes: definition.eventStreamCapacityBytes }),
52
52
  ...(definition.compaction === undefined ? {} : { compaction: definition.compaction }),
53
+ ...(definition.spendLimit === undefined ? {} : { spendLimit: definition.spendLimit }),
53
54
  };
54
55
  return createAgentSessionFlow(runner, flowType, options);
55
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stepwise-agent-session-flow.js","sourceRoot":"","sources":["../../../src/stepwise/stepwise-agent-session-flow.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAE1D,OAAO,EAAE,sBAAsB,EAAmD,MAAM,0BAA0B,CAAC;AAEnH,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,8BAA8B,CAC5C,UAA2B,EAC3B,QAAgB;IAEhB,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,OAAO,GAAwB;QACnC,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC;QAC3F,GAAG,CAAC,UAAU,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAC1G,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC;QAC3F,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC;QACpG,GAAG,CAAC,UAAU,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAC;QAChH,GAAG,CAAC,UAAU,CAAC,wBAAwB,KAAK,SAAS;YACnD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,wBAAwB,EAAE,UAAU,CAAC,wBAAwB,EAAE,CAAC;QACtE,GAAG,CAAC,UAAU,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;KACtF,CAAC;IACF,OAAO,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"stepwise-agent-session-flow.js","sourceRoot":"","sources":["../../../src/stepwise/stepwise-agent-session-flow.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAE1D,OAAO,EAAE,sBAAsB,EAAmD,MAAM,0BAA0B,CAAC;AAEnH,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,8BAA8B,CAC5C,UAA2B,EAC3B,QAAgB;IAEhB,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,OAAO,GAAwB;QACnC,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC;QAC3F,GAAG,CAAC,UAAU,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAC1G,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,YAAY,EAAE,CAAC;QAC3F,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC;QACpG,GAAG,CAAC,UAAU,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAC;QAChH,GAAG,CAAC,UAAU,CAAC,wBAAwB,KAAK,SAAS;YACnD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,wBAAwB,EAAE,UAAU,CAAC,wBAAwB,EAAE,CAAC;QACtE,GAAG,CAAC,UAAU,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;QACrF,GAAG,CAAC,UAAU,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;KACtF,CAAC;IACF,OAAO,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC"}