ccpoke 1.7.1 → 1.7.2

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 (104) hide show
  1. package/ccpoke-lock.json +102 -0
  2. package/dist/agent/claude-code/claude-code-installer.d.ts +7 -21
  3. package/dist/agent/claude-code/claude-code-installer.js +67 -317
  4. package/dist/agent/claude-code/claude-code-installer.js.map +1 -1
  5. package/dist/agent/claude-code/claude-code-provider.d.ts +1 -1
  6. package/dist/agent/claude-code/claude-code-provider.js +6 -6
  7. package/dist/agent/claude-code/claude-code-provider.js.map +1 -1
  8. package/dist/agent/codex/codex-installer.d.ts +7 -12
  9. package/dist/agent/codex/codex-installer.js +50 -105
  10. package/dist/agent/codex/codex-installer.js.map +1 -1
  11. package/dist/agent/codex/codex-provider.d.ts +1 -1
  12. package/dist/agent/codex/codex-provider.js +6 -6
  13. package/dist/agent/codex/codex-provider.js.map +1 -1
  14. package/dist/agent/cursor/cursor-installer.d.ts +7 -13
  15. package/dist/agent/cursor/cursor-installer.js +53 -109
  16. package/dist/agent/cursor/cursor-installer.js.map +1 -1
  17. package/dist/agent/cursor/cursor-provider.d.ts +1 -1
  18. package/dist/agent/cursor/cursor-provider.js +6 -6
  19. package/dist/agent/cursor/cursor-provider.js.map +1 -1
  20. package/dist/agent/gemini-cli/gemini-cli-installer.d.ts +7 -12
  21. package/dist/agent/gemini-cli/gemini-cli-installer.js +64 -91
  22. package/dist/agent/gemini-cli/gemini-cli-installer.js.map +1 -1
  23. package/dist/agent/gemini-cli/gemini-cli-provider.d.ts +1 -1
  24. package/dist/agent/gemini-cli/gemini-cli-provider.js +6 -6
  25. package/dist/agent/gemini-cli/gemini-cli-provider.js.map +1 -1
  26. package/dist/agent/gemini-cli/gemini-cli-settings.d.ts +1 -3
  27. package/dist/agent/gemini-cli/gemini-cli-settings.js +6 -33
  28. package/dist/agent/gemini-cli/gemini-cli-settings.js.map +1 -1
  29. package/dist/agent/opencode/opencode-installer.d.ts +7 -9
  30. package/dist/agent/opencode/opencode-installer.js +18 -130
  31. package/dist/agent/opencode/opencode-installer.js.map +1 -1
  32. package/dist/agent/opencode/opencode-provider.d.ts +1 -1
  33. package/dist/agent/opencode/opencode-provider.js +6 -6
  34. package/dist/agent/opencode/opencode-provider.js.map +1 -1
  35. package/dist/agent/types.d.ts +12 -5
  36. package/dist/channel/discord/discord-session-command-handler.js +1 -0
  37. package/dist/channel/discord/discord-session-command-handler.js.map +1 -1
  38. package/dist/channel/telegram/telegram-channel.d.ts +1 -0
  39. package/dist/channel/telegram/telegram-channel.js +30 -28
  40. package/dist/channel/telegram/telegram-channel.js.map +1 -1
  41. package/dist/commands/setup.js +96 -38
  42. package/dist/commands/setup.js.map +1 -1
  43. package/dist/commands/update.js +3 -1
  44. package/dist/commands/update.js.map +1 -1
  45. package/dist/hooks/hook-env-writer.d.ts +4 -0
  46. package/dist/hooks/hook-env-writer.js +33 -0
  47. package/dist/hooks/hook-env-writer.js.map +1 -0
  48. package/dist/hooks/hook-lock.d.ts +11 -0
  49. package/dist/hooks/hook-lock.js +40 -0
  50. package/dist/hooks/hook-lock.js.map +1 -0
  51. package/dist/hooks/hook-script-copier.d.ts +6 -0
  52. package/dist/hooks/hook-script-copier.js +49 -0
  53. package/dist/hooks/hook-script-copier.js.map +1 -0
  54. package/dist/i18n/locales/en.js +4 -3
  55. package/dist/i18n/locales/en.js.map +1 -1
  56. package/dist/i18n/locales/vi.js +4 -3
  57. package/dist/i18n/locales/vi.js.map +1 -1
  58. package/dist/i18n/locales/zh.js +4 -3
  59. package/dist/i18n/locales/zh.js.map +1 -1
  60. package/dist/i18n/types.d.ts +3 -2
  61. package/dist/index.js +3 -1
  62. package/dist/index.js.map +1 -1
  63. package/dist/tmux/tmux-scanner.js +45 -17
  64. package/dist/tmux/tmux-scanner.js.map +1 -1
  65. package/dist/tmux/tmux-session-resolver.js +8 -8
  66. package/dist/tmux/tmux-session-resolver.js.map +1 -1
  67. package/dist/utils/atomic-file.d.ts +3 -0
  68. package/dist/utils/atomic-file.js +26 -0
  69. package/dist/utils/atomic-file.js.map +1 -0
  70. package/dist/utils/constants.d.ts +1 -0
  71. package/dist/utils/constants.js +15 -2
  72. package/dist/utils/constants.js.map +1 -1
  73. package/dist/utils/paths.d.ts +5 -0
  74. package/dist/utils/paths.js +5 -0
  75. package/dist/utils/paths.js.map +1 -1
  76. package/hooks/claude-code-notification.cmd +13 -0
  77. package/hooks/claude-code-notification.sh +10 -0
  78. package/hooks/claude-code-permission-request.cmd +13 -0
  79. package/hooks/claude-code-permission-request.sh +13 -0
  80. package/hooks/claude-code-pretooluse.cmd +15 -0
  81. package/hooks/claude-code-pretooluse.sh +13 -0
  82. package/hooks/claude-code-session-start.cmd +13 -0
  83. package/hooks/claude-code-session-start.sh +17 -0
  84. package/hooks/claude-code-stop.cmd +11 -0
  85. package/hooks/claude-code-stop.sh +8 -0
  86. package/hooks/codex-notify.cmd +12 -0
  87. package/hooks/codex-notify.sh +8 -0
  88. package/hooks/cursor-stop.cmd +12 -0
  89. package/hooks/cursor-stop.sh +8 -0
  90. package/hooks/gemini-notification.cmd +12 -0
  91. package/hooks/gemini-notification.sh +10 -0
  92. package/hooks/gemini-session-start.cmd +12 -0
  93. package/hooks/gemini-session-start.sh +10 -0
  94. package/hooks/gemini-stop.cmd +12 -0
  95. package/hooks/gemini-stop.sh +10 -0
  96. package/hooks/lib/common.cmd +12 -0
  97. package/hooks/lib/common.sh +39 -0
  98. package/hooks/lib/json-merge.cjs +11 -0
  99. package/hooks/lib/json-read.cjs +9 -0
  100. package/hooks/opencode-notify.js +119 -0
  101. package/package.json +6 -2
  102. package/dist/utils/windows-hook-script-builder.d.ts +0 -2
  103. package/dist/utils/windows-hook-script-builder.js +0 -24
  104. package/dist/utils/windows-hook-script-builder.js.map +0 -1
