botmux 2.47.0 → 2.47.1

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 (472) hide show
  1. package/README.en.md +10 -5
  2. package/README.md +10 -5
  3. package/dist/adapters/adopt-route.d.ts +63 -0
  4. package/dist/adapters/adopt-route.d.ts.map +1 -0
  5. package/dist/adapters/adopt-route.js +195 -0
  6. package/dist/adapters/adopt-route.js.map +1 -0
  7. package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
  8. package/dist/adapters/backend/tmux-backend.js +11 -0
  9. package/dist/adapters/backend/tmux-backend.js.map +1 -1
  10. package/dist/adapters/backend/tmux-pipe-backend.d.ts +11 -0
  11. package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +1 -1
  12. package/dist/adapters/backend/tmux-pipe-backend.js +17 -1
  13. package/dist/adapters/backend/tmux-pipe-backend.js.map +1 -1
  14. package/dist/adapters/cli/claude-code.d.ts.map +1 -1
  15. package/dist/adapters/cli/claude-code.js +36 -9
  16. package/dist/adapters/cli/claude-code.js.map +1 -1
  17. package/dist/adapters/cli/coco.d.ts.map +1 -1
  18. package/dist/adapters/cli/coco.js +26 -1
  19. package/dist/adapters/cli/coco.js.map +1 -1
  20. package/dist/adapters/cli/codex-app.d.ts +4 -0
  21. package/dist/adapters/cli/codex-app.d.ts.map +1 -0
  22. package/dist/adapters/cli/codex-app.js +72 -0
  23. package/dist/adapters/cli/codex-app.js.map +1 -0
  24. package/dist/adapters/cli/codex.d.ts.map +1 -1
  25. package/dist/adapters/cli/codex.js +6 -1
  26. package/dist/adapters/cli/codex.js.map +1 -1
  27. package/dist/adapters/cli/cursor.d.ts.map +1 -1
  28. package/dist/adapters/cli/cursor.js +58 -12
  29. package/dist/adapters/cli/cursor.js.map +1 -1
  30. package/dist/adapters/cli/gemini.d.ts.map +1 -1
  31. package/dist/adapters/cli/gemini.js +5 -1
  32. package/dist/adapters/cli/gemini.js.map +1 -1
  33. package/dist/adapters/cli/hermes.d.ts +4 -0
  34. package/dist/adapters/cli/hermes.d.ts.map +1 -0
  35. package/dist/adapters/cli/hermes.js +40 -0
  36. package/dist/adapters/cli/hermes.js.map +1 -0
  37. package/dist/adapters/cli/mira.d.ts +4 -0
  38. package/dist/adapters/cli/mira.d.ts.map +1 -0
  39. package/dist/adapters/cli/mira.js +67 -0
  40. package/dist/adapters/cli/mira.js.map +1 -0
  41. package/dist/adapters/cli/mtr.d.ts +5 -0
  42. package/dist/adapters/cli/mtr.d.ts.map +1 -0
  43. package/dist/adapters/cli/mtr.js +62 -0
  44. package/dist/adapters/cli/mtr.js.map +1 -0
  45. package/dist/adapters/cli/opencode.d.ts.map +1 -1
  46. package/dist/adapters/cli/opencode.js +19 -1
  47. package/dist/adapters/cli/opencode.js.map +1 -1
  48. package/dist/adapters/cli/registry.d.ts +5 -1
  49. package/dist/adapters/cli/registry.d.ts.map +1 -1
  50. package/dist/adapters/cli/registry.js +22 -2
  51. package/dist/adapters/cli/registry.js.map +1 -1
  52. package/dist/adapters/cli/shared-hints.d.ts +1 -1
  53. package/dist/adapters/cli/shared-hints.d.ts.map +1 -1
  54. package/dist/adapters/cli/shared-hints.js +2 -1
  55. package/dist/adapters/cli/shared-hints.js.map +1 -1
  56. package/dist/adapters/cli/types.d.ts +35 -2
  57. package/dist/adapters/cli/types.d.ts.map +1 -1
  58. package/dist/adapters/hook-command.d.ts +18 -0
  59. package/dist/adapters/hook-command.d.ts.map +1 -0
  60. package/dist/adapters/hook-command.js +38 -0
  61. package/dist/adapters/hook-command.js.map +1 -0
  62. package/dist/adapters/hook-installer.d.ts +14 -0
  63. package/dist/adapters/hook-installer.d.ts.map +1 -0
  64. package/dist/adapters/hook-installer.js +192 -0
  65. package/dist/adapters/hook-installer.js.map +1 -0
  66. package/dist/bot-registry.d.ts +59 -0
  67. package/dist/bot-registry.d.ts.map +1 -1
  68. package/dist/bot-registry.js +67 -0
  69. package/dist/bot-registry.js.map +1 -1
  70. package/dist/cli/bots-list-output.d.ts +8 -0
  71. package/dist/cli/bots-list-output.d.ts.map +1 -1
  72. package/dist/cli/bots-list-output.js +9 -0
  73. package/dist/cli/bots-list-output.js.map +1 -1
  74. package/dist/cli.d.ts +15 -1
  75. package/dist/cli.d.ts.map +1 -1
  76. package/dist/cli.js +603 -106
  77. package/dist/cli.js.map +1 -1
  78. package/dist/codex-app-runner.d.ts +3 -0
  79. package/dist/codex-app-runner.d.ts.map +1 -0
  80. package/dist/codex-app-runner.js +512 -0
  81. package/dist/codex-app-runner.js.map +1 -0
  82. package/dist/config.d.ts +11 -2
  83. package/dist/config.d.ts.map +1 -1
  84. package/dist/config.js +17 -4
  85. package/dist/config.js.map +1 -1
  86. package/dist/core/ask-api.d.ts +47 -0
  87. package/dist/core/ask-api.d.ts.map +1 -0
  88. package/dist/core/ask-api.js +139 -0
  89. package/dist/core/ask-api.js.map +1 -0
  90. package/dist/core/ask-args.d.ts +53 -0
  91. package/dist/core/ask-args.d.ts.map +1 -0
  92. package/dist/core/ask-args.js +122 -0
  93. package/dist/core/ask-args.js.map +1 -0
  94. package/dist/core/ask-broker.d.ts +98 -0
  95. package/dist/core/ask-broker.d.ts.map +1 -0
  96. package/dist/core/ask-broker.js +329 -0
  97. package/dist/core/ask-broker.js.map +1 -0
  98. package/dist/core/ask-hook/claude-code.d.ts +50 -0
  99. package/dist/core/ask-hook/claude-code.d.ts.map +1 -0
  100. package/dist/core/ask-hook/claude-code.js +145 -0
  101. package/dist/core/ask-hook/claude-code.js.map +1 -0
  102. package/dist/core/ask-hook/codex.d.ts +43 -0
  103. package/dist/core/ask-hook/codex.d.ts.map +1 -0
  104. package/dist/core/ask-hook/codex.js +69 -0
  105. package/dist/core/ask-hook/codex.js.map +1 -0
  106. package/dist/core/ask-hook/opencode.d.ts +41 -0
  107. package/dist/core/ask-hook/opencode.d.ts.map +1 -0
  108. package/dist/core/ask-hook/opencode.js +108 -0
  109. package/dist/core/ask-hook/opencode.js.map +1 -0
  110. package/dist/core/ask-hook/registry.d.ts +3 -0
  111. package/dist/core/ask-hook/registry.d.ts.map +1 -0
  112. package/dist/core/ask-hook/registry.js +12 -0
  113. package/dist/core/ask-hook/registry.js.map +1 -0
  114. package/dist/core/ask-hook/types.d.ts +26 -0
  115. package/dist/core/ask-hook/types.d.ts.map +1 -0
  116. package/dist/core/ask-hook/types.js +2 -0
  117. package/dist/core/ask-hook/types.js.map +1 -0
  118. package/dist/core/ask-types.d.ts +146 -0
  119. package/dist/core/ask-types.d.ts.map +1 -0
  120. package/dist/core/ask-types.js +18 -0
  121. package/dist/core/ask-types.js.map +1 -0
  122. package/dist/core/command-handler.d.ts +20 -0
  123. package/dist/core/command-handler.d.ts.map +1 -1
  124. package/dist/core/command-handler.js +774 -311
  125. package/dist/core/command-handler.js.map +1 -1
  126. package/dist/core/dashboard-ipc-server.d.ts +2 -0
  127. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  128. package/dist/core/dashboard-ipc-server.js +222 -2
  129. package/dist/core/dashboard-ipc-server.js.map +1 -1
  130. package/dist/core/role-resolver.d.ts +17 -1
  131. package/dist/core/role-resolver.d.ts.map +1 -1
  132. package/dist/core/role-resolver.js +64 -10
  133. package/dist/core/role-resolver.js.map +1 -1
  134. package/dist/core/session-discovery.d.ts.map +1 -1
  135. package/dist/core/session-discovery.js +19 -5
  136. package/dist/core/session-discovery.js.map +1 -1
  137. package/dist/core/session-manager.d.ts +1 -1
  138. package/dist/core/session-manager.d.ts.map +1 -1
  139. package/dist/core/session-manager.js +37 -20
  140. package/dist/core/session-manager.js.map +1 -1
  141. package/dist/core/trigger-session.d.ts +9 -0
  142. package/dist/core/trigger-session.d.ts.map +1 -0
  143. package/dist/core/trigger-session.js +158 -0
  144. package/dist/core/trigger-session.js.map +1 -0
  145. package/dist/core/types.d.ts +5 -0
  146. package/dist/core/types.d.ts.map +1 -1
  147. package/dist/core/types.js.map +1 -1
  148. package/dist/core/worker-pool.d.ts +141 -0
  149. package/dist/core/worker-pool.d.ts.map +1 -1
  150. package/dist/core/worker-pool.js +543 -24
  151. package/dist/core/worker-pool.js.map +1 -1
  152. package/dist/daemon.d.ts.map +1 -1
  153. package/dist/daemon.js +213 -58
  154. package/dist/daemon.js.map +1 -1
  155. package/dist/dashboard/auth.d.ts +6 -1
  156. package/dist/dashboard/auth.d.ts.map +1 -1
  157. package/dist/dashboard/auth.js +9 -1
  158. package/dist/dashboard/auth.js.map +1 -1
  159. package/dist/dashboard/connector-api.d.ts +3 -0
  160. package/dist/dashboard/connector-api.d.ts.map +1 -0
  161. package/dist/dashboard/connector-api.js +351 -0
  162. package/dist/dashboard/connector-api.js.map +1 -0
  163. package/dist/dashboard/federated-group-core.d.ts +54 -0
  164. package/dist/dashboard/federated-group-core.d.ts.map +1 -0
  165. package/dist/dashboard/federated-group-core.js +165 -0
  166. package/dist/dashboard/federated-group-core.js.map +1 -0
  167. package/dist/dashboard/federation-api.d.ts +42 -0
  168. package/dist/dashboard/federation-api.d.ts.map +1 -0
  169. package/dist/dashboard/federation-api.js +408 -0
  170. package/dist/dashboard/federation-api.js.map +1 -0
  171. package/dist/dashboard/federation-spoke-api.d.ts +76 -0
  172. package/dist/dashboard/federation-spoke-api.d.ts.map +1 -0
  173. package/dist/dashboard/federation-spoke-api.js +618 -0
  174. package/dist/dashboard/federation-spoke-api.js.map +1 -0
  175. package/dist/dashboard/team-group.d.ts +18 -0
  176. package/dist/dashboard/team-group.d.ts.map +1 -0
  177. package/dist/dashboard/team-group.js +7 -0
  178. package/dist/dashboard/team-group.js.map +1 -0
  179. package/dist/dashboard/trigger-api.d.ts +13 -0
  180. package/dist/dashboard/trigger-api.d.ts.map +1 -0
  181. package/dist/dashboard/trigger-api.js +77 -0
  182. package/dist/dashboard/trigger-api.js.map +1 -0
  183. package/dist/dashboard/web/app.js +8 -0
  184. package/dist/dashboard/web/app.js.map +1 -1
  185. package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
  186. package/dist/dashboard/web/bot-defaults.js +205 -21
  187. package/dist/dashboard/web/bot-defaults.js.map +1 -1
  188. package/dist/dashboard/web/connectors.d.ts +2 -0
  189. package/dist/dashboard/web/connectors.d.ts.map +1 -0
  190. package/dist/dashboard/web/connectors.js +187 -0
  191. package/dist/dashboard/web/connectors.js.map +1 -0
  192. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  193. package/dist/dashboard/web/i18n.js +43 -5
  194. package/dist/dashboard/web/i18n.js.map +1 -1
  195. package/dist/dashboard/web/sessions.d.ts.map +1 -1
  196. package/dist/dashboard/web/sessions.js +4 -0
  197. package/dist/dashboard/web/sessions.js.map +1 -1
  198. package/dist/dashboard/web/team-federation.d.ts +3 -0
  199. package/dist/dashboard/web/team-federation.d.ts.map +1 -0
  200. package/dist/dashboard/web/team-federation.js +487 -0
  201. package/dist/dashboard/web/team-federation.js.map +1 -0
  202. package/dist/dashboard/web/workflows.js +3 -3
  203. package/dist/dashboard/web/workflows.js.map +1 -1
  204. package/dist/dashboard/webhook-routes.d.ts +19 -0
  205. package/dist/dashboard/webhook-routes.d.ts.map +1 -0
  206. package/dist/dashboard/webhook-routes.js +321 -0
  207. package/dist/dashboard/webhook-routes.js.map +1 -0
  208. package/dist/dashboard/workflow-api.d.ts +8 -1
  209. package/dist/dashboard/workflow-api.d.ts.map +1 -1
  210. package/dist/dashboard/workflow-api.js +19 -4
  211. package/dist/dashboard/workflow-api.js.map +1 -1
  212. package/dist/dashboard-web/app.js +539 -375
  213. package/dist/dashboard-web/index.html +3 -1
  214. package/dist/dashboard-web/style.css +22 -0
  215. package/dist/dashboard.js +199 -2
  216. package/dist/dashboard.js.map +1 -1
  217. package/dist/i18n/en.d.ts.map +1 -1
  218. package/dist/i18n/en.js +104 -11
  219. package/dist/i18n/en.js.map +1 -1
  220. package/dist/i18n/zh.d.ts.map +1 -1
  221. package/dist/i18n/zh.js +104 -11
  222. package/dist/i18n/zh.js.map +1 -1
  223. package/dist/im/lark/ask-card.d.ts +55 -0
  224. package/dist/im/lark/ask-card.d.ts.map +1 -0
  225. package/dist/im/lark/ask-card.js +328 -0
  226. package/dist/im/lark/ask-card.js.map +1 -0
  227. package/dist/im/lark/card-builder.d.ts +108 -3
  228. package/dist/im/lark/card-builder.d.ts.map +1 -1
  229. package/dist/im/lark/card-builder.js +480 -50
  230. package/dist/im/lark/card-builder.js.map +1 -1
  231. package/dist/im/lark/card-handler.d.ts.map +1 -1
  232. package/dist/im/lark/card-handler.js +241 -18
  233. package/dist/im/lark/card-handler.js.map +1 -1
  234. package/dist/im/lark/client.d.ts +83 -0
  235. package/dist/im/lark/client.d.ts.map +1 -1
  236. package/dist/im/lark/client.js +286 -70
  237. package/dist/im/lark/client.js.map +1 -1
  238. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  239. package/dist/im/lark/event-dispatcher.js +29 -4
  240. package/dist/im/lark/event-dispatcher.js.map +1 -1
  241. package/dist/im/lark/grant-command.d.ts +2 -1
  242. package/dist/im/lark/grant-command.d.ts.map +1 -1
  243. package/dist/im/lark/grant-command.js +3 -2
  244. package/dist/im/lark/grant-command.js.map +1 -1
  245. package/dist/im/lark/identity-cache.d.ts.map +1 -1
  246. package/dist/im/lark/identity-cache.js +3 -3
  247. package/dist/im/lark/identity-cache.js.map +1 -1
  248. package/dist/im/lark/md-card.d.ts +20 -2
  249. package/dist/im/lark/md-card.d.ts.map +1 -1
  250. package/dist/im/lark/md-card.js +49 -17
  251. package/dist/im/lark/md-card.js.map +1 -1
  252. package/dist/im/lark/message-parser.d.ts.map +1 -1
  253. package/dist/im/lark/message-parser.js +87 -31
  254. package/dist/im/lark/message-parser.js.map +1 -1
  255. package/dist/im/lark/workflow-card-handler.d.ts +2 -2
  256. package/dist/im/lark/workflow-card-handler.d.ts.map +1 -1
  257. package/dist/im/lark/workflow-card-handler.js +12 -1
  258. package/dist/im/lark/workflow-card-handler.js.map +1 -1
  259. package/dist/im/lark/workflow-progress-card.d.ts.map +1 -1
  260. package/dist/im/lark/workflow-progress-card.js +53 -0
  261. package/dist/im/lark/workflow-progress-card.js.map +1 -1
  262. package/dist/mira-output.d.ts +3 -0
  263. package/dist/mira-output.d.ts.map +1 -0
  264. package/dist/mira-output.js +136 -0
  265. package/dist/mira-output.js.map +1 -0
  266. package/dist/mira-runner.d.ts +3 -0
  267. package/dist/mira-runner.d.ts.map +1 -0
  268. package/dist/mira-runner.js +534 -0
  269. package/dist/mira-runner.js.map +1 -0
  270. package/dist/services/bot-owner-store.d.ts +28 -0
  271. package/dist/services/bot-owner-store.d.ts.map +1 -0
  272. package/dist/services/bot-owner-store.js +82 -0
  273. package/dist/services/bot-owner-store.js.map +1 -0
  274. package/dist/services/bot-profile-store.d.ts +16 -0
  275. package/dist/services/bot-profile-store.d.ts.map +1 -0
  276. package/dist/services/bot-profile-store.js +98 -0
  277. package/dist/services/bot-profile-store.js.map +1 -0
  278. package/dist/services/brand-store.d.ts +15 -0
  279. package/dist/services/brand-store.d.ts.map +1 -0
  280. package/dist/services/brand-store.js +47 -0
  281. package/dist/services/brand-store.js.map +1 -0
  282. package/dist/services/card-prefs-store.d.ts +20 -0
  283. package/dist/services/card-prefs-store.d.ts.map +1 -0
  284. package/dist/services/card-prefs-store.js +82 -0
  285. package/dist/services/card-prefs-store.js.map +1 -0
  286. package/dist/services/codex-bridge-queue.d.ts +1 -0
  287. package/dist/services/codex-bridge-queue.d.ts.map +1 -1
  288. package/dist/services/codex-bridge-queue.js +23 -0
  289. package/dist/services/codex-bridge-queue.js.map +1 -1
  290. package/dist/services/codex-transcript.d.ts +1 -0
  291. package/dist/services/codex-transcript.d.ts.map +1 -1
  292. package/dist/services/codex-transcript.js.map +1 -1
  293. package/dist/services/connector-store.d.ts +58 -0
  294. package/dist/services/connector-store.d.ts.map +1 -0
  295. package/dist/services/connector-store.js +79 -0
  296. package/dist/services/connector-store.js.map +1 -0
  297. package/dist/services/deployment-identity.d.ts +22 -0
  298. package/dist/services/deployment-identity.d.ts.map +1 -0
  299. package/dist/services/deployment-identity.js +67 -0
  300. package/dist/services/deployment-identity.js.map +1 -0
  301. package/dist/services/federation-membership-store.d.ts +23 -0
  302. package/dist/services/federation-membership-store.d.ts.map +1 -0
  303. package/dist/services/federation-membership-store.js +66 -0
  304. package/dist/services/federation-membership-store.js.map +1 -0
  305. package/dist/services/federation-roster.d.ts +54 -0
  306. package/dist/services/federation-roster.d.ts.map +1 -0
  307. package/dist/services/federation-roster.js +51 -0
  308. package/dist/services/federation-roster.js.map +1 -0
  309. package/dist/services/federation-store.d.ts +76 -0
  310. package/dist/services/federation-store.d.ts.map +1 -0
  311. package/dist/services/federation-store.js +133 -0
  312. package/dist/services/federation-store.js.map +1 -0
  313. package/dist/services/grant-store.d.ts +12 -2
  314. package/dist/services/grant-store.d.ts.map +1 -1
  315. package/dist/services/grant-store.js +51 -4
  316. package/dist/services/grant-store.js.map +1 -1
  317. package/dist/services/group-creator.d.ts +10 -0
  318. package/dist/services/group-creator.d.ts.map +1 -1
  319. package/dist/services/group-creator.js +26 -1
  320. package/dist/services/group-creator.js.map +1 -1
  321. package/dist/services/groups-store.d.ts +30 -0
  322. package/dist/services/groups-store.d.ts.map +1 -1
  323. package/dist/services/groups-store.js +85 -12
  324. package/dist/services/groups-store.js.map +1 -1
  325. package/dist/services/hermes-transcript.d.ts +7 -0
  326. package/dist/services/hermes-transcript.d.ts.map +1 -0
  327. package/dist/services/hermes-transcript.js +117 -0
  328. package/dist/services/hermes-transcript.js.map +1 -0
  329. package/dist/services/invite-store.d.ts +28 -0
  330. package/dist/services/invite-store.d.ts.map +1 -0
  331. package/dist/services/invite-store.js +85 -0
  332. package/dist/services/invite-store.js.map +1 -0
  333. package/dist/services/pairing-store.d.ts +47 -0
  334. package/dist/services/pairing-store.d.ts.map +1 -0
  335. package/dist/services/pairing-store.js +132 -0
  336. package/dist/services/pairing-store.js.map +1 -0
  337. package/dist/services/project-scanner.d.ts +10 -0
  338. package/dist/services/project-scanner.d.ts.map +1 -1
  339. package/dist/services/project-scanner.js +11 -0
  340. package/dist/services/project-scanner.js.map +1 -1
  341. package/dist/services/relay-picker.d.ts +22 -0
  342. package/dist/services/relay-picker.d.ts.map +1 -0
  343. package/dist/services/relay-picker.js +62 -0
  344. package/dist/services/relay-picker.js.map +1 -0
  345. package/dist/services/send-policy.d.ts +55 -0
  346. package/dist/services/send-policy.d.ts.map +1 -0
  347. package/dist/services/send-policy.js +47 -0
  348. package/dist/services/send-policy.js.map +1 -0
  349. package/dist/services/session-store.js +1 -1
  350. package/dist/services/session-store.js.map +1 -1
  351. package/dist/services/team-roster.d.ts +38 -0
  352. package/dist/services/team-roster.d.ts.map +1 -0
  353. package/dist/services/team-roster.js +82 -0
  354. package/dist/services/team-roster.js.map +1 -0
  355. package/dist/services/team-store.d.ts +54 -0
  356. package/dist/services/team-store.d.ts.map +1 -0
  357. package/dist/services/team-store.js +156 -0
  358. package/dist/services/team-store.js.map +1 -0
  359. package/dist/services/trigger-log-store.d.ts +46 -0
  360. package/dist/services/trigger-log-store.d.ts.map +1 -0
  361. package/dist/services/trigger-log-store.js +132 -0
  362. package/dist/services/trigger-log-store.js.map +1 -0
  363. package/dist/services/trigger-types.d.ts +57 -0
  364. package/dist/services/trigger-types.d.ts.map +1 -0
  365. package/dist/services/trigger-types.js +28 -0
  366. package/dist/services/trigger-types.js.map +1 -0
  367. package/dist/services/webhook-key.d.ts +16 -0
  368. package/dist/services/webhook-key.d.ts.map +1 -0
  369. package/dist/services/webhook-key.js +123 -0
  370. package/dist/services/webhook-key.js.map +1 -0
  371. package/dist/services/webhook-lifecycle-extractors.d.ts +15 -0
  372. package/dist/services/webhook-lifecycle-extractors.d.ts.map +1 -0
  373. package/dist/services/webhook-lifecycle-extractors.js +59 -0
  374. package/dist/services/webhook-lifecycle-extractors.js.map +1 -0
  375. package/dist/services/webhook-lifecycle-store.d.ts +45 -0
  376. package/dist/services/webhook-lifecycle-store.d.ts.map +1 -0
  377. package/dist/services/webhook-lifecycle-store.js +159 -0
  378. package/dist/services/webhook-lifecycle-store.js.map +1 -0
  379. package/dist/setup/bot-config-editor.d.ts +8 -1
  380. package/dist/setup/bot-config-editor.d.ts.map +1 -1
  381. package/dist/setup/bot-config-editor.js +20 -2
  382. package/dist/setup/bot-config-editor.js.map +1 -1
  383. package/dist/setup/ensure-tmux.d.ts +0 -22
  384. package/dist/setup/ensure-tmux.d.ts.map +1 -1
  385. package/dist/setup/ensure-tmux.js +25 -1
  386. package/dist/setup/ensure-tmux.js.map +1 -1
  387. package/dist/setup/verify-permissions.d.ts.map +1 -1
  388. package/dist/setup/verify-permissions.js +15 -1
  389. package/dist/setup/verify-permissions.js.map +1 -1
  390. package/dist/skills/definitions.d.ts +2 -0
  391. package/dist/skills/definitions.d.ts.map +1 -1
  392. package/dist/skills/definitions.js +178 -12
  393. package/dist/skills/definitions.js.map +1 -1
  394. package/dist/skills/installer.d.ts +34 -0
  395. package/dist/skills/installer.d.ts.map +1 -1
  396. package/dist/skills/installer.js +119 -2
  397. package/dist/skills/installer.js.map +1 -1
  398. package/dist/types.d.ts +25 -0
  399. package/dist/types.d.ts.map +1 -1
  400. package/dist/utils/bot-routing.d.ts +50 -0
  401. package/dist/utils/bot-routing.d.ts.map +1 -1
  402. package/dist/utils/bot-routing.js +83 -0
  403. package/dist/utils/bot-routing.js.map +1 -1
  404. package/dist/utils/daemon-discovery.d.ts +11 -0
  405. package/dist/utils/daemon-discovery.d.ts.map +1 -0
  406. package/dist/utils/daemon-discovery.js +59 -0
  407. package/dist/utils/daemon-discovery.js.map +1 -0
  408. package/dist/utils/user-token.d.ts.map +1 -1
  409. package/dist/utils/user-token.js +0 -2
  410. package/dist/utils/user-token.js.map +1 -1
  411. package/dist/worker.js +198 -27
  412. package/dist/worker.js.map +1 -1
  413. package/dist/workflows/attempt-resume.d.ts.map +1 -1
  414. package/dist/workflows/attempt-resume.js +2 -2
  415. package/dist/workflows/attempt-resume.js.map +1 -1
  416. package/dist/workflows/definition.d.ts +412 -9
  417. package/dist/workflows/definition.d.ts.map +1 -1
  418. package/dist/workflows/definition.js +238 -3
  419. package/dist/workflows/definition.js.map +1 -1
  420. package/dist/workflows/events/payloads.d.ts +114 -11
  421. package/dist/workflows/events/payloads.d.ts.map +1 -1
  422. package/dist/workflows/events/payloads.js +46 -0
  423. package/dist/workflows/events/payloads.js.map +1 -1
  424. package/dist/workflows/events/replay.d.ts +21 -0
  425. package/dist/workflows/events/replay.d.ts.map +1 -1
  426. package/dist/workflows/events/replay.js +103 -0
  427. package/dist/workflows/events/replay.js.map +1 -1
  428. package/dist/workflows/events/schema.d.ts +1301 -606
  429. package/dist/workflows/events/schema.d.ts.map +1 -1
  430. package/dist/workflows/events/schema.js +37 -1
  431. package/dist/workflows/events/schema.js.map +1 -1
  432. package/dist/workflows/events/types.d.ts +5 -1
  433. package/dist/workflows/events/types.d.ts.map +1 -1
  434. package/dist/workflows/loader.d.ts +14 -0
  435. package/dist/workflows/loader.d.ts.map +1 -1
  436. package/dist/workflows/loader.js +27 -0
  437. package/dist/workflows/loader.js.map +1 -1
  438. package/dist/workflows/loop.js +58 -0
  439. package/dist/workflows/loop.js.map +1 -1
  440. package/dist/workflows/ops-projection.d.ts +58 -0
  441. package/dist/workflows/ops-projection.d.ts.map +1 -1
  442. package/dist/workflows/ops-projection.js +74 -0
  443. package/dist/workflows/ops-projection.js.map +1 -1
  444. package/dist/workflows/orchestrator.d.ts +65 -1
  445. package/dist/workflows/orchestrator.d.ts.map +1 -1
  446. package/dist/workflows/orchestrator.js +486 -74
  447. package/dist/workflows/orchestrator.js.map +1 -1
  448. package/dist/workflows/output-binding.d.ts +8 -1
  449. package/dist/workflows/output-binding.d.ts.map +1 -1
  450. package/dist/workflows/output-binding.js +75 -11
  451. package/dist/workflows/output-binding.js.map +1 -1
  452. package/dist/workflows/runtime.d.ts +1 -1
  453. package/dist/workflows/runtime.d.ts.map +1 -1
  454. package/dist/workflows/runtime.js +39 -4
  455. package/dist/workflows/runtime.js.map +1 -1
  456. package/dist/workflows/trigger-from-envelope.d.ts +13 -0
  457. package/dist/workflows/trigger-from-envelope.d.ts.map +1 -0
  458. package/dist/workflows/trigger-from-envelope.js +67 -0
  459. package/dist/workflows/trigger-from-envelope.js.map +1 -0
  460. package/dist/workflows/wait.d.ts +23 -2
  461. package/dist/workflows/wait.d.ts.map +1 -1
  462. package/dist/workflows/wait.js +39 -17
  463. package/dist/workflows/wait.js.map +1 -1
  464. package/package.json +1 -1
  465. package/dist/services/feishu-task-client.d.ts +0 -28
  466. package/dist/services/feishu-task-client.d.ts.map +0 -1
  467. package/dist/services/feishu-task-client.js +0 -123
  468. package/dist/services/feishu-task-client.js.map +0 -1
  469. package/dist/services/task-store.d.ts +0 -37
  470. package/dist/services/task-store.d.ts.map +0 -1
  471. package/dist/services/task-store.js +0 -115
  472. package/dist/services/task-store.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"command-handler.js","sourceRoot":"","sources":["../../src/core/command-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,SAAS,MAAM,2BAA2B,CAAC;AACvD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAgB,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAClI,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAqB,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACrI,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAyB,MAAM,wBAAwB,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAE5I,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAe,MAAM,kBAAkB,CAAC;AAEhE,gFAAgF;AAEhF,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;AAE1L;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;IAC1C,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ;IACnD,yBAAyB;IACzB,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;IACpC,cAAc,EAAE,kBAAkB,EAAE,SAAS;IAC7C,8BAA8B;IAC9B,MAAM;CACP,CAAC,CAAC;AASH,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;AAE3D,8EAA8E;AAC9E,2EAA2E;AAC3E,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAe;IACvD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,iCAAiC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;AAC7C,CAAC;AAED;;;;mCAImC;AACnC,MAAM,UAAU,2BAA2B,CAAC,OAAe;IACzD,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACpC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,EAAE,WAAW,EAAE,CAAC;IAClC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IAEtB,wEAAwE;IACxE,IAAI,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/C,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,2EAA2E;QAC3E,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC3D,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;IAChD,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,GAAG,CAAC,EAAiB;IAC5B,OAAO,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,mBAAmB;IAC1B,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QACrC,MAAM,OAAO,GAAuC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QACzF,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,oGAAoG;AACpG,SAAS,cAAc,CAAC,SAAiB;IACvC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9B,OAAO,GAAG,CAAC,OAAO,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EAAU;IAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,GAAG,EAAE;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC;IAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7B,IAAI,CAAC,GAAG,EAAE;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;IACrC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7B,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;AAC3B,CAAC;AAED,SAAS,4BAA4B,CAAC,EAA6B,EAAE,SAA6B;IAChG,IAAI,EAAE,EAAE,UAAU;QAAE,OAAO,kBAAkB,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7E,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9B,OAAO,kBAAkB,CAAC;YACxB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,GAAG;YACxC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW;SACpC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,kBAAkB,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,GAAG;QAC3C,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;KACvC,CAAC,CAAC;AACL,CAAC;AAWD,gFAAgF;AAEhF,KAAK,UAAU,iBAAiB,CAC9B,IAAY,EACZ,MAAc,EACd,MAAc,EACd,SAAiB,EACjB,IAAwB;IAExB,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,OAAe,EAAE,OAAgB,EAAE,EAAE,CACtE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IAEpC,4BAA4B;IAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACnD,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAChD,MAAM,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,cAAc,EAAE,SAAS,EAAE,GAAG,CAAC,qBAAqB,OAAO,aAAa,CAAC,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAClK,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO;IACT,CAAC;IAED,wCAAwC;IACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACnD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,gBAAgB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QACD,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACpF,OAAO;IACT,CAAC;IAED,eAAe;IACf,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAClD,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,sBAAsB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,wBAAwB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO;IACT,CAAC;IAED,wBAAwB;IACxB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,IAAY,EACZ,MAAc,EACd,MAAc,EACd,IAAwB,EACxB,SAAkB;IAElB,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IAChC,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,OAAe,EAAE,OAAgB,EAAE,EAAE,CACtE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IACpC,sEAAsE;IACtE,oEAAoE;IACpE,kDAAkD;IAClD,MAAM,UAAU,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;IACpD,MAAM,QAAQ,GAAG,eAAe,CAAC;IAEjC,gCAAgC;IAChC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACvD,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;QACxC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,8BAA8B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;YAC9E,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YACzC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACjE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjJ,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC;YACtD,OAAO,GAAG,MAAM,KAAK,IAAI,CAAC,EAAE,KAAK,OAAO,MAAM,IAAI,CAAC,IAAI,gBAAgB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC;QACnK,CAAC,CAAC,CAAC;QACH,MAAM,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClH,OAAO;IACT,CAAC;IAED,4CAA4C;IAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5D,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,OAAO;IACT,CAAC;IAED,4CAA4C;IAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5D,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,OAAO;IACT,CAAC;IAED,6CAA6C;IAC7C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC9D,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;YAC9B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,OAAO;IACT,CAAC;IAED,yCAAyC;IACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACtD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,wBAAwB,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,OAAO;IACT,CAAC;IAED,kDAAkD;IAClD,MAAM,MAAM,GAAG,SAAS,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACvD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,MAAM,UAAU,GAAG,EAAE,EAAE,UAAU,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC;QACjJ,MAAM,SAAS,GAAsB,EAAE,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC9E,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC;YAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,UAAU;YACV,MAAM;YACN,aAAa,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YAC1D,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,EAAE,EAAE,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa;YACxD,SAAS;SACV,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC7E,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,kBAAkB,EAAE;YAC/C,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,UAAU,CAAC,UAAU,CAAC;YAC3B,IAAI,EAAE,OAAO;SACd,EAAE,GAAG,CAAC,CAAC,CAAC;QACT,OAAO;IACT,CAAC;IAED,sBAAsB;IACtB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;AACzE,CAAC;AAGD,SAAS,SAAS;IAChB,OAAO;QACL,KAAK;QACL,uDAAuD;QACvD,uBAAuB;QACvB,iCAAiC;QACjC,6CAA6C;QAC7C,+CAA+C;KAChD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,IAA2B;IACnD,OAAO;QACL,SAAS,IAAI,CAAC,MAAM,EAAE;QACtB,gBAAgB,IAAI,CAAC,cAAc,IAAI,GAAG,EAAE;QAC5C,SAAS,IAAI,CAAC,IAAI,EAAE;QACpB,WAAW,IAAI,CAAC,MAAM,EAAE;QACxB,YAAY,IAAI,CAAC,SAAS,EAAE;QAC5B,SAAS,IAAI,CAAC,MAAM,EAAE;QACtB,WAAW,IAAI,CAAC,MAAM,EAAE;QACxB,YAAY,IAAI,CAAC,SAAS,EAAE;QAC5B,UAAU,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,WAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE;QACvE,aAAa,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,cAAc,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE;QAChF,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,SAAS;QAC7E,YAAY,IAAI,CAAC,SAAS,EAAE;QAC5B,YAAY,IAAI,CAAC,SAAS,EAAE;KAC7B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,oBAAoB,CAAC,IAA2B,EAAE,cAAsB;IAC/E,MAAM,OAAO,GAAY;QACvB;YACE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE;YACtC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;SAC5D;QACD,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAC/C,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,IAAI,CAAC,cAAc,IAAI,GAAG,EAAE,EAAE,CAAC;QACrE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;QACrD,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAC/C,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QACxD,IAAI,CAAC,WAAW;YACd,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;YAC9E,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QACvC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,2EAA2E,EAAE,CAAC;KACrG,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,aAAa,CAAC,GAAY;IACjC,IAAI,GAAG,YAAY,0BAA0B;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IAClE,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,IAA2B;IAC9D,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC;YACtC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,WAAW,EAAE,IAAI,CAAC,MAAM;YACxB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;QACH,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE;YAC7C,cAAc,EAAE,QAAQ,CAAC,IAAI;YAC7B,eAAe,EAAE,QAAQ,CAAC,GAAG;YAC7B,iBAAiB,EAAE,SAAS;SAC7B,CAAC,IAAI,IAAI,CAAC;IACb,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,wCAAwC,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC,CAAC;QAC/E,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC;IACzF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,IAA2B;IAChE,IAAI,CAAC,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,CAAC;QACH,MAAM,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC9D,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,IAAI,IAAI,CAAC;IAC3F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,0CAA0C,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC,CAAC;QACjF,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC;IACzF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,IAA2B,EAAE,cAAsB;IACtF,IAAI,CAAC,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,CAAC;QACH,MAAM,qBAAqB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QACjF,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,IAAI,IAAI,CAAC;IAC3F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,wCAAwC,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC,CAAC;QAC/E,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC;IACzF,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAoB;IAC5C,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;SAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;SAClB,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc,EAAE,SAAkB;IAC7D,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IAC7B,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,MAAM,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,IAAY,EACZ,MAAc,EACd,OAAoB,EACpB,IAAwB,EACxB,SAAkB;IAElB,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IAChC,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,OAAe,EAAE,OAAgB,EAAE,EAAE,CACtE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxF,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACtI,MAAM,aAAa,GAAG,KAAK,EAAE,MAAM,CAAC;IACpC,IAAI,6BAA6B,IAAI,SAAS,EAAE,CAAC;QAC/C,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QACrD,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,EAAE,GAAG,6BAA6B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7D,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnE,MAAM,GAAG,GAAG,MAAM,EAAE,WAAW,EAAE,CAAC;IAElC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC3C,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACxC,OAAO;IACT,CAAC;IAED,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,YAAY,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;YACvD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,YAAY,CAAC,MAAM,EAAE,2DAA2D,CAAC,CAAC;YACxF,OAAO;QACT,CAAC;QACD,IAAI,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;YAC9B,IAAI;YACJ,MAAM,EAAE,EAAE,CAAC,MAAM;YACjB,MAAM,EAAE,eAAe,CAAC,EAAE,CAAC;YAC3B,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS;YAC/B,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,WAAW,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW;SAC1E,CAAC,CAAC;QACH,IAAI,GAAG,MAAM,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc;YACtC,CAAC,CAAC,gBAAgB,IAAI,CAAC,cAAc,EAAE;YACvC,CAAC,CAAC,oBAAoB,IAAI,CAAC,iBAAiB,IAAI,SAAS,eAAe,CAAC;QAC3E,MAAM,YAAY,CAAC,MAAM,EAAE,WAAW,IAAI,CAAC,MAAM,KAAK,YAAY,WAAW,IAAI,CAAC,IAAI,cAAc,IAAI,CAAC,SAAS,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9I,OAAO;IACT,CAAC;IAED,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,EAAE,EAAE,MAAM,IAAI,aAAa,IAAI,CAAC,GAAG,EAAE;YAClD,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;YAClC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,EAAE,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,MAAM,IAAI,MAAM,CAAC;QACzI,CAAC,CAAC,EAAE,CAAC;QACL,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,YAAY,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,cAAc,IAAI,GAAG,YAAY,CAAC,CAAC,SAAS,WAAW,CAAC,CAAC,MAAM,aAAa,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,cAAc,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3N,MAAM,YAAY,CAAC,MAAM,EAAE,WAAW,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,YAAY,CAAC,MAAM,EAAE,oCAAoC,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,MAAM,YAAY,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,OAAO;IACT,CAAC;IAED,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACpC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,YAAY,CAAC,MAAM,EAAE,mCAAmC,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QACD,IAAI,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,IAAI,GAAG,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc;YAClC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,sBAAsB,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC;YACpG,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,YAAY,CAAC,MAAM,EAAE,WAAW,IAAI,CAAC,MAAM,GAAG,QAAQ,2CAA2C,CAAC,CAAC;QACzG,OAAO;IACT,CAAC;IAED,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,YAAY,CAAC,MAAM,EAAE,yCAAyC,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QACD,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QACvG,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,YAAY,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QACD,IAAI,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,IAAI,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,YAAY,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;YACnD,OAAO;QACT,CAAC;QACD,IAAI,EAAE,EAAE,KAAK,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,MAAM,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACpE,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAW,EACX,MAAc,EACd,OAAoB,EACpB,IAAwB,EACxB,SAAkB;IAElB,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;IAC9D,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,OAAe,EAAE,OAAgB,EAAE,EAAE,CACtE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrF,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,MAAM,GAAG,GAAW,YAAY,CAAC,EAAE,EAAE,SAAS,IAAI,SAAS,CAAC,CAAC;IAE7D,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,cAAc,GAAG,EAAE,CAAC,CAAC;IAC3C,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAEtC,IAAI,CAAC;QACH,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,IAAI,EAAE,EAAE,CAAC;oBACP,MAAM,eAAe,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;oBAC7C,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;oBACrC,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;oBAC3C,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;oBACrD,MAAM,YAAY,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;oBACzC,MAAM,gBAAgB,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;oBAC/C,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE;wBAC7B,IAAI,CAAC;4BACH,MAAM,OAAO,GAAG,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;4BAC1E,OAAO,OAAO,CAAC,kBAAkB,EAAE,CAAC;gCAClC,SAAS,EAAE,eAAe;gCAC1B,YAAY,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY;6BACtC,CAAC,IAAI,IAAI,CAAC;wBACb,CAAC;wBAAC,MAAM,CAAC;4BAAC,OAAO,IAAI,CAAC;wBAAC,CAAC;oBAC1B,CAAC,CAAC,EAAE,CAAC;oBACL,UAAU,CAAC,EAAE,CAAC,CAAC;oBACf,YAAY,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;oBAC3C,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,SAAU,CAAC,CAAC,CAAC;oBACtD,MAAM,IAAI,GAAG,sBAAsB,CACjC,eAAe,EACf,YAAY,EACZ,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,GAAG,CACJ,CAAC;oBACF,MAAM,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;oBAChD,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,oCAAoC,CAAC,CAAC;gBAC9D,CAAC;qBAAM,CAAC;oBACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;gBACzE,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,IAAI,EAAE,EAAE,CAAC;oBACP,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBACnC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAoB,CAAC,CAAC;wBACtD,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACrE,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,yBAAyB,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC7E,CAAC;yBAAM,CAAC;wBACN,UAAU,CAAC,EAAE,CAAC,CAAC;wBACf,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACrE,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,wBAAwB,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC5E,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,+BAA+B,CAAC,CAAC;gBACzD,CAAC;qBAAM,CAAC;oBACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;gBACzE,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAClE,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,cAAc,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC9D,MAAM;gBACR,CAAC;gBACD,IAAI,CAAC,EAAE,EAAE,CAAC;oBACR,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBACvE,MAAM;gBACR,CAAC;gBACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;gBACvD,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;oBACnB,MAAM,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;oBAC7C,MAAM;gBACR,CAAC;gBACD,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;gBAC7C,UAAU,CAAC,EAAE,CAAC,CAAC;gBACf,EAAE,CAAC,UAAU,GAAG,UAAU,CAAC;gBAC3B,EAAE,CAAC,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;gBACnC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;gBACvC,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC9E,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,kCAAkC,YAAY,iBAAiB,CAAC,CAAC;gBACvF,MAAM;YACR,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjE,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAExD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC5B,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;oBAC3C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACnC,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,wBAAwB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;wBACxE,MAAM;oBACR,CAAC;oBACD,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;wBAC/C,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,6BAA6B,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC1F,MAAM;oBACR,CAAC;oBACD,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;oBACtC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;oBAClC,MAAM,WAAW,GAAG,GAAG,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC;oBAC1D,EAAE,CAAC,UAAU,GAAG,YAAY,CAAC;oBAC7B,EAAE,CAAC,OAAO,CAAC,UAAU,GAAG,YAAY,CAAC;oBACrC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;oBAEvC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;wBACnB,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;wBACrC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;wBAC9B,EAAE,CAAC,WAAW,GAAG,KAAK,CAAC;wBACvB,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;wBACvF,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC;wBAC7C,MAAM,MAAM,GAAG,mBAAmB,CAChC,aAAa,EACb,EAAE,CAAC,OAAO,CAAC,SAAS,EACpB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,eAAe,EACtB,EAAE,CAAC,kBAAkB,EACrB,EAAE,CAAC,eAAe,EAClB,MAAM,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,EAC/C,EAAE,CAAC,gBAAgB,EACnB,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,EACpD,GAAG,EACH,EAAE,CAAC,aAAa,EAChB,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CACjC,CAAC;wBACF,oBAAoB,CAAC,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;wBAChD,EAAE,CAAC,aAAa,GAAG,SAAS,CAAC;wBAC7B,EAAE,CAAC,kBAAkB,GAAG,SAAS,CAAC;wBAClC,EAAE,CAAC,eAAe,GAAG,SAAS,CAAC;wBAC/B,EAAE,CAAC,aAAa,GAAG,SAAS,CAAC;wBAC7B,EAAE,CAAC,gBAAgB,GAAG,SAAS,CAAC;wBAChC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;wBACvB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC5F,CAAC;yBAAM,CAAC;wBACN,UAAU,CAAC,EAAE,CAAC,CAAC;wBACf,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;wBAChD,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;wBACxF,EAAE,CAAC,OAAO,GAAG,OAAO,CAAC;wBACrB,EAAE,CAAC,cAAc,GAAG,SAAS,CAAC;wBAC9B,EAAE,CAAC,YAAY,GAAG,SAAS,CAAC;wBAC5B,EAAE,CAAC,OAAO,CAAC,UAAU,GAAG,YAAY,CAAC;wBACrC,EAAE,CAAC,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC;wBACpC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;wBACvC,EAAE,CAAC,UAAU,GAAG,KAAK,CAAC;wBACtB,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;wBAC1B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBACpF,CAAC;oBACD,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC;wBACzB,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC;wBAClD,EAAE,CAAC,iBAAiB,GAAG,SAAS,CAAC;oBACnC,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,6BAA6B,SAAS,KAAK,YAAY,EAAE,CAAC,CAAC;oBACjF,MAAM;gBACR,CAAC;gBAED,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBACpC,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,0BAA0B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC5E,CAAC;gBAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;gBACxC,MAAM,WAAW,GAAG,4BAA4B,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,IAAI,SAAS,CAAC,CAAC;gBACjF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,gCAAgC,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC5H,MAAM;gBACR,CAAC;gBACD,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,6BAA6B,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBACjG,MAAM;gBACR,CAAC;gBACD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC5F,MAAM;gBACR,CAAC;gBACD,IAAI,EAAE;oBAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC9C,MAAM,UAAU,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;gBAC5C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBACxE,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;gBAC1E,IAAI,EAAE;oBAAE,EAAE,CAAC,iBAAiB,GAAG,aAAa,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,yBAAyB,QAAQ,CAAC,MAAM,aAAa,CAAC,CAAC;gBAC7E,MAAM;YACR,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC;oBACpB,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;oBACrC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;oBAC9B,EAAE,CAAC,WAAW,GAAG,KAAK,CAAC;oBACvB,MAAM,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;oBACvF,MAAM,aAAa,GAAG,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC;oBAC7C,MAAM,MAAM,GAAG,mBAAmB,CAChC,aAAa,EACb,EAAE,CAAC,OAAO,CAAC,SAAS,EACpB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,eAAe,EACtB,EAAE,CAAC,kBAAkB,EACrB,EAAE,CAAC,eAAe,EAClB,MAAM,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,EAC/C,EAAE,CAAC,gBAAgB,EACnB,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,EACpD,GAAG,EACH,EAAE,CAAC,aAAa,EAChB,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CACjC,CAAC;oBACF,oBAAoB,CAAC,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;oBAChD,EAAE,CAAC,aAAa,GAAG,SAAS,CAAC;oBAC7B,EAAE,CAAC,kBAAkB,GAAG,SAAS,CAAC;oBAClC,EAAE,CAAC,eAAe,GAAG,SAAS,CAAC;oBAC/B,EAAE,CAAC,aAAa,GAAG,SAAS,CAAC;oBAC7B,EAAE,CAAC,gBAAgB,GAAG,SAAS,CAAC;oBAChC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;oBACvB,MAAM,GAAG,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;oBACrC,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,iBAAiB,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC/D,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC;wBACzB,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC;wBAClD,EAAE,CAAC,iBAAiB,GAAG,SAAS,CAAC;oBACnC,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,0CAA0C,GAAG,EAAE,CAAC,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;gBACvE,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,IAAI,EAAE,EAAE,CAAC;oBACP,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;oBAC7C,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;oBACzD,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC3F,MAAM,KAAK,GAAG;wBACZ,YAAY,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE;wBAClC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE;wBACtG,aAAa,OAAO,EAAE;wBACtB,QAAQ,oBAAoB,CAAC,EAAE,CAAC,EAAE;wBAClC,GAAG,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,KAAK,oBAAoB,EAAE,CAAC,CAAC,CAAC,cAAc,oBAAoB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBACtK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBACxE,iBAAiB,IAAI,MAAM;wBAC3B,oBAAoB,cAAc,EAAE,EAAE;qBACvC,CAAC;oBACF,MAAM,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC/C,CAAC;qBAAM,CAAC;oBACN,MAAM,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBAC9F,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,gCAAgC,EAAE;wBAC7D,KAAK,EAAE,cAAc,EAAE;wBACvB,OAAO,EAAE,eAAe;wBACxB,OAAO,EAAE,oBAAoB,EAAE;qBAChC,EAAE,GAAG,CAAC,CAAC,CAAC;gBACX,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;gBACnE,MAAM,MAAM,GAAG,EAAE,EAAE,MAAO,CAAC;gBAC3B,MAAM,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;gBAC3E,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,4BAA4B,CAAC,CAAC;gBACpD,MAAM;YACR,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;gBAC5D,MAAM,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;gBACpE,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,wBAAwB,CAAC,CAAC;gBAChD,MAAM;YACR,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,MAAM,GAAG,EAAE,EAAE,MAAM,CAAC;gBAC1B,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;oBAC1B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,cAAc,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC9D,MAAM;gBACR,CAAC;gBACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;gBAC3D,MAAM,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBACnE,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,wBAAwB,CAAC,CAAC;gBAChD,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjE,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBAC3C,MAAM,YAAY,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;oBAC7C,MAAM;gBACR,CAAC;gBACD,MAAM,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;gBACpH,IAAI,CAAC,OAAO,EAAE,SAAS,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC;oBACnD,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,0BAA0B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC1E,MAAM;gBACR,CAAC;gBACD,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;gBAC9E,MAAM,YAAY,CAAC,MAAM,EAAE;oBACzB,CAAC,CAAC,iBAAiB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACpC,EAAE;oBACF,CAAC,CAAC,iBAAiB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACpC,OAAO;oBACP,EAAE;oBACF,CAAC,CAAC,iBAAiB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACpC,CAAC,CAAC,iBAAiB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACpC,EAAE;oBACF,CAAC,CAAC,kBAAkB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACrC,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC;iBAC3C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACd,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrE,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC;oBACpB,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC;oBAC/B,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,IAAI,aAAa,CAAC,CAAC;oBAClE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjF,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;oBAC5D,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBACrG,MAAM;gBACR,CAAC;gBACD,MAAM,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;gBACpE,MAAM,QAAQ,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;gBAErD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBACvE,MAAM;gBACR,CAAC;gBAED,MAAM,YAAY,GAAG,SAAS,CAAC;gBAC/B,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,YAAY,CAAC,CAAC;oBACjE,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;wBACvF,MAAM;oBACR,CAAC;oBACD,IAAI,EAAE;wBAAE,MAAM,iBAAiB,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;oBAC7D,MAAM;gBACR,CAAC;gBAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC7D,MAAM,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;gBACpD,MAAM;YACR,CAAC;YAED,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjE,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChE,MAAM,KAAK,GAAG,SAAS,IAAI,EAAE,EAAE,SAAS,CAAC;gBACzC,MAAM,MAAM,GAAG,EAAE,EAAE,MAAM,CAAC;gBAE1B,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;oBACtB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBACvE,MAAM;gBACR,CAAC;gBAED,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBAC7C,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;wBACX,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,sBAAsB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBACxE,CAAC;yBAAM,CAAC;wBACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,kBAAkB,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBACpF,CAAC;oBACD,MAAM;gBACR,CAAC;gBAED,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;oBACrC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;wBACvE,MAAM;oBACR,CAAC;oBACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;oBACnD,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;wBACnB,MAAM,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;wBAC7C,MAAM;oBACR,CAAC;oBACD,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;oBAC7C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBACvD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;wBACf,IAAI,MAAM,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;4BAC1C,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,+BAA+B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;wBACjF,CAAC;6BAAM,CAAC;4BACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,wBAAwB,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC1F,CAAC;wBACD,MAAM;oBACR,CAAC;oBACD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO;wBACzB,CAAC,CAAC,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC;wBAC5C,CAAC,CAAC,CAAC,CAAC,yBAAyB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;oBACjD,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,yBAAyB,EAAE;wBACtD,IAAI;wBACJ,MAAM;wBACN,MAAM;wBACN,QAAQ,EAAE,YAAY;qBACvB,EAAE,GAAG,CAAC,CAAC,CAAC;oBACT,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,uBAAuB,MAAM,QAAQ,MAAM,EAAE,CAAC,CAAC;oBACrE,MAAM;gBACR,CAAC;gBAED,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBACrC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBACjD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;wBACf,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC1F,MAAM;oBACR,CAAC;oBACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;wBACrB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,6BAA6B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC/E,CAAC;yBAAM,CAAC;wBACN,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,2BAA2B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC7E,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,yBAAyB,MAAM,aAAa,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACrF,MAAM;gBACR,CAAC;gBAED,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;gBACtE,MAAM;YACR,CAAC;YAED,KAAK,QAAQ,CAAC;YACd,KAAK,IAAI,CAAC,CAAC,CAAC;gBACV,MAAM,YAAY,GAAG,SAAS,IAAI,EAAE,EAAE,SAAS,CAAC;gBAChD,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,kBAAkB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBAClE,MAAM;gBACR,CAAC;gBAED,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC;gBACtC,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,qBAAqB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBACrE,MAAM;gBACR,CAAC;gBAED,0EAA0E;gBAC1E,uEAAuE;gBACvE,yEAAyE;gBACzE,8CAA8C;gBAC9C,EAAE;gBACF,6DAA6D;gBAC7D,sEAAsE;gBACtE,qEAAqE;gBACrE,yEAAyE;gBACzE,yEAAyE;gBACzE,sEAAsE;gBACtE,uEAAuE;gBACvE,2DAA2D;gBAC3D,uEAAuE;gBACvE,wDAAwD;gBACxD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACxC,MAAM,YAAY,GAAG,EAAE,EAAE,MAAM,CAAC;gBAChC,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;gBAE5C,2EAA2E;gBAC3E,yEAAyE;gBACzE,wEAAwE;gBACxE,sEAAsE;gBACtE,8DAA8D;gBAC9D,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7D,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,8FAA8F,CAAC,CAAC;oBACtH,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,0BAA0B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC1E,MAAM;gBACR,CAAC;gBAED,wEAAwE;gBACxE,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;gBAE5F,wEAAwE;gBACxE,MAAM,kBAAkB,GAAa,EAAE,CAAC;gBACxC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;gBAC9C,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;oBAChC,MAAM,QAAQ,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;oBAC5C,uEAAuE;oBACvE,sEAAsE;oBACtE,uEAAuE;oBACvE,0DAA0D;oBAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;oBAC3D,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;oBACzG,MAAM,WAAW,GACf,CAAC,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC;wBAC5C,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,IAAI,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC;oBACzF,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,mDAAmD,QAAQ,CAAC,IAAI,oBAAoB,CAAC,CAAC;wBAC5G,MAAM;oBACR,CAAC;oBACD,mEAAmE;oBACnE,oEAAoE;oBACpE,0DAA0D;oBAC1D,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,kEAAkE,CAAC,CAAC;wBAC1F,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,0BAA0B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC1E,MAAM;oBACR,CAAC;oBACD,IAAI,OAAO,GAAmD,EAAE,CAAC;oBACjE,IAAI,CAAC;wBACH,OAAO,GAAG,MAAM,kBAAkB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;oBACjE,CAAC;oBAAC,OAAO,CAAM,EAAE,CAAC;wBAChB,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,6CAA6C,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;oBACxF,CAAC;oBACD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAChE,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;wBACxB,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,WAAW;4BAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;oBAChF,CAAC;oBACD,uEAAuE;oBACvE,oEAAoE;oBACpE,wEAAwE;oBACxE,yCAAyC;oBACzC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;oBAC/B,IAAI,UAA8B,CAAC;oBACnC,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;wBAC7B,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;wBAClE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;4BAAC,UAAU,GAAG,EAAE,CAAC,IAAI,CAAC;4BAAC,MAAM;wBAAC,CAAC;wBAC5D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;4BAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;4BAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAAC,CAAC;oBACpG,CAAC;oBACD,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,gDAAgD,UAAU,0BAA0B,CAAC,CAAC;wBAC5G,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,0BAA0B,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC1E,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,yEAAyE;gBACzE,sEAAsE;gBACtE,sEAAsE;gBACtE,uEAAuE;gBACvE,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;gBAC9D,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;oBACzB,IAAI,CAAC,CAAC,IAAI;wBAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC9D,CAAC;gBACD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAChF,MAAM,QAAQ,GAAG,EAAE,CAAC,CAAC,yDAAyD;gBAC9E,IAAI,SAAiB,CAAC;gBACtB,IAAI,SAAS,EAAE,CAAC;oBACd,SAAS,GAAG,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC3F,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;oBACvB,MAAM,EAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC9L,SAAS,GAAG,CAAC,CAAC,0BAA0B,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;gBACzD,CAAC;gBAED,yEAAyE;gBACzE,+DAA+D;gBAC/D,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;gBAE/F,IAAI,CAAC;oBACH,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;oBAC7E,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC;wBACvC,gBAAgB,EAAE,YAAY;wBAC9B,UAAU,EAAE,kBAAkB;wBAC9B,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,CAAC,YAAY,CAAC;wBAC3B,eAAe,EAAE,YAAY;wBAC7B,iBAAiB,EAAE,YAAY;qBAChC,CAAC,CAAC;oBACH,MAAM,IAAI,GAAG,yDAAyD,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1G,oEAAoE;oBACpE,gEAAgE;oBAChE,MAAM,KAAK,GAAa,EAAE,CAAC;oBAC3B,IAAI,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBACjD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBAClE,CAAC;yBAAM,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;wBAChC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBACzF,CAAC;oBACD,qEAAqE;oBACrE,uEAAuE;oBACvE,uEAAuE;oBACvE,uEAAuE;oBACvE,MAAM,MAAM,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,CAAC,CAAC;oBACzE,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;oBACxF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,wBAAwB,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC5F,CAAC;oBACD,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACpC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC3G,CAAC;oBACD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClE,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;oBACrG,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,yBAAyB,MAAM,CAAC,MAAM,UAAU,SAAS,WAAW,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,YAAY,EAAE,CAAC,CAAC;oBACnJ,iEAAiE;oBACjE,sEAAsE;oBACtE,uEAAuE;oBACvE,4DAA4D;gBAC9D,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,oBAAoB,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;oBAClE,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;gBACjG,CAAC;gBACD,MAAM;YACR,CAAC;YAED,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;gBAC1E,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,IAAI,aAAa,CAAC,CAAC;gBAClE,MAAM,IAAI,GAAG;oBACX,CAAC,CAAC,sBAAsB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACzC,CAAC,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC;oBACjC,CAAC,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC;oBACnC,CAAC,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC;oBAC9B,CAAC,CAAC,gBAAgB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACnC,CAAC,CAAC,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC;oBAChC,CAAC,CAAC,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC;oBAChC,EAAE;oBACF,CAAC,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC;oBAC/C,yCAAyC;oBACzC,CAAC,GAAG,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;oBACnC,EAAE;oBACF,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC;oBAC1C,CAAC,CAAC,sBAAsB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACzC,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACvC,CAAC,CAAC,sBAAsB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACzC,CAAC,CAAC,sBAAsB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACzC,CAAC,CAAC,mBAAmB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACtC,EAAE;oBACF,OAAO;oBACP,2BAA2B;oBAC3B,4EAA4E;oBAC5E,EAAE;oBACF,CAAC,CAAC,uBAAuB,EAAE,SAAS,EAAE,GAAG,CAAC;oBAC1C,EAAE;oBACF,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACvC,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC;oBAC/B,CAAC,CAAC,iBAAiB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACpC,EAAE;oBACF,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACvC,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC;oBAC/B,CAAC,CAAC,mBAAmB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACtC,EAAE;oBACF,CAAC,CAAC,qBAAqB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACxC,CAAC,CAAC,kBAAkB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACrC,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACvC,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACvC,EAAE;oBACF,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACvC,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC;oBAC/B,CAAC,CAAC,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC;oBAChC,EAAE;oBACF,CAAC,CAAC,oBAAoB,EAAE,SAAS,EAAE,GAAG,CAAC;oBACvC,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC;oBAC/B,EAAE;oBACF,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC;iBAC/B,CAAC;gBACF,MAAM,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5C,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,aAAa,GAAG,WAAW,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAwB,EACxB,EAAiB,EACjB,IAAwB,EACxB,SAAkB;IAElB,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,OAAe,EAAE,OAAgB,EAAE,EAAE,CACtE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,GAAG,GAAW,YAAY,CAAC,EAAE,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC;IAE5D,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3D,MAAM,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,yBAAyB,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QACtF,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,GAAG,CAAC;IAE1D,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC;IAC3B,EAAE,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC;IACnC,EAAE,CAAC,OAAO,CAAC,KAAK,GAAG,UAAU,OAAO,EAAE,CAAC;IACvC,EAAE,CAAC,WAAW,GAAG;QACf,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,cAAc,EAAE,MAAM,CAAC,MAAM;QAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;IACF,EAAE,CAAC,OAAO,CAAC,WAAW,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/C,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IAEvC,eAAe,CAAC,EAAE,CAAC,CAAC;IAEpB,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;AACtH,CAAC"}
