pi-subagents 0.73.1 → 0.74.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 (237) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +1 -1
  3. package/docs/agents.md +16 -12
  4. package/docs/configuration.md +66 -9
  5. package/docs/extension-api.md +5 -4
  6. package/docs/missions.md +13 -13
  7. package/docs/models.md +2 -2
  8. package/docs/observability.md +2 -2
  9. package/docs/tool-reference.md +63 -86
  10. package/docs/workflows.md +165 -171
  11. package/package.json +2 -2
  12. package/prompts/review-loop.md +1 -1
  13. package/skills/council-mode/SKILL.md +1 -1
  14. package/skills/pi-subagents/SKILL.md +12 -5
  15. package/skills/pi-subagents/references/constraints-and-recipes.md +3 -3
  16. package/skills/pi-subagents/references/execution-controls.md +68 -67
  17. package/skills/pi-subagents/references/management-authoring-rpc.md +2 -2
  18. package/skills/pi-subagents/references/multi-lane-orchestration.md +1 -1
  19. package/skills/pi-subagents/references/prompting-and-roles.md +45 -48
  20. package/src/agents/agent-management.js +2 -2
  21. package/src/agents/agent-management.js.map +1 -1
  22. package/src/agents/agents.d.ts +1 -0
  23. package/src/agents/agents.d.ts.map +1 -1
  24. package/src/agents/agents.js +8 -0
  25. package/src/agents/agents.js.map +1 -1
  26. package/src/api/preflight.d.ts +5 -1
  27. package/src/api/preflight.d.ts.map +1 -1
  28. package/src/api/preflight.js +2 -1
  29. package/src/api/preflight.js.map +1 -1
  30. package/src/extension/config.d.ts.map +1 -1
  31. package/src/extension/config.js +12 -4
  32. package/src/extension/config.js.map +1 -1
  33. package/src/extension/control-notices.d.ts +2 -0
  34. package/src/extension/control-notices.d.ts.map +1 -1
  35. package/src/extension/control-notices.js +2 -0
  36. package/src/extension/control-notices.js.map +1 -1
  37. package/src/extension/doctor.d.ts.map +1 -1
  38. package/src/extension/doctor.js +1 -0
  39. package/src/extension/doctor.js.map +1 -1
  40. package/src/extension/fanout-child.d.ts.map +1 -1
  41. package/src/extension/fanout-child.js +13 -3
  42. package/src/extension/fanout-child.js.map +1 -1
  43. package/src/extension/herdr-pi-bridge.d.ts.map +1 -1
  44. package/src/extension/herdr-pi-bridge.js +2 -0
  45. package/src/extension/herdr-pi-bridge.js.map +1 -1
  46. package/src/extension/index.d.ts +1 -1
  47. package/src/extension/index.d.ts.map +1 -1
  48. package/src/extension/index.js +62 -161
  49. package/src/extension/index.js.map +1 -1
  50. package/src/extension/public-execution.d.ts +10 -1
  51. package/src/extension/public-execution.d.ts.map +1 -1
  52. package/src/extension/public-execution.js +69 -35
  53. package/src/extension/public-execution.js.map +1 -1
  54. package/src/extension/reply-workflow-script.d.ts +12 -0
  55. package/src/extension/reply-workflow-script.d.ts.map +1 -0
  56. package/src/extension/reply-workflow-script.js +61 -0
  57. package/src/extension/reply-workflow-script.js.map +1 -0
  58. package/src/extension/rpc.d.ts +2 -0
  59. package/src/extension/rpc.d.ts.map +1 -1
  60. package/src/extension/rpc.js +33 -10
  61. package/src/extension/rpc.js.map +1 -1
  62. package/src/extension/schemas.d.ts +3 -117
  63. package/src/extension/schemas.d.ts.map +1 -1
  64. package/src/extension/schemas.js +38 -125
  65. package/src/extension/schemas.js.map +1 -1
  66. package/src/extension/tool-activation.d.ts +2 -4
  67. package/src/extension/tool-activation.d.ts.map +1 -1
  68. package/src/extension/tool-activation.js +54 -104
  69. package/src/extension/tool-activation.js.map +1 -1
  70. package/src/extension/tool-description.d.ts +8 -5
  71. package/src/extension/tool-description.d.ts.map +1 -1
  72. package/src/extension/tool-description.js +51 -27
  73. package/src/extension/tool-description.js.map +1 -1
  74. package/src/extension/upgrade-notice.d.ts +7 -0
  75. package/src/extension/upgrade-notice.d.ts.map +1 -0
  76. package/src/extension/upgrade-notice.js +37 -0
  77. package/src/extension/upgrade-notice.js.map +1 -0
  78. package/src/integrations/herdr-status.d.ts +3 -0
  79. package/src/integrations/herdr-status.d.ts.map +1 -1
  80. package/src/integrations/herdr-status.js +17 -3
  81. package/src/integrations/herdr-status.js.map +1 -1
  82. package/src/intercom/native-supervisor-channel.d.ts.map +1 -1
  83. package/src/intercom/native-supervisor-channel.js +4 -1
  84. package/src/intercom/native-supervisor-channel.js.map +1 -1
  85. package/src/runs/background/async-execution.d.ts +3 -0
  86. package/src/runs/background/async-execution.d.ts.map +1 -1
  87. package/src/runs/background/async-execution.js +6 -2
  88. package/src/runs/background/async-execution.js.map +1 -1
  89. package/src/runs/background/async-job-tracker.d.ts.map +1 -1
  90. package/src/runs/background/async-job-tracker.js +65 -22
  91. package/src/runs/background/async-job-tracker.js.map +1 -1
  92. package/src/runs/background/async-retention.d.ts +1 -1
  93. package/src/runs/background/async-retention.d.ts.map +1 -1
  94. package/src/runs/background/async-retention.js +47 -15
  95. package/src/runs/background/async-retention.js.map +1 -1
  96. package/src/runs/background/await-async-run.d.ts +23 -0
  97. package/src/runs/background/await-async-run.d.ts.map +1 -0
  98. package/src/runs/background/await-async-run.js +80 -0
  99. package/src/runs/background/await-async-run.js.map +1 -0
  100. package/src/runs/background/chain-root-attachment.d.ts +1 -0
  101. package/src/runs/background/chain-root-attachment.d.ts.map +1 -1
  102. package/src/runs/background/chain-root-attachment.js +3 -3
  103. package/src/runs/background/chain-root-attachment.js.map +1 -1
  104. package/src/runs/background/notify.d.ts +3 -0
  105. package/src/runs/background/notify.d.ts.map +1 -1
  106. package/src/runs/background/notify.js +3 -0
  107. package/src/runs/background/notify.js.map +1 -1
  108. package/src/runs/background/run-child-session.d.ts.map +1 -1
  109. package/src/runs/background/run-child-session.js +4 -1
  110. package/src/runs/background/run-child-session.js.map +1 -1
  111. package/src/runs/background/run-status.d.ts.map +1 -1
  112. package/src/runs/background/run-status.js +6 -0
  113. package/src/runs/background/run-status.js.map +1 -1
  114. package/src/runs/background/runner-child-launch.d.ts +1 -0
  115. package/src/runs/background/runner-child-launch.d.ts.map +1 -1
  116. package/src/runs/background/runner-child-launch.js +2 -0
  117. package/src/runs/background/runner-child-launch.js.map +1 -1
  118. package/src/runs/background/scheduled-runs.js +5 -5
  119. package/src/runs/background/scheduled-runs.js.map +1 -1
  120. package/src/runs/background/subagent-runner.d.ts +3 -0
  121. package/src/runs/background/subagent-runner.d.ts.map +1 -1
  122. package/src/runs/background/subagent-runner.js +5 -0
  123. package/src/runs/background/subagent-runner.js.map +1 -1
  124. package/src/runs/foreground/async-stop-action.d.ts.map +1 -1
  125. package/src/runs/foreground/async-stop-action.js +15 -1
  126. package/src/runs/foreground/async-stop-action.js.map +1 -1
  127. package/src/runs/foreground/execution.d.ts.map +1 -1
  128. package/src/runs/foreground/execution.js +8 -1
  129. package/src/runs/foreground/execution.js.map +1 -1
  130. package/src/runs/foreground/subagent-executor.d.ts +6 -5
  131. package/src/runs/foreground/subagent-executor.d.ts.map +1 -1
  132. package/src/runs/foreground/subagent-executor.js +293 -182
  133. package/src/runs/foreground/subagent-executor.js.map +1 -1
  134. package/src/runs/shared/child-launch.d.ts +5 -1
  135. package/src/runs/shared/child-launch.d.ts.map +1 -1
  136. package/src/runs/shared/child-launch.js +15 -1
  137. package/src/runs/shared/child-launch.js.map +1 -1
  138. package/src/runs/shared/child-session.d.ts +9 -0
  139. package/src/runs/shared/child-session.d.ts.map +1 -1
  140. package/src/runs/shared/child-session.js +90 -4
  141. package/src/runs/shared/child-session.js.map +1 -1
  142. package/src/runs/shared/child-tool-plan.d.ts +4 -0
  143. package/src/runs/shared/child-tool-plan.d.ts.map +1 -1
  144. package/src/runs/shared/child-tool-plan.js +11 -4
  145. package/src/runs/shared/child-tool-plan.js.map +1 -1
  146. package/src/runs/shared/dynamic-fanout.js +1 -1
  147. package/src/runs/shared/dynamic-fanout.js.map +1 -1
  148. package/src/runs/shared/mcp-config-sources.d.ts +1 -0
  149. package/src/runs/shared/mcp-config-sources.d.ts.map +1 -1
  150. package/src/runs/shared/mcp-config-sources.js +1 -1
  151. package/src/runs/shared/mcp-config-sources.js.map +1 -1
  152. package/src/runs/shared/mcp-direct-tool-allowlist.d.ts +28 -0
  153. package/src/runs/shared/mcp-direct-tool-allowlist.d.ts.map +1 -1
  154. package/src/runs/shared/mcp-direct-tool-allowlist.js +78 -2
  155. package/src/runs/shared/mcp-direct-tool-allowlist.js.map +1 -1
  156. package/src/runs/shared/model-resolution.d.ts +10 -0
  157. package/src/runs/shared/model-resolution.d.ts.map +1 -1
  158. package/src/runs/shared/model-resolution.js +30 -9
  159. package/src/runs/shared/model-resolution.js.map +1 -1
  160. package/src/runs/shared/model-scope.d.ts +2 -1
  161. package/src/runs/shared/model-scope.d.ts.map +1 -1
  162. package/src/runs/shared/model-scope.js +26 -10
  163. package/src/runs/shared/model-scope.js.map +1 -1
  164. package/src/runs/shared/parallel-utils.d.ts +2 -0
  165. package/src/runs/shared/parallel-utils.d.ts.map +1 -1
  166. package/src/runs/shared/parallel-utils.js.map +1 -1
  167. package/src/runs/shared/pi-spawn.d.ts +1 -10
  168. package/src/runs/shared/pi-spawn.d.ts.map +1 -1
  169. package/src/runs/shared/pi-spawn.js +7 -86
  170. package/src/runs/shared/pi-spawn.js.map +1 -1
  171. package/src/runs/shared/subagent-prompt-runtime.d.ts.map +1 -1
  172. package/src/runs/shared/subagent-prompt-runtime.js +2 -0
  173. package/src/runs/shared/subagent-prompt-runtime.js.map +1 -1
  174. package/src/runs/shared/worktree.d.ts +1 -1
  175. package/src/runs/shared/worktree.d.ts.map +1 -1
  176. package/src/runs/shared/worktree.js +1 -1
  177. package/src/runs/shared/worktree.js.map +1 -1
  178. package/src/shared/disabled-features.d.ts +92 -0
  179. package/src/shared/disabled-features.d.ts.map +1 -0
  180. package/src/shared/disabled-features.js +113 -0
  181. package/src/shared/disabled-features.js.map +1 -0
  182. package/src/shared/extension-context.d.ts +9 -0
  183. package/src/shared/extension-context.d.ts.map +1 -1
  184. package/src/shared/extension-context.js +7 -0
  185. package/src/shared/extension-context.js.map +1 -1
  186. package/src/shared/settings.d.ts +1 -1
  187. package/src/shared/types.d.ts +20 -0
  188. package/src/shared/types.d.ts.map +1 -1
  189. package/src/shared/types.js.map +1 -1
  190. package/src/slash/prompt-template-bridge.js +2 -2
  191. package/src/slash/prompt-template-bridge.js.map +1 -1
  192. package/src/slash/slash-commands.d.ts +2 -0
  193. package/src/slash/slash-commands.d.ts.map +1 -1
  194. package/src/slash/slash-commands.js +2 -2
  195. package/src/slash/slash-commands.js.map +1 -1
  196. package/src/tui/render.d.ts.map +1 -1
  197. package/src/tui/render.js +55 -17
  198. package/src/tui/render.js.map +1 -1
  199. package/src/watchdog/diff-tool.d.ts +3 -1
  200. package/src/watchdog/diff-tool.d.ts.map +1 -1
  201. package/src/watchdog/diff-tool.js +20 -11
  202. package/src/watchdog/diff-tool.js.map +1 -1
  203. package/src/watchdog/register-child.js +2 -2
  204. package/src/watchdog/register-child.js.map +1 -1
  205. package/src/watchdog/register-main.js +2 -2
  206. package/src/watchdog/register-main.js.map +1 -1
  207. package/src/watchdog/review.d.ts +1 -1
  208. package/src/watchdog/review.d.ts.map +1 -1
  209. package/src/watchdog/review.js +1 -1
  210. package/src/watchdog/review.js.map +1 -1
  211. package/src/watchdog/turn-delta.js +1 -1
  212. package/src/watchdog/turn-delta.js.map +1 -1
  213. package/src/workflows/chat-progress.js +2 -2
  214. package/src/workflows/chat-progress.js.map +1 -1
  215. package/src/workflows/scripted-workflow.d.ts +8 -0
  216. package/src/workflows/scripted-workflow.d.ts.map +1 -1
  217. package/src/workflows/scripted-workflow.js +10 -2
  218. package/src/workflows/scripted-workflow.js.map +1 -1
  219. package/src/workflows/structured-workflow-scripts.d.ts +10 -0
  220. package/src/workflows/structured-workflow-scripts.d.ts.map +1 -0
  221. package/src/workflows/structured-workflow-scripts.js +166 -0
  222. package/src/workflows/structured-workflow-scripts.js.map +1 -0
  223. package/src/workflows/workflow-receipt.d.ts.map +1 -1
  224. package/src/workflows/workflow-receipt.js +8 -2
  225. package/src/workflows/workflow-receipt.js.map +1 -1
  226. package/src/workflows/workflow-resources.d.ts +9 -0
  227. package/src/workflows/workflow-resources.d.ts.map +1 -1
  228. package/src/workflows/workflow-resources.js +39 -12
  229. package/src/workflows/workflow-resources.js.map +1 -1
  230. package/src/workflows/workflow-reuse.d.ts +51 -0
  231. package/src/workflows/workflow-reuse.d.ts.map +1 -0
  232. package/src/workflows/workflow-reuse.js +103 -0
  233. package/src/workflows/workflow-reuse.js.map +1 -0
  234. package/src/workflows/workflow-revival.d.ts +32 -0
  235. package/src/workflows/workflow-revival.d.ts.map +1 -0
  236. package/src/workflows/workflow-revival.js +111 -0
  237. package/src/workflows/workflow-revival.js.map +1 -0
