@qduc/term2 0.32.2 → 0.34.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 (435) hide show
  1. package/dist/agent.d.ts.map +1 -1
  2. package/dist/agent.js +30 -14
  3. package/dist/agent.js.map +1 -1
  4. package/dist/build-info.json +2 -2
  5. package/dist/completion-verification-admin.d.ts +2 -0
  6. package/dist/completion-verification-admin.d.ts.map +1 -0
  7. package/dist/completion-verification-admin.js +37 -0
  8. package/dist/completion-verification-admin.js.map +1 -0
  9. package/dist/components/input/MenuSurface.d.ts.map +1 -1
  10. package/dist/components/input/MenuSurface.js +12 -3
  11. package/dist/components/input/MenuSurface.js.map +1 -1
  12. package/dist/components/input/ModelMenuSession.d.ts.map +1 -1
  13. package/dist/components/input/ModelMenuSession.js +15 -1
  14. package/dist/components/input/ModelMenuSession.js.map +1 -1
  15. package/dist/components/input/ProviderMenuSession.d.ts.map +1 -1
  16. package/dist/components/input/ProviderMenuSession.js +2 -2
  17. package/dist/components/input/ProviderMenuSession.js.map +1 -1
  18. package/dist/components/input/SettingsMenuSession.d.ts.map +1 -1
  19. package/dist/components/input/SettingsMenuSession.js +119 -82
  20. package/dist/components/input/SettingsMenuSession.js.map +1 -1
  21. package/dist/components/input/SettingsValueMenuSession.d.ts.map +1 -1
  22. package/dist/components/input/SettingsValueMenuSession.js +18 -3
  23. package/dist/components/input/SettingsValueMenuSession.js.map +1 -1
  24. package/dist/components/input/determine-active-menu.d.ts.map +1 -1
  25. package/dist/components/input/determine-active-menu.js +5 -1
  26. package/dist/components/input/determine-active-menu.js.map +1 -1
  27. package/dist/components/input/settings-intent-host.d.ts.map +1 -1
  28. package/dist/components/input/settings-intent-host.js +60 -4
  29. package/dist/components/input/settings-intent-host.js.map +1 -1
  30. package/dist/components/menu/ModelSelectionMenu.d.ts +4 -0
  31. package/dist/components/menu/ModelSelectionMenu.d.ts.map +1 -1
  32. package/dist/components/menu/ModelSelectionMenu.js +15 -16
  33. package/dist/components/menu/ModelSelectionMenu.js.map +1 -1
  34. package/dist/components/menu/ProviderSelectionMenu.d.ts +1 -0
  35. package/dist/components/menu/ProviderSelectionMenu.d.ts.map +1 -1
  36. package/dist/components/menu/ProviderSelectionMenu.js +21 -6
  37. package/dist/components/menu/ProviderSelectionMenu.js.map +1 -1
  38. package/dist/components/menu/SettingsSelectionMenu.d.ts +3 -0
  39. package/dist/components/menu/SettingsSelectionMenu.d.ts.map +1 -1
  40. package/dist/components/menu/SettingsSelectionMenu.js +78 -47
  41. package/dist/components/menu/SettingsSelectionMenu.js.map +1 -1
  42. package/dist/components/menu/SettingsValueSelectionMenu.d.ts +2 -0
  43. package/dist/components/menu/SettingsValueSelectionMenu.d.ts.map +1 -1
  44. package/dist/components/menu/SettingsValueSelectionMenu.js +17 -12
  45. package/dist/components/menu/SettingsValueSelectionMenu.js.map +1 -1
  46. package/dist/components/menu/settings-value-formatter.d.ts +8 -3
  47. package/dist/components/menu/settings-value-formatter.d.ts.map +1 -1
  48. package/dist/components/menu/settings-value-formatter.js +55 -32
  49. package/dist/components/menu/settings-value-formatter.js.map +1 -1
  50. package/dist/components/message/command-message-helpers.d.ts +5 -5
  51. package/dist/contracts/run-termination.d.ts +3 -1
  52. package/dist/contracts/run-termination.d.ts.map +1 -1
  53. package/dist/hooks/settings-completion-config.d.ts +28 -12
  54. package/dist/hooks/settings-completion-config.d.ts.map +1 -1
  55. package/dist/hooks/settings-completion-config.js +73 -76
  56. package/dist/hooks/settings-completion-config.js.map +1 -1
  57. package/dist/hooks/settings-completion-logic.d.ts +10 -1
  58. package/dist/hooks/settings-completion-logic.d.ts.map +1 -1
  59. package/dist/hooks/settings-completion-logic.js +80 -49
  60. package/dist/hooks/settings-completion-logic.js.map +1 -1
  61. package/dist/hooks/use-provider-selection.d.ts +6 -0
  62. package/dist/hooks/use-provider-selection.d.ts.map +1 -1
  63. package/dist/hooks/use-provider-selection.js +69 -10
  64. package/dist/hooks/use-provider-selection.js.map +1 -1
  65. package/dist/hooks/use-settings-completion.d.ts +14 -0
  66. package/dist/hooks/use-settings-completion.d.ts.map +1 -1
  67. package/dist/hooks/use-settings-completion.js +54 -6
  68. package/dist/hooks/use-settings-completion.js.map +1 -1
  69. package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
  70. package/dist/hooks/use-settings-value-completion.js +15 -4
  71. package/dist/hooks/use-settings-value-completion.js.map +1 -1
  72. package/dist/lib/agent-chat-service.d.ts.map +1 -1
  73. package/dist/lib/agent-chat-service.js +2 -6
  74. package/dist/lib/agent-chat-service.js.map +1 -1
  75. package/dist/lib/agent-client.d.ts +2 -1
  76. package/dist/lib/agent-client.d.ts.map +1 -1
  77. package/dist/lib/agent-client.js +99 -85
  78. package/dist/lib/agent-client.js.map +1 -1
  79. package/dist/lib/agent-factory.d.ts.map +1 -1
  80. package/dist/lib/agent-factory.js +17 -19
  81. package/dist/lib/agent-factory.js.map +1 -1
  82. package/dist/non-interactive.d.ts.map +1 -1
  83. package/dist/non-interactive.js +4 -0
  84. package/dist/non-interactive.js.map +1 -1
  85. package/dist/prompts/tool-surface-guidance.js +1 -1
  86. package/dist/prompts/tool-surface-guidance.js.map +1 -1
  87. package/dist/prompts/tool-surface-guidance.ts +1 -1
  88. package/dist/providers/ai-sdk-anthropic.provider.d.ts.map +1 -1
  89. package/dist/providers/ai-sdk-anthropic.provider.js +16 -2
  90. package/dist/providers/ai-sdk-anthropic.provider.js.map +1 -1
  91. package/dist/providers/ai-sdk-google.provider.d.ts.map +1 -1
  92. package/dist/providers/ai-sdk-google.provider.js +16 -2
  93. package/dist/providers/ai-sdk-google.provider.js.map +1 -1
  94. package/dist/providers/ai-sdk-openrouter.provider.d.ts.map +1 -1
  95. package/dist/providers/ai-sdk-openrouter.provider.js +16 -1
  96. package/dist/providers/ai-sdk-openrouter.provider.js.map +1 -1
  97. package/dist/providers/ai-sdk-provider-settings.d.ts +2 -0
  98. package/dist/providers/ai-sdk-provider-settings.d.ts.map +1 -1
  99. package/dist/providers/ai-sdk-provider-settings.js +5 -0
  100. package/dist/providers/ai-sdk-provider-settings.js.map +1 -1
  101. package/dist/providers/ai-sdk-streamed-model.d.ts +3 -3
  102. package/dist/providers/ai-sdk-streamed-model.d.ts.map +1 -1
  103. package/dist/providers/ai-sdk-streamed-model.js +5 -69
  104. package/dist/providers/ai-sdk-streamed-model.js.map +1 -1
  105. package/dist/providers/anthropic-chat-caching.d.ts +5 -0
  106. package/dist/providers/anthropic-chat-caching.d.ts.map +1 -0
  107. package/dist/providers/{common/openai-compatible-messages.js → anthropic-chat-caching.js} +19 -1
  108. package/dist/providers/anthropic-chat-caching.js.map +1 -0
  109. package/dist/providers/codex.provider.js +2 -0
  110. package/dist/providers/codex.provider.js.map +1 -1
  111. package/dist/providers/custom-provider-runtime.d.ts +18 -0
  112. package/dist/providers/custom-provider-runtime.d.ts.map +1 -0
  113. package/dist/providers/custom-provider-runtime.js +26 -0
  114. package/dist/providers/custom-provider-runtime.js.map +1 -0
  115. package/dist/providers/grok.provider.d.ts +13 -3
  116. package/dist/providers/grok.provider.d.ts.map +1 -1
  117. package/dist/providers/grok.provider.js +82 -6
  118. package/dist/providers/grok.provider.js.map +1 -1
  119. package/dist/providers/llama-cpp.provider.d.ts +3 -0
  120. package/dist/providers/llama-cpp.provider.d.ts.map +1 -1
  121. package/dist/providers/llama-cpp.provider.js +17 -0
  122. package/dist/providers/llama-cpp.provider.js.map +1 -1
  123. package/dist/providers/model-catalog/catalog.generated.d.ts +347 -351
  124. package/dist/providers/model-catalog/catalog.generated.d.ts.map +1 -1
  125. package/dist/providers/model-catalog/catalog.generated.js +362 -357
  126. package/dist/providers/model-catalog/catalog.generated.js.map +1 -1
  127. package/dist/providers/neuralwatt.provider.d.ts +6 -0
  128. package/dist/providers/neuralwatt.provider.d.ts.map +1 -0
  129. package/dist/providers/neuralwatt.provider.js +8 -0
  130. package/dist/providers/neuralwatt.provider.js.map +1 -0
  131. package/dist/providers/openai-compatible-lazy.d.ts.map +1 -1
  132. package/dist/providers/openai-compatible-lazy.js +2 -0
  133. package/dist/providers/openai-compatible-lazy.js.map +1 -1
  134. package/dist/providers/openai-compatible-middleware.d.ts +4 -9
  135. package/dist/providers/openai-compatible-middleware.d.ts.map +1 -1
  136. package/dist/providers/openai-compatible-middleware.js +25 -48
  137. package/dist/providers/openai-compatible-middleware.js.map +1 -1
  138. package/dist/providers/openai-compatible-models.d.ts +9 -1
  139. package/dist/providers/openai-compatible-models.d.ts.map +1 -1
  140. package/dist/providers/openai-compatible-models.js +10 -2
  141. package/dist/providers/openai-compatible-models.js.map +1 -1
  142. package/dist/providers/openai-compatible-response-normalizer.d.ts +1 -1
  143. package/dist/providers/openai-compatible-response-normalizer.d.ts.map +1 -1
  144. package/dist/providers/openai-compatible-response-normalizer.js +6 -6
  145. package/dist/providers/openai-compatible-response-normalizer.js.map +1 -1
  146. package/dist/providers/openai-compatible.provider.d.ts +2 -32
  147. package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
  148. package/dist/providers/openai-compatible.provider.js +27 -144
  149. package/dist/providers/openai-compatible.provider.js.map +1 -1
  150. package/dist/providers/openai.provider.d.ts.map +1 -1
  151. package/dist/providers/openai.provider.js +1 -0
  152. package/dist/providers/openai.provider.js.map +1 -1
  153. package/dist/providers/opencode-middleware.d.ts +9 -0
  154. package/dist/providers/opencode-middleware.d.ts.map +1 -0
  155. package/dist/providers/opencode-middleware.js +15 -0
  156. package/dist/providers/opencode-middleware.js.map +1 -0
  157. package/dist/providers/opencode-model-provider.d.ts +19 -0
  158. package/dist/providers/opencode-model-provider.d.ts.map +1 -0
  159. package/dist/providers/opencode-model-provider.js +128 -0
  160. package/dist/providers/opencode-model-provider.js.map +1 -0
  161. package/dist/providers/opencode.provider.d.ts +2 -0
  162. package/dist/providers/opencode.provider.d.ts.map +1 -1
  163. package/dist/providers/opencode.provider.js +4 -0
  164. package/dist/providers/opencode.provider.js.map +1 -1
  165. package/dist/providers/openrouter-decision-models.d.ts +7 -0
  166. package/dist/providers/openrouter-decision-models.d.ts.map +1 -0
  167. package/dist/providers/openrouter-decision-models.js +31 -0
  168. package/dist/providers/openrouter-decision-models.js.map +1 -0
  169. package/dist/providers/openrouter.provider.js +2 -1
  170. package/dist/providers/openrouter.provider.js.map +1 -1
  171. package/dist/providers/orcarouter-models.d.ts +12 -0
  172. package/dist/providers/orcarouter-models.d.ts.map +1 -0
  173. package/dist/providers/orcarouter-models.js +38 -0
  174. package/dist/providers/orcarouter-models.js.map +1 -0
  175. package/dist/providers/provider-presets.d.ts +37 -0
  176. package/dist/providers/provider-presets.d.ts.map +1 -0
  177. package/dist/providers/provider-presets.js +33 -0
  178. package/dist/providers/provider-presets.js.map +1 -0
  179. package/dist/providers/provider-presets.json +201 -0
  180. package/dist/providers/provider-service.d.ts +3 -2
  181. package/dist/providers/provider-service.d.ts.map +1 -1
  182. package/dist/providers/provider-service.js +4 -20
  183. package/dist/providers/provider-service.js.map +1 -1
  184. package/dist/providers/registry.d.ts +7 -0
  185. package/dist/providers/registry.d.ts.map +1 -1
  186. package/dist/providers/registry.js.map +1 -1
  187. package/dist/services/agent-runtime/application-run-loop.d.ts +25 -2
  188. package/dist/services/agent-runtime/application-run-loop.d.ts.map +1 -1
  189. package/dist/services/agent-runtime/application-run-loop.js +927 -758
  190. package/dist/services/agent-runtime/application-run-loop.js.map +1 -1
  191. package/dist/services/agent-runtime/tool-call-execution.d.ts +1 -1
  192. package/dist/services/agent-runtime/tool-call-execution.d.ts.map +1 -1
  193. package/dist/services/agent-runtime/tool-call-execution.js +6 -3
  194. package/dist/services/agent-runtime/tool-call-execution.js.map +1 -1
  195. package/dist/services/approval/approval-flow-coordinator.d.ts +4 -2
  196. package/dist/services/approval/approval-flow-coordinator.d.ts.map +1 -1
  197. package/dist/services/approval/approval-flow-coordinator.js +2 -1
  198. package/dist/services/approval/approval-flow-coordinator.js.map +1 -1
  199. package/dist/services/approval/approval-state.d.ts +0 -13
  200. package/dist/services/approval/approval-state.d.ts.map +1 -1
  201. package/dist/services/approval/approval-state.js +0 -5
  202. package/dist/services/approval/approval-state.js.map +1 -1
  203. package/dist/services/approval/background-subagent-approval-controller.d.ts.map +1 -1
  204. package/dist/services/approval/background-subagent-approval-controller.js +0 -2
  205. package/dist/services/approval/background-subagent-approval-controller.js.map +1 -1
  206. package/dist/services/approval/nested-approval-owner.d.ts.map +1 -1
  207. package/dist/services/approval/nested-approval-owner.js +5 -1
  208. package/dist/services/approval/nested-approval-owner.js.map +1 -1
  209. package/dist/services/approval/shell-auto-approval-resolver.d.ts +2 -2
  210. package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -1
  211. package/dist/services/approval/shell-auto-approval-resolver.js +2 -2
  212. package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -1
  213. package/dist/services/approval/tool-approval-batch-coordinator.d.ts +2 -2
  214. package/dist/services/approval/tool-approval-batch-coordinator.d.ts.map +1 -1
  215. package/dist/services/approval/tool-approval-batch-coordinator.js +4 -4
  216. package/dist/services/approval/tool-approval-batch-coordinator.js.map +1 -1
  217. package/dist/services/assembly/feature-selection.d.ts +48 -0
  218. package/dist/services/assembly/feature-selection.d.ts.map +1 -0
  219. package/dist/services/assembly/feature-selection.js +12 -0
  220. package/dist/services/assembly/feature-selection.js.map +1 -0
  221. package/dist/services/completion-verification/contracts.d.ts +151 -0
  222. package/dist/services/completion-verification/contracts.d.ts.map +1 -0
  223. package/dist/services/completion-verification/contracts.js +84 -0
  224. package/dist/services/completion-verification/contracts.js.map +1 -0
  225. package/dist/services/completion-verification/gate.d.ts +9 -0
  226. package/dist/services/completion-verification/gate.d.ts.map +1 -0
  227. package/dist/services/completion-verification/gate.js +60 -0
  228. package/dist/services/completion-verification/gate.js.map +1 -0
  229. package/dist/services/completion-verification/goal-stop-policy.d.ts +10 -0
  230. package/dist/services/completion-verification/goal-stop-policy.d.ts.map +1 -0
  231. package/dist/services/completion-verification/goal-stop-policy.js +53 -0
  232. package/dist/services/completion-verification/goal-stop-policy.js.map +1 -0
  233. package/dist/services/completion-verification/orchestrator.d.ts +26 -0
  234. package/dist/services/completion-verification/orchestrator.d.ts.map +1 -0
  235. package/dist/services/completion-verification/orchestrator.js +275 -0
  236. package/dist/services/completion-verification/orchestrator.js.map +1 -0
  237. package/dist/services/completion-verification/root-boundary.d.ts +21 -0
  238. package/dist/services/completion-verification/root-boundary.d.ts.map +1 -0
  239. package/dist/services/completion-verification/root-boundary.js +127 -0
  240. package/dist/services/completion-verification/root-boundary.js.map +1 -0
  241. package/dist/services/completion-verification/store.d.ts +13 -0
  242. package/dist/services/completion-verification/store.d.ts.map +1 -0
  243. package/dist/services/completion-verification/store.js +69 -0
  244. package/dist/services/completion-verification/store.js.map +1 -0
  245. package/dist/services/completion-verification/verifier.d.ts +11 -0
  246. package/dist/services/completion-verification/verifier.d.ts.map +1 -0
  247. package/dist/services/completion-verification/verifier.js +173 -0
  248. package/dist/services/completion-verification/verifier.js.map +1 -0
  249. package/dist/services/completion-verification/workspace.d.ts +17 -0
  250. package/dist/services/completion-verification/workspace.d.ts.map +1 -0
  251. package/dist/services/completion-verification/workspace.js +183 -0
  252. package/dist/services/completion-verification/workspace.js.map +1 -0
  253. package/dist/services/conversation/conversation-adapter.d.ts +17 -47
  254. package/dist/services/conversation/conversation-adapter.d.ts.map +1 -1
  255. package/dist/services/conversation/conversation-adapter.js +114 -88
  256. package/dist/services/conversation/conversation-adapter.js.map +1 -1
  257. package/dist/services/conversation/conversation-orchestrator.d.ts.map +1 -1
  258. package/dist/services/conversation/conversation-orchestrator.js +48 -121
  259. package/dist/services/conversation/conversation-orchestrator.js.map +1 -1
  260. package/dist/services/conversation/conversation-record-stream.d.ts +21 -0
  261. package/dist/services/conversation/conversation-record-stream.d.ts.map +1 -0
  262. package/dist/services/conversation/conversation-record-stream.js +186 -0
  263. package/dist/services/conversation/conversation-record-stream.js.map +1 -0
  264. package/dist/services/conversation/conversation-record.d.ts +160 -0
  265. package/dist/services/conversation/conversation-record.d.ts.map +1 -0
  266. package/dist/services/conversation/conversation-record.js +371 -0
  267. package/dist/services/conversation/conversation-record.js.map +1 -0
  268. package/dist/services/conversation/conversation-result-builder.d.ts +0 -4
  269. package/dist/services/conversation/conversation-result-builder.d.ts.map +1 -1
  270. package/dist/services/conversation/conversation-result-builder.js +0 -10
  271. package/dist/services/conversation/conversation-result-builder.js.map +1 -1
  272. package/dist/services/conversation/conversation-service.d.ts +2 -1
  273. package/dist/services/conversation/conversation-service.d.ts.map +1 -1
  274. package/dist/services/conversation/conversation-service.js +3 -0
  275. package/dist/services/conversation/conversation-service.js.map +1 -1
  276. package/dist/services/conversation/durable-goal-stop-check.js +1 -1
  277. package/dist/services/conversation/durable-goal-stop-check.js.map +1 -1
  278. package/dist/services/conversation/durable-goal.d.ts.map +1 -1
  279. package/dist/services/conversation/durable-goal.js +1 -1
  280. package/dist/services/conversation/durable-goal.js.map +1 -1
  281. package/dist/services/conversation-agent-client.d.ts +17 -7
  282. package/dist/services/conversation-agent-client.d.ts.map +1 -1
  283. package/dist/services/logging/conversation-logger.d.ts +1 -7
  284. package/dist/services/logging/conversation-logger.d.ts.map +1 -1
  285. package/dist/services/logging/conversation-logger.js +0 -18
  286. package/dist/services/logging/conversation-logger.js.map +1 -1
  287. package/dist/services/model-service.d.ts +2 -6
  288. package/dist/services/model-service.d.ts.map +1 -1
  289. package/dist/services/model-service.js +8 -21
  290. package/dist/services/model-service.js.map +1 -1
  291. package/dist/services/models/decision-model-listing.d.ts +2 -12
  292. package/dist/services/models/decision-model-listing.d.ts.map +1 -1
  293. package/dist/services/models/decision-model-listing.js +2 -29
  294. package/dist/services/models/decision-model-listing.js.map +1 -1
  295. package/dist/services/provider-continuity.d.ts +26 -0
  296. package/dist/services/provider-continuity.d.ts.map +1 -1
  297. package/dist/services/provider-continuity.js +47 -0
  298. package/dist/services/provider-continuity.js.map +1 -1
  299. package/dist/services/retry/recovery-executor.d.ts +3 -4
  300. package/dist/services/retry/recovery-executor.d.ts.map +1 -1
  301. package/dist/services/retry/recovery-executor.js +13 -75
  302. package/dist/services/retry/recovery-executor.js.map +1 -1
  303. package/dist/services/retry/retry-contracts.d.ts +2 -10
  304. package/dist/services/retry/retry-contracts.d.ts.map +1 -1
  305. package/dist/services/session/continuation-plan-applier.d.ts +5 -9
  306. package/dist/services/session/continuation-plan-applier.d.ts.map +1 -1
  307. package/dist/services/session/continuation-plan-applier.js +9 -43
  308. package/dist/services/session/continuation-plan-applier.js.map +1 -1
  309. package/dist/services/session/continuation-recovery-handler.d.ts +4 -6
  310. package/dist/services/session/continuation-recovery-handler.d.ts.map +1 -1
  311. package/dist/services/session/continuation-recovery-handler.js +3 -15
  312. package/dist/services/session/continuation-recovery-handler.js.map +1 -1
  313. package/dist/services/session/initial-input-preparer.d.ts +2 -2
  314. package/dist/services/session/initial-input-preparer.d.ts.map +1 -1
  315. package/dist/services/session/initial-input-preparer.js +3 -3
  316. package/dist/services/session/initial-input-preparer.js.map +1 -1
  317. package/dist/services/session/initial-turn-recovery-handler.d.ts +2 -4
  318. package/dist/services/session/initial-turn-recovery-handler.d.ts.map +1 -1
  319. package/dist/services/session/initial-turn-recovery-handler.js +4 -5
  320. package/dist/services/session/initial-turn-recovery-handler.js.map +1 -1
  321. package/dist/services/session/live-run.d.ts +9 -3
  322. package/dist/services/session/live-run.d.ts.map +1 -1
  323. package/dist/services/session/live-run.js +19 -4
  324. package/dist/services/session/live-run.js.map +1 -1
  325. package/dist/services/session/session-composition.d.ts +8 -12
  326. package/dist/services/session/session-composition.d.ts.map +1 -1
  327. package/dist/services/session/session-composition.js +41 -87
  328. package/dist/services/session/session-composition.js.map +1 -1
  329. package/dist/services/session/session-input-planner.d.ts +2 -2
  330. package/dist/services/session/session-input-planner.d.ts.map +1 -1
  331. package/dist/services/session/session-input-planner.js +6 -13
  332. package/dist/services/session/session-input-planner.js.map +1 -1
  333. package/dist/services/session/session-lifecycle.d.ts +73 -23
  334. package/dist/services/session/session-lifecycle.d.ts.map +1 -1
  335. package/dist/services/session/session-lifecycle.js +127 -45
  336. package/dist/services/session/session-lifecycle.js.map +1 -1
  337. package/dist/services/session/session-stream-processor.d.ts +4 -30
  338. package/dist/services/session/session-stream-processor.d.ts.map +1 -1
  339. package/dist/services/session/session-stream-processor.js +11 -300
  340. package/dist/services/session/session-stream-processor.js.map +1 -1
  341. package/dist/services/session/session-tool-tracker.d.ts +9 -144
  342. package/dist/services/session/session-tool-tracker.d.ts.map +1 -1
  343. package/dist/services/session/session-tool-tracker.js +17 -251
  344. package/dist/services/session/session-tool-tracker.js.map +1 -1
  345. package/dist/services/session/{turn-workflow.d.ts → session-turn-adapter.d.ts} +10 -43
  346. package/dist/services/session/session-turn-adapter.d.ts.map +1 -0
  347. package/dist/services/session/session-turn-adapter.js +734 -0
  348. package/dist/services/session/session-turn-adapter.js.map +1 -0
  349. package/dist/services/session/turn-attempt-factory.d.ts +2 -11
  350. package/dist/services/session/turn-attempt-factory.d.ts.map +1 -1
  351. package/dist/services/session/turn-attempt-factory.js +4 -12
  352. package/dist/services/session/turn-attempt-factory.js.map +1 -1
  353. package/dist/services/session/turn-attempt.d.ts +0 -3
  354. package/dist/services/session/turn-attempt.d.ts.map +1 -1
  355. package/dist/services/session/turn-attempt.js +0 -5
  356. package/dist/services/session/turn-attempt.js.map +1 -1
  357. package/dist/services/session/turn-coordinator.d.ts +3 -3
  358. package/dist/services/session/turn-coordinator.d.ts.map +1 -1
  359. package/dist/services/session/turn-coordinator.js +31 -26
  360. package/dist/services/session/turn-coordinator.js.map +1 -1
  361. package/dist/services/session/turn-projection-state.d.ts +45 -0
  362. package/dist/services/session/turn-projection-state.d.ts.map +1 -0
  363. package/dist/services/session/turn-projection-state.js +61 -0
  364. package/dist/services/session/turn-projection-state.js.map +1 -0
  365. package/dist/services/settings/settings-env.d.ts +5 -0
  366. package/dist/services/settings/settings-env.d.ts.map +1 -1
  367. package/dist/services/settings/settings-env.js +22 -0
  368. package/dist/services/settings/settings-env.js.map +1 -1
  369. package/dist/services/settings/settings-schema.d.ts +8 -0
  370. package/dist/services/settings/settings-schema.d.ts.map +1 -1
  371. package/dist/services/settings/settings-schema.js +17 -0
  372. package/dist/services/settings/settings-schema.js.map +1 -1
  373. package/dist/services/settings/settings-service.d.ts +6 -0
  374. package/dist/services/settings/settings-service.d.ts.map +1 -1
  375. package/dist/services/settings/settings-service.js +21 -9
  376. package/dist/services/settings/settings-service.js.map +1 -1
  377. package/dist/services/settings/settings-sources.d.ts +2 -0
  378. package/dist/services/settings/settings-sources.d.ts.map +1 -1
  379. package/dist/services/settings/settings-sources.js +2 -0
  380. package/dist/services/settings/settings-sources.js.map +1 -1
  381. package/dist/services/settings/settings-ui-metadata.d.ts +21 -0
  382. package/dist/services/settings/settings-ui-metadata.d.ts.map +1 -1
  383. package/dist/services/settings/settings-ui-metadata.js +201 -23
  384. package/dist/services/settings/settings-ui-metadata.js.map +1 -1
  385. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts +1 -0
  386. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts.map +1 -1
  387. package/dist/services/settings/test-helpers/settings-consumer-inventory.js +4 -0
  388. package/dist/services/settings/test-helpers/settings-consumer-inventory.js.map +1 -1
  389. package/dist/services/subagents/tool-policy.d.ts +5 -5
  390. package/dist/services/subagents/tool-policy.d.ts.map +1 -1
  391. package/dist/services/subagents/tool-policy.js +15 -9
  392. package/dist/services/subagents/tool-policy.js.map +1 -1
  393. package/dist/tools/agent/goal-check.js +2 -2
  394. package/dist/tools/agent/goal-check.js.map +1 -1
  395. package/dist/tools/agent/list-models.d.ts +71 -0
  396. package/dist/tools/agent/list-models.d.ts.map +1 -0
  397. package/dist/tools/agent/list-models.js +175 -0
  398. package/dist/tools/agent/list-models.js.map +1 -0
  399. package/dist/tools/system/run-code/run-code-runtime.d.ts.map +1 -1
  400. package/dist/tools/system/run-code/run-code-runtime.js +90 -19
  401. package/dist/tools/system/run-code/run-code-runtime.js.map +1 -1
  402. package/dist/tools/system/shell.d.ts +2 -2
  403. package/dist/tools/system/shell.d.ts.map +1 -1
  404. package/dist/tools/system/shell.js +1 -0
  405. package/dist/tools/system/shell.js.map +1 -1
  406. package/dist/tools/tool-names.d.ts +1 -1
  407. package/dist/tools/tool-names.d.ts.map +1 -1
  408. package/dist/utils/ai/token-usage.js +9 -8
  409. package/dist/utils/ai/token-usage.js.map +1 -1
  410. package/dist/utils/value-suggestions.d.ts.map +1 -1
  411. package/dist/utils/value-suggestions.js +14 -11
  412. package/dist/utils/value-suggestions.js.map +1 -1
  413. package/package.json +2 -2
  414. package/dist/providers/anthropic-middleware.d.ts +0 -25
  415. package/dist/providers/anthropic-middleware.d.ts.map +0 -1
  416. package/dist/providers/anthropic-middleware.js +0 -32
  417. package/dist/providers/anthropic-middleware.js.map +0 -1
  418. package/dist/providers/common/openai-compatible-messages.d.ts +0 -2
  419. package/dist/providers/common/openai-compatible-messages.d.ts.map +0 -1
  420. package/dist/providers/common/openai-compatible-messages.js.map +0 -1
  421. package/dist/services/session/continuation-call-id-resolver.d.ts +0 -29
  422. package/dist/services/session/continuation-call-id-resolver.d.ts.map +0 -1
  423. package/dist/services/session/continuation-call-id-resolver.js +0 -69
  424. package/dist/services/session/continuation-call-id-resolver.js.map +0 -1
  425. package/dist/services/session/continuation-state.d.ts +0 -69
  426. package/dist/services/session/continuation-state.d.ts.map +0 -1
  427. package/dist/services/session/continuation-state.js +0 -78
  428. package/dist/services/session/continuation-state.js.map +0 -1
  429. package/dist/services/session/session-manager.d.ts +0 -87
  430. package/dist/services/session/session-manager.d.ts.map +0 -1
  431. package/dist/services/session/session-manager.js +0 -146
  432. package/dist/services/session/session-manager.js.map +0 -1
  433. package/dist/services/session/turn-workflow.d.ts.map +0 -1
  434. package/dist/services/session/turn-workflow.js +0 -1055
  435. package/dist/services/session/turn-workflow.js.map +0 -1