@@ -3,7 +3,7 @@ import { collectGitChanges } from "../../utils/git-collector.js";
3
3
  import { logDebug } from "../../utils/log.js";
4
4
  import { paths } from "../../utils/paths.js";
5
5
  import { AGENT_DISPLAY_NAMES, AgentName, } from "../types.js";
6
- import { OpencodeInstaller } from "./opencode-installer.js";
6
+ import { opencodeInstaller } from "./opencode-installer.js";
7
7
  import { extractProjectName, isValidOpencodeEvent, parseOpencodeEvent } from "./opencode-parser.js";
8
8
  export class OpencodeProvider {
9
9
  name = AgentName.OpenCode;
@@ -14,16 +14,16 @@ export class OpencodeProvider {
14
14
  return existsSync(paths.opencodeDir);
15
15
  }
16
16
  isHookInstalled() {
17
- return OpencodeInstaller.isInstalled();
17
+ return opencodeInstaller.isInstalled();
18
18
  }
19
- installHook(port, secret) {
20
- OpencodeInstaller.install(port, secret);
19
+ installHook() {
20
+ opencodeInstaller.install();
21
21
  }
22
22
  uninstallHook() {
23
- OpencodeInstaller.uninstall();
23
+ opencodeInstaller.uninstall();
24
24
  }
25
25
  verifyIntegrity() {
26
- return OpencodeInstaller.verifyIntegrity();
26
+ return opencodeInstaller.verifyIntegrity();
27
27
  }
28
28
  parseEvent(raw) {
29
29
  if (!isValidOpencodeEvent(raw)) {
@@ -1 +1 @@
1
- {"version":3,"file":"opencode-provider.js","sourceRoot":"","sources":["../../../src/agent/opencode/opencode-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opencode-provider.js","sourceRoot":"","sources":["../../../src/agent/opencode/opencode-provider.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,16 @@ export declare const AgentName: {
8
8
  };
9
9
  export type AgentName = (typeof AgentName)[keyof typeof AgentName];
10
10
  export declare const AGENT_DISPLAY_NAMES: Record<AgentName, string>;
11
+ export interface IntegrityResult {
12
+ complete: boolean;
13
+ missing: string[];
14
+ }
15
+ export interface AgentInstaller {
16
+ isInstalled(): boolean;
17
+ verifyIntegrity(): IntegrityResult;
18
+ install(): void;
19
+ uninstall(): void;
20
+ }
11
21
  export interface AgentProvider {
12
22
  readonly name: AgentName;
13
23
  readonly displayName: string;
@@ -15,13 +25,10 @@ export interface AgentProvider {
15
25
  readonly submitKeys: string[];
16
26
  detect(): boolean;
17
27
  isHookInstalled(): boolean;
18
- installHook(port: number, secret: string): void;
28
+ installHook(): void;
19
29
  uninstallHook(): void;
20
30
  parseEvent(raw: unknown): AgentEventResult;
21
- verifyIntegrity(): {
22
- complete: boolean;
23
- missing: string[];
24
- };
31
+ verifyIntegrity(): IntegrityResult;
25
32
  }
26
33
  export interface AgentEventResult {
27
34
  projectName: string;
@@ -172,6 +172,7 @@ export class DiscordSessionCommandHandler {
172
172
  return;
173
173
  try {
174
174
  const { paneTarget, needsTrust } = launchAgent(this.tmuxBridge, project.path, agentKey);
175
+ this.sessionMap.register(`pre-${paneTarget.replace(/[:.]/g, "-")}`, paneTarget, project.name, project.path, "", agentKey);
175
176
  if (needsTrust) {
176
177
  autoTrustWorkspace(this.tmuxBridge, paneTarget, agentKey, (iv) => this.activeIntervals.push(iv), (iv) => {
177
178
  const idx = this.activeIntervals.indexOf(iv);
@@ -1 +1 @@
1
- {"version":3,"file":"discord-session-command-handler.js","sourceRoot":"","sources":["../../../src/channel/discord/discord-session-command-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discord-session-command-handler.js","sourceRoot":"","sources":["../../../src/channel/discord/discord-session-command-handler.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,7 @@ export declare class TelegramChannel implements NotificationChannel {
48
48
  private handleSessionCloseConfirm;
49
49
  /** Execute session close: kill tmux pane + unregister */
50
50
  private handleSessionCloseExecute;
51
+ private patchProcessUpdate;
51
52
  private trimProcessedIds;
52
53
  private registerTakeoverListener;
53
54
  private registerPollingErrorHandler;
@@ -54,6 +54,7 @@ export class TelegramChannel {
54
54
  this.registerProjectsHandlers();
55
55
  this.registerPollingErrorHandler();
56
56
  this.registerTakeoverListener();
57
+ this.patchProcessUpdate();
57
58
  this.pendingReplyStore.setOnCleanup((chatId, messageId) => {
58
59
  this.bot.deleteMessage(chatId, messageId).catch(() => { });
59
60
  });
@@ -81,7 +82,6 @@ export class TelegramChannel {
81
82
  await this.registerCommands();
82
83
  await this.registerMenuButton();
83
84
  log(t("bot.telegramStarted"));
84
- log(`[DIAG] instanceId=${this.instanceId}`);
85
85
  if (this.chatId) {
86
86
  this.bot
87
87
  .sendMessage(this.chatId, t("bot.startupReady", { host: escapeMarkdownV2(hostname()) }), {
@@ -194,11 +194,6 @@ export class TelegramChannel {
194
194
  this.bot.on("callback_query", async (query) => {
195
195
  try {
196
196
  logDebug(`[TG:callback] id=${query.id} from=${query.from.id} data=${query.data ?? "(none)"}`);
197
- if (this.processedUpdateIds.has(query.id)) {
198
- logWarn(`[DIAG:DUP] callback_query DUPLICATE id=${query.id} data=${query.data}`);
199
- }
200
- this.processedUpdateIds.set(query.id, Date.now());
201
- this.trimProcessedIds();
202
197
  if (!ConfigManager.isOwner(this.cfg, query.from.id)) {
203
198
  logDebug(`[TG:callback] dropped: unauthorized userId=${query.from.id}`);
204
199
  return;
@@ -387,12 +382,6 @@ export class TelegramChannel {
387
382
  this.bot.onText(/\/sessions(?:\s|$)/, (msg) => {
388
383
  if (!ConfigManager.isOwner(this.cfg, msg.from?.id ?? 0))
389
384
  return;
390
- const msgKey = `msg:${msg.message_id}:${msg.chat.id}`;
391
- if (this.processedUpdateIds.has(msgKey)) {
392
- logWarn(`[DIAG:DUP] /sessions DUPLICATE msgId=${msg.message_id} chatId=${msg.chat.id}`);
393
- }
394
- this.processedUpdateIds.set(msgKey, Date.now());
395
- this.trimProcessedIds();
396
385
  if (!this.sessionMap) {
397
386
  this.bot.sendMessage(msg.chat.id, t("sessions.empty")).catch(() => { });
398
387
  return;
@@ -477,6 +466,7 @@ export class TelegramChannel {
477
466
  return;
478
467
  try {
479
468
  const { paneTarget, needsTrust } = launchAgent(this.tmuxBridge, project.path, agentKey);
469
+ this.sessionMap?.register(`pre-${paneTarget.replace(/[:.]/g, "-")}`, paneTarget, project.name, project.path, "", agentKey);
480
470
  if (needsTrust) {
481
471
  autoTrustWorkspace(this.tmuxBridge, paneTarget, agentKey, () => { }, () => { });
482
472
  }
@@ -595,6 +585,26 @@ export class TelegramChannel {
595
585
  message_id: query.message.message_id,
596
586
  });
597
587
  }
588
+ patchProcessUpdate() {
589
+ const original = this.bot.processUpdate.bind(this.bot);
590
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
591
+ this.bot.processUpdate = (update) => {
592
+ const uid = update.update_id;
593
+ const key = `uid:${uid}`;
594
+ this.lastPollingActivity = Date.now();
595
+ if (this.isDisconnected) {
596
+ this.isDisconnected = false;
597
+ log(t("bot.connectionRestored"));
598
+ }
599
+ if (this.processedUpdateIds.has(key)) {
600
+ logWarn(`[Polling] duplicate update_id=${uid} skipped`);
601
+ return;
602
+ }
603
+ this.processedUpdateIds.set(key, Date.now());
604
+ this.trimProcessedIds();
605
+ return original(update);
606
+ };
607
+ }
598
608
  trimProcessedIds() {
599
609
  if (this.processedUpdateIds.size > 500) {
600
610
  const cutoff = Date.now() - 60_000;
@@ -613,7 +623,6 @@ export class TelegramChannel {
613
623
  const senderId = msg.text.slice("__ccpoke_takeover:".length);
614
624
  if (senderId === this.instanceId)
615
625
  return;
616
- logWarn(`[DIAG:TAKEOVER] received from=${senderId} self=${this.instanceId}`);
617
626
  log(t("bot.instanceTakeover"));
618
627
  process.emit("SIGTERM", "SIGTERM");
619
628
  });
@@ -635,13 +644,6 @@ export class TelegramChannel {
635
644
  }
636
645
  }
637
646
  });
638
- this.bot.on("polling", () => {
639
- this.lastPollingActivity = Date.now();
640
- if (this.isDisconnected) {
641
- this.isDisconnected = false;
642
- log(t("bot.connectionRestored"));
643
- }
644
- });
645
647
  this.heartbeatInterval = setInterval(() => {
646
648
  if (this.reconnectTimer)
647
649
  return;
@@ -651,15 +653,15 @@ export class TelegramChannel {
651
653
  logWarn(t("bot.pollingRestart"));
652
654
  this.isDisconnected = true;
653
655
  this.lastPollingActivity = Date.now();
654
- try {
655
- this.bot.stopPolling({ cancel: true, reason: "stale polling" });
656
- }
657
- catch {
658
- // already stopped
659
- }
660
- this.reconnectTimer = setTimeout(() => {
661
- this.reconnectTimer = null;
656
+ this.reconnectTimer = setTimeout(async () => {
657
+ try {
658
+ await this.bot.stopPolling({ cancel: true, reason: "stale polling" });
659
+ }
660
+ catch {
661
+ // already stopped
662
+ }
662
663
  this.bot.startPolling();
664
+ this.reconnectTimer = null;
663
665
  log(t("bot.pollingRestarted"));
664
666
  }, RESTART_DELAY_MS);
665
667
  }, HEARTBEAT_INTERVAL_MS);
@@ -1 +1 @@
1
- {"version":3,"file":"telegram-channel.js","sourceRoot":"","sources":["../../../src/channel/telegram/telegram-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAQhD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAe,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAIzD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,OAAO,eAAe;IAClB,GAAG,CAAc;IACjB,GAAG,CAAS;IACZ,MAAM,GAAkB,IAAI,CAAC;IAC7B,cAAc,GAAG,KAAK,CAAC;IACvB,cAAc,GAAyC,IAAI,CAAC;IAC5D,iBAAiB,GAA0C,IAAI,CAAC;IAChE,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACjC,SAAS,GAAG,CAAC,CAAC;IACd,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAC5C,UAAU,GAAG,UAAU,EAAE,CAAC;IAC1B,UAAU,CAAoB;IAC9B,YAAY,CAA6B;IACzC,UAAU,CAAoB;IAC9B,QAAQ,CAAuB;IAC/B,aAAa,GAAyB,IAAI,CAAC;IAC3C,kBAAkB,GAA8B,IAAI,CAAC;IACrD,wBAAwB,GAAoC,IAAI,CAAC;IACjE,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEvD,YAAY,GAAW,EAAE,IAAkB;QACzC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,EAAE,YAAY,IAAI,IAAI,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,GAAG,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,kBAAkB,EAAE;YACjD,OAAO,EAAE;gBACP,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,EAAE,eAAe,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,EAAE;aAC3D;SACF,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC;QACpD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChC,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChC,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAEhC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;YACxD,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACxD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CACpC,IAAI,CAAC,GAAG,EACR,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EACjB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,CACd,CAAC;YACF,IAAI,CAAC,aAAa,CAAC,iBAAiB,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;gBAC/E,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YACpE,CAAC,CAAC;YACF,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAC9C,IAAI,CAAC,GAAG,EACR,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EACjB,IAAI,CAAC,UAAU,CAChB,CAAC;YACF,IAAI,CAAC,wBAAwB,GAAG,IAAI,wBAAwB,CAC1D,IAAI,CAAC,GAAG,EACR,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EACjB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,UAAU,CAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEtC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG;iBAC/B,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,qBAAqB,IAAI,CAAC,UAAU,EAAE,CAAC;iBAChE,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YACrB,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QACxB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC9B,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,GAAG,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC9B,GAAG,CAAC,qBAAqB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAE5C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG;iBACL,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE;gBACvF,UAAU,EAAE,YAAY;aACzB,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,kBAAkB,EAAE,OAAO,EAAE,CAAC;QACnC,IAAI,CAAC,wBAAwB,EAAE,OAAO,EAAE,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,cAAc;YAAE,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,iBAAiB;YAAE,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IACzB,CAAC;IAED,uBAAuB,CAAC,KAAwB;QAC9C,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,0BAA0B,CAAC,KAA2B;QACpD,IAAI,CAAC,kBAAkB,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,4BAA4B,CAAC,KAA6B;QACxD,IAAI,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAsB,EAAE,WAAoB;QACjE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAE3C,IAAI,CAAC;YACH,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACtF,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,EAAE,GAAG,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,IAAsB;QAC/C,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,MAAM,SAAS,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;QAC/D,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,KAAK,QAAQ,EAAE,CAAC,CAAC;QAExC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC1C,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;gBAC/D,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,MAAM,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;QACvC,MAAM,QAAQ,GAA6B;YACzC,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE;YAClE,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACxE,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE;SACzE,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACvC,GAAG,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,QAAQ,CAAC,CAAC,CAAC,4BAA4B,CAAC,EAAE,GAAG,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC;gBAC/B,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;aACvB,CAAC,CAAC;YAC9B,GAAG,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAEO,gBAAgB;QACtB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE;YACzC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;gBACxD,GAAG,CACD,CAAC,CAAC,sBAAsB,EAAE;oBACxB,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC;oBACzB,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE;iBACnC,CAAC,CACH,CAAC;gBACF,OAAO;YACT,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBAChC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;gBAC7D,OAAO;YACT,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,aAAa,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACtD,GAAG,CAAC,CAAC,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACxD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,oBAAoB;QAC1B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC5C,IAAI,CAAC;gBACH,QAAQ,CACN,oBAAoB,KAAK,CAAC,EAAE,SAAS,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,KAAK,CAAC,IAAI,IAAI,QAAQ,EAAE,CACpF,CAAC;gBACF,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC1C,OAAO,CAAC,0CAA0C,KAAK,CAAC,EAAE,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnF,CAAC;gBACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;oBACpD,QAAQ,CAAC,8CAA8C,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxE,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;oBACnE,MAAM,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;oBACrD,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBACpC,MAAM,IAAI,CAAC,wBAAwB,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;oBAC3D,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBACtC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACtC,QAAQ,CAAC,+BAA+B,SAAS,EAAE,CAAC,CAAC;oBACrD,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;oBACrD,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBACpC,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;oBACxC,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC3C,MAAM,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;oBAC3C,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;oBACvC,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;oBACxC,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC5C,wBAAwB;oBACxB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACvC,KAAK,CAAC,IAAI,GAAG,QAAQ,SAAS,EAAE,CAAC;oBACjC,sCAAsC;gBACxC,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAC7C,MAAM,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;oBAC5C,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;oBACjD,MAAM,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;oBAC5C,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;oBACvC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBAClB,MAAM,IAAI,CAAC,GAAG;6BACX,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;6BAC9D,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACrB,CAAC;oBACD,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBAED,IAAI,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC/C,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;oBACvC,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC;oBAAE,OAAO;gBAE7C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtC,QAAQ,CAAC,6BAA6B,SAAS,EAAE,CAAC,CAAC;gBAEnD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;oBACrB,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;oBACjF,OAAO;gBACT,CAAC;gBAED,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;oBACjF,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBACnB,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACrC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EACrB,OAAO,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,EAAE,EACrF;oBACE,UAAU,EAAE,YAAY;oBACxB,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;oBAC7C,YAAY,EAAE;wBACZ,WAAW,EAAE,IAAI;wBACjB,SAAS,EAAE,IAAI;wBACf,uBAAuB,EAAE,GAAG,OAAO,CAAC,OAAO,WAAW;qBACvD;iBACF,CACF,CAAC;gBAEF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EACrB,IAAI,CAAC,UAAU,EACf,SAAS,EACT,OAAO,CAAC,OAAO,CAChB,CAAC;gBACF,QAAQ,CACN,wBAAwB,IAAI,CAAC,UAAU,gBAAgB,SAAS,YAAY,OAAO,CAAC,OAAO,eAAe,OAAO,CAAC,UAAU,EAAE,CAC/H,CAAC;gBACF,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAC;gBAClD,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC/C,CAAC;gBAAC,MAAM,CAAC;oBACP,qBAAqB;gBACvB,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACnC,QAAQ,CACN,kBAAkB,GAAG,CAAC,UAAU,SAAS,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,GAAG,WAAW,GAAG,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,CAAC,GAAG,CAAC,gBAAgB,YAAY,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAC9I,CAAC;YACF,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,QAAQ,CAAC,+CAA+C,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC1E,OAAO;YACT,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACd,QAAQ,CAAC,mCAAmC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC9D,OAAO;YACT,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;gBACxD,QAAQ,CAAC,yCAAyC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;gBACzE,OAAO;YACT,CAAC;YAED,QAAQ,CACN,sBAAsB,GAAG,CAAC,gBAAgB,CAAC,UAAU,UAAU,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CACxF,CAAC;YAEF,IACE,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAC3F,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAChE,GAAG,CAAC,IAAI,CAAC,EAAE,EACX,GAAG,CAAC,gBAAgB,CAAC,UAAU,EAC/B,GAAG,CAAC,IAAI,CACT,CAAC;gBACF,IAAI,OAAO;oBAAE,OAAO;YACtB,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACzF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,QAAQ,CACN,iDAAiD,GAAG,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAC/G,CAAC;gBACF,OAAO;YACT,CAAC;YAED,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAC5E,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACrF,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC3F,IAAI,QAAQ,EAAE,CAAC;oBACb,QAAQ,CAAC,kDAAkD,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;oBAChF,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACxB,GAAG,CAAC,IAAI,CAAC,EAAE,EACX,CAAC,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CACpD,CAAC;oBACF,OAAO;gBACT,CAAC;YACH,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;gBACnE,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAE5E,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;gBACrB,QAAQ,CAAC,kCAAkC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;gBAChE,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACxF,CAAC;iBAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;gBAC5B,QAAQ,CAAC,kCAAkC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;gBAChE,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YAC1D,CAAC;iBAAM,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAAC;gBACvC,QAAQ,CAAC,6CAA6C,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC3E,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;YACrE,CAAC;iBAAM,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;gBAChC,QAAQ,CAAC,sCAAsC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;gBACpE,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kGAAkG;IAC1F,KAAK,CAAC,uBAAuB,CACnC,KAAgC,EAChC,SAAiB;QAEjB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACrC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EACrB,OAAO,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,gBAAgB,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,EAAE,EAClG;YACE,UAAU,EAAE,YAAY;YACxB,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;YAC7C,YAAY,EAAE;gBACZ,WAAW,EAAE,IAAI;gBACjB,SAAS,EAAE,IAAI;gBACf,uBAAuB,EAAE,CAAC,CAAC,kBAAkB,CAAC;aAC/C;SACF,CACF,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/F,QAAQ,CACN,0BAA0B,IAAI,CAAC,UAAU,gBAAgB,SAAS,YAAY,OAAO,CAAC,OAAO,EAAE,CAChG,CAAC;QACF,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,cAAc,CAAC,SAAiB;QACtC,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QACvC,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IAChG,CAAC;IAEO,wBAAwB;QAC9B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,GAAG,EAAE,EAAE;YAC5C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;gBAAE,OAAO;YAChE,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACtD,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxC,OAAO,CAAC,wCAAwC,GAAG,CAAC,UAAU,WAAW,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1F,CAAC;YACD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrB,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACvE,OAAO;YACT,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC;YAC1D,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAChE,QAAQ,CACN,+BAA+B,WAAW,UAAU,MAAM,CAAC,KAAK,eAAe,MAAM,CAAC,UAAU,CAAC,MAAM,YAAY,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAC3I,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;YAChD,QAAQ,CAAC,qBAAqB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YACjD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,QAAQ,CACN,uBAAuB,CAAC,CAAC,SAAS,WAAW,CAAC,CAAC,UAAU,YAAY,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,GAAG,EAAE,CAC9F,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAE1D,MAAM,IAAI,GAAmC,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;YAC1E,IAAI,WAAW;gBAAE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAEjD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC1D,QAAQ,CAAC,gEAAgE,EAAE,GAAG,CAAC,CAAC;gBAChF,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1E,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAClF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,wBAAwB;QAC9B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,GAAG,EAAE,EAAE;YAC5C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;gBAAE,OAAO;YAEhE,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;YACjC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE9D,MAAM,IAAI,GAAmC,EAAE,CAAC;YAChD,IAAI,WAAW;gBAAE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAEjD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,KAAgC;QAClE,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;YAC5E,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,EAAE,CAAC;YAC3D,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAE7C,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC1B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAuC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACzE,IAAI,EAAE,mBAAmB,CAAC,KAAkB,CAAC,IAAI,KAAK;YACtD,aAAa,EAAE,eAAe,GAAG,IAAI,KAAK,EAAE;SAC7C,CAAC,CAAC,CAAC;QACJ,MAAM,IAAI,GAAyC,EAAE,CAAC;QACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACxB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EACrB,CAAC,CAAC,sBAAsB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,EACpD,EAAE,YAAY,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,CAC5C,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,KAAgC;QACrE,MAAM,KAAK,GAAG,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YAC5C,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC9F,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,KAAgC,EAChC,OAAuC,EACvC,QAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO;YAAE,OAAO;QAE/C,IAAI,CAAC;YACH,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAExF,IAAI,UAAU,EAAE,CAAC;gBACf,kBAAkB,CAChB,IAAI,CAAC,UAAU,EACf,UAAU,EACV,QAAQ,EACR,GAAG,EAAE,GAAE,CAAC,EACR,GAAG,EAAE,GAAE,CAAC,CACT,CAAC;YACJ,CAAC;YAED,GAAG,CAAC,sBAAsB,QAAQ,OAAO,UAAU,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3E,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACxB,KAAK,CAAC,OAAQ,CAAC,IAAI,CAAC,EAAE,EACtB,CAAC,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CACjD,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,wCAAwC,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACxB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EACrB,CAAC,CAAC,sBAAsB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CACrD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,qCAAqC;IAC7B,KAAK,CAAC,qBAAqB,CAAC,KAAgC;QAClE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,QAAQ,CAAC,0CAA0C,SAAS,EAAE,CAAC,CAAC;YAChE,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QACD,QAAQ,CACN,kCAAkC,SAAS,aAAa,OAAO,CAAC,UAAU,YAAY,OAAO,CAAC,OAAO,EAAE,CACxG,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE;YAC1F,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE;gBACZ,eAAe,EAAE;oBACf;wBACE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,qBAAqB,CAAC,EAAE,EAAE,aAAa,EAAE,gBAAgB,SAAS,EAAE,EAAE;wBACtF;4BACE,IAAI,EAAE,MAAM,CAAC,CAAC,sBAAsB,CAAC,EAAE;4BACvC,aAAa,EAAE,iBAAiB,SAAS,EAAE;yBAC5C;wBACD,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,mBAAmB,CAAC,EAAE,EAAE,aAAa,EAAE,mBAAmB,SAAS,EAAE,EAAE;qBACvF;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC;IACD,yDAAyD;IACjD,KAAK,CAAC,oBAAoB,CAAC,KAAgC;QACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACzC,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC/D,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YAC3E,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,iCAAiC;IACzB,KAAK,CAAC,yBAAyB,CAAC,KAAgC;QACtE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,uBAAuB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE;YACvF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC9B,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;YACpC,YAAY,EAAE;gBACZ,eAAe,EAAE;oBACf;wBACE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,aAAa,EAAE,qBAAqB,SAAS,EAAE,EAAE;wBACnF,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,aAAa,EAAE,mBAAmB,EAAE;qBACtE;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,yDAAyD;IACjD,KAAK,CAAC,yBAAyB,CAAC,KAAgC;QACtE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,2BAA2B;YAC7B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACvB,GAAG,CAAC,6BAA6B,SAAS,KAAK,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;QAEnE,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE;YACjF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC9B,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;SACrC,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB;QACtB,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC;YACnC,KAAK,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAChD,IAAI,EAAE,GAAG,MAAM;oBAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IAEO,wBAAwB;QAC9B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,oBAAoB,CAAC;gBAAE,OAAO;YACxD,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM;gBAAE,OAAO;YACvD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC7D,IAAI,QAAQ,KAAK,IAAI,CAAC,UAAU;gBAAE,OAAO;YACzC,OAAO,CAAC,iCAAiC,QAAQ,SAAS,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;YAC7E,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAC/B,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,2BAA2B;QACjC,MAAM,kBAAkB,GAAG,MAAM,CAAC;QAClC,MAAM,qBAAqB,GAAG,MAAM,CAAC;QACrC,MAAM,gBAAgB,GAAG,KAAK,CAAC;QAC/B,MAAM,gBAAgB,GAAG,MAAM,CAAC;QAEhC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;YAChC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,gBAAgB,EAAE,CAAC;oBACnD,QAAQ,CAAC,2DAA2D,CAAC,CAAC;gBACxE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YAC1B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,GAAG,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;YACxC,IAAI,IAAI,CAAC,cAAc;gBAAE,OAAO;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACtD,IAAI,OAAO,GAAG,kBAAkB;gBAAE,OAAO;YACzC,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YAClE,CAAC;YAAC,MAAM,CAAC;gBACP,kBAAkB;YACpB,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;gBACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;gBACxB,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;YACjC,CAAC,EAAE,gBAAgB,CAAC,CAAC;QACvB,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"telegram-channel.js","sourceRoot":"","sources":["../../../src/channel/telegram/telegram-channel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { execSync, spawn } from "node:child_process";
2
- import { existsSync, statSync } from "node:fs";
3
- import { basename, resolve } from "node:path";
2
+ import { copyFileSync, existsSync, mkdirSync, readdirSync, rmSync, statSync, unlinkSync, } from "node:fs";
3
+ import { tmpdir } from "node:os";
4
+ import { basename, join, resolve } from "node:path";
4
5
  import * as p from "@clack/prompts";
5
6
  import { WebClient } from "@slack/web-api";
6
7
  import { Client, Events, GatewayIntentBits, Partials } from "discord.js";
@@ -9,6 +10,7 @@ import qrcode from "qrcode-terminal";
9
10
  import { createDefaultRegistry } from "../agent/agent-registry.js";
10
11
  import { AgentName } from "../agent/types.js";
11
12
  import { ConfigManager } from "../config-manager.js";
13
+ import { HookEnvWriter } from "../hooks/hook-env-writer.js";
12
14
  import { Locale, LOCALE_LABELS, setLocale, SUPPORTED_LOCALES, t } from "../i18n/index.js";
13
15
  import { resetTmuxBinaryCache } from "../tmux/tmux-bridge.js";
14
16
  import { ChannelName, DEFAULT_HOOK_PORT, isMacOS, isWindows, refreshWindowsPath, } from "../utils/constants.js";
@@ -222,6 +224,7 @@ function saveConfig(config) {
222
224
  }
223
225
  function syncAgentHooks(config, previousAgents) {
224
226
  const registry = createDefaultRegistry();
227
+ HookEnvWriter.write(config.hook_port, config.hook_secret);
225
228
  const removedAgents = previousAgents.filter((a) => !config.agents.includes(a));
226
229
  for (const agentName of removedAgents) {
227
230
  const provider = registry.resolve(agentName);
@@ -248,7 +251,7 @@ function syncAgentHooks(config, previousAgents) {
248
251
  continue;
249
252
  }
250
253
  try {
251
- provider.installHook(config.hook_port, config.hook_secret);
254
+ provider.installHook();
252
255
  p.log.success(t("setup.agentHookInstalled", { agent: provider.displayName }));
253
256
  }
254
257
  catch (err) {
@@ -552,33 +555,88 @@ function detectPsmuxInstaller() {
552
555
  }
553
556
  return null;
554
557
  }
555
- async function installScoopAndRetry() {
556
- const shouldInstallScoop = await p.confirm({
557
- message: t("setup.scoopAutoInstallPrompt"),
558
+ async function downloadPsmuxFromGithub() {
559
+ const shouldDownload = await p.confirm({
560
+ message: t("setup.psmuxDirectDownloadPrompt"),
558
561
  initialValue: true,
559
562
  });
560
- if (p.isCancel(shouldInstallScoop) || !shouldInstallScoop) {
561
- return null;
563
+ if (p.isCancel(shouldDownload) || !shouldDownload) {
564
+ return false;
562
565
  }
563
566
  const s = p.spinner();
564
- s.start("Installing Scoop...");
567
+ s.start(t("setup.psmuxDownloading"));
565
568
  try {
566
- await spawnAsync("powershell.exe", [
567
- "-NoProfile",
568
- "-ExecutionPolicy",
569
- "RemoteSigned",
570
- "-Command",
571
- "$ErrorActionPreference='Stop'; Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser -Force; irm get.scoop.sh | iex",
572
- ]);
569
+ const archMap = { x64: "x64", arm64: "arm64", ia32: "x86" };
570
+ const arch = archMap[process.arch] ?? "x64";
571
+ const releaseJson = execSync('curl.exe -s "https://api.github.com/repos/marlocarlo/psmux/releases/latest"', { encoding: "utf-8", stdio: "pipe", timeout: 15000 });
572
+ const release = JSON.parse(releaseJson);
573
+ const assetName = `psmux-${release.tag_name}-windows-${arch}.zip`;
574
+ const asset = release.assets?.find((a) => a.name === assetName);
575
+ if (!asset) {
576
+ s.stop(t("setup.psmuxDownloadFailed"));
577
+ return false;
578
+ }
579
+ const zipPath = join(tmpdir(), `psmux-${Date.now()}.zip`);
580
+ const installDir = join(process.env.LOCALAPPDATA || join(process.env.USERPROFILE || "", "AppData", "Local"), "psmux");
581
+ execSync(`curl.exe -L -s -o "${zipPath}" "${asset.browser_download_url}"`, {
582
+ stdio: "pipe",
583
+ timeout: 120000,
584
+ });
585
+ mkdirSync(installDir, { recursive: true });
586
+ execSync(`tar -xf "${zipPath}" -C "${installDir}"`, { stdio: "pipe", timeout: 30000 });
587
+ const entries = readdirSync(installDir);
588
+ const subDir = entries.find((e) => {
589
+ try {
590
+ return statSync(join(installDir, e)).isDirectory();
591
+ }
592
+ catch {
593
+ return false;
594
+ }
595
+ });
596
+ if (subDir) {
597
+ const subDirPath = join(installDir, subDir);
598
+ for (const file of readdirSync(subDirPath)) {
599
+ copyFileSync(join(subDirPath, file), join(installDir, file));
600
+ }
601
+ rmSync(subDirPath, { recursive: true, force: true });
602
+ }
603
+ try {
604
+ const regOutput = execSync('reg query "HKCU\\Environment" /v Path', {
605
+ encoding: "utf-8",
606
+ stdio: "pipe",
607
+ timeout: 5000,
608
+ });
609
+ const currentPath = regOutput.match(/REG_(?:EXPAND_)?SZ\s+(.+)/)?.[1]?.trim() ?? "";
610
+ if (!currentPath.toLowerCase().includes(installDir.toLowerCase())) {
611
+ const newPath = currentPath ? `${currentPath};${installDir}` : installDir;
612
+ execSync(`reg add "HKCU\\Environment" /v Path /t REG_EXPAND_SZ /d "${newPath}" /f`, {
613
+ stdio: "pipe",
614
+ timeout: 5000,
615
+ });
616
+ }
617
+ }
618
+ catch {
619
+ execSync(`reg add "HKCU\\Environment" /v Path /t REG_EXPAND_SZ /d "${installDir}" /f`, {
620
+ stdio: "pipe",
621
+ timeout: 5000,
622
+ });
623
+ }
624
+ try {
625
+ unlinkSync(zipPath);
626
+ }
627
+ catch {
628
+ /* best-effort */
629
+ }
573
630
  refreshWindowsPath();
574
- s.stop("Scoop installed");
631
+ resetTmuxBinaryCache();
632
+ s.stop(t("setup.tmuxInstallSuccess"));
633
+ p.log.info(t("setup.tmuxWindowsPathRefreshHint"));
634
+ return true;
575
635
  }
576
636
  catch {
577
- s.stop("Scoop install failed");
578
- p.log.warn(t("setup.scoopInstallFailed"));
579
- return null;
637
+ s.stop(t("setup.psmuxDownloadFailed"));
638
+ return false;
580
639
  }
581
- return detectPsmuxInstaller();
582
640
  }
583
641
  async function promptTmuxSetup() {
584
642
  if (isWindows()) {
@@ -595,25 +653,25 @@ async function promptTmuxSetup() {
595
653
  p.log.info(t("setup.tmuxInstallSkipped"));
596
654
  return;
597
655
  }
598
- let installer = detectPsmuxInstaller();
599
- if (!installer) {
600
- installer = await installScoopAndRetry();
601
- }
602
- if (!installer) {
603
- p.log.warn(t("setup.tmuxWindowsInstallFailed"));
656
+ const installer = detectPsmuxInstaller();
657
+ if (installer) {
658
+ const s = p.spinner();
659
+ s.start(`${installer.name}: ${installer.install}`);
660
+ try {
661
+ await runCommandAsync(installer.install);
662
+ refreshWindowsPath();
663
+ resetTmuxBinaryCache();
664
+ s.stop(t("setup.tmuxInstallSuccess"));
665
+ p.log.info(t("setup.tmuxWindowsPathRefreshHint"));
666
+ }
667
+ catch {
668
+ s.stop(`${installer.name} failed`);
669
+ p.log.warn(t("setup.tmuxWindowsInstallFailed"));
670
+ }
604
671
  return;
605
672
  }
606
- const s = p.spinner();
607
- s.start(`${installer.name}: ${installer.install}`);
608
- try {
609
- await runCommandAsync(installer.install);
610
- refreshWindowsPath();
611
- resetTmuxBinaryCache();
612
- s.stop(t("setup.tmuxInstallSuccess"));
613
- p.log.info(t("setup.tmuxWindowsPathRefreshHint"));
614
- }
615
- catch {
616
- s.stop(`${installer.name} failed`);
673
+ const downloaded = await downloadPsmuxFromGithub();
674
+ if (!downloaded) {
617
675
  p.log.warn(t("setup.tmuxWindowsInstallFailed"));
618
676
  }
619
677
  return;