@@ -5,7 +5,7 @@
5
5
  * - Sync (default): Streams output, renders markdown, tracks usage
6
6
  * - Async: Background execution, emits events when done
7
7
  *
8
- * Public execution mode: workflow (workflowScript)
8
+ * Public execution mode: workflow (workflow: true reply block, script path, or named resource)
9
9
  * Toggle: async parameter (default: true; set asyncByDefault:false in config.json to opt out)
10
10
  *
11
11
  * Config file: ~/.pi/agent/extensions/subagent/config.json
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/extension/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAOH,OAAO,EAAW,KAAK,YAAY,EAA8C,MAAM,iCAAiC,CAAC;AAuCzH,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAyBjG,OAAO,EAGN,KAAK,aAAa,EAYlB,MAAM,oBAAoB,CAAC;AAQ5B,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAgShE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,EAAE,CAgC7E;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CA+yBxE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/extension/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAOH,OAAO,EAAW,KAAK,YAAY,EAA8C,MAAM,iCAAiC,CAAC;AAwCzH,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AA2BjG,OAAO,EAGN,KAAK,aAAa,EAYlB,MAAM,oBAAoB,CAAC;AAS5B,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AA4JhE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,EAAE,CA6C7E;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CAq0BxE"}
@@ -5,7 +5,7 @@
5
5
  * - Sync (default): Streams output, renders markdown, tracks usage
6
6
  * - Async: Background execution, emits events when done
7
7
  *
8
- * Public execution mode: workflow (workflowScript)
8
+ * Public execution mode: workflow (workflow: true reply block, script path, or named resource)
9
9
  * Toggle: async parameter (default: true; set asyncByDefault:false in config.json to opt out)
10
10
  *
11
11
  * Config file: ~/.pi/agent/extensions/subagent/config.json
@@ -26,7 +26,7 @@ import { ensureAccessibleDir } from "../shared/accessible-dir.js";
26
26
  import { cleanupAllArtifactDirs, cleanupOldArtifacts, getArtifactsDir } from "../shared/artifacts.js";
27
27
  import { resolveCurrentSessionId } from "../shared/session-identity.js";
28
28
  import { getAgentDir } from "../shared/utils.js";
29
- import { isStaleExtensionContextError, withCachedUiContext } from "../shared/extension-context.js";
29
+ import { isStaleExtensionContextError, MODEL_ONLY_TOOL, withCachedUiContext } from "../shared/extension-context.js";
30
30
  import { currentCompletionOwnerId } from "../shared/completion-owner.js";
31
31
  import { cleanupOldChainDirs } from "../shared/settings.js";
32
32
  import { clearLegacyResultAnimationTimer, renderSubagentResult, renderSubagentSummary, setInlineWorkflowCoverage } from "../tui/render.js";
@@ -34,6 +34,7 @@ import { getInspectorPlugins, registerInspectorEventListener } from "../inspecto
34
34
  import { SubagentFleetStatus, resolveFleetViewPlacement } from "../tui/fleet-status.js";
35
35
  import { readMainThinkingLevel, setMainThinkingLevelSource } from "../tui/running-tone.js";
36
36
  import { createSubagentParamsSchema } from "./schemas.js";
37
+ import { resolveDisabledFeatureSurface } from "../shared/disabled-features.js";
37
38
  import { createAsyncJobTracker } from "../runs/background/async-job-tracker.js";
38
39
  import { getActiveAsyncCapacitySnapshot, resolveAbandonedSlotReleaseAfterMs, resolveMaxActiveAsyncRunsPerSession } from "../runs/background/active-async-capacity.js";
39
40
  import { cleanupResultIndexes, missionObserverResultCandidateFiles } from "../runs/background/result-files.js";
@@ -67,15 +68,20 @@ import { formatDuration, shortenPath } from "../shared/formatters.js";
67
68
  import { loadConfig, resolveAsyncByDefault, resolveScheduledStoreRoot } from "./config.js";
68
69
  import { buildSubagentToolDescription, buildSubagentToolPromptMetadata } from "./tool-description.js";
69
70
  import { formatWorkflowPreflightSummary, normalizeWorkflowPreflight } from "../workflows/workflow-preflight.js";
71
+ import { runtimeReplacedAbortReason } from "../workflows/workflow-reuse.js";
70
72
  import { finalizeToolResult } from "./tool-result.js";
73
+ import { removedModelWorkflowFieldError } from "./public-execution.js";
71
74
  import { collectGoalContinuationNotices } from "../missions/goal-driver.js";
72
75
  import { restoreForegroundRunHistory } from "../runs/foreground/foreground-history.js";
73
76
  import { resolveMissionStoreLocation } from "../missions/store.js";
74
77
  import { listRetainedChildren } from "../runs/background/retained-children.js";
75
78
  import { DIRS, DEFAULT_ARTIFACT_CONFIG, SLASH_RESULT_TYPE, SLASH_TEXT_RESULT_TYPE, SUBAGENT_ASYNC_COMPLETE_EVENT, SUBAGENT_ASYNC_STARTED_EVENT, SUBAGENT_PROCESS_TERMINAL_EVENT, SUBAGENT_CONTROL_EVENT, SUBAGENT_STEERING_NOTICE_EVENT, WIDGET_KEY, resolveMaxSubagentSpawnsPerSession, } from "../shared/types.js";