@@ -0,0 +1,175 @@
1
+ import { z } from 'zod';
2
+ import { getAllProviders } from '../../providers/index.js';
3
+ import { isProviderDisabled, resolveProviderCredentials } from '../../utils/ai/provider-credentials.js';
4
+ import { loadProviderModelGroup } from '../../services/models/model-listing.js';
5
+ const parameters = z.object({
6
+ provider: z.string().optional().describe('Exact registered provider ID. Omit to search all providers.'),
7
+ provider_query: z
8
+ .string()
9
+ .optional()
10
+ .describe('Filter provider IDs/labels before any catalog load. Use this instead of query when searching for a provider.'),
11
+ view: z
12
+ .enum(['models', 'providers'])
13
+ .optional()
14
+ .describe('Default models. providers lists registration/readiness only, without loading catalogs or history.'),
15
+ query: z.string().optional().describe('Case-insensitive substring of provider ID/label or model ID/name.'),
16
+ include_history: z
17
+ .boolean()
18
+ .optional()
19
+ .describe('Default false for name sort, true for usage/recency. False skips session indexing and returns null counts.'),
20
+ include_names: z
21
+ .boolean()
22
+ .optional()
23
+ .describe('Include display names. Default false for compact results; IDs are always returned.'),
24
+ limit: z
25
+ .number()
26
+ .int()
27
+ .positive()
28
+ .optional()
29
+ .describe('Model page size, default 50. Omitted models remain retrievable with offset; no hidden maximum.'),
30
+ offset: z
31
+ .number()
32
+ .int()
33
+ .nonnegative()
34
+ .optional()
35
+ .describe('Model page offset, default 0. Repeat the same filters/sort with nextOffset to retrieve more; live catalog/history changes may reorder pages.'),
36
+ sort: z
37
+ .enum(['name', 'usage', 'recency'])
38
+ .optional()
39
+ .describe('Default recency. Usage counts recorded project sessions, not API calls; recency is their latest update.'),
40
+ });
41
+ export const modelDiscoveryResultSchema = z.object({
42
+ history: z.object({
43
+ status: z.enum(['available', 'partial', 'unavailable', 'not-requested']),
44
+ scope: z.string().nullable(),
45
+ unavailableSessions: z.number().nullable(),
46
+ note: z.string(),
47
+ }),
48
+ providers: z.array(z.object({
49
+ id: z.string(),
50
+ label: z.string(),
51
+ disabled: z.boolean(),
52
+ credentialsConfigured: z.boolean(),
53
+ supportsStreamedModel: z.boolean(),
54
+ catalogStatus: z.enum(['loaded', 'failed', 'not-ready', 'not-requested']),
55
+ })),
56
+ models: z.array(z.object({
57
+ provider: z.string(),
58
+ id: z.string(),
59
+ name: z.string().optional(),
60
+ sessionCount: z.number().nullable(),
61
+ lastSessionUpdatedAt: z.string().nullable(),
62
+ })),
63
+ totalModels: z.number(),
64
+ offset: z.number(),
65
+ nextOffset: z.number().nullable(),
66
+ });
67
+ /** Discover registered provider/model IDs without exposing credentials or dispatching a model.
68
+ * History is a project session-metadata proxy, not invocation telemetry or proof of reachability.
69
+ */
70
+ export function createListModelsToolDefinition(deps) {
71
+ return {
72
+ name: 'list_models',
73
+ description: 'Discover actual runtime provider/model IDs before choosing a subagent model. Start with view: providers for a cheap registration/readiness listing (no catalog/history I/O), then use exact provider or provider_query to narrow catalog loads. Catalog listing may contact configured providers; never invokes a model. query filters loaded models, not provider fetches. Models are compact pages of 50; use nextOffset with the same inputs for more, or set limit. Names are opt-in. Sort by name (skips history by default), recorded project session count (usage), or latest session update (recency, default). History excludes unrecorded switches and is not invocation telemetry. Discovery grants no permission to invoke a provider/model and does not prove reachability or model-specific compatibility.',
74
+ parameters,
75
+ scriptedReturnSchema: modelDiscoveryResultSchema,
76
+ parallelSafe: true,
77
+ needsApproval: () => false,
78
+ formatCommandMessage: () => [],
79
+ execute: async ({ provider, provider_query, view = 'models', query, sort = 'recency', include_history, include_names = false, limit = 50, offset = 0, }, context) => {
80
+ const runtimeSignal = context?.signal;
81
+ const configuredSignal = deps.catalogDeps?.signal;
82
+ const signal = runtimeSignal && configuredSignal
83
+ ? AbortSignal.any([runtimeSignal, configuredSignal])
84
+ : runtimeSignal ?? configuredSignal;
85
+ const wantsHistory = view === 'models' && (include_history ?? sort !== 'name');
86
+ const historyPromise = wantsHistory
87
+ ? Promise.resolve()
88
+ .then(() => deps.getHistory?.())
89
+ .catch(() => null)
90
+ : Promise.resolve(null);
91
+ const providerNeedle = provider_query?.trim().toLowerCase() ?? '';
92
+ const entries = getAllProviders()
93
+ .filter((entry) => (!provider || entry.id === provider) && `${entry.id} ${entry.label}`.toLowerCase().includes(providerNeedle))
94
+ .sort((a, b) => a.id.localeCompare(b.id));
95
+ const loaded = await Promise.all(entries.map(async (entry) => {
96
+ const disabled = isProviderDisabled(deps.settingsService, entry.id);
97
+ const credentialsConfigured = resolveProviderCredentials(deps.settingsService, entry.id).configured;
98
+ const supportsStreamedModel = Boolean(entry.createStreamedModel);
99
+ const ready = !disabled && credentialsConfigured && supportsStreamedModel;
100
+ const group = view === 'models' && ready
101
+ ? await loadProviderModelGroup({ ...deps, ...deps.catalogDeps, signal }, entry.id)
102
+ : null;
103
+ return { entry, disabled, credentialsConfigured, supportsStreamedModel, group };
104
+ }));
105
+ const history = (await historyPromise) ?? null;
106
+ const uses = new Map();
107
+ for (const session of history?.sessions ?? []) {
108
+ if (!session.provider || !session.model)
109
+ continue;
110
+ const key = JSON.stringify([session.provider, session.model]);
111
+ const use = uses.get(key) ?? { count: 0, updatedAt: null };
112
+ use.count++;
113
+ if (Number.isFinite(Date.parse(session.updatedAt)) &&
114
+ (!use.updatedAt || Date.parse(session.updatedAt) > Date.parse(use.updatedAt)))
115
+ use.updatedAt = session.updatedAt;
116
+ uses.set(key, use);
117
+ }
118
+ const result = {
119
+ history: {
120
+ status: !wantsHistory
121
+ ? 'not-requested'
122
+ : history
123
+ ? history.unavailable
124
+ ? 'partial'
125
+ : 'available'
126
+ : 'unavailable',
127
+ scope: history?.scope ?? null,
128
+ unavailableSessions: history?.unavailable ?? null,
129
+ note: 'Counts associate saved sessions with their recorded provider/model; recency is session updatedAt, not last model invocation. Missing history is null; partial counts are lower bounds. Model switches and subagents without saved sessions are not counted.',
130
+ },
131
+ providers: [],
132
+ models: [],
133
+ totalModels: 0,
134
+ offset,
135
+ nextOffset: null,
136
+ };
137
+ const needle = query?.trim().toLowerCase() ?? '';
138
+ for (const { entry, disabled, credentialsConfigured, supportsStreamedModel, group } of loaded) {
139
+ const providerMatches = `${entry.id} ${entry.label}`.toLowerCase().includes(needle);
140
+ const models = (group?.models ?? []).filter((model) => !model.unavailableReason &&
141
+ (providerMatches || `${model.id} ${model.name ?? ''}`.toLowerCase().includes(needle)));
142
+ result.providers.push({
143
+ id: entry.id,
144
+ label: entry.label,
145
+ disabled,
146
+ credentialsConfigured,
147
+ supportsStreamedModel,
148
+ catalogStatus: view === 'providers' ? 'not-requested' : group ? (group.error ? 'failed' : 'loaded') : 'not-ready',
149
+ });
150
+ for (const model of models) {
151
+ const use = uses.get(JSON.stringify([entry.id, model.id]));
152
+ result.models.push({
153
+ provider: entry.id,
154
+ id: model.id,
155
+ ...(include_names && model.name ? { name: model.name } : {}),
156
+ sessionCount: history ? use?.count ?? 0 : null,
157
+ lastSessionUpdatedAt: use?.updatedAt ?? null,
158
+ });
159
+ }
160
+ }
161
+ result.models.sort((a, b) => {
162
+ if (sort === 'usage' && a.sessionCount !== b.sessionCount)
163
+ return (b.sessionCount ?? -1) - (a.sessionCount ?? -1);
164
+ if (sort !== 'name' && a.lastSessionUpdatedAt !== b.lastSessionUpdatedAt)
165
+ return (Date.parse(b.lastSessionUpdatedAt ?? '') || 0) - (Date.parse(a.lastSessionUpdatedAt ?? '') || 0);
166
+ return a.provider.localeCompare(b.provider) || a.id.localeCompare(b.id);
167
+ });
168
+ result.totalModels = result.models.length;
169
+ result.models = result.models.slice(offset, offset + limit);
170
+ result.nextOffset = offset + result.models.length < result.totalModels ? offset + result.models.length : null;
171
+ return result;
172
+ },
173
+ };
174
+ }
175
+ //# sourceMappingURL=list-models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-models.js","sourceRoot":"","sources":["../../../source/tools/agent/list-models.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-code-runtime.d.ts","sourceRoot":"","sources":["../../../../source/tools/system/run-code/run-code-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-code-runtime.d.ts","sourceRoot":"","sources":["../../../../source/tools/system/run-code/run-code-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE/E,OAAO,KAAK,EAGV,SAAS,EACV,MAAM,qDAAqD,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAe,MAAM,yCAAyC,CAAC;AAG5F,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6DAA6D,CAAC;AAC9G,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAK/F,OAAO,EAA4B,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AASrG,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;AACzG,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,gCAAgC,CAAC;AAMxC,OAAO,KAAK,EAAE,oBAAoB,EAAwB,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEpH,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEpH,eAAO,MAAM,kBAAkB,aAAa,CAAC;AAC7C,eAAO,MAAM,kBAAkB,aAAa,CAAC;AAE7C,8CAA8C;AAC9C,eAAO,MAAM,eAAe;aAC1B,QAAQ,EAAE,GAAG;aACb,cAAc,EAAE,CAAC;aAGjB,cAAc,EAAE,EAAE;aAClB,mBAAmB,EAAE,CAAC;aACtB,aAAa,EAAE,GAAG;aAClB,cAAc,EAAE,MAAO;aACvB,aAAa;aACb,kBAAkB;aAClB,mBAAmB,EAAE,EAAE;aACvB,YAAY,EAAE,KAAM;aACpB,cAAc,EAAE,MAAO;aACvB,eAAe,EAAE,MAAO;CAChB,CAAC;AAmBX,6DAA6D;AAC7D,eAAO,MAAM,yBAAyB,EAAE,WAAW,CAAC,MAAM,CAAkC,CAAC;AAE7F,gFAAgF;AAChF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK;IAAE,OAAO,EAAE,oBAAoB,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAiCjH,CAAC;AAEF,eAAO,MAAM,YAAY,SAAU,MAAM,KAAG,OAA+C,CAAC;AAY5F,eAAO,MAAM,UAAU,WAAY,MAAM,KAAG,MAC0D,CAAC;AAEvG,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAG,OAAO,CAEjF;AA+BD,wBAAgB,YAAY,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAuB/D;AAiCD,wBAAgB,yBAAyB;qBAIf,OAAO,KAAG,OAAO;qBAwBjB,OAAO,KAAG,OAAO;EAO1C;AAqBD,eAAO,MAAM,eAAe,WAClB,OAAO,SACR,MAAM,YACH,MAAM,kBACA,MAAM,KACrB,OAAO,CACR;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAoCzG,CAAC;AAsCF,KAAK,cAAc,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAGrH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,OAAO,EACf,GAAG,EAAE,MAAM,EACX,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,OAAO,CAAC,cAAc,CAAC,CAwBzB;AA4HD,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAInH;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,WAAW,GAAG,SAAS,EAAE,UAAU,EAAE,WAAW,GAAG,WAAW,CAe7G;AAYD,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,yBAAyB,CAAC;AAQjC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,YAAY,CAAC;IACvB,4EAA4E;IAC5E,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,eAAe,CAAC;IAChC,sBAAsB,EAAE,0BAA0B,CAAC;IACnD,MAAM,EAAE,MAAM,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,aAAa,CAAC,EAAE,OAAO,mDAAmD,EAAE,kBAAkB,CAAC;IAC/F,mBAAmB,CAAC,EAAE,OAAO,8DAA8D,EAAE,4BAA4B,CAAC;IAC1H,4EAA4E;IAC5E,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IAChD,uFAAuF;IACvF,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,iEAAiE;IACjE,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3B;AAYD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB;qBAM3C,YAAY;qBAEJ,mBAAmB,KAAG,OAAO,CAAC,oBAAoB,CAAC;EA2jBlF"}
@@ -1,3 +1,4 @@
1
+ import { isDeniedReadApproveAnswer } from '../../../contracts/conversation.js';
1
2
  import { appendFileSync } from 'node:fs';