1
+ {"version":3,"file":"command-handler.js","sourceRoot":"","sources":["../../src/core/command-handler.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import { type IncomingMessage, type ServerResponse } from 'node:http';
2
+ import type { TriggerInput, TriggerResult } from '../workflows/trigger-run.js';
3
+ export declare function setWorkflowRunner(fn: (input: TriggerInput) => Promise<TriggerResult>): void;
2
4
  import { composeRowFromActive, composeRowFromClosed, type SessionRow } from './dashboard-rows.js';
3
5
  import type { ParsedSchedule } from '../types.js';
4
6
  export interface IpcServerHandle {
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-ipc-server.d.ts","sourceRoot":"","sources":["../../src/core/dashboard-ipc-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,KAAK,eAAe,EAAE,KAAK,cAAc,EAAe,MAAM,WAAW,CAAC;AAiBjG,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EAIpB,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,aAAa,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,MAAM,MAAM,OAAO,GAAG,CACpB,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAW1B,0FAA0F;AAC1F,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAM7E;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAGhF;AAED,wBAAsB,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAKhF;AAWD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;AAMtD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAA0B;AAKxE,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAA0B;AAyIxE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,cAAc,EAAE,MAAM,CAAC;CACxB;AAoTD,wBAAgB,cAAc,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CA8B7F"}
1
+ {"version":3,"file":"dashboard-ipc-server.d.ts","sourceRoot":"","sources":["../../src/core/dashboard-ipc-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,KAAK,eAAe,EAAE,KAAK,cAAc,EAAe,MAAM,WAAW,CAAC;AAsBjG,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAM/E,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAE3F;AACD,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EAIpB,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,aAAa,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,MAAM,MAAM,OAAO,GAAG,CACpB,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAW1B,0FAA0F;AAC1F,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAM7E;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAGhF;AAED,wBAAsB,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAKhF;AAWD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,CAAC;AAMtD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAA0B;AAKxE,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAA0B;AAiQxE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,cAAc,EAAE,MAAM,CAAC;CACxB;AAuYD,wBAAgB,cAAc,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CA8B7F"}
@@ -6,16 +6,28 @@ import * as scheduleStore from '../services/schedule-store.js';
6
6
  import * as groupsStore from '../services/groups-store.js';
7
7
  import { createGroupWithBots } from '../services/group-creator.js';
8
8
  import * as oncallStore from '../services/oncall-store.js';
9
+ import * as brandStore from '../services/brand-store.js';
10
+ import * as cardPrefsStore from '../services/card-prefs-store.js';
9
11
  import * as chatFirstSeenStore from '../services/chat-first-seen-store.js';
10
12
  import * as scheduler from './scheduler.js';
11
- import { listActiveSessions, findActiveBySessionId, closeSession, getActiveSessionsRegistry } from './worker-pool.js';
12
- import { getChatMode, replyMessage, sendMessage } from '../im/lark/client.js';
13
+ import { listActiveSessions, findActiveBySessionId, closeSession, getActiveSessionsRegistry, transferSession } from './worker-pool.js';
14
+ import { listOnlineDaemons } from '../utils/daemon-discovery.js';
15
+ import { getChatMode, replyMessage, sendMessage, resolveUnionIdFromOpenId } from '../im/lark/client.js';
13
16
  import { resumeSession } from './session-manager.js';
14
17
  import { getCliDisplayName } from '../im/lark/card-builder.js';
15
18
  import { locateLimiter } from './dashboard-locate.js';
16
19
  import { dashboardEventBus } from './dashboard-events.js';
17
20
  import { validateWorkingDir } from './working-dir.js';
18
21
  import { resolveRoleFile, writeRoleFile, deleteRoleFile } from './role-resolver.js';
22
+ import { triggerSessionTurn } from './trigger-session.js';
23
+ import { triggerWorkflowFromEnvelope } from '../workflows/trigger-from-envelope.js';
24
+ import { validateTriggerRequest } from '../services/trigger-types.js';
25
+ // Workflow runner is wired by the daemon (it owns the heavy triggerWorkflowRun
26
+ // deps). Until set, workflow-targeted triggers report not-implemented.
27
+ let workflowRunner = null;
28
+ export function setWorkflowRunner(fn) {
29
+ workflowRunner = fn;
30
+ }
19
31
  import { composeRowFromActive, composeRowFromClosed, feishuChatLink, setBotName as setRowsBotName, getBotName, } from './dashboard-rows.js';
20
32
  const routes = [];
21
33
  /** Register a handler. Path supports `:name` segments captured into the params object. */
@@ -129,6 +141,117 @@ ipcRoute('POST', '/api/sessions/:sessionId/resume', async (_req, res, params) =>
129
141
  cliId,
130
142
  });
131
143
  });
144
+ /**
145
+ * Cross-daemon session transfer endpoint.
146
+ *
147
+ * Called by a *leader* daemon during `/relay --create` to instruct *peer*
148
+ * daemons to migrate their own session (located by `sourceAnchor`) into a
149
+ * newly-created chat. The peer daemon authenticates the request and runs its
150
+ * own `transferSession()` internally — the leader never touches another
151
+ * daemon's process / tmux / jsonl directly.
152
+ *
153
+ * Security:
154
+ * - Only accepts requests from 127.0.0.1 (no remote daemon coordination).
155
+ * - `requesterLarkAppId` must be a known bot in this machine's bots
156
+ * registry. The threat model assumes a malicious bot daemon process is
157
+ * already root-equivalent on the box; this check just prevents random
158
+ * other 127.0.0.1 processes from forging migrations.
159
+ * - `sourceAnchor` must match a session currently owned by *this* daemon
160
+ * (peer can only move its own sessions — never anybody else's).
161
+ * - Owner-only: only the original session owner may relocate the session.
162
+ *
163
+ * The leader passes `targetRootMessageId` — typically the leader's M1
164
+ * notification message — so the peer's session lands anchored on a real
165
+ * message in the new chat. Since the new chat is always chat-scope, the
166
+ * rootMessageId is only used for audit / display, not routing.
167
+ */
168
+ ipcRoute('POST', '/api/sessions/migrate-to-chat', async (req, res) => {
169
+ const remote = req.socket.remoteAddress;
170
+ // node may report '127.0.0.1' or '::ffff:127.0.0.1' (IPv4 mapped) or '::1'.
171
+ const localish = remote === '127.0.0.1' || remote === '::1' || remote === '::ffff:127.0.0.1';
172
+ if (!localish)
173
+ return jsonRes(res, 403, { ok: false, error: 'not_local' });
174
+ let body;
175
+ try {
176
+ body = await readJsonBody(req);
177
+ }
178
+ catch {
179
+ return jsonRes(res, 400, { ok: false, error: 'invalid_json' });
180
+ }
181
+ const { sourceAnchor, targetChatId, targetRootMessageId, requesterLarkAppId, requestingUserOpenId, requestingUserUnionId } = body;
182
+ if (!sourceAnchor || !targetChatId || !targetRootMessageId || !requesterLarkAppId || !requestingUserOpenId) {
183
+ return jsonRes(res, 400, { ok: false, error: 'missing_field' });
184
+ }
185
+ // Requester must be a live botmux daemon — not a random localhost process
186
+ // pretending to be one. We check the cross-process daemon registry
187
+ // (~/.botmux/data/dashboard-daemons/<larkAppId>.json + heartbeat) rather
188
+ // than this process's local bot list: in production each bot has its own
189
+ // daemon process, and a per-process `getAllBots()` only sees its OWN bot
190
+ // (botmux is one-daemon-per-bot at boot, daemon.ts:2367). Using the
191
+ // registry lets the peer recognise the leader bot.
192
+ const requesterKnown = listOnlineDaemons().some(d => d.larkAppId === requesterLarkAppId);
193
+ if (!requesterKnown)
194
+ return jsonRes(res, 403, { ok: false, error: 'unknown_requester' });
195
+ // Locate this daemon's own session at the given source anchor. We match
196
+ // by anchor (rootMessageId for thread-scope, chatId for chat-scope) AND
197
+ // larkAppId — multi-bot threads share a rootMessageId but each bot's
198
+ // session is uniquely keyed by (anchor, larkAppId).
199
+ const reg = getActiveSessionsRegistry();
200
+ if (!reg)
201
+ return jsonRes(res, 503, { ok: false, error: 'registry_unavailable' });
202
+ let ds = undefined;
203
+ for (const candidate of reg.values()) {
204
+ const candAnchor = candidate.scope === 'chat' ? candidate.chatId : candidate.session.rootMessageId;
205
+ if (candAnchor === sourceAnchor && candidate.larkAppId === cachedLarkAppId) {
206
+ ds = candidate;
207
+ break;
208
+ }
209
+ }
210
+ if (!ds)
211
+ return jsonRes(res, 404, { ok: false, error: 'no_session_at_anchor' });
212
+ // Owner-only: the user who triggered /relay --create must own this peer's
213
+ // session too. If a peer's session is owned by someone else, we refuse —
214
+ // the leader summarises this as "skipped: not your session" rather than
215
+ // forcing a transfer of someone else's work.
216
+ //
217
+ // Cross-app identity: Lark `open_id` is app-scoped — the same user has a
218
+ // different open_id in each bot's namespace, so leader's senderOpenId
219
+ // and peer's stored ownerOpenId cannot be compared directly. Prefer
220
+ // `union_id` (stable across apps within a tenant) when both sides have
221
+ // it. Sessions persisted before ownerUnionId existed fall through to a
222
+ // lazy backfill: resolve peer's stored open_id → union_id via Lark API
223
+ // (using PEER's bot client, so the open_id is in the right namespace),
224
+ // persist for next time, and compare.
225
+ if (ds.session.ownerOpenId) {
226
+ let peerOwnerUnionId = ds.session.ownerUnionId;
227
+ if (!peerOwnerUnionId && requestingUserUnionId) {
228
+ // Backfill: legacy session, look up the union_id via Lark API once
229
+ // and persist it so subsequent comparisons (and any other code path
230
+ // that grows to read it) are fast.
231
+ const looked = await resolveUnionIdFromOpenId(ds.larkAppId, ds.session.ownerOpenId);
232
+ if (looked) {
233
+ peerOwnerUnionId = looked;
234
+ ds.session.ownerUnionId = looked;
235
+ sessionStore.updateSession(ds.session);
236
+ }
237
+ }
238
+ const ownerMatch = (peerOwnerUnionId && requestingUserUnionId)
239
+ ? peerOwnerUnionId === requestingUserUnionId
240
+ // Same-bot fallback (no union_id on either side): open_id namespaces
241
+ // match, so direct compare works.
242
+ : ds.session.ownerOpenId === requestingUserOpenId;
243
+ if (!ownerMatch) {
244
+ return jsonRes(res, 403, { ok: false, error: 'not_session_owner' });
245
+ }
246
+ }
247
+ // Target chat was built by the leader's /relay --create — by
248
+ // construction a regular group. The peer inherits that guarantee.
249
+ const result = await transferSession(ds.session.sessionId, targetChatId, targetRootMessageId, 'group');
250
+ if (!result.ok) {
251
+ return jsonRes(res, 500, { ok: false, error: result.error });
252
+ }
253
+ jsonRes(res, 200, { ok: true, sessionId: ds.session.sessionId });
254
+ });
132
255
  ipcRoute('POST', '/api/sessions/:sessionId/locate', async (_req, res, params) => {
133
256
  const sid = params.sessionId;
134
257
  const acq = locateLimiter.tryAcquire(sid);
@@ -204,6 +327,48 @@ ipcRoute('GET', '/api/schedules', (_req, res) => {
204
327
  ipcRoute('POST', '/api/schedules/:id/run', (_req, res, p) => jsonRes(res, 200, scheduler.runNow(p.id)));
205
328
  ipcRoute('POST', '/api/schedules/:id/pause', (_req, res, p) => jsonRes(res, 200, scheduler.setEnabled(p.id, false)));
206
329
  ipcRoute('POST', '/api/schedules/:id/resume', (_req, res, p) => jsonRes(res, 200, scheduler.setEnabled(p.id, true)));
330
+ ipcRoute('POST', '/api/trigger', async (req, res) => {
331
+ if (!cachedLarkAppId)
332
+ return jsonRes(res, 503, { ok: false, errorCode: 'bot_not_found', error: 'larkAppId_not_set' });
333
+ const activeSessions = getActiveSessionsRegistry();
334
+ if (!activeSessions)
335
+ return jsonRes(res, 503, { ok: false, errorCode: 'trigger_failed', error: 'active session registry unavailable' });
336
+ let body;
337
+ try {
338
+ body = await readJsonBody(req);
339
+ }
340
+ catch {
341
+ return jsonRes(res, 400, { ok: false, errorCode: 'bad_json', error: 'invalid JSON body' });
342
+ }
343
+ const valid = validateTriggerRequest(body);
344
+ if (!valid.ok)
345
+ return jsonRes(res, valid.status, valid.body);
346
+ try {
347
+ let result;
348
+ if (valid.request.target.kind === 'workflow') {
349
+ if (!workflowRunner) {
350
+ return jsonRes(res, 501, { ok: false, errorCode: 'workflow_trigger_not_implemented', error: 'workflow runner not wired on this daemon' });
351
+ }
352
+ result = await triggerWorkflowFromEnvelope(valid.request, { larkAppId: cachedLarkAppId, runWorkflow: workflowRunner });
353
+ }
354
+ else {
355
+ result = await triggerSessionTurn(valid.request, { larkAppId: cachedLarkAppId, activeSessions });
356
+ }
357
+ const status = result.ok
358
+ ? 200
359
+ : result.errorCode === 'bot_not_in_chat'
360
+ ? 403
361
+ : result.errorCode === 'session_not_found'
362
+ ? 404
363
+ : result.errorCode === 'target_required' || result.errorCode === 'bad_request'
364
+ ? 400
365
+ : 500;
366
+ return jsonRes(res, status, result);
367
+ }
368
+ catch (e) {
369
+ return jsonRes(res, 500, { ok: false, errorCode: 'trigger_failed', error: e?.message ?? String(e) });
370
+ }
371
+ });
207
372
  // ─── Groups (Phase B) ──────────────────────────────────────────────────────
208
373
  ipcRoute('GET', '/api/groups', async (_req, res) => {
209
374
  if (!cachedLarkAppId)
@@ -369,13 +534,63 @@ ipcRoute('GET', '/api/bot-default-oncall', async (_req, res) => {
369
534
  if (!cachedLarkAppId)
370
535
  return jsonRes(res, 503, { error: 'larkAppId_not_set' });
371
536
  const { defaultOncall, autoboundChats } = oncallStore.getBotDefaultOncall(cachedLarkAppId);
537
+ const cardPrefs = cardPrefsStore.getBotCardPrefs(cachedLarkAppId);
372
538
  jsonRes(res, 200, {
373
539
  larkAppId: cachedLarkAppId,
374
540
  botName: getBotName(),
375
541
  defaultOncall: defaultOncall ?? { enabled: false, workingDir: '', since: 0 },
376
542
  autoboundChatCount: autoboundChats.length,
543
+ brandLabel: brandStore.getBotBrandLabel(cachedLarkAppId) ?? null,
544
+ disableStreamingCard: cardPrefs.disableStreamingCard,
545
+ writableTerminalLinkInCard: cardPrefs.writableTerminalLinkInCard,
546
+ privateCard: cardPrefs.privateCard,
377
547
  });
378
548
  });
549
+ // Per-bot card-behaviour toggles. Body may carry any subset of booleans; only
550
+ // present keys are applied. `{ disableStreamingCard?, writableTerminalLinkInCard?, privateCard? }`.
551
+ ipcRoute('PUT', '/api/bot-card-prefs', async (req, res) => {
552
+ if (!cachedLarkAppId)
553
+ return jsonRes(res, 503, { error: 'larkAppId_not_set' });
554
+ let body;
555
+ try {
556
+ body = await readJsonBody(req);
557
+ }
558
+ catch {
559
+ return jsonRes(res, 400, { ok: false, error: 'bad_json' });
560
+ }
561
+ const patch = {};
562
+ if (typeof body.disableStreamingCard === 'boolean')
563
+ patch.disableStreamingCard = body.disableStreamingCard;
564
+ if (typeof body.writableTerminalLinkInCard === 'boolean')
565
+ patch.writableTerminalLinkInCard = body.writableTerminalLinkInCard;
566
+ if (typeof body.privateCard === 'boolean')
567
+ patch.privateCard = body.privateCard;
568
+ if (Object.keys(patch).length === 0)
569
+ return jsonRes(res, 400, { ok: false, error: 'no_valid_fields' });
570
+ const r = await cardPrefsStore.updateBotCardPrefs(cachedLarkAppId, patch);
571
+ if (!r.ok)
572
+ return jsonRes(res, 400, { ok: false, error: r.reason });
573
+ jsonRes(res, 200, { ok: true, ...r.prefs });
574
+ });
575
+ // Per-bot card footer brand label. Body `{ brandLabel: string | null }`:
576
+ // • string (incl. '') → store verbatim ('' = brand off)
577
+ // • null / absent → clear the key (revert to default botmux brand)
578
+ ipcRoute('PUT', '/api/bot-brand-label', async (req, res) => {
579
+ if (!cachedLarkAppId)
580
+ return jsonRes(res, 503, { error: 'larkAppId_not_set' });
581
+ let body;
582
+ try {
583
+ body = await readJsonBody(req);
584
+ }
585
+ catch {
586
+ return jsonRes(res, 400, { ok: false, error: 'bad_json' });
587
+ }
588
+ const next = typeof body.brandLabel === 'string' ? body.brandLabel : null;
589
+ const r = await brandStore.updateBotBrandLabel(cachedLarkAppId, next);
590
+ if (!r.ok)
591
+ return jsonRes(res, 400, { ok: false, error: r.reason });
592
+ jsonRes(res, 200, { ok: true, brandLabel: r.brandLabel });
593
+ });
379
594
  ipcRoute('PUT', '/api/bot-default-oncall', async (req, res) => {
380
595
  if (!cachedLarkAppId)
381
596
  return jsonRes(res, 503, { error: 'larkAppId_not_set' });
@@ -429,6 +644,10 @@ ipcRoute('POST', '/api/groups/create', async (req, res) => {
429
644
  const userIds = Array.isArray(body.userOpenIds) && body.userOpenIds.every(x => typeof x === 'string')
430
645
  ? body.userOpenIds
431
646
  : [];
647
+ // Owner union_ids (tenant-stable) to pull bot owners into a federated group.
648
+ const ownerUnionIds = Array.isArray(body.ownerUnionIds) && body.ownerUnionIds.every(x => typeof x === 'string')
649
+ ? body.ownerUnionIds
650
+ : [];
432
651
  const transferTo = typeof body.transferOwnerTo === 'string' && body.transferOwnerTo.trim()
433
652
  ? body.transferOwnerTo.trim()
434
653
  : null;
@@ -449,6 +668,7 @@ ipcRoute('POST', '/api/groups/create', async (req, res) => {
449
668
  larkAppIds: body.larkAppIds,
450
669
  name,
451
670
  userOpenIds: userIds,
671
+ ownerUnionIds,
452
672
  transferOwnerTo: transferTo ?? undefined,
453
673
  notifyOwnerOpenId: notifyTo ?? undefined,
454
674
  bindWorkingDir: bindWorkingDir || undefined,