76
79
  import { formatSubagentControlNotice, handleSubagentControlNotice, SUBAGENT_CONTROL_MESSAGE_TYPE, } from "./control-notices.js";
80
+ import { showUpgradeNotice } from "./upgrade-notice.js";
77
81
  export { loadConfig, resolveAsyncByDefault } from "./config.js";
78
82
  const SLOW_RELOAD_PHASE_MS = 250;
83
+ // Long enough for Pi to finish starting; loading the executor blocks the event loop for tens of ms.
84
+ const MODULE_PRELOAD_DELAY_MS = 1_000;
79
85
  const RUNTIME_REGISTRY_STORE_KEY = "__piSubagentRuntimeRegistry";
80
86
  function getRuntimeRegistry() {
81
87
  const globalStore = globalThis;
@@ -99,140 +105,6 @@ function logSlowPhase(label, startedAt) {
99
105
  if (elapsed >= SLOW_RELOAD_PHASE_MS)
100
106
  console.error(`Subagent reload phase '${label}' took ${elapsed}ms.`);
101
107
  }
102
- function workflowLaneKeys(script) {
103
- const keys = [];
104
- const seen = new Set();
105
- const add = (key) => {
106
- if (!seen.has(key)) {
107
- seen.add(key);
108
- keys.push(key);
109
- }
110
- };
111
- const isIdentifier = (char) => char !== undefined && /[\w$]/.test(char);
112
- const skipTrivia = (start) => {
113
- let index = start;
114
- while (index < script.length) {
115
- if (/\s/.test(script[index]))
116
- index += 1;
117
- else if (script.startsWith("//", index)) {
118
- const end = script.indexOf("\n", index + 2);
119
- index = end === -1 ? script.length : end + 1;
120
- }
121
- else if (script.startsWith("/*", index)) {
122
- const end = script.indexOf("*/", index + 2);
123
- index = end === -1 ? script.length : end + 2;
124
- }
125
- else
126
- break;
127
- }
128
- return index;
129
- };
130
- const readLiteral = (start) => {
131
- const quote = script[start];
132
- if (quote !== "'" && quote !== '"' && quote !== "`")
133
- return undefined;
134
- let index = start + 1;
135
- let dynamicTemplate = false;
136
- while (index < script.length) {
137
- if (script[index] === "\\") {
138
- index += 2;
139
- continue;
140
- }
141
- if (quote === "`" && script.startsWith("${", index))
142
- dynamicTemplate = true;
143
- if (script[index] === quote)
144
- return { key: dynamicTemplate ? undefined : script.slice(start + 1, index), end: index + 1 };
145
- if (quote !== "`" && /[\r\n]/.test(script[index]))
146
- return { end: index + 1 };
147
- index += 1;
148
- }
149
- return { end: script.length };
150
- };
151
- const collectRunsAllKeys = (start) => {
152
- let index = skipTrivia(start);
153
- if (script[index] !== "(")
154
- return start;
155
- index = skipTrivia(index + 1);
156
- if (script[index] !== "[")
157
- return start;
158
- let arrayDepth = 1;
159
- let objectDepth = 0;
160
- let directChildObject = false;
161
- let expectingElement = true;
162
- for (index += 1; index < script.length; index += 1) {
163
- index = skipTrivia(index);
164
- const literal = readLiteral(index);
165
- if (literal) {
166
- index = literal.end - 1;
167
- continue;
168
- }
169
- if (script[index] === "[") {
170
- arrayDepth += 1;
171
- expectingElement = false;
172
- continue;
173
- }
174
- if (script[index] === "]") {
175
- arrayDepth -= 1;
176
- if (arrayDepth === 0)
177
- return index + 1;
178
- continue;
179
- }
180
- if (script[index] === "{") {
181
- objectDepth += 1;
182
- if (objectDepth === 1)
183
- directChildObject = arrayDepth === 1 && expectingElement;
184
- expectingElement = false;
185
- continue;
186
- }
187
- if (script[index] === "}") {
188
- objectDepth -= 1;
189
- if (objectDepth === 0)
190
- directChildObject = false;
191
- continue;
192
- }
193
- if (script[index] === "," && arrayDepth === 1 && objectDepth === 0) {
194
- expectingElement = true;
195
- continue;
196
- }
197
- if (directChildObject && objectDepth === 1 && !isIdentifier(script[index - 1]) && script.startsWith("key", index) && !isIdentifier(script[index + 3])) {
198
- const colon = skipTrivia(index + 3);
199
- const key = script[colon] === ":" ? readLiteral(skipTrivia(colon + 1)) : undefined;
200
- if (key) {
201
- const next = skipTrivia(key.end);
202
- if (key.key !== undefined && (script[next] === "," || script[next] === "}"))
203
- add(key.key);
204
- index = key.end - 1;
205
- }
206
- }
207
- }
208
- return index;
209
- };
210
- for (let index = 0; index < script.length;) {
211
- index = skipTrivia(index);
212
- const literal = readLiteral(index);
213
- if (literal) {
214
- index = literal.end;
215
- continue;
216
- }
217
- if (!isIdentifier(script[index - 1]) && script.startsWith("runs.run", index) && !isIdentifier(script[index + 8])) {
218
- const open = skipTrivia(index + 8);
219
- const key = script[open] === "(" ? readLiteral(skipTrivia(open + 1)) : undefined;
220
- if (key) {
221
- const next = skipTrivia(key.end);
222
- if (key.key !== undefined && (script[next] === "," || script[next] === ")"))
223
- add(key.key);
224
- index = key.end;
225
- continue;
226
- }
227
- }
228
- if (!isIdentifier(script[index - 1]) && script.startsWith("runs.all", index) && !isIdentifier(script[index + 8])) {
229
- index = collectRunsAllKeys(index + 8);
230
- continue;
231
- }
232
- index += 1;
233
- }
234
- return keys;
235
- }
236
108
  function formatWorkflowPreflightCall(input) {
237
109
  if (input === undefined)
238
110
  return "";
@@ -243,19 +115,6 @@ function formatWorkflowPreflightCall(input) {
243
115
  return `preflight · rejected: ${error instanceof Error ? error.message : String(error)}`;
244
116
  }
245
117
  }
246
- function formatWorkflowManifest(script, async, clarify, preflightInput) {
247
- if (clarify === true)
248
- return "workflow script · rejected: clarify UI unsupported";
249
- const keys = workflowLaneKeys(script);
250
- // The workflow executor starts background work unless callers pass async:false.
251
- const mode = async === false ? "foreground" : "background";
252
- const preflight = formatWorkflowPreflightCall(preflightInput);
253
- if (keys.length === 0)
254
- return `workflow script · ${mode}${preflight ? ` · ${preflight}` : ""}`;
255
- const visibleKeys = keys.slice(0, 4).join(", ");
256
- const remainder = keys.length > 4 ? `, +${keys.length - 4}` : "";
257
- return `workflow · ${mode} · ${keys.length} lane${keys.length === 1 ? "" : "s"}: ${visibleKeys}${remainder}${preflight ? ` · ${preflight}` : ""}`;
258
- }
259
118
  /**
260
119
  * Derive subagent session base directory from parent session file.
261
120
  * If parent session is ~/.pi/agent/sessions/abc123.jsonl,
@@ -353,18 +212,30 @@ export function projectActiveHerdrRuns(state) {
353
212
  existing.push(...children);
354
213
  foregroundChildrenByWorkflow.set(control.parentWorkflowRunId, existing);
355
214
  }
215
+ // Keep each async child under its own ID: completion and attention events
216
+ // address that ID directly. The workflow row accounts only for foreground
217
+ // children; its own coordinator and step summaries are not leaf agents.
356
218
  return [...state.asyncJobs.values()]
357
219
  .filter((job) => active(job.status))
358
220
  .map((job) => {
359
- const children = job.mode === "workflow" ? foregroundChildrenByWorkflow.get(job.asyncId) : undefined;
360
221
  const currentStep = job.steps?.find((step) => step.status === "running")
361
222
  ?? (job.currentStep !== undefined ? job.steps?.[job.currentStep] : undefined)
362
223
  ?? job.steps?.find((step) => step.status === "pending");
224
+ if (job.mode === "workflow") {
225
+ const children = foregroundChildrenByWorkflow.get(job.asyncId) ?? [];
226
+ return {
227
+ id: job.asyncId,
228
+ coordinator: true,
229
+ agents: children.map((child) => child.agent),
230
+ ...(currentStep?.label ? { taskLabel: currentStep.label } : {}),
231
+ needsAttention: job.activityState === "needs_attention" || children.some((child) => child.needsAttention),
232
+ };
233
+ }
363
234
  return {
364
235
  id: job.asyncId,
365
- agents: children?.length ? children.map((child) => child.agent) : job.agents,
236
+ agents: job.agents,
366
237
  ...(currentStep?.label ? { taskLabel: currentStep.label } : {}),
367
- needsAttention: job.activityState === "needs_attention" || children?.some((child) => child.needsAttention),
238
+ needsAttention: job.activityState === "needs_attention",
368
239
  };
369
240
  });
370
241
  }
@@ -628,13 +499,31 @@ export default function registerSubagentExtension(pi) {
628
499
  };
629
500
  let executor;
630
501
  let executorPromise;
502
+ let executorModulePromise;
503
+ const loadExecutorModule = () => executorModulePromise ??= import("../runs/foreground/subagent-executor.js");
631
504
  const getExecutor = () => {
632
- executorPromise ??= import("../runs/foreground/subagent-executor.js").then(({ createSubagentExecutor }) => {
505
+ executorPromise ??= loadExecutorModule().then(({ createSubagentExecutor }) => {
633
506
  executor = createSubagentExecutor(executorDeps);
634
507
  return executor;
635
508
  });
636
509
  return executorPromise;
637
510
  };
511
+ // Loading these on first use could happen days after startup, when pi-subagents may have
512
+ // changed on disk and the new files would import stale cached copies of modules loaded at
513
+ // startup. Load them shortly after a session starts instead, off Pi's startup path; child
514
+ // runtimes return before registration and never schedule this.
515
+ let modulePreloadTimer;
516
+ const scheduleModulePreload = () => {
517
+ if (executorModulePromise || modulePreloadTimer)
518
+ return;
519
+ modulePreloadTimer = setTimeout(() => {
520
+ // Errors surface from the first call that needs the module.
521
+ loadExecutorModule().catch(() => { });
522
+ if (fleetViewEnabled)
523
+ import("../tui/fleet.js").catch(() => { });
524
+ }, MODULE_PRELOAD_DELAY_MS);
525
+ modulePreloadTimer.unref?.();
526
+ };
638
527
  pi.registerMessageRenderer(SUPERVISOR_REQUEST_MESSAGE_TYPE, renderSupervisorRequest);
639
528
  const registerEntryRenderer = pi.registerEntryRenderer;
640
529
  if (typeof registerEntryRenderer === "function") {
@@ -736,20 +625,26 @@ export default function registerSubagentExtension(pi) {
736
625
  return (await getExecutor()).executeDelegated(requestId, params, signal, onUpdate, ctx);
737
626
  },
738
627
  });
628
+ const disabledFeatures = resolveDisabledFeatureSurface(config);
739
629
  const rpcBridge = registerSubagentRpcBridge({
740
630
  events: pi.events,
741
631
  getContext: () => state.lastUiContext,
742
632
  execute: executeSubagentReady,
743
633
  state,
634
+ disabledFeatures,
744
635
  });
745
- const parameters = createSubagentParamsSchema();
636
+ const parameters = createSubagentParamsSchema(disabledFeatures);
746
637
  const tool = {
747
638
  name: "subagent",
639
+ ...MODEL_ONLY_TOOL,
748
640
  label: "Subagent",
749
- description: buildSubagentToolDescription(config),
750
- ...buildSubagentToolPromptMetadata(config),
641
+ description: buildSubagentToolDescription(config, { disabledFeatures }),
642
+ ...buildSubagentToolPromptMetadata(config, disabledFeatures),
751
643
  parameters,
752
644
  async execute(id, params, signal, onUpdate, ctx) {
645
+ const removedField = removedModelWorkflowFieldError(params);
646
+ if (removedField)
647
+ throw new Error(removedField);
753
648
  return finalizeToolResult(await executeSubagentCollapsed(id, params, signal ?? new AbortController().signal, onUpdate, ctx));
754
649
  },
755
650
  renderCall(args, theme) {
@@ -759,10 +654,8 @@ export default function registerSubagentExtension(pi) {
759
654
  const target = args.agent || "";
760
655
  return new Text(`${title}${gap}${args.action}${target ? `${gap}${theme.fg("accent", target)}` : ""}`, 0, 0);
761
656
  }
762
- if (args.workflowScript)
763
- return new Text(`${title}${gap}${formatWorkflowManifest(args.workflowScript, args.async, false, args.preflight)}`, 0, 0);
764
- if (args.workflowScriptPath)
765
- return new Text(`${title}${gap}${theme.fg("accent", args.workflowScriptPath)}${args.async === true ? `${gap}${theme.fg("warning", "[async]")}` : ""}${args.preflight !== undefined ? `${gap}${theme.fg("dim", formatWorkflowPreflightCall(args.preflight))}` : ""}`, 0, 0);
657
+ if (args.workflow !== undefined)
658
+ return new Text(`${title}${gap}${theme.fg("accent", args.workflow === true ? "workflow (reply block)" : `workflow ${String(args.workflow)}`)}${args.async === true ? `${gap}${theme.fg("warning", "[async]")}` : ""}${args.preflight !== undefined ? `${gap}${theme.fg("dim", formatWorkflowPreflightCall(args.preflight))}` : ""}`, 0, 0);
766
659
  const asyncLabel = args.async === true ? `${gap}${theme.fg("warning", "[async]")}` : "";
767
660
  return new Text(`${title}${gap}${theme.fg("accent", args.agent || "?")}${asyncLabel}`, 0, 0);
768
661
  },
@@ -814,6 +707,7 @@ export default function registerSubagentExtension(pi) {
814
707
  const disposeSlashCommands = registerSlashCommands(pi, state, {
815
708
  fleetKeybindings: config.fleetKeybindings,
816
709
  foregroundDetachShortcut: config.foregroundDetachShortcut,
710
+ workflowScriptsDisabled: disabledFeatures.features.has("workflow-scripts"),
817
711
  });
818
712
  let visibleControlNotices = new Set();
819
713
  const activeHerdrRuns = () => projectActiveHerdrRuns(state);
@@ -993,7 +887,7 @@ export default function registerSubagentExtension(pi) {
993
887
  // teardown so a reload cannot launch through a stale context.
994
888
  for (const controller of state.workflowControllers?.values() ?? []) {
995
889
  if (!controller.signal.aborted)
996
- controller.abort(new Error("Workflow stopped because the extension session was replaced or reloaded."));
890
+ controller.abort(runtimeReplacedAbortReason());
997
891
  }
998
892
  state.workflowControllers?.clear();
999
893
  state.workflowChildStops?.clear();
@@ -1004,6 +898,9 @@ export default function registerSubagentExtension(pi) {
1004
898
  if (asyncRetentionTimer)
1005
899
  clearTimeout(asyncRetentionTimer);
1006
900
  asyncRetentionTimer = undefined;
901
+ if (modulePreloadTimer)
902
+ clearTimeout(modulePreloadTimer);
903
+ modulePreloadTimer = undefined;
1007
904
  asyncRetentionAbort.abort();
1008
905
  stopResultWatcher();
1009
906
  resultDeliveryOwnership.clear();
@@ -1112,6 +1009,7 @@ export default function registerSubagentExtension(pi) {
1112
1009
  pi.on("session_start", (event, ctx) => {
1113
1010
  installRuntime(ctx);
1114
1011
  startSessionMaintenance();
1012
+ scheduleModulePreload();
1115
1013
  const recovering = event.reason === "startup" || event.reason === "reload" || event.reason === "resume";
1116
1014
  resetSessionState(ctx, recovering, event.previousSessionFile);
1117
1015
  releaseHostSessionLiveness();
@@ -1147,8 +1045,11 @@ export default function registerSubagentExtension(pi) {
1147
1045
  }
1148
1046
  await herdrStatusBridge.flush();
1149
1047
  });
1048
+ // Child processes and Herdr panes never load this module; in-process children have no UI.
1049
+ pi.on("session_start", (_event, ctx) => void showUpgradeNotice(ctx).catch((error) => console.error("Failed to show the pi-subagents upgrade notice:", error)));
1150
1050
  pi.on("session_start", (_event, ctx) => beginAdvertisement(ctx));
1151
1051
  registerSubagentToolActivation(pi, {
1052
+ mode: config.toolActivation,
1152
1053
  advertisedPrompt: async () => {
1153
1054
  await waitForAdvertisement();
1154
1055
  return buildAdvertisedAgentPrompt(advertisedAgents, resolveCurrentSubagentCapabilityCeiling(state.currentSessionId ?? undefined));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extension/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extension/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,OAAO,EAAiE,MAAM,iCAAiC,CAAC;AACzH,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAkB,MAAM,wBAAwB,CAAC;AACvI,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,cAAc,EAAE,iBAAiB,EAAqC,MAAM,qBAAqB,CAAC;AAC5J,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAC/G,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAC3H,OAAO,EAAE,iCAAiC,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACtG,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACpH,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,+BAA+B,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC3I,OAAO,EAAE,mBAAmB,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAE/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,8BAA8B,EAAE,kCAAkC,EAAE,mCAAmC,EAAE,MAAM,6CAA6C,CAAC;AACtK,OAAO,EAAE,oBAAoB,EAAE,mCAAmC,EAAE,MAAM,oCAAoC,CAAC;AAC/G,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACxG,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iDAAiD,CAAC;AAChG,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,sCAAsC,EAAE,MAAM,oCAAoC,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AACzF,OAAO,EACN,qBAAqB,EACrB,uBAAuB,EACvB,2BAA2B,EAC3B,+BAA+B,GAE/B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,yBAAyB,EAAuB,MAAM,iCAAiC,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC/G,OAAO,EAAE,gCAAgC,EAAE,MAAM,qDAAqD,CAAC;AACvG,OAAO,EAAE,yBAAyB,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AACnH,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,0BAA0B,EAA4B,MAAM,8BAA8B,CAAC;AACjL,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,sBAAsB,EAAE,EAAE,0BAA0B,EAA8B,MAAM,8BAA8B,CAAC;AAC9H,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,8BAA8B,EAAuC,MAAM,uBAAuB,CAAC;AAChK,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACzG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,uCAAuC,EAAE,MAAM,sCAAsC,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,4BAA4B,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AACtG,OAAO,EAAE,8BAA8B,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChH,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AACvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAIN,IAAI,EACJ,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACtB,6BAA6B,EAC7B,4BAA4B,EAC5B,+BAA+B,EAC/B,sBAAsB,EACtB,8BAA8B,EAC9B,UAAU,EACV,kCAAkC,GAClC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACN,2BAA2B,EAC3B,2BAA2B,EAC3B,6BAA6B,GAE7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEhE,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACjC,oGAAoG;AACpG,MAAM,uBAAuB,GAAG,KAAK,CAAC;AACtC,MAAM,0BAA0B,GAAG,6BAA6B,CAAC;AAkBjE,SAAS,kBAAkB;IAC1B,MAAM,WAAW,GAAG,UAAqC,CAAC;IAC1D,MAAM,QAAQ,GAAG,WAAW,CAAC,0BAA0B,CAAiD,CAAC;IACzG,IAAI,QAAQ,EAAE,gBAAgB,YAAY,OAAO,IAAI,QAAQ,CAAC,aAAa,YAAY,GAAG,EAAE,CAAC;QAC5F,IAAI,CAAC,CAAC,QAAQ,CAAC,qCAAqC,YAAY,OAAO,CAAC,EAAE,CAAC;YAC1E,QAAQ,CAAC,qCAAqC,GAAG,IAAI,OAAO,EAAE,CAAC;QAChE,CAAC;QACD,OAAO,QAAmC,CAAC;IAC5C,CAAC;IACD,MAAM,QAAQ,GAA4B;QACzC,gBAAgB,EAAE,IAAI,OAAO,EAAE;QAC/B,qCAAqC,EAAE,IAAI,OAAO,EAAE;QACpD,aAAa,EAAE,IAAI,GAAG,EAAE;KACxB,CAAC;IACF,WAAW,CAAC,0BAA0B,CAAC,GAAG,QAAQ,CAAC;IACnD,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,SAAiB;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACvC,IAAI,OAAO,IAAI,oBAAoB;QAAE,OAAO,CAAC,KAAK,CAAC,0BAA0B,KAAK,UAAU,OAAO,KAAK,CAAC,CAAC;AAC3G,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAc;IAClD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,IAAI,CAAC;QACJ,OAAO,8BAA8B,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAC1F,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,iBAAgC;IAC/D,IAAI,iBAAiB,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,sBAAsB,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA6B;IAC1D,OAAO,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC;WACxE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC;WAC7E,KAAK,CAAC;AACX,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA6B;IACxD,OAAO,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,SAAS,CAAC,IAAI,KAAK,CAAC;AACvH,CAAC;AAED,SAAS,2BAA2B,CACnC,SAAoB,EACpB,MAAgC,EAChC,OAA8B,EAC9B,KAAsC,EACtC,cAAyC,EACzC,wBAAiC;IAEjC,SAAS,CAAC,KAAK,EAAE,CAAC;IAClB,SAAS,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC;IAC/H,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;IACtE,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAChH,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,0BAA0B,CAClC,OAA4B,EAC5B,OAA8B,EAC9B,KAAsC,EACtC,cAAyC,EACzC,wBAAiC,EACjC,kBAAyD,GAAG,EAAE,CAAC,KAAK;IAEpE,MAAM,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;IAClC,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC;IACrB,IAAI,SAAsD,CAAC;IAC3D,SAAS,CAAC,MAAM,GAAG,CAAC,KAAa,EAAY,EAAE;QAC9C,MAAM,QAAQ,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;QACvC,IAAI,QAAQ,CAAC,OAAO,KAAK,WAAW,IAAI,YAAY,KAAK,SAAS,IAAI,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7G,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC/B,SAAS,GAAG,YAAY,CAAC;YACzB,2BAA2B,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,wBAAwB,CAAC,CAAC;QAC1H,CAAC;QACD,OAAO,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC,CAAC;IACF,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,MAAM,8BAA8B;IAClB,OAAO,CAAgC;IACvC,KAAK,CAAkC;IAExD,YAAY,OAAsC,EAAE,KAAsC;QACzF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,CAAC;IAED,UAAU,KAAU,CAAC;IAErB,MAAM,CAAC,KAAa;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAChE,IAAI,KAAK,GAAG,CAAC;YAAE,OAAO,CAAC,eAAe,CAAC,YAAY,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,GAAG,CAAC;QACvB,MAAM,MAAM,GAAG,eAAe,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC;QACzE,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QAE9F,KAAK,MAAM,IAAI,IAAI,gBAAgB,CAAC,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;YAC3F,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QACzE,OAAO,KAAK,CAAC;IACd,CAAC;CACD;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAoB;IAC1D,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,SAAS,CAAC;IAC/E,MAAM,4BAA4B,GAAG,IAAI,GAAG,EAA6D,CAAC;IAC1G,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;QACzD,IAAI,CAAC,OAAO,CAAC,mBAAmB;YAAE,SAAS;QAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,EAAE,IAAI;YAC5C,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACtD,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,cAAc,EAAE,KAAK,CAAC,oBAAoB,KAAK,iBAAiB;aAChE,CAAC,CAAC;YACH,CAAC,CAAC,OAAO,CAAC,YAAY;gBACrB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,cAAc,EAAE,OAAO,CAAC,oBAAoB,KAAK,iBAAiB,EAAE,CAAC;gBACvG,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACpC,MAAM,QAAQ,GAAG,4BAA4B,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;QACrF,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QAC3B,4BAA4B,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IACzE,CAAC;IAED,0EAA0E;IAC1E,0EAA0E;IAC1E,wEAAwE;IACxE,OAAO,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;SAClC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SACnC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;eACpE,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;eAC1E,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QACzD,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,4BAA4B,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACrE,OAAO;gBACN,EAAE,EAAE,GAAG,CAAC,OAAO;gBACf,WAAW,EAAE,IAAa;gBAC1B,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC5C,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/D,cAAc,EAAE,GAAG,CAAC,aAAa,KAAK,iBAAiB,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC;aACzG,CAAC;QACH,CAAC;QACD,OAAO;YACN,EAAE,EAAE,GAAG,CAAC,OAAO;YACf,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,cAAc,EAAE,GAAG,CAAC,aAAa,KAAK,iBAAiB;SACvD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,EAAgB;IACjE,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,KAAK,GAAG,EAAE,CAAC;QAC7C,OAAO;IACR,CAAC;IACD,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAC7C,0BAA0B,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAErF,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,mBAAmB,EAAE,CAAC;IAEtB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,cAAc,GAAG,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,KAAK,KAAK,CAAC;IACpD,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAChF,MAAM,kBAAkB,GAAG,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC;IACxD,MAAM,wBAAwB,GAAG,MAAM,CAAC,iBAAiB,KAAK,SAAS,CAAC;IACxE,MAAM,gBAAgB,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,mBAAmB,GAAG,MAAM,CAAC,cAAc,EAAE,WAAW,IAAI,uBAAuB,CAAC,WAAW,CAAC;IACtG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;IAC5C,IAAI,uBAAkE,CAAC;IAEvE,MAAM,KAAK,GAAkB;QAC5B,OAAO,EAAE,EAAE;QACX,gBAAgB,EAAE,IAAI;QACtB,yBAAyB,EAAE,IAAI;QAC/B,iBAAiB,EAAE,wBAAwB,EAAE;QAC7C,qBAAqB,EAAE,MAAM,CAAC,WAAW,IAAI,uBAAuB,CAAC,GAAG;QACxE,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,iBAAiB,EAAE,IAAI;QACvB,mBAAmB,EAAE,EAAE;QACvB,kBAAkB,EAAE,KAAK;QACzB,cAAc,EAAE;YACf,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,CAAC;YACR,eAAe,EAAE,kCAAkC,CAAC,MAAM,CAAC,2BAA2B,CAAC,IAAI,IAAI;YAC/F,OAAO,EAAE,CAAC;YACV,YAAY,EAAE,EAAE;SAChB;QACD,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,mCAAmC,CAAC,MAAM,CAAC,4BAA4B,CAAC,IAAI,CAAC,EAAE;QACtH,iBAAiB,EAAE,IAAI,GAAG,EAAE;QAC5B,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,cAAc,EAAE,IAAI,GAAG,EAAE;QACzB,kBAAkB,EAAE,IAAI,GAAG,EAAE;QAC7B,uBAAuB,EAAE,IAAI;QAC7B,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,IAAI,GAAG,EAAE;QACzB,gBAAgB,EAAE,KAAK;QACvB,OAAO,EAAE,IAAI;QACb,mBAAmB,EAAE,IAAI;QACzB,mBAAmB,EAAE;YACpB,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;YACrB,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;SACf;KACD,CAAC;IACF,MAAM,iBAAiB,GAAG,CAAI,GAAiC,EAAiB,EAAE;QACjF,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;QACnC,OAAO,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE;YACvC,IAAI,KAAK,CAAC,aAAa,KAAK,MAAM;gBAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;QAChE,CAAC,EAAE,GAAG,CAAC,CAAC;IACT,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,EAAE,EAAE,KAAK,EAAE;QAClE,wFAAwF;QACxF,qBAAqB,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,+BAA+B,EAAE,IAAI,EAAE;KAC9E,CAAC,CAAC;IACH,MAAM,uBAAuB,GAAG,6BAA6B,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAC9C,MAAM,uBAAuB,GAAG,6BAA6B,CAAC,KAAK,CAAC,CAAC;IACrE,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,eAAe,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAC1I,IAAI,0BAA2F,CAAC;IAChG,MAAM,WAAW,GAAG,gBAAgB;QACnC,CAAC,CAAC,IAAI,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAClD,MAAM,GAAG,GAAG,iBAAiB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;YACpD,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,IAAI,CAAC;gBACJ,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;gBAC9D,MAAM,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9M,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzC,IAAI,KAAK,CAAC,aAAa,KAAK,GAAG;wBAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;oBAC5D,OAAO;gBACR,CAAC;gBACD,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,CAAC;QAC1F,CAAC,CAAC,SAAS,CAAC;IACb,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,0BAA0B,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IAC1C,MAAM,kBAAkB,GAAG,MAAM,CAAC,aAAa,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IACjJ,MAAM,mBAAmB,GAAG,yBAAyB,CAAC;QACrD,MAAM;QACN,SAAS,EAAE,kBAAkB;QAC7B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,oBAAoB,EAAE,CAAC;YAC7B,OAAO,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAClF,CAAC;QACD,wBAAwB,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,uCAAuC,CAAC,SAAS,CAAC;KAC3F,CAAC,CAAC;IACH,IAAI,qBAAqB,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IACrC,IAAI,gBAAgB,GAAkB,EAAE,CAAC;IACzC,IAAI,iBAAsE,CAAC;IAC3E,IAAI,uBAAuB,GAAG,CAAC,CAAC;IAChC,IAAI,UAAU,GAAkB,IAAI,CAAC;IACrC,IAAI,kBAAkB,GAAuC,OAAO,CAAC,OAAO,EAAE,CAAC;IAC/E,IAAI,mBAAmB,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IACnC,IAAI,cAAc,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IACtD,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE;QACvC,IAAI,OAAkC,CAAC;QACvC,GAAG,CAAC;YACH,OAAO,GAAG,kBAAkB,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;YAC7D,IAAI,OAAO,KAAK,kBAAkB,IAAI,MAAM;gBAAE,MAAM,MAAM,CAAC,KAAK,CAAC;QAClE,CAAC,QAAQ,OAAO,KAAK,kBAAkB,EAAE;IAC1C,CAAC,CAAC;IACF,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACpC,gBAAgB,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,iBAAiB;YAAE,OAAO;QAC/B,wBAAwB,EAAE,CAAC;QAC3B,gBAAgB,GAAG,cAAc,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM;aACvI,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC;IAC/C,CAAC,CAAC;IACF,MAAM,kBAAkB,GAAG,CAAC,GAAqB,EAAE,EAAE;QACpD,MAAM,UAAU,GAAG,EAAE,uBAAuB,CAAC;QAC7C,mBAAmB,EAAE,CAAC;QACtB,cAAc,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,GAAG,mBAAmB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,gBAAgB,GAAG,EAAE,CAAC;QACtB,iBAAiB,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;QACvD,UAAU,GAAG,IAAI,CAAC;QAClB,kBAAkB,GAAG,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACzD,IAAI,UAAU,KAAK,uBAAuB;gBAAE,OAAO;YACnD,UAAU,GAAG,IAAI,CAAC;YAClB,uBAAuB,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAClB,IAAI,UAAU,KAAK,uBAAuB;gBAAE,OAAO;YACnD,0EAA0E;YAC1E,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;YAC7D,OAAO,EAAE,KAAK,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACpC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QAClH,IAAI,KAAK,CAAC,kBAAkB,CAAC,IAAI,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACnD,IAAI,mBAAmB,CAAC,wBAAwB,EAAE,CAAC,IAAI,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACzE,OAAO,mCAAmC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACrE,CAAC,CAAC;IACF,MAAM,wBAAwB,GAAG,CAAC,GAAW,EAAE,KAAiB,EAAE,sBAA+B,EAAE,EAAE;QACpG,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAC;QACvI,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAC;QAChI,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,CAAC;QACtC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACzB,MAAM,gBAAgB,GAAkB;YACvC,GAAG,GAAG,CAAC,OAAO;YACd,GAAG,GAAG,CAAC,OAAO;YACd,GAAG,GAAG,CAAC,IAAI;YACX,GAAG,GAAG,CAAC,OAAO;SACd,CAAC;QACF,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC,CAAC;QAC5G,IAAI,UAAU,CAAC,WAAW,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QACxD,OAAO;YACN,GAAG,MAAM;YACT,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,KAAK,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;SAC9I,CAAC;IACH,CAAC,CAAC;IACF,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,EAAE,sBAAsB,EAAE,GAAG,qBAAqB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;QAClL,aAAa,EAAE,kBAAkB;QACjC,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAE;QAC5C,sBAAsB,EAAE,iBAAiB,CAAC,yBAAyB;KACnE,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,mBAAmB,CACxC,EAAE,EACF,KAAK,EACL,IAAI,CAAC,OAAO,EACZ,EAAE,GAAG,EAAE,GAAG,IAAI,EACd;QACC,QAAQ,EAAE,kBAAkB;QAC5B,SAAS,EAAE,uBAAuB;QAClC,iBAAiB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,MAAM,CAAC;QAChF,wBAAwB,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,wBAAwB,EAAE;QAC9E,iBAAiB,EAAE,uBAAuB;QAC1C,sBAAsB,EAAE,MAAM,CAAC,cAAc,EAAE,cAAc,KAAK,IAAI;QACtE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;KAC3C,CACD,CAAC;IACF,MAAM,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,GAAG,aAAa,CAAC;IAChH,qBAAqB,GAAG,aAAa,CAAC,qBAAqB,CAAC;IAC5D,MAAM,mBAAmB,GAAG,IAAI,eAAe,EAAE,CAAC;IAClD,IAAI,mBAA8D,CAAC;IACnE,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACpC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC9B,uBAAuB,GAAG,UAAU,CAAC,GAAG,EAAE;gBACzC,IAAI,CAAC;oBACJ,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;gBACxE,CAAC;YACF,CAAC,EAAE,MAAM,CAAC,CAAC;YACX,uBAAuB,CAAC,KAAK,EAAE,EAAE,CAAC;QACnC,CAAC;QACD,uBAAuB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC1B,mBAAmB,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;gBAC3C,IAAI,CAAC;oBACJ,MAAM,qBAAqB,CAAC;wBAC3B,YAAY,EAAE,IAAI,CAAC,KAAK;wBACxB,UAAU,EAAE,IAAI,CAAC,OAAO;wBACxB,MAAM,EAAE,mBAAmB,CAAC,MAAM;wBAClC,eAAe,EAAE,IAAI,GAAG,CAAC;4BACxB,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;4BACzB,GAAG,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;4BAC5C,GAAG,mBAAmB,CAAC,qBAAqB,EAAE;yBAC9C,CAAC;qBACF,CAAC,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;gBACxE,CAAC;YACF,CAAC,EAAE,wBAAwB,CAAC,CAAC;YAC7B,mBAAmB,CAAC,KAAK,EAAE,EAAE,CAAC;QAC/B,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,YAAY,GAAyB;QAC1C,EAAE;QACF,KAAK;QACL,MAAM;QACN,cAAc;QACd,eAAe,EAAE,cAAc,CAAC,OAAO;QACvC,wBAAwB,EAAE,cAAc,CAAC,gBAAgB;QACzD,wBAAwB,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC;QAC1F,QAAQ,EAAE,YAAY;QACtB,gBAAgB;QAChB,sBAAsB;QACtB,WAAW;QACX,cAAc,EAAE,wBAAwB;QACxC,iBAAiB,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;QACrG,eAAe,EAAE,GAAG,EAAE;YACrB,IAAI,CAAC;gBACJ,uBAAuB,EAAE,CAAC;YAC3B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,2EAA2E;gBAC3E,OAAO,CAAC,KAAK,CAAC,uEAAuE,EAAE,KAAK,CAAC,CAAC;YAC/F,CAAC;QACF,CAAC;QACD,2BAA2B,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,EAAE;QACxE,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC;QACtE,qBAAqB,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAE;QACpD,wBAAwB,EAAE,SAAS;KACnC,CAAC;IACF,IAAI,QAAsC,CAAC;IAC3C,IAAI,eAAsD,CAAC;IAC3D,IAAI,qBAAkE,CAAC;IACvE,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,qBAAqB,KAAK,MAAM,CAAC,yCAAyC,CAAC,CAAC;IAC7G,MAAM,WAAW,GAAG,GAA8B,EAAE;QACnD,eAAe,KAAK,kBAAkB,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,sBAAsB,EAAE,EAAE,EAAE;YAC5E,QAAQ,GAAG,sBAAsB,CAAC,YAAY,CAAC,CAAC;YAChD,OAAO,QAAQ,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;IACxB,CAAC,CAAC;IACF,yFAAyF;IACzF,0FAA0F;IAC1F,0FAA0F;IAC1F,+DAA+D;IAC/D,IAAI,kBAA6D,CAAC;IAClE,MAAM,qBAAqB,GAAG,GAAG,EAAE;QAClC,IAAI,qBAAqB,IAAI,kBAAkB;YAAE,OAAO;QACxD,kBAAkB,GAAG,UAAU,CAAC,GAAG,EAAE;YACpC,4DAA4D;YAC5D,kBAAkB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACrC,IAAI,gBAAgB;gBAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjE,CAAC,EAAE,uBAAuB,CAAC,CAAC;QAC5B,kBAAkB,CAAC,KAAK,EAAE,EAAE,CAAC;IAC9B,CAAC,CAAC;IAEF,EAAE,CAAC,uBAAuB,CAAkC,+BAA+B,EAAE,uBAAuB,CAAC,CAAC;IACtH,MAAM,qBAAqB,GAAI,EAE7B,CAAC,qBAAqB,CAAC;IACzB,IAAI,OAAO,qBAAqB,KAAK,UAAU,EAAE,CAAC;QACjD,qBAAqB,CAAC,IAAI,CAAC,EAAE,EAAE,2BAA2B,EAAE,qBAAqB,CAAC,CAAC;IACpF,CAAC;IAED,EAAE,CAAC,uBAAuB,CAAsB,iBAAiB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAC9F,MAAM,OAAO,GAAG,0BAA0B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5D,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,OAAO,0BAA0B,CAChC,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,CAAC,kBAAkB,EACzB,MAAM,CAAC,wBAAwB,EAC/B,GAAG,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,CAC5C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,CAAY,sBAAsB,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;QAC3F,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;YAClD,CAAC,CAAC,OAAO,CAAC,OAAO;YACjB,CAAC,CAAC,OAAO,CAAC,OAAO;iBACf,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;iBACxC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;iBAC1B,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,CAAwB,iBAAiB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAChG,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,MAAM,OAAO,GAAI,OAAO,CAAC,OAA6C,IAAI,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAC9G,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,KAAK,WAAW;YAC1C,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC;YAC1B,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,QAAQ;gBAC5B,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC;gBAC1B,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QACrF,IAAI,IAAI,GAAG,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACrF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACzI,MAAM,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QACpD,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ;YACpC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1D,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1E,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;YAC7E,IAAI,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACxD,MAAM,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC9C,IAAI,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,SAAS,oBAAoB,CAAC,EAAE,CAAC;QACpE,CAAC;QACD,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,OAAO,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC;QAC1E,CAAC;QACD,IAAI,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;YAC/B,IAAI,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,KAAK,IAAI,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QACjK,CAAC;QACD,IAAI,OAAO,CAAC,2BAA2B,EAAE,CAAC;YACzC,IAAI,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,qBAAqB,OAAO,CAAC,2BAA2B,EAAE,CAAC,EAAE,CAAC;QAChG,CAAC;QACD,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YAClD,IAAI,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,YAAY,KAAK,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;QACrG,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,CAAiC,8BAA8B,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;QACvH,MAAM,OAAO,GAAG,OAAO,CAAC,OAAqD,CAAC;QAC9E,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACrH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,CAAgC,6BAA6B,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;QACrH,MAAM,OAAO,GAAG,OAAO,CAAC,OAAoD,CAAC;QAC7E,IAAI,CAAC,OAAO,EAAE,KAAK;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAClF,OAAO,IAAI,8BAA8B,CAAC,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,2BAA2B,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC7H,CAAC,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,KAAK,EAAE,EAAU,EAAE,MAA0B,EAAE,MAAmB,EAAE,QAAkE,EAAE,GAAqB,EAAE,EAAE;QAC7L,MAAM,oBAAoB,EAAE,CAAC;QAC7B,OAAO,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC/E,CAAC,CAAC;IACF,MAAM,wBAAwB,GAAG,CAAC,EAAU,EAAE,MAA0B,EAAE,MAAmB,EAAE,QAAkE,EAAE,GAAqB,EAAE,EAAE;QAC3L,IAAI,GAAG,CAAC,KAAK;YAAE,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAChE,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,2BAA2B,CAAC;QAC/C,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,aAAa;QACrC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,CAC9C,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC;KAC5D,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,sCAAsC,CAAC;QACnE,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,aAAa;QACrC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,CACrD,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC;QACnE,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;YACrE,IAAI,GAAG,CAAC,KAAK;gBAAE,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC9C,MAAM,oBAAoB,EAAE,CAAC;YAC7B,OAAO,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QACzF,CAAC;KACD,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,MAAM,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,yBAAyB,CAAC;QAC3C,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,aAAa;QACrC,OAAO,EAAE,oBAAoB;QAC7B,KAAK;QACL,gBAAgB;KAChB,CAAC,CAAC;IAGH,MAAM,UAAU,GAAG,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;IAChE,MAAM,IAAI,GAA+C;QACxD,IAAI,EAAE,UAAU;QAChB,GAAG,eAAe;QAClB,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,4BAA4B,CAAC,MAAM,EAAE,EAAE,gBAAgB,EAAE,CAAC;QACvE,GAAG,+BAA+B,CAAC,MAAM,EAAE,gBAAgB,CAAC;QAC5D,UAAU;QAEV,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG;YAC9C,MAAM,YAAY,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAC;YAC5D,IAAI,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;YAChD,OAAO,kBAAkB,CAAC,MAAM,wBAAwB,CAAC,EAAE,EAAE,MAA4B,EAAE,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;QACpJ,CAAC;QAED,UAAU,CAAC,IAAI,EAAE,KAAK;YACrB,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,iBAAiB,IAAI,CAAC,CAAC,CAAC;YAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBAChC,OAAO,IAAI,IAAI,CACd,GAAG,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EACpF,CAAC,EAAE,CAAC,CACJ,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAC9B,OAAO,IAAI,IAAI,CACd,GAAG,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EACnT,CAAC,EACD,CAAC,CACD,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,OAAO,IAAI,IAAI,CACd,GAAG,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,UAAU,EAAE,EACrE,CAAC,EACD,CAAC,CACD,CAAC;QACH,CAAC;QAED,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO;YAC3C,+BAA+B,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM,cAAc,GAAG,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC/D,OAAO,wBAAwB;gBAC9B,CAAC,CAAC,qBAAqB,CAAC,cAAc,EAAE,OAAO,EAAE,KAAK,CAAC;gBACvD,CAAC,CAAC,oBAAoB,CAAC,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,wBAAwB,CAAC,CAAC;QAChI,CAAC;KAED,CAAC;IAEF,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAEtB,EAAE,CAAC,EAAE,CAAC,oBAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAChD,MAAM,oBAAoB,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO;QAC1E,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,IAAI,uBAAuB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACxF,gFAAgF;QAChF,kFAAkF;QAClF,0DAA0D;QAC1D,MAAM,OAAO,GAAG,2BAA2B,CAAC,gBAAgB,EAAE,uCAAuC,CAAC,SAAS,CAAC,CAAC,CAAC;QAClH,IAAI,OAAO;YAAE,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,oBAAoB,GAAG,OAAO,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,CAAC,OAAO,EAAE,uBAAuB,EAAE,cAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAE/J,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE;QACxC,IAAI,CAAC,GAAG,CAAC,KAAK;YAAE,MAAM,oBAAoB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,2BAA2B,EAAE,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAC5I,MAAM,cAAc,GAAG,KAAK,CAAC,gBAAgB,CAAC;QAC9C,IAAI,CAAC,cAAc;YAAE,OAAO;QAC5B,UAAU,IAAI,CAAC,CAAC;QAChB,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,2BAA2B,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACtI,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;YAC1E,KAAK,MAAM,MAAM,IAAI,8BAA8B,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;gBACzH,2BAA2B,CAAC;oBAC3B,EAAE;oBACF,KAAK;oBACL,qBAAqB,EAAE,IAAI,GAAG,EAAE;oBAChC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE;iBAC5E,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,EAAE,EAAE,KAAK,EAAE;QAC7D,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,wBAAwB,EAAE,MAAM,CAAC,wBAAwB;QACzD,uBAAuB,EAAE,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC;KAC1E,CAAC,CAAC;IAEH,IAAI,qBAAqB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9C,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;QACnD,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,OAAO,EAAE,eAAe;QACxB,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,MAAM;QACxH,KAAK,CAAC,QAAQ,CAAC,IAAI;YAClB,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAChF,CAAC;KACD,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAAE,EAAE;QAChD,2BAA2B,CAAC;YAC3B,EAAE;YACF,KAAK;YACL,qBAAqB;YACrB,OAAO,EAAE,OAAwC;SACjD,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,qBAAqB,GAAG,CAAC,OAAgB,EAAE,EAAE;QAClD,4BAA4B,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAyC,EAAE,CAAC,CAAC;IACjG,CAAC,CAAC;IACF,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAAE,EAAE;QAChD,aAAa,CAAC,OAAO,CAAC,CAAC;QACvB,iBAAiB,CAAC,iBAAiB,EAAE,CAAC;QACtC,qBAAqB,EAAE,CAAC;QACxB,WAAW,EAAE,OAAO,EAAE,CAAC;IACxB,CAAC,CAAC;IACF,MAAM,oBAAoB,GAAG,CAAC,OAAgB,EAAE,EAAE;QACjD,cAAc,CAAC,OAAO,CAAC,CAAC;QACxB,qBAAqB,EAAE,CAAC;QACxB,0BAA0B,EAAE,CAAC;QAC7B,mBAAmB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACnD,WAAW,EAAE,OAAO,EAAE,CAAC;IACxB,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG;QACzB,iCAAiC,CAAC,EAAE,CAAC;QACrC,8BAA8B,CAAC,EAAE,CAAC;QAClC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,4BAA4B,EAAE,mBAAmB,CAAC;QAC/D,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,6BAA6B,EAAE,oBAAoB,CAAC;QACjE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YAClD,0BAA0B,EAAE,CAAC;YAC7B,WAAW,EAAE,OAAO,EAAE,CAAC;QACxB,CAAC,CAAC;QACF,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,EAAE,mBAAmB,CAAC;QACzD,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,8BAA8B,EAAE,qBAAqB,CAAC;QACnE,iBAAiB,CAAC,OAAO;QACzB,SAAS,CAAC,OAAO;KACjB,CAAC;IAEF,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACnC,IAAI,KAAK,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO;QAC1C,IAAI,CAAC,GAAG,CAAC,KAAK;YAAE,OAAO;QACvB,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC;QAC1B,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;QAC5C,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,cAAc;YAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC;QACxE,WAAW,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;QAC7B,WAAW,EAAE,OAAO,EAAE,CAAC;QACvB,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC9B,aAAa,CAAC,GAAG,CAAC,CAAC;YACnB,YAAY,EAAE,CAAC;QAChB,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,MAAM,uBAAuB,GAAG,CAAC,GAAqB,EAAE,EAAE;QACzD,IAAI,CAAC;YACJ,MAAM,WAAW,GAAG,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;YACxD,IAAI,WAAW,EAAE,CAAC;gBACjB,mBAAmB,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC,CAAC;YACxE,CAAC;QACF,CAAC;QAAC,MAAM,CAAC;YACR,8DAA8D;QAC/D,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,GAAG,EAAE;QACxC,IAAI,KAAK,CAAC,gBAAgB;YAAE,OAAO;QACnC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC9B,iBAAiB,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;QACpE,WAAW,EAAE,OAAO,EAAE,CAAC;IACxB,CAAC,CAAC;IACF,MAAM,4BAA4B,GAAG,GAAG,EAAE;QACzC,IAAI,CAAC,KAAK,CAAC,gBAAgB;YAAE,OAAO;QACpC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC/B,iBAAiB,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/C,WAAW,EAAE,OAAO,EAAE,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,0BAA0B,GAAG,GAAG,EAAE;QACvC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC7B,KAAK,CAAC,mBAAmB,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,mCAAmC,CAAC,MAAM,CAAC,4BAA4B,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9H,OAAO;QACR,CAAC;QACD,KAAK,CAAC,mBAAmB,GAAG,8BAA8B,CACzD,KAAK,CAAC,gBAAgB,EACtB,mCAAmC,CAAC,MAAM,CAAC,4BAA4B,CAAC,EACxE,EAAE,kBAAkB,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,2BAA2B,EAAE,kCAAkC,CAAC,MAAM,CAAC,QAAQ,EAAE,2BAA2B,CAAC,EAAE,CACvL,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,GAAqB,EAAE,UAAmB,EAAE,mBAA4B,EAAE,EAAE;QACtG,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC/B,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC;QACxB,UAAU,GAAG,CAAC,CAAC;QACf,MAAM,wBAAwB,GAAG,KAAK,CAAC,gBAAgB,CAAC;QACxD,uBAAuB,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,wBAAwB,CAAC,CAAC;QACxF,KAAK,CAAC,gBAAgB,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACrE,KAAK,CAAC,wBAAwB,GAAG,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC;QAC3E,wBAAwB,EAAE,CAAC;QAC3B,KAAK,CAAC,iBAAiB,GAAG,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;QAC9D,KAAK,CAAC,sBAAsB,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1G,KAAK,CAAC,mBAAmB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;gBACvC,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1F,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACrF,CAAC,CAAC,CAAC;QACJ,KAAK,CAAC,cAAc,GAAG;YACtB,SAAS,EAAE,KAAK,CAAC,gBAAgB;YACjC,KAAK,EAAE,CAAC;YACR,eAAe,EAAE,kCAAkC,CAAC,MAAM,CAAC,2BAA2B,CAAC,IAAI,IAAI;YAC/F,OAAO,EAAE,CAAC;YACV,YAAY,EAAE,EAAE;SAChB,CAAC;QACF,MAAM,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnD,gCAAgC,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,yBAAyB,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9K,0EAA0E;QAC1E,+EAA+E;QAC/E,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACtC,OAAO,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACjD,CAAC;QACD,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC;QAC1B,IAAI,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAChC,0BAA0B,EAAE,CAAC;QAC7B,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;QAChD,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,uBAAuB,CAAC,GAAG,CAAC,CAAC;QAC7B,YAAY,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAC;QACzD,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QACjC,0BAA0B,EAAE,KAAK,EAAE,CAAC;QACpC,0BAA0B,GAAG,SAAS,CAAC;QACvC,YAAY,CAAC,wBAAwB,GAAG,SAAS,CAAC;QAClD,KAAK,CAAC,uBAAuB,GAAG,IAAI,CAAC;QACrC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,SAAS,CAAC,GAAG,CAAC,CAAC;QACf,YAAY,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAC3C,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,2BAA2B,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACjE,YAAY,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;QACnD,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACvB,YAAY,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;QACnD,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,mBAAmB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrC,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;QAC/C,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,0BAA0B,CAAC,GAAG,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,CAAC;QAC5D,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;QAChD,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,uBAAuB,CAAC,OAAO,EAAE,CAAC;QAClC,YAAY,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;QACnD,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,kBAAkB,EAAE,CAAC;QACrB,YAAY,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;QACrD,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,oBAAoB,CAAC,EAAE,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;QACnD,YAAY,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QAC7C,WAAW,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,MAAM,YAAY,GAAyB;QAC1C,cAAc,EAAE,IAAI;QACpB,qBAAqB;QACrB,OAAO;YACN,IAAI,cAAc;gBAAE,OAAO;YAC3B,cAAc,GAAG,IAAI,CAAC;YACtB,0BAA0B,EAAE,CAAC;YAC7B,0BAA0B,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;YACtC,wEAAwE;YACxE,8DAA8D;YAC9D,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,mBAAmB,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;gBACpE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO;oBAAE,UAAU,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC,CAAC;YAChF,CAAC;YACD,KAAK,CAAC,mBAAmB,EAAE,KAAK,EAAE,CAAC;YACnC,KAAK,CAAC,kBAAkB,EAAE,KAAK,EAAE,CAAC;YAClC,uBAAuB,CAAC,EAAE,CAAC,CAAC;YAC5B,IAAI,uBAAuB;gBAAE,YAAY,CAAC,uBAAuB,CAAC,CAAC;YACnE,uBAAuB,GAAG,SAAS,CAAC;YACpC,IAAI,mBAAmB;gBAAE,YAAY,CAAC,mBAAmB,CAAC,CAAC;YAC3D,mBAAmB,GAAG,SAAS,CAAC;YAChC,IAAI,kBAAkB;gBAAE,YAAY,CAAC,kBAAkB,CAAC,CAAC;YACzD,kBAAkB,GAAG,SAAS,CAAC;YAC/B,mBAAmB,CAAC,KAAK,EAAE,CAAC;YAC5B,iBAAiB,EAAE,CAAC;YACpB,uBAAuB,CAAC,KAAK,EAAE,CAAC;YAChC,kBAAkB,CAAC,OAAO,EAAE,CAAC;YAC7B,YAAY,CAAC,OAAO,EAAE,CAAC;YACvB,mBAAmB,CAAC,IAAI,EAAE,CAAC;YAC3B,iBAAiB,CAAC,OAAO,EAAE,CAAC;YAC5B,uBAAuB,CAAC,OAAO,EAAE,CAAC;YAClC,WAAW,EAAE,OAAO,EAAE,CAAC;YACvB,sBAAsB,EAAE,CAAC;YACzB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;gBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;YACtE,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;YAC5B,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACxB,0BAA0B,EAAE,KAAK,EAAE,CAAC;YACpC,0BAA0B,GAAG,SAAS,CAAC;YACvC,YAAY,CAAC,wBAAwB,GAAG,SAAS,CAAC;YAClD,KAAK,MAAM,WAAW,IAAI,iBAAiB,EAAE,CAAC;gBAC7C,IAAI,CAAC;oBACJ,WAAW,EAAE,CAAC;gBACf,CAAC;gBAAC,MAAM,CAAC;oBACR,iDAAiD;gBAClD,CAAC;YACF,CAAC;YACD,oBAAoB,CAAC,OAAO,EAAE,CAAC;YAC/B,WAAW,CAAC,SAAS,EAAE,CAAC;YACxB,WAAW,CAAC,OAAO,EAAE,CAAC;YACtB,oBAAoB,CAAC,SAAS,EAAE,CAAC;YACjC,oBAAoB,CAAC,OAAO,EAAE,CAAC;YAC/B,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAC/B,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC9B,KAAK,CAAC,wBAAwB,GAAG,IAAI,CAAC;YACtC,KAAK,CAAC,yBAAyB,GAAG,IAAI,CAAC;YACvC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC/B,IAAI,YAAY,CAAC,cAAc,IAAI,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,KAAK,YAAY,EAAE,CAAC;gBACvH,eAAe,CAAC,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YACtE,CAAC;YACD,eAAe,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,eAAe,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC;gBAAE,mBAAmB,EAAE,CAAC;YACpE,IAAI,CAAC;gBACJ,IAAI,KAAK,CAAC,aAAa,EAAE,KAAK;oBAAE,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACzF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC;oBAAE,MAAM,KAAK,CAAC;YACvD,CAAC;YACD,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;KACD,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,GAAqB,EAAE,EAAE;QAChD,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;QAChH,CAAC;QACD,MAAM,cAAc,GAAG,GAAG,CAAC,cAAwB,CAAC;QACpD,MAAM,eAAe,GAAG,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC7E,MAAM,6BAA6B,GAAG,eAAe,CAAC,qCAAqC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAChH,IAAI,6BAA6B,EAAE,CAAC;YACnC,qBAAqB,GAAG,6BAA6B,CAAC;QACvD,CAAC;aAAM,CAAC;YACP,eAAe,CAAC,qCAAqC,CAAC,GAAG,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC;QAClG,CAAC;QACD,YAAY,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QAC3D,IAAI,YAAY,CAAC,cAAc,IAAI,YAAY,CAAC,cAAc,KAAK,cAAc;eAC7E,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,KAAK,YAAY,EAAE,CAAC;YACxF,eAAe,CAAC,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QACtE,CAAC;QACD,YAAY,CAAC,cAAc,GAAG,cAAc,CAAC;QAC7C,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QACnE,eAAe,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAChD,IAAI,eAAe,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;YACzD,IAAI,CAAC;gBACJ,eAAe,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACR,qEAAqE;YACtE,CAAC;QACF,CAAC;IACF,CAAC,CAAC;IAEF,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;QACzB,4BAA4B,EAAE,CAAC;QAC/B,iBAAiB,CAAC,YAAY,EAAE,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;QAC3B,4BAA4B,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,wBAAwB,EAAE,CAAC,KAAK,EAAE,EAAE;QACzC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;YAAE,2BAA2B,EAAE,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE;QAClC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;QACtC,MAAM,kBAAkB,GAAG,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QAC5H,IAAI,CAAC,kBAAkB,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;YAAE,OAAO;QAClE,EAAE,CAAC,WAAW,CACb;YACC,UAAU,EAAE,4BAA4B;YACxC,OAAO,EAAE,oHAAoH;YAC7H,OAAO,EAAE,KAAK;SACd,EACD,EAAE,WAAW,EAAE,IAAI,EAAE,CACrB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACrC,cAAc,CAAC,GAAG,CAAC,CAAC;QACpB,uBAAuB,EAAE,CAAC;QAC1B,qBAAqB,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC;QACxG,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC9D,0BAA0B,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;QACpD,MAAM,WAAW,GAAG,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;QACxD,MAAM,QAAQ,GAAG,SAAS;YACzB,CAAC,CAAC,4BAA4B,CAAC;gBAC9B,SAAS;gBACT,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvC,QAAQ,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,kBAAkB,CAAC,kBAAkB,EAAE;aACrF,CAAC;YACF,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC;QAC5C,0BAA0B,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC9C,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACzB,0BAA0B,GAAG,gCAAgC,CAAC,KAAK,CAAC,CAAC;YACrE,YAAY,CAAC,wBAAwB,GAAG,0BAA0B,CAAC,KAAK,CAAC;QAC1E,CAAC;QACD,iBAAiB,CAAC,cAAc,CAAC;YAChC,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,IAAI;YACzB,IAAI,EAAE,eAAe,EAAE;SACvB,CAAC,CAAC;QACH,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACzB,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAC1B,iBAAiB,CAAC,iBAAiB,EAAE,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QACpC,YAAY,CAAC,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC;YACJ,MAAM,oBAAoB,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,0FAA0F;IAC1F,EAAE,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,KAAK,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/J,EAAE,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;IAEjE,8BAA8B,CAAC,EAAE,EAAE;QAClC,IAAI,EAAE,MAAM,CAAC,cAAc;QAC3B,gBAAgB,EAAE,KAAK,IAAI,EAAE;YAC5B,MAAM,oBAAoB,EAAE,CAAC;YAC7B,OAAO,0BAA0B,CAAC,gBAAgB,EAAE,uCAAuC,CAAC,KAAK,CAAC,gBAAgB,IAAI,SAAS,CAAC,CAAC,CAAC;QACnI,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}
@@ -53,10 +53,19 @@ export type PublicSubagentExecutionNormalization<T> = {
53
53
  error: string;
54
54
  mode: PublicSubagentExecutionMode;
55
55
  };
56
+ /** A workflow value containing "/" or "\" is a script path; named workflow resource names contain neither. */
57
+ export declare function isWorkflowScriptPath(workflow: string): boolean;
58
+ /**
59
+ * Model tool calls supply script text only through workflow: true (the reply block) or a script path.
60
+ * workflowScript remains the internal carrier for slash, prompt-workflow, scheduled, RPC, and named-resource launches.
61
+ */
62
+ export declare function removedModelWorkflowFieldError(params: object): string | undefined;
56
63
  export declare function validateWorkflowCapacityOverrides(params: PublicSubagentExecutionParams): string | undefined;
57
64
  /**
58
65
  * Enforce the public execution cutover before requests reach the executor.
59
66
  * Internal runs.run children and structured owned delegation bypass this boundary.
60
67
  */
61
- export declare function normalizePublicSubagentExecution<T extends PublicSubagentExecutionParams>(params: T): PublicSubagentExecutionNormalization<T>;
68
+ export declare function normalizePublicSubagentExecution<T extends PublicSubagentExecutionParams>(params: T, options?: {
69
+ structuredWorkflows?: boolean;
70
+ }): PublicSubagentExecutionNormalization<T>;
62
71
  //# sourceMappingURL=public-execution.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-execution.d.ts","sourceRoot":"","sources":["../../../src/extension/public-execution.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,6BAA6B;IAC7C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,MAAM,2BAA2B,GAAG,UAAU,GAAG,YAAY,CAAC;AAEpE,MAAM,MAAM,oCAAoC,CAAC,CAAC,IAC/C;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,CAAC,CAAA;CAAE,GACvB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,2BAA2B,CAAA;CAAE,CAAC;AAEnE,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,6BAA6B,GAAG,MAAM,GAAG,SAAS,CAO3G;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,CAAC,CAAC,SAAS,6BAA6B,EAAE,MAAM,EAAE,CAAC,GAAG,oCAAoC,CAAC,CAAC,CAAC,CA4J5I"}
1
+ {"version":3,"file":"public-execution.d.ts","sourceRoot":"","sources":["../../../src/extension/public-execution.ts"],"names":[],"mappings":"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"}