2
3
  import { lstat } from 'node:fs/promises';
3
4
  import { randomUUID } from 'node:crypto';
@@ -5,6 +6,7 @@ import { z } from 'zod';
5
6
  import { SandboxedCodeHostImpl } from '../../../services/sandboxed-code-host/sandboxed-code-host.js';
6
7
  import { quoteShellArg } from '../../../services/ssh-service.js';
7
8
  import { applyApprovalGrant } from '../../../services/approval/approval-grant-executor.js';
9
+ import { isDockerHostControlShellApproval } from '../../../services/approval/shell-sandbox-approval.js';
8
10
  import { resolveOutsideWorkspaceEdit } from '../../../services/approval/approval-descriptor.js';
9
11
  import { normalizeToolParameters } from '../../../lib/tool-invoke.js';
10
12
  import { isZodToolParameterSchema } from '../../types.js';
@@ -49,7 +51,6 @@ const PROHIBITED_TOOL_NAMES = [
49
51
  'session_rollover',
50
52
  // The goal stop check must be a direct, top-level call so the stop guard sees it in history.
51
53
  TOOL_NAME_GOAL_CHECK,
52
- 'shell',
53
54
  'bash',
54
55
  'enter_worktree',
55
56
  'exit_worktree',
@@ -102,7 +103,7 @@ const parseActionPayload = (raw) => {
102
103
  const MAX_RECEIPT_REASON_CHARS = 280;
103
104
  export const clipReason = (reason) => reason.length <= MAX_RECEIPT_REASON_CHARS ? reason : `${reason.slice(0, MAX_RECEIPT_REASON_CHARS)}…`;
104
105
  export function isDirectlyCallable(tool) {
105
- return RUN_CODE_PROHIBITED_TOOLS.has(tool.name);
106
+ return tool.name === 'shell' || RUN_CODE_PROHIBITED_TOOLS.has(tool.name);
106
107
  }
107
108
  function createUnknownToolHints(allTools, directToolNames) {
108
109
  const names = new Set(allTools.map((tool) => tool.name));
@@ -718,6 +719,85 @@ export function createRunCodeRuntime(options) {
718
719
  lane: (prepared) => (prepared.parallelSafe ? 'default' : 'serial'),
719
720
  invoke: async (prepared, callContext) => {
720
721
  const callId = `${bridgeRunId}:${callContext.callId}`;
722
+ const nestedContext = withAbortSignal(input.context, mergeAbortSignals(callerSignal, callContext.signal), {
723
+ scripted: true,
724
+ });
725
+ const revalidateAuthority = async () => {
726
+ const currentRoot = options.getCwd();
727
+ const authority = await bindPreparedAuthority(prepared.tool.name, prepared.originalParams, currentRoot, options.executionContext);
728
+ return (authority.kind === 'bound' &&
729
+ currentRoot === prepared.authorityRoot &&
730
+ JSON.stringify(authority) === prepared.authorityMeaning);
731
+ };
732
+ const revalidate = async () => (await approvalRegistry.evaluate({
733
+ toolName: prepared.tool.name,
734
+ args: prepared.params,
735
+ context: input.context,
736
+ })).kind;
737
+ // The factory leaves scripted post-execute pauses to this owner, so
738
+ // approval waits participate in the worker clock and cancellation.
739
+ const executePrepared = async () => {
740
+ const details = { toolCall: { callId } };
741
+ const executeAgain = async () => {
742
+ if (nestedContext.signal?.aborted)
743
+ throw new Error('Tool execution was cancelled.');
744
+ return prepared.tool.execute(prepared.params, nestedContext, details);
745
+ };
746
+ const result = await executeAgain();
747
+ const pause = prepared.tool.postExecutePause;
748
+ const descriptor = pause?.describe(prepared.params, result, details);
749
+ if (!pause || !descriptor)
750
+ return result;
751
+ const context = { params: prepared.params, result, details, executeAgain };
752
+ const reject = () => (pause.resolve ? pause.resolve(context, 'reject') : result);
753
+ if (!options.nestedApprovalOwner)
754
+ return reject();
755
+ let postDecision = 'reject';
756
+ tools.onWaiting?.(callContext);
757
+ try {
758
+ const resolution = await options.nestedApprovalOwner.request({
759
+ requestId: `${callId}:post-execute`,
760
+ sessionId: sessionId ?? 'unknown',
761
+ graphIdentity: options.graphIdentity ?? options.registry,
762
+ outerRunId: bridgeRunId,
763
+ nestedCallId: callId,
764
+ toolName: prepared.tool.name,
765
+ preparedArguments: prepared.params,
766
+ authorityContext: input.context,
767
+ approval: {
768
+ agentName: 'Nested run_code',
769
+ ...descriptor,
770
+ rawInterruption: null,
771
+ callId,
772
+ workspaceRoot: prepared.authorityRoot,
773
+ },
774
+ signal: nestedContext.signal,
775
+ revalidateAuthority,
776
+ revalidate,
777
+ grant: ({ answer }) => {
778
+ if (descriptor.deniedRead && isDeniedReadApproveAnswer(answer))
779
+ postDecision = answer;
780
+ else if (!descriptor.deniedRead && answer === 'y')
781
+ postDecision = 'approve';
782
+ else
783
+ throw new Error('Tool execution was not approved.');
784
+ },
785
+ dispatch: async () => {
786
+ tools.onResumed?.(callContext);
787
+ return pause.resolve ? pause.resolve(context, postDecision) : executeAgain();
788
+ },
789
+ });
790
+ if (resolution.kind === 'approved')
791
+ return resolution.result;
792
+ await reject();
793
+ if (resolution.kind === 'failed')
794
+ throw resolution.error;
795
+ return result;
796
+ }
797
+ finally {
798
+ tools.onResumed?.(callContext);
799
+ }
800
+ };
721
801
  const decision = await approvalRegistry.evaluate({
722
802
  toolName: prepared.tool.name,
723
803
  args: prepared.params,
@@ -725,9 +805,6 @@ export function createRunCodeRuntime(options) {
725
805
  });
726
806
  if (decision.kind !== 'auto_approve') {
727
807
  if (decision.kind === 'prompt' && options.nestedApprovalOwner) {
728
- const nestedContext = withAbortSignal(input.context, mergeAbortSignals(callerSignal, callContext.signal), {
729
- scripted: true,
730
- });
731
808
  tools.onWaiting?.(callContext);
732
809
  try {
733
810
  const resolution = await options.nestedApprovalOwner.request({
@@ -746,21 +823,12 @@ export function createRunCodeRuntime(options) {
746
823
  rawInterruption: null,
747
824
  callId,
748
825
  workspaceRoot: prepared.authorityRoot,
826
+ dockerHostControl: isDockerHostControlShellApproval(prepared.tool.name, prepared.params, sessionId ?? 'unknown', options.sessionAccess, options.nestedCompatibility),
749
827
  outsideWorkspaceEdit: resolveOutsideWorkspaceEdit(prepared.tool.name, prepared.params, prepared.authorityRoot),
750
828
  },
751
829
  signal: nestedContext.signal,
752
- revalidateAuthority: async () => {
753
- const currentRoot = options.getCwd();
754
- const authority = await bindPreparedAuthority(prepared.tool.name, prepared.originalParams, currentRoot, options.executionContext);
755
- return (authority.kind === 'bound' &&
756
- currentRoot === prepared.authorityRoot &&
757
- JSON.stringify(authority) === prepared.authorityMeaning);
758
- },
759
- revalidate: async () => (await approvalRegistry.evaluate({
760
- toolName: prepared.tool.name,
761
- args: prepared.params,
762
- context: input.context,
763
- })).kind,
830
+ revalidateAuthority,
831
+ revalidate,
764
832
  grant: (nestedDecision) => {
765
833
  if (callContext.signal.aborted)
766
834
  throw new Error('Tool execution was not approved.');
@@ -778,7 +846,10 @@ export function createRunCodeRuntime(options) {
778
846
  if (!applied.isApproved)
779
847
  throw new Error('Tool execution was not approved.');
780
848
  },
781
- dispatch: async () => prepared.tool.execute(prepared.params, nestedContext, { toolCall: { callId } }),
849
+ dispatch: async () => {
850
+ tools.onResumed?.(callContext);
851
+ return executePrepared();
852
+ },
782
853
  });
783
854
  if (resolution.kind === 'approved')
784
855
  return settleResolved(prepared, resolution.result, callId);
@@ -812,7 +883,7 @@ export function createRunCodeRuntime(options) {
812
883
  return failed(message);
813
884
  }
814
885
  try {
815
- return settleResolved(prepared, await prepared.tool.execute(prepared.params, withAbortSignal(input.context, mergeAbortSignals(callerSignal, callContext.signal), { scripted: true }), { toolCall: { callId } }), callId);
886
+ return settleResolved(prepared, await executePrepared(), callId);
816
887
  }
817
888
  catch (error) {
818
889
  const message = error instanceof Error ? error.message : String(error);
@@ -1 +1 @@
1
- {"version":3,"file":"run-code-runtime.js","sourceRoot":"","sources":["../../../../source/tools/system/run-code/run-code-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,8DAA8D,CAAC;AAOrG,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAIjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uDAAuD,CAAC;AAC3F,OAAO,EAAE,2BAA2B,EAAE,MAAM,mDAAmD,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAA6C,MAAM,gBAAgB,CAAC;AACrG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACvH,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,8BAA8B,EAAE,MAAM,gEAAgE,CAAC;AAEhH,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,GAE3B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAA2B,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAKpE,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAC7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAE7C,8CAA8C;AAC9C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,QAAQ,EAAE,GAAG;IACb,cAAc,EAAE,CAAC;IACjB,yEAAyE;IACzE,yEAAyE;IACzE,cAAc,EAAE,EAAE;IAClB,mBAAmB,EAAE,CAAC;IACtB,aAAa,EAAE,GAAG;IAClB,cAAc,EAAE,OAAO;IACvB,aAAa,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;IAC9B,kBAAkB,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;IACpC,mBAAmB,EAAE,EAAE;IACvB,YAAY,EAAE,MAAM;IACpB,cAAc,EAAE,OAAO;IACvB,eAAe,EAAE,OAAO;CAChB,CAAC;AAEX;;;;GAIG;AACH,MAAM,qBAAqB,GAAkC;IAC3D,GAAG,8BAA8B;IACjC,kBAAkB;IAClB,YAAY;IACZ,kBAAkB;IAClB,6FAA6F;IAC7F,oBAAoB;IACpB,OAAO;IACP,MAAM;IACN,gBAAgB;IAChB,eAAe;CAChB,CAAC;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,yBAAyB,GAAwB,IAAI,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAE7F,gFAAgF;AAChF,MAAM,CAAC,MAAM,gBAAgB,GAAyF;IACpH,uBAAuB,EAAE,CAAC,GAAG,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,SAAS;YACrD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC;QAC5E,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI;YAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QACtD,OAAO;YACL,OAAO,EAAE,aAAa;YACtB,MAAM,EAAE,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B;SACrG,CAAC;IACJ,CAAC;IACD,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;QAClB,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,SAAS;YACrD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC;QAC5E,IACE,MAAM,CAAC,EAAE,KAAK,IAAI;YAClB,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;YAChC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YACvB,MAAM,CAAC,MAAM,KAAK,YAAY,EAC9B,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,wEAAwE,EAAE,CAAC;QAClH,CAAC;QACD,IACE,MAAM,CAAC,EAAE,KAAK,KAAK;YACnB,MAAM,CAAC,IAAI,KAAK,YAAY;YAC5B,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EACxB,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,uBAAuB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;QACrF,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC;IAC5E,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;AAE5F,MAAM,kBAAkB,GAAG,CAAC,GAAY,EAAW,EAAE;IACnD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,GAAG,CAAC;AACrC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAc,EAAU,EAAE,CACnD,MAAM,CAAC,MAAM,IAAI,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,wBAAwB,CAAC,GAAG,CAAC;AAEvG,MAAM,UAAU,kBAAkB,CAAC,IAAqC;IACtE,OAAO,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAsB,EACtB,eAAkC;IAElC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAA2B,CAAC;IAC5D,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,IAAI,KAAK,kBAAkB,IAAI,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC;YACpE,KAAK,CAAC,IAAI,CAAC,GAAG,0DAA0D,CAAC;IAC7E,CAAC;IACD,IAAI,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QAC7B,KAAK,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,EAAE,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,+DAA+D,CAAC;QACtG,CAAC;IACH,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;QAC3F,KAAK,CAAC,WAAW,GAAG,iCAAiC,CAAC,aAAa,EAAE,gBAAgB,CAAC;aACnF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACjC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY,EAAE,QAAsB,EAAE,KAAuC;IACvG,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,iBAAiB,IAAI,iBAAiB,SAAS,IAAI,IAAI,EAAE,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAuB;IAClD,IAAI,UAAqB,CAAC;IAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC;IACjE,IAAI,wBAAwB,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,IAAI,CAAC;YACH,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAc,CAAC;QAC1E,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;SAAM,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC5D,UAAU,GAAG,YAAyB,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IACD,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU;QACV,sBAAsB,EAAE,gCAAgC,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QACzF,GAAG,CAAC,OAAO,IAAI,CAAC,mBAAmB,KAAK,QAAQ,IAAI,IAAI,CAAC,mBAAmB;YAC1E,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE;YACnD,CAAC,CAAC,EAAE,CAAC;KACK,CAAC;AACjB,CAAC;AAED,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AAOnH,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAA+B,EAAE,CACzE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC;AAElH,MAAM,UAAU,GAAG,CAAC,KAAyB,EAAU,EAAE;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACtG,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,UAAU,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,iBAAiB,CAAC;IAClC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,oCAAoC,CAAC;AAEjE,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAA2B,EAAE,CACnE,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,mBAAmB,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AAEvG,MAAM,UAAU,yBAAyB;IACvC,MAAM,WAAW,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAyB,CAAC;IACrD,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,OAAO,GAAG,CAAC,KAAc,EAAW,EAAE;QAC1C,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,QAAQ,KAAK,SAAS;gBAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC;YAC9G,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;YAC/B,IACE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACtB,IAAI,GAAG,eAAe,CAAC,aAAa;gBACpC,WAAW,CAAC,IAAI,IAAI,eAAe,CAAC,mBAAmB;gBACvD,UAAU,GAAG,IAAI,GAAG,eAAe,CAAC,kBAAkB,EACtD,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACzB,OAAO,kDAAkD,eAAe,CAAC,aAAa,sBAAsB,eAAe,CAAC,kBAAkB,sBAAsB,CAAC;YACvK,CAAC;YACD,MAAM,KAAK,GAAG,kBAAkB,UAAU,EAAE,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC1B,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC9B,UAAU,IAAI,IAAI,CAAC;YACnB,OAAO,EAAE,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAA2B,CAAC;QACnE,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnH,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,KAAc,EAAW,EAAE;QAC1C,IAAI,gBAAgB,CAAC,KAAK,CAAC;YAAE,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,IAAI,KAAK,CAAC;QACzF,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnH,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAE,SAAS,GAAG,IAAI,GAAG,EAAU,EAAW,EAAE;IACtF,IAAI,kBAAkB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5D,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC/D,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IACjF,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE;IACvD,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAClC,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO,GAAG,MAAM,iCAAiC,KAAK,cAAc,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAAe,EACf,KAAa,EACb,QAAgB,EAChB,cAAsB,EAGtB,EAAE;IACF,MAAM,SAAS,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,SAAS,IAAI,MAAM,YAAY,MAAM;QAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACnE,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxC,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QACjE,IAAI,SAA6D,CAAC;QAClE,IAAI,CAAC;YACH,SAAS,GAAG,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;QACxG,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,EAAE,CAAC;IACrG,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC7D,IAAI,OAAO,CAAC,MAAM,IAAI,KAAK;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAmB,EAAE,CAAC;QAC9E,IAAI,oBAAoB,CAAC,MAAM,CAAC;YAC9B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,qCAAqC,KAAK,qCAAqC,EAAE,CAAC;QAC/G,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC,CAAC;YAC5F,SAAS,GAAG,yBAAyB,YAAY,IAAI,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,qEAAqE,CAAC;QACpF,CAAC;QACD,MAAM,QAAQ,GAAG,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACzD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,SAAS,QAAQ,qBAAqB,KAAK,qDAAqD,SAAS,GAAG,cAAc,gBAAgB,QAAQ,kFAAkF;SAC5O,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/D,CAAC;AACH,CAAC,CAAC;AAEF,SAAS,wBAAwB,CAAC,OAAgB;IAChD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,UAAU,GAAI,OAAiC,CAAC,OAAO,CAAC;IAC9D,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACpE,MAAM,SAAS,GAAI,UAAsC,CAAC,SAAS,CAAC;IACpE,OAAO,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AACvF,CAAC;AAED,SAAS,qBAAqB,CAC5B,IAAY,EACZ,SAA6B,EAC7B,OAAqD;IAErD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAClD,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;QAAE,OAAO;IACnC,IAAI,CAAC;QACH,cAAc,CACZ,OAAO,EACP,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EACxF,MAAM,CACP,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,4DAA4D;IAC9D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,WAAW;IACX,aAAa;IACb,gBAAgB;IAChB,aAAa;IACb,MAAM;IACN,MAAM;IACN,mBAAmB;IACnB,qBAAqB;CACtB,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgB,EAChB,MAAe,EACf,GAAW,EACX,gBAAmC;IAEnC,MAAM,QAAQ,GAAG,gBAAgB,EAAE,QAAQ,EAAE,IAAI,KAAK,CAAC;IACvD,IAAI,CAAC;QACH,0EAA0E;QAC1E,qEAAqE;QACrE,6DAA6D;QAC7D,IAAI,QAAQ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;QAC/F,MAAM,UAAU,GAAG,gBAAgB,EAAE,aAAa,EAAE,CAAC;QACrD,IAAI,QAAQ,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACzF,MAAM,oBAAoB,GAAG,QAAQ;YACnC,CAAC,CAAC,CAAC,KAAa,EAAE,SAAyB,EAAE,EAAE,CAAC,yBAAyB,CAAC,KAAK,EAAE,GAAG,EAAE,UAAW,EAAE,SAAS,CAAC;YAC7G,CAAC,CAAC,CAAC,KAAa,EAAE,SAAyB,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAC7F,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACrD,OAAO;YACL,IAAI,EAAE,OAAO;YACb,YAAY;YACZ,MAAM,EAAE,MAAM,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,oBAAoB,CAAC;SAC5E,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,6CAA6C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;SAC/G,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,KAAa,EAAE,GAAW,EAAE,SAAS,GAAkB,UAAU;IAClG,MAAM,YAAY,GAAG,MAAM,8BAA8B,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtE,IAAI,YAAY,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC;IAC7E,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,oBAAoB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;QACtF,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,KAAK,CAAC,cAAc,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,EAAE,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,yBAAyB,CACtC,KAAa,EACb,GAAW,EACX,UAAuB,EACvB,SAAS,GAAkB,UAAU;IAErC,MAAM,WAAW,GAAG,oBAAoB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;IACtF,MAAM,WAAW,GAAG,SAAS,KAAK,eAAe,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC,EAAE,CAAC;IACrG,MAAM,OAAO,GAAG;QACd,YAAY,aAAa,CAAC,WAAW,CAAC,EAAE;QACxC,qBAAqB;QACrB,WAAW;QACX,WAAW,CAAC,OAAO,EAAE;QACrB,wEAAwE;QACxE,2EAA2E;QAC3E,yBAAyB;QACzB,qGAAqG;QACrG,gBAAgB;QAChB,wDAAwD;QACxD,+BAA+B;QAC/B,iDAAiD;QACjD,UAAU;QACV,wEAAwE;QACxE,yEAAyE;QACzE,mBAAmB;QACnB,mGAAmG;QACnG,2CAA2C;QAC3C,QAAQ;QACR,UAAU;QACV,MAAM;QACN,4CAA4C;QAC5C,4EAA4E;QAC5E,sEAAsE;QACtE,kBAAkB;QAClB,4CAA4C;QAC5C,0BAA0B;QAC1B,0CAA0C;QAC1C,qDAAqD;QACrD,qCAAqC;QACrC,qBAAqB;QACrB,MAAM;KACP;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,EAAE,CAAC,CAAC;IAC9F,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC;IACzE,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,KAAK,EAAE,CAAC,CAAC;IAC5G,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,KAAK,EAAE,CAAC,CAAC;IAC5G,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,0CAA0C,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IACxD,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,KAAK,EAAE,CAAC,CAAC;IACtG,OAAO,YAAY,CAAC;AACtB,CAAC;AAID,KAAK,UAAU,qBAAqB,CAClC,QAAgB,EAChB,MAAe,EACf,gBAAqC;IAErC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,MAAM,CAAC;IAC/G,MAAM,MAAM,GAAG,MAAiC,CAAC;IACjD,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAc,EAAE,SAAS,GAAkB,UAAU,EAAoB,EAAE,CACjG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzE,IAAI,QAAQ,KAAK,aAAa,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;QAChE,OAAO,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC5E,OAAO,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AACtF,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,KAAa,EACb,QAAwE;IAExE,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QACtD,MAAM,MAAM,GAAG,QAAQ,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,MAAM,SAAS,GAAkB,SAAS,CAAC,IAAI,KAAK,aAAa,IAAI,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;QAC3G,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAmB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtH,CAAC,CAAC,CAAC;IACH,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAC/F,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5D,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAgB,EAAE,MAAmB,EAAE,KAAK,GAA4B,EAAE;IACxG,OAAO,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAC3C,CAAC,CAAC,EAAE,GAAI,OAAmC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE;QAC/D,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,YAAqC,EAAE,UAAuB;IAC9F,IAAI,CAAC,YAAY,IAAI,YAAY,KAAK,UAAU;QAAE,OAAO,YAAY,IAAI,UAAU,CAAC;IACpF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,YAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC/C,UAAU,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,CAAC;IACF,IAAI,YAAY,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QAC/C,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,UAAU,CAAC,MAAM,CAAC;IAC3B,CAAC;IACD,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,OAAO,UAAU,CAAC,MAAM,CAAC;AAC3B,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAAuB,EAAE,MAAe,EAAE,OAAgB;IACtF,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC;IACnC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC/D,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC;QACH,OAAO,CAAC,MAAO,QAAoE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC;IACjH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AACD,OAAO,EACL,sBAAsB,GAIvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAEzE,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE;IAC9B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,OAAO,GAAG,EAAE,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;AAC3C,CAAC,CAAC,EAAE,CAAC;AA8CL;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAA8B;IACjE,0EAA0E;IAC1E,qEAAqE;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9F,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IAEjG,MAAM,SAAS,GAAG,GAAiB,EAAE,CAAC,QAAQ,CAAC;IAE/C,MAAM,OAAO,GAAG,KAAK,EAAE,KAA0B,EAAiC,EAAE;QAClF,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;QACnC,MAAM,gBAAgB,GAAG,OAAO,CAAC,sBAAsB,CAAC;QACxD,2EAA2E;QAC3E,wEAAwE;QACxE,0EAA0E;QAC1E,IAAI,OAAO,CAAC,mBAAmB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACzD,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,YAAY,GAAI,KAAK,CAAC,OAA6C,EAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;QAClG,MAAM,WAAW,GAAG,iBAAiB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAwB,EAAE,CAAC;QACtC,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QACzC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACnD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9C,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,aAAa,GAAkB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,yBAAyB,EAAE,CAAC;QACpD,8EAA8E;QAC9E,qEAAqE;QACrE,sEAAsE;QACtE,IAAI,mBAAuC,CAAC;QAE5C,MAAM,MAAM,GAAG,CACb,IAAY,EACZ,OAAqC,EACrC,OAAe,EACf,gBAA0B,EAC1B,MAAe,EACf,UAAkC,EAClC,MAAe,EACf,QAAwC,EACxC,EAAE;YACF,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI;gBACJ,OAAO;gBACP,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;gBAChC,gBAAgB;gBAChB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClC,CAAC,CAAC;YACH,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;gBAC3B,qBAAqB,CACnB,IAAI,EACJ,SAAS,EACT,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,mBAAmB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAClG,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,OAAe,EAAqB,EAAE,CAAC,CAAC;YACtD,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAe;SACnD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,IAAY,EAAE,OAA6B,EAAE,MAAe,EAAQ,EAAE;YAC3G,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO;YACvC,MAAM,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3F,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,QAAQ,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;gBAC/B,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;;gBAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC;QACF,MAAM,eAAe,GAAG,CACtB,MAAc,EACd,OAAe,EACf,MAAc,EACd,OAAqC,EACrC,MAAe,EACT,EAAE;YACR,IAAI,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO;YACrE,IAAI,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;gBACrB,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACpC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;gBACnF,IAAI,MAAM,KAAK,OAAO;oBAAE,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;YAC1E,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,GAAG;gBACb,IAAI,EAAE,SAAS,MAAM,EAAE;gBACvB,OAAO;gBACP,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;gBAChC,MAAM;gBACN,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClD,CAAC;YACF,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;gBACvB,MAAM,aAAa,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;gBAChG,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,KAAK,GAAoC;YAC7C,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;gBACjF,kBAAkB,EAAE,gBAAgB;aACrC;YACD,MAAM,EAAE;gBACN,QAAQ,EAAE,eAAe,CAAC,QAAQ;gBAClC,cAAc,EAAE,eAAe,CAAC,cAAc;gBAC9C,oBAAoB,EAAE,4BAA4B,eAAe,CAAC,QAAQ,yBAAyB;aACpG;YACD,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE;gBAChD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;gBAC7F,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,WAAW,IAAI,CAAC,CAAC;oBACjB,aAAa,CACX,GAAG,WAAW,aAAa,WAAW,EAAE,EACxC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,SAAS,EACT,uCAAuC,CACxC,CAAC;gBACJ,CAAC;gBACD,OAAO,MAAM,CACX,4BAA4B,QAAQ,0BAA0B,SAAS,oBAAoB,IAAI,CAAC,GAAG,CACjG,CAAC,EACD,QAAQ,GAAG,SAAS,CACrB,wJAAwJ,CAC1J,CAAC;YACJ,CAAC;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;gBAChC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,OAAO;gBAC9C,MAAM,MAAM,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClD,sBAAsB,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACpD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;gBACvC,MAAM,MAAM,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClD,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC3E,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YACrG,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBACnE,IAAI,IAAI,KAAK,kBAAkB,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACtE,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;oBAClF,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;wBACrC,OAAO,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;oBAChF,CAAC;oBACD,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;oBAClC,MAAM,cAAc,GAAG,mBAAmB,CAAC,SAAS,CAAC;wBACnD,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;wBAC9C,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;oBAC5B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAe,EAAE,CAAC;gBACvF,CAAC;gBACD,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,IAAI,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;oBAC3F,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;wBACvB,WAAW,IAAI,CAAC,CAAC;wBACjB,aAAa,CAAC,GAAG,WAAW,aAAa,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,IAAI,GAAG,CAAC,CAAC;oBACpG,CAAC;oBACD,OAAO,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;gBACtE,CAAC;gBACD,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC;gBACjE,IAAI,UAAU,GAAY,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;gBAC/C,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;oBACxG,IAAI,eAAe,EAAE,CAAC;wBACpB,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;wBACtF,OAAO,MAAM,CAAC,2BAA2B,IAAI,MAAM,eAAe,EAAE,CAAC,CAAC;oBACxE,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC;oBACH,UAAU,GAAG,uBAAuB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;gBACjE,CAAC;gBAAC,MAAM,CAAC;oBACP,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;gBACpC,CAAC;gBACD,IAAI,wBAAwB,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC3C,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBAClD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;wBACtF,MAAM,MAAM,GACV,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;4BACvG,oBAAoB,CAAC;wBACvB,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;4BACvB,WAAW,IAAI,CAAC,CAAC;4BACjB,aAAa,CAAC,GAAG,WAAW,aAAa,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,uBAAuB,MAAM,EAAE,CAAC,CAAC;wBAC3G,CAAC;wBACD,OAAO,MAAM,CAAC,2BAA2B,IAAI,MAAM,MAAM,gBAAgB,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC3G,CAAC;oBACD,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;gBAC3B,CAAC;gBACD,qEAAqE;gBACrE,0EAA0E;gBAC1E,IAAI,IAAI,KAAK,qBAAqB,IAAI,OAAQ,UAAkC,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACrG,IAAI,CAAC;wBACH,uBAAuB,CAAE,UAAgC,CAAC,KAAK,CAAC,CAAC;oBACnE,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACvE,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;wBACtF,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;4BACvB,WAAW,IAAI,CAAC,CAAC;4BACjB,aAAa,CAAC,GAAG,WAAW,aAAa,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,uBAAuB,OAAO,EAAE,CAAC,CAAC;wBAC5G,CAAC;wBACD,OAAO,MAAM,CAAC,2BAA2B,IAAI,MAAM,OAAO,EAAE,CAAC,CAAC;oBAChE,CAAC;gBACH,CAAC;gBACD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;gBACzG,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;oBACrE,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;wBACvB,WAAW,IAAI,CAAC,CAAC;wBACjB,aAAa,CAAC,GAAG,WAAW,aAAa,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;oBAClG,CAAC;oBACD,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBACnC,CAAC;gBACD,OAAO;oBACL,IAAI;oBACJ,MAAM,EAAE,SAAS,CAAC,MAAM;oBACxB,cAAc,EAAE,UAAU;oBAC1B,aAAa;oBACb,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;oBAC3C,YAAY,EAAE,MAAM,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;oBACnE,OAAO;iBACe,CAAC;YAC3B,CAAC;YACD,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;YAClE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAA8B,EAAE;gBAClE,MAAM,MAAM,GAAG,GAAG,WAAW,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;gBACtD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC;oBAC/C,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;oBAC5B,IAAI,EAAE,QAAQ,CAAC,MAAM;oBACrB,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;gBACH,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;oBACrC,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;wBAC9D,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE;4BACxG,QAAQ,EAAE,IAAI;yBACf,CAA0B,CAAC;wBAC5B,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;wBAC/B,IAAI,CAAC;4BACH,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC;gCAC3D,SAAS,EAAE,MAAM;gCACjB,SAAS,EAAE,SAAS,IAAI,SAAS;gCACjC,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,QAAQ;gCACxD,UAAU,EAAE,WAAW;gCACvB,YAAY,EAAE,MAAM;gCACpB,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;gCAC5B,iBAAiB,EAAE,QAAQ,CAAC,MAAM;gCAClC,gBAAgB,EAAE,KAAK,CAAC,OAAO;gCAC/B,QAAQ,EAAE;oCACR,SAAS,EAAE,iBAAiB;oCAC5B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;oCAC5B,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;oCAC9C,eAAe,EAAE,IAAI;oCACrB,MAAM;oCACN,aAAa,EAAE,QAAQ,CAAC,aAAa;oCACrC,oBAAoB,EAAE,2BAA2B,CAC/C,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,aAAa,CACvB;iCACF;gCACD,MAAM,EAAE,aAAa,CAAC,MAAqB;gCAC3C,mBAAmB,EAAE,KAAK,IAAI,EAAE;oCAC9B,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;oCACrC,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAC3C,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,QAAQ,CAAC,cAAc,EACvB,WAAW,EACX,OAAO,CAAC,gBAAgB,CACzB,CAAC;oCACF,OAAO,CACL,SAAS,CAAC,IAAI,KAAK,OAAO;wCAC1B,WAAW,KAAK,QAAQ,CAAC,aAAa;wCACtC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,gBAAgB,CACxD,CAAC;gCACJ,CAAC;gCACD,UAAU,EAAE,KAAK,IAAI,EAAE,CACrB,CACE,MAAM,gBAAgB,CAAC,QAAQ,CAAC;oCAC9B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;oCAC5B,IAAI,EAAE,QAAQ,CAAC,MAAM;oCACrB,OAAO,EAAE,KAAK,CAAC,OAAO;iCACvB,CAAC,CACH,CAAC,IAAI;gCACR,KAAK,EAAE,CAAC,cAAc,EAAE,EAAE;oCACxB,IAAI,WAAW,CAAC,MAAM,CAAC,OAAO;wCAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;oCACpF,MAAM,OAAO,GAAG,kBAAkB,CAChC;wCACE,SAAS,EAAE,SAAS,IAAI,SAAS;wCACjC,aAAa,EAAE,OAAO,CAAC,aAAa;wCACpC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;wCAChD,MAAM,EAAE,cAAc;qCACvB,EACD;wCACE,MAAM,EAAE,cAAc,CAAC,MAAM;wCAC7B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;wCAC5B,YAAY,EAAE,QAAQ,CAAC,MAAM;wCAC7B,MAAM;qCACP,CACF,CAAC;oCACF,IAAI,CAAC,OAAO,CAAC,UAAU;wCAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gCAC/E,CAAC;gCACD,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;6BACtG,CAAC,CAAC;4BACH,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU;gCAAE,OAAO,cAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;4BAC/F,MAAM,OAAO,GAAG,SAAS,IAAI,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;4BACxF,MAAM,CACJ,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,mBAAmB,EACnB,QAAQ,CAAC,OAAO,EAChB,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,EACjC,MAAM,CACP,CAAC;4BACF,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gCAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;4BACxG,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;wBACzB,CAAC;gCAAS,CAAC;4BACT,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;wBACjC,CAAC;oBACH,CAAC;oBACD,MAAM,OAAO,GACX,QAAQ,CAAC,IAAI,KAAK,SAAS;wBACzB,CAAC,CAAC,gBAAgB;wBAClB,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO;4BAC3B,CAAC,CAAC,cAAc;4BAChB,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,oBAAoB;gCACxC,CAAC,CAAC,oBAAoB;gCACtB,CAAC,CAAC,mBAAmB,CAAC;oBAC1B,MAAM,CACJ,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,OAAO,EACP,QAAQ,CAAC,OAAO,EAChB,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,EACjC,MAAM,EACN,SAAS,EACT,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CACzD,CAAC;oBACF,MAAM,OAAO,GACX,QAAQ,CAAC,IAAI,KAAK,SAAS;wBACzB,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,8EAA8E;wBACtG,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,oBAAoB;4BACxC,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,mFAAmF;4BAC3G,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO;gCAC3B,CAAC,CAAC,IACE,QAAQ,CAAC,IAAI,CAAC,IAChB,8DAA8D,QAAQ,CAAC,OAAO,CAAC,OAAO,CACpF,SAAS,EACT,EAAE,CACH,kEAAkE;gCACrE,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,8DAA8D,CAAC;oBAC3F,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;wBAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACxG,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;gBACD,IAAI,CAAC;oBACH,OAAO,cAAc,CACnB,QAAQ,EACR,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CACzB,QAAQ,CAAC,MAAM,EACf,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EACvG,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,CACzB,EACD,MAAM,CACP,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACvE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;oBACzG,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;wBAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACnG,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;SACF,CAAC;QAEF,MAAM,YAAY,GAA2C,EAAE,KAAK,EAAE,CAAC;QACvE,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,kBAAkB,IAAI,0BAA0B,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACzG,YAAY,CAAC,KAAK,GAAG,4BAA4B,CAC/C;gBACE,GAAG,OAAO,CAAC,WAAW;gBACtB,SAAS,EAAE,OAAO,CAAC,kBAAkB;gBACrC,MAAM,EAAE,cAAc;gBACtB,oEAAoE;gBACpE,2DAA2D;gBAC3D,GAAG,CAAC,OAAO,CAAC,mBAAmB;oBAC7B,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE;oBAChG,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1E,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5F,cAAc,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;gBAChG,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC1D,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM;wBAAE,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACrE,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC5D,CAAC;aACF,EACD,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CACxC,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,KAAK,EAAE,QAAsB,EAAE,GAAY,EAAE,MAAc,EAA8B,EAAE;YAChH,IAAI,CAAC;gBACH,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC3D,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC/E,CAAC;gBACD,MAAM,UAAU,GAAG,MAAM,eAAe,CACtC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,EAC5B,eAAe,CAAC,cAAc,EAC9B,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAC/D,CAAC;gBACF,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;oBACnB,MAAM,CACJ,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,OAAO,EACP,QAAQ,CAAC,OAAO,EAChB,SAAS,EACT,MAAM,EACN,uBAAuB,EACvB,UAAU,CAAC,KAAK,CACjB,CAAC;oBACF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAuB,EAAE,CAAC;gBAC7D,CAAC;gBACD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;gBAC1E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC;oBAChG,OAAO;wBACL,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,gBAAgB;wBACtB,MAAM,EAAE,qBAAqB;wBAC7B,OAAO,EAAE,SAAS,QAAQ,CAAC,IAAI,CAAC,IAAI,kEAAkE,QAAQ,CAAC,OAAO,EAAE;qBACzH,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChC,+EAA+E;oBAC/E,wEAAwE;oBACxE,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAc,EAAE,CAAC;oBAC5G,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBACxG,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAe,EAAE,CAAC;YACvF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC;gBAChG,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnG,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACH,CAAC,CAAC;QAEF,cAAc,CAAC,KAAK,CAAC,4BAA4B,EAAE;YACjD,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE;YACrB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,YAAY,EAAE,QAAQ,CAAC,MAAM;YAC7B,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,qBAAqB,EAAE,CAAC,GAAG,CAAC;YACnD,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,MAAM;YACvB,YAAY;YACZ,MAAM,EAAE;gBACN,SAAS,EAAE,KAAK,CAAC,OAAO;gBACxB,YAAY,EAAE,eAAe,CAAC,YAAY;gBAC1C,cAAc,EAAE,eAAe,CAAC,cAAc;gBAC9C,eAAe,EAAE,eAAe,CAAC,eAAe;aACjD;YACD,OAAO,EAAE,QAAQ;YACjB,eAAe,EAAE,IAAI;YACrB,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;gBACpB,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5G,CAAC;SACF,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,sBAAsB,EAAE,CAAC;YACrD,QAAQ,CAAC,KAAK,CAAC,GAAG;gBAChB,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAClB,OAAO,EAAE,SAAS;gBAClB,MAAM,EAAE,4CAA4C;aACrD,CAAC;YACF,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,cAAc,GAClB,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;YAC7B,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAc,EAAE;YAC5E,CAAC,CAAC,MAAM,CAAC;QACb,MAAM,WAAW,GAAwB,EAAE,CAAC;QAC5C,MAAM,SAAS,GAAG,sBAAsB,CACtC,cAAc,EACd,KAAK,EACL,QAAQ,EACR,aAAa,EACb,WAAW,EACX,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CACjD,CAAC;QACF,8BAA8B,CAAC,cAAc,EAAE;YAC7C,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS;YACT,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAClC,SAAS,EAAE,KAAK,CAAC,OAAO;YACxB,SAAS;YACT,KAAK,EAAE,WAAW;YAClB,KAAK;YACL,QAAQ;SACT,CAAC,CAAC;QACH,cAAc,CAAC,KAAK,CAAC,6BAA6B,EAAE;YAClD,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,MAAM;YACrE,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,MAAM;SAC1E,CAAC,CAAC;QACH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAC/B,CAAC,CAAC;IAEF,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"run-code-runtime.js","sourceRoot":"","sources":["../../../../source/tools/system/run-code/run-code-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAA4B,MAAM,oCAAoC,CAAC;AACzG,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,8DAA8D,CAAC;AAOrG,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAIjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uDAAuD,CAAC;AAC3F,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AACxG,OAAO,EAAE,2BAA2B,EAAE,MAAM,mDAAmD,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAA6C,MAAM,gBAAgB,CAAC;AACrG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACvH,OAAO,EACL,yBAAyB,EACzB,gCAAgC,EAChC,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,8BAA8B,EAAE,MAAM,gEAAgE,CAAC;AAEhH,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,GAE3B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAA2B,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAKpE,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAC7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAE7C,8CAA8C;AAC9C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,QAAQ,EAAE,GAAG;IACb,cAAc,EAAE,CAAC;IACjB,yEAAyE;IACzE,yEAAyE;IACzE,cAAc,EAAE,EAAE;IAClB,mBAAmB,EAAE,CAAC;IACtB,aAAa,EAAE,GAAG;IAClB,cAAc,EAAE,OAAO;IACvB,aAAa,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;IAC9B,kBAAkB,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;IACpC,mBAAmB,EAAE,EAAE;IACvB,YAAY,EAAE,MAAM;IACpB,cAAc,EAAE,OAAO;IACvB,eAAe,EAAE,OAAO;CAChB,CAAC;AAEX;;;;GAIG;AACH,MAAM,qBAAqB,GAAkC;IAC3D,GAAG,8BAA8B;IACjC,kBAAkB;IAClB,YAAY;IACZ,kBAAkB;IAClB,6FAA6F;IAC7F,oBAAoB;IACpB,MAAM;IACN,gBAAgB;IAChB,eAAe;CAChB,CAAC;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,yBAAyB,GAAwB,IAAI,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAE7F,gFAAgF;AAChF,MAAM,CAAC,MAAM,gBAAgB,GAAyF;IACpH,uBAAuB,EAAE,CAAC,GAAG,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,SAAS;YACrD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC;QAC5E,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI;YAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QACtD,OAAO;YACL,OAAO,EAAE,aAAa;YACtB,MAAM,EAAE,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B;SACrG,CAAC;IACJ,CAAC;IACD,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;QAClB,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,SAAS;YACrD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC;QAC5E,IACE,MAAM,CAAC,EAAE,KAAK,IAAI;YAClB,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;YAChC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YACvB,MAAM,CAAC,MAAM,KAAK,YAAY,EAC9B,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,wEAAwE,EAAE,CAAC;QAClH,CAAC;QACD,IACE,MAAM,CAAC,EAAE,KAAK,KAAK;YACnB,MAAM,CAAC,IAAI,KAAK,YAAY;YAC5B,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EACxB,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,uBAAuB,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;QACrF,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC;IAC5E,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;AAE5F,MAAM,kBAAkB,GAAG,CAAC,GAAY,EAAW,EAAE;IACnD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,GAAG,CAAC;AACrC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAc,EAAU,EAAE,CACnD,MAAM,CAAC,MAAM,IAAI,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,wBAAwB,CAAC,GAAG,CAAC;AAEvG,MAAM,UAAU,kBAAkB,CAAC,IAAqC;IACtE,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAsB,EACtB,eAAkC;IAElC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAA2B,CAAC;IAC5D,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,IAAI,KAAK,kBAAkB,IAAI,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC;YACpE,KAAK,CAAC,IAAI,CAAC,GAAG,0DAA0D,CAAC;IAC7E,CAAC;IACD,IAAI,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QAC7B,KAAK,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,EAAE,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,+DAA+D,CAAC;QACtG,CAAC;IACH,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC;QAC3F,KAAK,CAAC,WAAW,GAAG,iCAAiC,CAAC,aAAa,EAAE,gBAAgB,CAAC;aACnF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACjC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY,EAAE,QAAsB,EAAE,KAAuC;IACvG,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,iBAAiB,IAAI,iBAAiB,SAAS,IAAI,IAAI,EAAE,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAuB;IAClD,IAAI,UAAqB,CAAC;IAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC;IACjE,IAAI,wBAAwB,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,IAAI,CAAC;YACH,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAc,CAAC;QAC1E,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;SAAM,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC5D,UAAU,GAAG,YAAyB,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IACD,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU;QACV,sBAAsB,EAAE,gCAAgC,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QACzF,GAAG,CAAC,OAAO,IAAI,CAAC,mBAAmB,KAAK,QAAQ,IAAI,IAAI,CAAC,mBAAmB;YAC1E,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE;YACnD,CAAC,CAAC,EAAE,CAAC;KACK,CAAC;AACjB,CAAC;AAED,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AAOnH,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAA+B,EAAE,CACzE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC;AAElH,MAAM,UAAU,GAAG,CAAC,KAAyB,EAAU,EAAE;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACtG,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,UAAU,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,iBAAiB,CAAC;IAClC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,oCAAoC,CAAC;AAEjE,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAA2B,EAAE,CACnE,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,mBAAmB,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AAEvG,MAAM,UAAU,yBAAyB;IACvC,MAAM,WAAW,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAyB,CAAC;IACrD,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,OAAO,GAAG,CAAC,KAAc,EAAW,EAAE;QAC1C,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,QAAQ,KAAK,SAAS;gBAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC;YAC9G,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;YAC/B,IACE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACtB,IAAI,GAAG,eAAe,CAAC,aAAa;gBACpC,WAAW,CAAC,IAAI,IAAI,eAAe,CAAC,mBAAmB;gBACvD,UAAU,GAAG,IAAI,GAAG,eAAe,CAAC,kBAAkB,EACtD,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACzB,OAAO,kDAAkD,eAAe,CAAC,aAAa,sBAAsB,eAAe,CAAC,kBAAkB,sBAAsB,CAAC;YACvK,CAAC;YACD,MAAM,KAAK,GAAG,kBAAkB,UAAU,EAAE,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC1B,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC9B,UAAU,IAAI,IAAI,CAAC;YACnB,OAAO,EAAE,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAA2B,CAAC;QACnE,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnH,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,KAAc,EAAW,EAAE;QAC1C,IAAI,gBAAgB,CAAC,KAAK,CAAC;YAAE,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,IAAI,KAAK,CAAC;QACzF,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnH,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAE,SAAS,GAAG,IAAI,GAAG,EAAU,EAAW,EAAE;IACtF,IAAI,kBAAkB,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5D,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC/D,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IACjF,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE;IACvD,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAClC,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO,GAAG,MAAM,iCAAiC,KAAK,cAAc,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAAe,EACf,KAAa,EACb,QAAgB,EAChB,cAAsB,EAGtB,EAAE;IACF,MAAM,SAAS,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,SAAS,IAAI,MAAM,YAAY,MAAM;QAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACnE,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxC,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QACjE,IAAI,SAA6D,CAAC;QAClE,IAAI,CAAC;YACH,SAAS,GAAG,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;QACxG,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,EAAE,CAAC;IACrG,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAC7D,IAAI,OAAO,CAAC,MAAM,IAAI,KAAK;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAmB,EAAE,CAAC;QAC9E,IAAI,oBAAoB,CAAC,MAAM,CAAC;YAC9B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,qCAAqC,KAAK,qCAAqC,EAAE,CAAC;QAC/G,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC,CAAC;YAC5F,SAAS,GAAG,yBAAyB,YAAY,IAAI,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,qEAAqE,CAAC;QACpF,CAAC;QACD,MAAM,QAAQ,GAAG,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QACzD,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,SAAS,QAAQ,qBAAqB,KAAK,qDAAqD,SAAS,GAAG,cAAc,gBAAgB,QAAQ,kFAAkF;SAC5O,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/D,CAAC;AACH,CAAC,CAAC;AAEF,SAAS,wBAAwB,CAAC,OAAgB;IAChD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,UAAU,GAAI,OAAiC,CAAC,OAAO,CAAC;IAC9D,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACpE,MAAM,SAAS,GAAI,UAAsC,CAAC,SAAS,CAAC;IACpE,OAAO,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AACvF,CAAC;AAED,SAAS,qBAAqB,CAC5B,IAAY,EACZ,SAA6B,EAC7B,OAAqD;IAErD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAClD,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;QAAE,OAAO;IACnC,IAAI,CAAC;QACH,cAAc,CACZ,OAAO,EACP,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EACxF,MAAM,CACP,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,4DAA4D;IAC9D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,WAAW;IACX,aAAa;IACb,gBAAgB;IAChB,aAAa;IACb,MAAM;IACN,MAAM;IACN,mBAAmB;IACnB,qBAAqB;CACtB,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgB,EAChB,MAAe,EACf,GAAW,EACX,gBAAmC;IAEnC,MAAM,QAAQ,GAAG,gBAAgB,EAAE,QAAQ,EAAE,IAAI,KAAK,CAAC;IACvD,IAAI,CAAC;QACH,0EAA0E;QAC1E,qEAAqE;QACrE,6DAA6D;QAC7D,IAAI,QAAQ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;QAC/F,MAAM,UAAU,GAAG,gBAAgB,EAAE,aAAa,EAAE,CAAC;QACrD,IAAI,QAAQ,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACzF,MAAM,oBAAoB,GAAG,QAAQ;YACnC,CAAC,CAAC,CAAC,KAAa,EAAE,SAAyB,EAAE,EAAE,CAAC,yBAAyB,CAAC,KAAK,EAAE,GAAG,EAAE,UAAW,EAAE,SAAS,CAAC;YAC7G,CAAC,CAAC,CAAC,KAAa,EAAE,SAAyB,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAC7F,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACrD,OAAO;YACL,IAAI,EAAE,OAAO;YACb,YAAY;YACZ,MAAM,EAAE,MAAM,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,oBAAoB,CAAC;SAC5E,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,6CAA6C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;SAC/G,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,KAAa,EAAE,GAAW,EAAE,SAAS,GAAkB,UAAU;IAClG,MAAM,YAAY,GAAG,MAAM,8BAA8B,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtE,IAAI,YAAY,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC;IAC7E,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,oBAAoB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;QACtF,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,KAAK,CAAC,cAAc,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,EAAE,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,yBAAyB,CACtC,KAAa,EACb,GAAW,EACX,UAAuB,EACvB,SAAS,GAAkB,UAAU;IAErC,MAAM,WAAW,GAAG,oBAAoB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;IACtF,MAAM,WAAW,GAAG,SAAS,KAAK,eAAe,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC,EAAE,CAAC;IACrG,MAAM,OAAO,GAAG;QACd,YAAY,aAAa,CAAC,WAAW,CAAC,EAAE;QACxC,qBAAqB;QACrB,WAAW;QACX,WAAW,CAAC,OAAO,EAAE;QACrB,wEAAwE;QACxE,2EAA2E;QAC3E,yBAAyB;QACzB,qGAAqG;QACrG,gBAAgB;QAChB,wDAAwD;QACxD,+BAA+B;QAC/B,iDAAiD;QACjD,UAAU;QACV,wEAAwE;QACxE,yEAAyE;QACzE,mBAAmB;QACnB,mGAAmG;QACnG,2CAA2C;QAC3C,QAAQ;QACR,UAAU;QACV,MAAM;QACN,4CAA4C;QAC5C,4EAA4E;QAC5E,sEAAsE;QACtE,kBAAkB;QAClB,4CAA4C;QAC5C,0BAA0B;QAC1B,0CAA0C;QAC1C,qDAAqD;QACrD,qCAAqC;QACrC,qBAAqB;QACrB,MAAM;KACP;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,EAAE,CAAC,CAAC;IAC9F,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC;IACzE,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,KAAK,EAAE,CAAC,CAAC;IAC5G,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,KAAK,EAAE,CAAC,CAAC;IAC5G,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,0CAA0C,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IACxD,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,KAAK,EAAE,CAAC,CAAC;IACtG,OAAO,YAAY,CAAC;AACtB,CAAC;AAID,KAAK,UAAU,qBAAqB,CAClC,QAAgB,EAChB,MAAe,EACf,gBAAqC;IAErC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,MAAM,CAAC;IAC/G,MAAM,MAAM,GAAG,MAAiC,CAAC;IACjD,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAc,EAAE,SAAS,GAAkB,UAAU,EAAoB,EAAE,CACjG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzE,IAAI,QAAQ,KAAK,aAAa,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;QAChE,OAAO,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC5E,OAAO,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AACtF,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,KAAa,EACb,QAAwE;IAExE,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QACtD,MAAM,MAAM,GAAG,QAAQ,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,MAAM,SAAS,GAAkB,SAAS,CAAC,IAAI,KAAK,aAAa,IAAI,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;QAC3G,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAmB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtH,CAAC,CAAC,CAAC;IACH,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAAC;IAC/F,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5D,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAgB,EAAE,MAAmB,EAAE,KAAK,GAA4B,EAAE;IACxG,OAAO,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAC3C,CAAC,CAAC,EAAE,GAAI,OAAmC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE;QAC/D,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,YAAqC,EAAE,UAAuB;IAC9F,IAAI,CAAC,YAAY,IAAI,YAAY,KAAK,UAAU;QAAE,OAAO,YAAY,IAAI,UAAU,CAAC;IACpF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,YAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjD,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC/C,UAAU,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,CAAC;IACF,IAAI,YAAY,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QAC/C,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,UAAU,CAAC,MAAM,CAAC;IAC3B,CAAC;IACD,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,OAAO,UAAU,CAAC,MAAM,CAAC;AAC3B,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAAuB,EAAE,MAAe,EAAE,OAAgB;IACtF,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC;IACnC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC/D,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC;QACH,OAAO,CAAC,MAAO,QAAoE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC;IACjH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AACD,OAAO,EACL,sBAAsB,GAIvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAEzE,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE;IAC9B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,OAAO,GAAG,EAAE,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;AAC3C,CAAC,CAAC,EAAE,CAAC;AA8CL;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAA8B;IACjE,0EAA0E;IAC1E,qEAAqE;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9F,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IAEjG,MAAM,SAAS,GAAG,GAAiB,EAAE,CAAC,QAAQ,CAAC;IAE/C,MAAM,OAAO,GAAG,KAAK,EAAE,KAA0B,EAAiC,EAAE;QAClF,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;QACnC,MAAM,gBAAgB,GAAG,OAAO,CAAC,sBAAsB,CAAC;QACxD,2EAA2E;QAC3E,wEAAwE;QACxE,0EAA0E;QAC1E,IAAI,OAAO,CAAC,mBAAmB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YACzD,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,YAAY,GAAI,KAAK,CAAC,OAA6C,EAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;QAClG,MAAM,WAAW,GAAG,iBAAiB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAwB,EAAE,CAAC;QACtC,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAC5C,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QACzC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACnD,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9C,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,aAAa,GAAkB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,yBAAyB,EAAE,CAAC;QACpD,8EAA8E;QAC9E,qEAAqE;QACrE,sEAAsE;QACtE,IAAI,mBAAuC,CAAC;QAE5C,MAAM,MAAM,GAAG,CACb,IAAY,EACZ,OAAqC,EACrC,OAAe,EACf,gBAA0B,EAC1B,MAAe,EACf,UAAkC,EAClC,MAAe,EACf,QAAwC,EACxC,EAAE;YACF,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI;gBACJ,OAAO;gBACP,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;gBAChC,gBAAgB;gBAChB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClC,CAAC,CAAC;YACH,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;gBAC3B,qBAAqB,CACnB,IAAI,EACJ,SAAS,EACT,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,mBAAmB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAClG,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,OAAe,EAAqB,EAAE,CAAC,CAAC;YACtD,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAe;SACnD,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,IAAY,EAAE,OAA6B,EAAE,MAAe,EAAQ,EAAE;YAC3G,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO;YACvC,MAAM,YAAY,GAAG,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3F,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,QAAQ,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;gBAC/B,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;;gBAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC;QACF,MAAM,eAAe,GAAG,CACtB,MAAc,EACd,OAAe,EACf,MAAc,EACd,OAAqC,EACrC,MAAe,EACT,EAAE;YACR,IAAI,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO;YACrE,IAAI,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;gBACrB,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACpC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;gBACnF,IAAI,MAAM,KAAK,OAAO;oBAAE,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;YAC1E,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,GAAG;gBACb,IAAI,EAAE,SAAS,MAAM,EAAE;gBACvB,OAAO;gBACP,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;gBAChC,MAAM;gBACN,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClD,CAAC;YACF,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;gBACvB,MAAM,aAAa,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;gBAChG,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,KAAK,GAAoC;YAC7C,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;gBACjF,kBAAkB,EAAE,gBAAgB;aACrC;YACD,MAAM,EAAE;gBACN,QAAQ,EAAE,eAAe,CAAC,QAAQ;gBAClC,cAAc,EAAE,eAAe,CAAC,cAAc;gBAC9C,oBAAoB,EAAE,4BAA4B,eAAe,CAAC,QAAQ,yBAAyB;aACpG;YACD,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE;gBAChD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;gBAC7F,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,WAAW,IAAI,CAAC,CAAC;oBACjB,aAAa,CACX,GAAG,WAAW,aAAa,WAAW,EAAE,EACxC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,SAAS,EACT,uCAAuC,CACxC,CAAC;gBACJ,CAAC;gBACD,OAAO,MAAM,CACX,4BAA4B,QAAQ,0BAA0B,SAAS,oBAAoB,IAAI,CAAC,GAAG,CACjG,CAAC,EACD,QAAQ,GAAG,SAAS,CACrB,wJAAwJ,CAC1J,CAAC;YACJ,CAAC;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;gBAChC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,OAAO;gBAC9C,MAAM,MAAM,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClD,sBAAsB,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACpD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;gBACvC,MAAM,MAAM,GAAG,GAAG,WAAW,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClD,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC3E,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YACrG,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBACnE,IAAI,IAAI,KAAK,kBAAkB,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACtE,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;oBAClF,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;wBACrC,OAAO,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;oBAChF,CAAC;oBACD,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;oBAClC,MAAM,cAAc,GAAG,mBAAmB,CAAC,SAAS,CAAC;wBACnD,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;wBAC9C,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;oBAC5B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAe,EAAE,CAAC;gBACvF,CAAC;gBACD,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,IAAI,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;oBAC3F,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;wBACvB,WAAW,IAAI,CAAC,CAAC;wBACjB,aAAa,CAAC,GAAG,WAAW,aAAa,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,IAAI,GAAG,CAAC,CAAC;oBACpG,CAAC;oBACD,OAAO,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;gBACtE,CAAC;gBACD,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC;gBACjE,IAAI,UAAU,GAAY,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;gBAC/C,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;oBACxG,IAAI,eAAe,EAAE,CAAC;wBACpB,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;wBACtF,OAAO,MAAM,CAAC,2BAA2B,IAAI,MAAM,eAAe,EAAE,CAAC,CAAC;oBACxE,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC;oBACH,UAAU,GAAG,uBAAuB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;gBACjE,CAAC;gBAAC,MAAM,CAAC;oBACP,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;gBACpC,CAAC;gBACD,IAAI,wBAAwB,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC3C,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBAClD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;wBACtF,MAAM,MAAM,GACV,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;4BACvG,oBAAoB,CAAC;wBACvB,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;4BACvB,WAAW,IAAI,CAAC,CAAC;4BACjB,aAAa,CAAC,GAAG,WAAW,aAAa,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,uBAAuB,MAAM,EAAE,CAAC,CAAC;wBAC3G,CAAC;wBACD,OAAO,MAAM,CAAC,2BAA2B,IAAI,MAAM,MAAM,gBAAgB,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC3G,CAAC;oBACD,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;gBAC3B,CAAC;gBACD,qEAAqE;gBACrE,0EAA0E;gBAC1E,IAAI,IAAI,KAAK,qBAAqB,IAAI,OAAQ,UAAkC,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACrG,IAAI,CAAC;wBACH,uBAAuB,CAAE,UAAgC,CAAC,KAAK,CAAC,CAAC;oBACnE,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACvE,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;wBACtF,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;4BACvB,WAAW,IAAI,CAAC,CAAC;4BACjB,aAAa,CAAC,GAAG,WAAW,aAAa,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,uBAAuB,OAAO,EAAE,CAAC,CAAC;wBAC5G,CAAC;wBACD,OAAO,MAAM,CAAC,2BAA2B,IAAI,MAAM,OAAO,EAAE,CAAC,CAAC;oBAChE,CAAC;gBACH,CAAC;gBACD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;gBACvC,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;gBACzG,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;oBACrE,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;wBACvB,WAAW,IAAI,CAAC,CAAC;wBACjB,aAAa,CAAC,GAAG,WAAW,aAAa,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;oBAClG,CAAC;oBACD,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBACnC,CAAC;gBACD,OAAO;oBACL,IAAI;oBACJ,MAAM,EAAE,SAAS,CAAC,MAAM;oBACxB,cAAc,EAAE,UAAU;oBAC1B,aAAa;oBACb,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;oBAC3C,YAAY,EAAE,MAAM,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;oBACnE,OAAO;iBACe,CAAC;YAC3B,CAAC;YACD,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;YAClE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAA8B,EAAE;gBAClE,MAAM,MAAM,GAAG,GAAG,WAAW,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;gBACtD,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE;oBACxG,QAAQ,EAAE,IAAI;iBACf,CAA0B,CAAC;gBAC5B,MAAM,mBAAmB,GAAG,KAAK,IAAI,EAAE;oBACrC,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;oBACrC,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAC3C,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,QAAQ,CAAC,cAAc,EACvB,WAAW,EACX,OAAO,CAAC,gBAAgB,CACzB,CAAC;oBACF,OAAO,CACL,SAAS,CAAC,IAAI,KAAK,OAAO;wBAC1B,WAAW,KAAK,QAAQ,CAAC,aAAa;wBACtC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,gBAAgB,CACxD,CAAC;gBACJ,CAAC,CAAC;gBACF,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE,CAC5B,CACE,MAAM,gBAAgB,CAAC,QAAQ,CAAC;oBAC9B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;oBAC5B,IAAI,EAAE,QAAQ,CAAC,MAAM;oBACrB,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CACH,CAAC,IAAI,CAAC;gBACT,oEAAoE;gBACpE,mEAAmE;gBACnE,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;oBACjC,MAAM,OAAO,GAAG,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;oBACzC,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;wBAC9B,IAAI,aAAa,CAAC,MAAM,EAAE,OAAO;4BAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;wBACpF,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACxE,CAAC,CAAC;oBACF,MAAM,MAAM,GAAG,MAAM,YAAY,EAAE,CAAC;oBACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC;oBAC7C,MAAM,UAAU,GAAG,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;oBACrE,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU;wBAAE,OAAO,MAAM,CAAC;oBACzC,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;oBAC3E,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;oBACjF,IAAI,CAAC,OAAO,CAAC,mBAAmB;wBAAE,OAAO,MAAM,EAAE,CAAC;oBAClD,IAAI,YAAY,GAAwB,QAAQ,CAAC;oBACjD,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;oBAC/B,IAAI,CAAC;wBACH,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC;4BAC3D,SAAS,EAAE,GAAG,MAAM,eAAe;4BACnC,SAAS,EAAE,SAAS,IAAI,SAAS;4BACjC,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,QAAQ;4BACxD,UAAU,EAAE,WAAW;4BACvB,YAAY,EAAE,MAAM;4BACpB,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;4BAC5B,iBAAiB,EAAE,QAAQ,CAAC,MAAM;4BAClC,gBAAgB,EAAE,KAAK,CAAC,OAAO;4BAC/B,QAAQ,EAAE;gCACR,SAAS,EAAE,iBAAiB;gCAC5B,GAAG,UAAU;gCACb,eAAe,EAAE,IAAI;gCACrB,MAAM;gCACN,aAAa,EAAE,QAAQ,CAAC,aAAa;6BACtC;4BACD,MAAM,EAAE,aAAa,CAAC,MAAO;4BAC7B,mBAAmB;4BACnB,UAAU;4BACV,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;gCACpB,IAAI,UAAU,CAAC,UAAU,IAAI,yBAAyB,CAAC,MAAM,CAAC;oCAAE,YAAY,GAAG,MAAM,CAAC;qCACjF,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,MAAM,KAAK,GAAG;oCAAE,YAAY,GAAG,SAAS,CAAC;;oCACvE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;4BAC3D,CAAC;4BACD,QAAQ,EAAE,KAAK,IAAI,EAAE;gCACnB,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;gCAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;4BAC/E,CAAC;yBACF,CAAC,CAAC;wBACH,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU;4BAAE,OAAO,UAAU,CAAC,MAAM,CAAC;wBAC7D,MAAM,MAAM,EAAE,CAAC;wBACf,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ;4BAAE,MAAM,UAAU,CAAC,KAAK,CAAC;wBACzD,OAAO,MAAM,CAAC;oBAChB,CAAC;4BAAS,CAAC;wBACT,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;oBACjC,CAAC;gBACH,CAAC,CAAC;gBACF,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC;oBAC/C,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;oBAC5B,IAAI,EAAE,QAAQ,CAAC,MAAM;oBACrB,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;gBACH,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;oBACrC,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;wBAC9D,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;wBAC/B,IAAI,CAAC;4BACH,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC;gCAC3D,SAAS,EAAE,MAAM;gCACjB,SAAS,EAAE,SAAS,IAAI,SAAS;gCACjC,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,QAAQ;gCACxD,UAAU,EAAE,WAAW;gCACvB,YAAY,EAAE,MAAM;gCACpB,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;gCAC5B,iBAAiB,EAAE,QAAQ,CAAC,MAAM;gCAClC,gBAAgB,EAAE,KAAK,CAAC,OAAO;gCAC/B,QAAQ,EAAE;oCACR,SAAS,EAAE,iBAAiB;oCAC5B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;oCAC5B,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;oCAC9C,eAAe,EAAE,IAAI;oCACrB,MAAM;oCACN,aAAa,EAAE,QAAQ,CAAC,aAAa;oCACrC,iBAAiB,EAAE,gCAAgC,CACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,QAAQ,CAAC,MAAM,EACf,SAAS,IAAI,SAAS,EACtB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,mBAAmB,CAC5B;oCACD,oBAAoB,EAAE,2BAA2B,CAC/C,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,aAAa,CACvB;iCACF;gCACD,MAAM,EAAE,aAAa,CAAC,MAAqB;gCAC3C,mBAAmB;gCACnB,UAAU;gCACV,KAAK,EAAE,CAAC,cAAc,EAAE,EAAE;oCACxB,IAAI,WAAW,CAAC,MAAM,CAAC,OAAO;wCAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;oCACpF,MAAM,OAAO,GAAG,kBAAkB,CAChC;wCACE,SAAS,EAAE,SAAS,IAAI,SAAS;wCACjC,aAAa,EAAE,OAAO,CAAC,aAAa;wCACpC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;wCAChD,MAAM,EAAE,cAAc;qCACvB,EACD;wCACE,MAAM,EAAE,cAAc,CAAC,MAAM;wCAC7B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;wCAC5B,YAAY,EAAE,QAAQ,CAAC,MAAM;wCAC7B,MAAM;qCACP,CACF,CAAC;oCACF,IAAI,CAAC,OAAO,CAAC,UAAU;wCAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gCAC/E,CAAC;gCACD,QAAQ,EAAE,KAAK,IAAI,EAAE;oCACnB,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;oCAC/B,OAAO,eAAe,EAAE,CAAC;gCAC3B,CAAC;6BACF,CAAC,CAAC;4BACH,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU;gCAAE,OAAO,cAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;4BAC/F,MAAM,OAAO,GAAG,SAAS,IAAI,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;4BACxF,MAAM,CACJ,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,mBAAmB,EACnB,QAAQ,CAAC,OAAO,EAChB,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,EACjC,MAAM,CACP,CAAC;4BACF,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gCAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;4BACxG,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;wBACzB,CAAC;gCAAS,CAAC;4BACT,KAAK,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC;wBACjC,CAAC;oBACH,CAAC;oBACD,MAAM,OAAO,GACX,QAAQ,CAAC,IAAI,KAAK,SAAS;wBACzB,CAAC,CAAC,gBAAgB;wBAClB,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO;4BAC3B,CAAC,CAAC,cAAc;4BAChB,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,oBAAoB;gCACxC,CAAC,CAAC,oBAAoB;gCACtB,CAAC,CAAC,mBAAmB,CAAC;oBAC1B,MAAM,CACJ,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,OAAO,EACP,QAAQ,CAAC,OAAO,EAChB,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,EACjC,MAAM,EACN,SAAS,EACT,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CACzD,CAAC;oBACF,MAAM,OAAO,GACX,QAAQ,CAAC,IAAI,KAAK,SAAS;wBACzB,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,8EAA8E;wBACtG,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,oBAAoB;4BACxC,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,mFAAmF;4BAC3G,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO;gCAC3B,CAAC,CAAC,IACE,QAAQ,CAAC,IAAI,CAAC,IAChB,8DAA8D,QAAQ,CAAC,OAAO,CAAC,OAAO,CACpF,SAAS,EACT,EAAE,CACH,kEAAkE;gCACrE,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,8DAA8D,CAAC;oBAC3F,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;wBAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACxG,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;gBACD,IAAI,CAAC;oBACH,OAAO,cAAc,CAAC,QAAQ,EAAE,MAAM,eAAe,EAAE,EAAE,MAAM,CAAC,CAAC;gBACnE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACvE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;oBACzG,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;wBAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACnG,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;SACF,CAAC;QAEF,MAAM,YAAY,GAA2C,EAAE,KAAK,EAAE,CAAC;QACvE,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,kBAAkB,IAAI,0BAA0B,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACzG,YAAY,CAAC,KAAK,GAAG,4BAA4B,CAC/C;gBACE,GAAG,OAAO,CAAC,WAAW;gBACtB,SAAS,EAAE,OAAO,CAAC,kBAAkB;gBACrC,MAAM,EAAE,cAAc;gBACtB,oEAAoE;gBACpE,2DAA2D;gBAC3D,GAAG,CAAC,OAAO,CAAC,mBAAmB;oBAC7B,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE;oBAChG,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1E,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5F,cAAc,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;gBAChG,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC1D,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM;wBAAE,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACrE,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC5D,CAAC;aACF,EACD,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CACxC,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,KAAK,EAAE,QAAsB,EAAE,GAAY,EAAE,MAAc,EAA8B,EAAE;YAChH,IAAI,CAAC;gBACH,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC3D,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC/E,CAAC;gBACD,MAAM,UAAU,GAAG,MAAM,eAAe,CACtC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,EAC5B,eAAe,CAAC,cAAc,EAC9B,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAC/D,CAAC;gBACF,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;oBACnB,MAAM,CACJ,QAAQ,CAAC,IAAI,CAAC,IAAI,EAClB,OAAO,EACP,QAAQ,CAAC,OAAO,EAChB,SAAS,EACT,MAAM,EACN,uBAAuB,EACvB,UAAU,CAAC,KAAK,CACjB,CAAC;oBACF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAuB,EAAE,CAAC;gBAC7D,CAAC;gBACD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;gBAC1E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC;oBAChG,OAAO;wBACL,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,gBAAgB;wBACtB,MAAM,EAAE,qBAAqB;wBAC7B,OAAO,EAAE,SAAS,QAAQ,CAAC,IAAI,CAAC,IAAI,kEAAkE,QAAQ,CAAC,OAAO,EAAE;qBACzH,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChC,+EAA+E;oBAC/E,wEAAwE;oBACxE,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAc,EAAE,CAAC;oBAC5G,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBACxG,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAe,EAAE,CAAC;YACvF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC;gBAChG,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnG,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACH,CAAC,CAAC;QAEF,cAAc,CAAC,KAAK,CAAC,4BAA4B,EAAE;YACjD,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE;YACrB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,YAAY,EAAE,QAAQ,CAAC,MAAM;YAC7B,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,qBAAqB,EAAE,CAAC,GAAG,CAAC;YACnD,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,MAAM;YACvB,YAAY;YACZ,MAAM,EAAE;gBACN,SAAS,EAAE,KAAK,CAAC,OAAO;gBACxB,YAAY,EAAE,eAAe,CAAC,YAAY;gBAC1C,cAAc,EAAE,eAAe,CAAC,cAAc;gBAC9C,eAAe,EAAE,eAAe,CAAC,eAAe;aACjD;YACD,OAAO,EAAE,QAAQ;YACjB,eAAe,EAAE,IAAI;YACrB,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;gBACpB,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5G,CAAC;SACF,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,sBAAsB,EAAE,CAAC;YACrD,QAAQ,CAAC,KAAK,CAAC,GAAG;gBAChB,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAClB,OAAO,EAAE,SAAS;gBAClB,MAAM,EAAE,4CAA4C;aACrD,CAAC;YACF,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,cAAc,GAClB,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;YAC7B,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAc,EAAE;YAC5E,CAAC,CAAC,MAAM,CAAC;QACb,MAAM,WAAW,GAAwB,EAAE,CAAC;QAC5C,MAAM,SAAS,GAAG,sBAAsB,CACtC,cAAc,EACd,KAAK,EACL,QAAQ,EACR,aAAa,EACb,WAAW,EACX,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CACjD,CAAC;QACF,8BAA8B,CAAC,cAAc,EAAE;YAC7C,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS;YACT,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAClC,SAAS,EAAE,KAAK,CAAC,OAAO;YACxB,SAAS;YACT,KAAK,EAAE,WAAW;YAClB,KAAK;YACL,QAAQ;SACT,CAAC,CAAC;QACH,cAAc,CAAC,KAAK,CAAC,6BAA6B,EAAE;YAClD,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,MAAM;YACrE,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,MAAM;SAC1E,CAAC,CAAC;QACH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAC/B,CAAC,CAAC;IAEF,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAChC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { executeShellCommand } from '../../utils/shell/execute-shell.js';
3
3
  import type { ShellChildRegistry } from '../../utils/shell/shell-child-registry.js';
4
- import type { PostExecutePauseDescriptor, SchemaToolDefinition, ScriptedToolDefinition, FormatCommandMessage } from '../types.js';
4
+ import type { PostExecutePauseDescriptor, ScriptedToolDefinition, FormatCommandMessage } from '../types.js';
5
5
  import type { ILoggingService, ISettingsService } from '../../services/service-interfaces.js';
6
6
  import { ExecutionContext } from '../../services/execution-context.js';
7
7
  import { type ShellSandboxRunner } from '../../utils/shell/sandbox/sandbox-policy.js';
@@ -40,7 +40,7 @@ export type ShellToolParams = Omit<z.infer<typeof shellParametersSchema>, 'sandb
40
40
  sandbox?: 'default' | 'unsandboxed';
41
41
  background?: boolean;
42
42
  };
43
- export type ShellToolDefinition = Omit<SchemaToolDefinition<typeof shellParametersSchema, 'shell'>, 'execute' | 'needsApproval' | 'postExecutePause'> & {
43
+ export type ShellToolDefinition = Omit<ScriptedToolDefinition<typeof shellParametersSchema, 'shell'>, 'execute' | 'needsApproval' | 'postExecutePause'> & {
44
44
  needsApproval: (params: ShellToolParams, context?: unknown) => Promise<boolean> | boolean;
45
45
  execute: (params: ShellToolParams, context?: unknown, details?: unknown) => Promise<string>;
46
46
  postExecutePause?: PostExecutePauseDescriptor<ShellToolParams>;
@@ -1 +1 @@
1
- {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../../source/tools/system/shell.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../../source/tools/system/shell.ts"],"names":[],"mappings":"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"}
@@ -525,6 +525,7 @@ export function createShellToolDefinition(deps) {
525
525
  const isSandboxEnabled = () => settingsService.get('sandbox.enabled') !== false;
526
526
  return {
527
527
  name: 'shell',
528
+ scriptedReturnSchema: z.string(),
528
529
  description: shellDescription,
529
530
  parameters: shellParametersSchema,
530
531
  needsApproval: async (params, context) => {