poly-weaver 0.11.4 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/dist/agents/reviewers/handler.d.ts.map +1 -1
  2. package/dist/agents/reviewers/handler.js +6 -1
  3. package/dist/agents/reviewers/handler.js.map +1 -1
  4. package/dist/agents/reviewers/sanity-inject.d.ts +7 -0
  5. package/dist/agents/reviewers/sanity-inject.d.ts.map +1 -0
  6. package/dist/agents/reviewers/sanity-inject.js +22 -0
  7. package/dist/agents/reviewers/sanity-inject.js.map +1 -0
  8. package/dist/auto-update/tui.d.ts +1 -1
  9. package/dist/auto-update/tui.d.ts.map +1 -1
  10. package/dist/auto-update/tui.js +3 -2
  11. package/dist/auto-update/tui.js.map +1 -1
  12. package/dist/dump/hotkey.d.ts +13 -2
  13. package/dist/dump/hotkey.d.ts.map +1 -1
  14. package/dist/dump/hotkey.js +22 -3
  15. package/dist/dump/hotkey.js.map +1 -1
  16. package/dist/flow/executor.d.ts +2 -2
  17. package/dist/flow/executor.d.ts.map +1 -1
  18. package/dist/flow/executor.js +79 -45
  19. package/dist/flow/executor.js.map +1 -1
  20. package/dist/flow/types.d.ts +2 -0
  21. package/dist/flow/types.d.ts.map +1 -1
  22. package/dist/flow/types.js.map +1 -1
  23. package/dist/flow-editor/tui.d.ts.map +1 -1
  24. package/dist/flow-editor/tui.js +4 -4
  25. package/dist/flow-editor/tui.js.map +1 -1
  26. package/dist/offscreen/agent-viewer.d.ts +28 -0
  27. package/dist/offscreen/agent-viewer.d.ts.map +1 -0
  28. package/dist/offscreen/agent-viewer.js +168 -0
  29. package/dist/offscreen/agent-viewer.js.map +1 -0
  30. package/dist/offscreen/controller.d.ts +38 -1
  31. package/dist/offscreen/controller.d.ts.map +1 -1
  32. package/dist/offscreen/controller.js +376 -12
  33. package/dist/offscreen/controller.js.map +1 -1
  34. package/dist/offscreen/fork-busy.d.ts +28 -0
  35. package/dist/offscreen/fork-busy.d.ts.map +1 -0
  36. package/dist/offscreen/fork-busy.js +86 -0
  37. package/dist/offscreen/fork-busy.js.map +1 -0
  38. package/dist/offscreen/fork-launch.d.ts +3 -0
  39. package/dist/offscreen/fork-launch.d.ts.map +1 -1
  40. package/dist/offscreen/fork-launch.js +1 -0
  41. package/dist/offscreen/fork-launch.js.map +1 -1
  42. package/dist/offscreen/fork.d.ts +2 -0
  43. package/dist/offscreen/fork.d.ts.map +1 -1
  44. package/dist/offscreen/fork.js +6 -2
  45. package/dist/offscreen/fork.js.map +1 -1
  46. package/dist/offscreen/inquiry-sender.d.ts +19 -0
  47. package/dist/offscreen/inquiry-sender.d.ts.map +1 -0
  48. package/dist/offscreen/inquiry-sender.js +60 -0
  49. package/dist/offscreen/inquiry-sender.js.map +1 -0
  50. package/dist/offscreen/keys.d.ts +4 -0
  51. package/dist/offscreen/keys.d.ts.map +1 -1
  52. package/dist/offscreen/keys.js +45 -0
  53. package/dist/offscreen/keys.js.map +1 -1
  54. package/dist/offscreen/resolve.d.ts.map +1 -1
  55. package/dist/offscreen/resolve.js +8 -0
  56. package/dist/offscreen/resolve.js.map +1 -1
  57. package/dist/orchestrator.d.ts.map +1 -1
  58. package/dist/orchestrator.js +6 -0
  59. package/dist/orchestrator.js.map +1 -1
  60. package/dist/providers/claude/completion-plan-mode.d.ts +3 -2
  61. package/dist/providers/claude/completion-plan-mode.d.ts.map +1 -1
  62. package/dist/providers/claude/completion-plan-mode.js +13 -11
  63. package/dist/providers/claude/completion-plan-mode.js.map +1 -1
  64. package/dist/providers/claude/completion.d.ts +4 -1
  65. package/dist/providers/claude/completion.d.ts.map +1 -1
  66. package/dist/providers/claude/completion.js +28 -9
  67. package/dist/providers/claude/completion.js.map +1 -1
  68. package/dist/providers/claude/plan-mode-pty-monitor.d.ts +9 -6
  69. package/dist/providers/claude/plan-mode-pty-monitor.d.ts.map +1 -1
  70. package/dist/providers/claude/plan-mode-pty-monitor.js +15 -6
  71. package/dist/providers/claude/plan-mode-pty-monitor.js.map +1 -1
  72. package/dist/providers/claude/session.d.ts +6 -0
  73. package/dist/providers/claude/session.d.ts.map +1 -1
  74. package/dist/providers/claude/session.js +41 -1
  75. package/dist/providers/claude/session.js.map +1 -1
  76. package/dist/providers/codex/completion.d.ts +6 -1
  77. package/dist/providers/codex/completion.d.ts.map +1 -1
  78. package/dist/providers/codex/completion.js +17 -1
  79. package/dist/providers/codex/completion.js.map +1 -1
  80. package/dist/providers/codex/plan-mode-activator.d.ts +4 -0
  81. package/dist/providers/codex/plan-mode-activator.d.ts.map +1 -1
  82. package/dist/providers/codex/plan-mode-activator.js +33 -18
  83. package/dist/providers/codex/plan-mode-activator.js.map +1 -1
  84. package/dist/providers/codex/session.d.ts +9 -0
  85. package/dist/providers/codex/session.d.ts.map +1 -1
  86. package/dist/providers/codex/session.js +34 -1
  87. package/dist/providers/codex/session.js.map +1 -1
  88. package/dist/providers/copilot/completion.d.ts +4 -2
  89. package/dist/providers/copilot/completion.d.ts.map +1 -1
  90. package/dist/providers/copilot/completion.js +25 -15
  91. package/dist/providers/copilot/completion.js.map +1 -1
  92. package/dist/resume-tui.d.ts +1 -1
  93. package/dist/resume-tui.d.ts.map +1 -1
  94. package/dist/resume-tui.js +3 -1
  95. package/dist/resume-tui.js.map +1 -1
  96. package/dist/session/manifest.d.ts +3 -1
  97. package/dist/session/manifest.d.ts.map +1 -1
  98. package/dist/session/reader.d.ts +4 -0
  99. package/dist/session/reader.d.ts.map +1 -1
  100. package/dist/session/reader.js +15 -0
  101. package/dist/session/reader.js.map +1 -1
  102. package/dist/session/restore.d.ts.map +1 -1
  103. package/dist/session/restore.js +2 -1
  104. package/dist/session/restore.js.map +1 -1
  105. package/dist/session/session-store.d.ts +8 -0
  106. package/dist/session/session-store.d.ts.map +1 -1
  107. package/dist/session/session-store.js +18 -1
  108. package/dist/session/session-store.js.map +1 -1
  109. package/dist/startup-tui.d.ts.map +1 -1
  110. package/dist/startup-tui.js +18 -7
  111. package/dist/startup-tui.js.map +1 -1
  112. package/dist/status-bar.d.ts +2 -0
  113. package/dist/status-bar.d.ts.map +1 -1
  114. package/dist/status-bar.js +28 -2
  115. package/dist/status-bar.js.map +1 -1
  116. package/dist/terminal/host.d.ts +26 -0
  117. package/dist/terminal/host.d.ts.map +1 -1
  118. package/dist/terminal/host.js +186 -19
  119. package/dist/terminal/host.js.map +1 -1
  120. package/dist/terminal/input-router.d.ts +16 -2
  121. package/dist/terminal/input-router.d.ts.map +1 -1
  122. package/dist/terminal/input-router.js +59 -3
  123. package/dist/terminal/input-router.js.map +1 -1
  124. package/dist/terminal/paste-submit.d.ts +42 -0
  125. package/dist/terminal/paste-submit.d.ts.map +1 -0
  126. package/dist/terminal/paste-submit.js +146 -0
  127. package/dist/terminal/paste-submit.js.map +1 -0
  128. package/dist/terminal-input.d.ts.map +1 -1
  129. package/dist/terminal-input.js +6 -0
  130. package/dist/terminal-input.js.map +1 -1
  131. package/dist/text-editing/emacs-input.d.ts +5 -0
  132. package/dist/text-editing/emacs-input.d.ts.map +1 -1
  133. package/dist/text-editing/emacs-input.js +17 -1
  134. package/dist/text-editing/emacs-input.js.map +1 -1
  135. package/dist/user/feedback-editing.d.ts +28 -0
  136. package/dist/user/feedback-editing.d.ts.map +1 -0
  137. package/dist/user/feedback-editing.js +72 -0
  138. package/dist/user/feedback-editing.js.map +1 -0
  139. package/dist/user/handler.d.ts.map +1 -1
  140. package/dist/user/handler.js +3 -2
  141. package/dist/user/handler.js.map +1 -1
  142. package/dist/user/host-curate-prompt.d.ts +9 -8
  143. package/dist/user/host-curate-prompt.d.ts.map +1 -1
  144. package/dist/user/host-curate-prompt.js +54 -119
  145. package/dist/user/host-curate-prompt.js.map +1 -1
  146. package/dist/user/host-prompt.d.ts +21 -11
  147. package/dist/user/host-prompt.d.ts.map +1 -1
  148. package/dist/user/host-prompt.js +424 -301
  149. package/dist/user/host-prompt.js.map +1 -1
  150. package/dist/user/issue-inquiry.d.ts +6 -0
  151. package/dist/user/issue-inquiry.d.ts.map +1 -0
  152. package/dist/user/issue-inquiry.js +7 -0
  153. package/dist/user/issue-inquiry.js.map +1 -0
  154. package/dist/user/issues-pane.d.ts +4 -0
  155. package/dist/user/issues-pane.d.ts.map +1 -0
  156. package/dist/user/issues-pane.js +38 -0
  157. package/dist/user/issues-pane.js.map +1 -0
  158. package/dist/user/prompt.d.ts +1 -1
  159. package/dist/user/prompt.d.ts.map +1 -1
  160. package/dist/user/split-surface.d.ts +12 -0
  161. package/dist/user/split-surface.d.ts.map +1 -1
  162. package/dist/user/split-surface.js +35 -0
  163. package/dist/user/split-surface.js.map +1 -1
  164. package/package.json +1 -1
@@ -43,9 +43,10 @@ export class UserRoleHandler {
43
43
  }
44
44
  const verdictKey = step.writes.verdict;
45
45
  if (verdictKey) {
46
+ const items = result.feedback ?? [];
46
47
  ctx.artifacts.set(verdictKey, {
47
- data: { approved: false },
48
- text: result.comments ?? "",
48
+ data: { approved: false, feedbackItems: items },
49
+ text: items.join("\n\n"),
49
50
  meta: { source: "user" },
50
51
  });
51
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/user/handler.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,4BAA4B,GAE7B,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;GAOG;AACH,MAAM,OAAO,eAAe;IAEhB;IACS;IACA;IAHnB,YACU,SAA4B,EACnB,cAA4D,IAAI,GAAG,EAAE,EACrE,UAAU,OAAO,CAAC,GAAG,EAAE;QAFhC,cAAS,GAAT,SAAS,CAAmB;QACnB,gBAAW,GAAX,WAAW,CAA0D;QACrE,YAAO,GAAP,OAAO,CAAgB;IACvC,CAAC;IAEJ,KAAK,CAAC,OAAO,CACX,IAAc,EACd,GAAgB,EAChB,MAAe;QAEf,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QAC3C,MAAM,WAAW,GAAG,eAAe;YACjC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEtD,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAChD,MAAM,YAAY,GAAG,GAAG,CAAC,gBAAgB,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QAC9E,MAAM,SAAS,GAAG,MAAM,2BAA2B,CACjD,IAAI,CAAC,EAAE,EACP,GAAG,EACH,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,MAAM,SAAS,GAAsB,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;QAClE,IAAI,SAAS;YAAE,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;QAC/C,IAAI,GAAG,CAAC,aAAa;YAAE,SAAS,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;QAEnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAE5E,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YACvC,IAAI,UAAU,EAAE,CAAC;gBACf,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE;oBAC5B,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACxB,IAAI,EAAE,EAAE;oBACR,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;iBACzB,CAAC,CAAC;YACL,CAAC;YACD,MAAM,QAAQ,GAAG,IAAgB,CAAC;YAClC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACtE,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QACvC,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE;gBAC5B,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;gBACzB,IAAI,EAAE,MAAM,CAAC,QAAQ,IAAI,EAAE;gBAC3B,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;aACzB,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;IAClC,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,OAAe,EACf,GAAgB,EAChB,WAAyD,EACzD,OAAe;IAEf,OAAO,4BAA4B,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAMD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAc,EACd,GAAgB;IAEhB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IACvC,IAAI,CAAC,UAAU;QAAE,OAAO,OAAO,CAAC;IAChC,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAc,UAAU,CAAC,CAAC;IAC5D,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IACvC,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAS,UAAU,EAAE,QAAQ,CAAC,CAAC;IACnE,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IACxC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,UAAU,CAAC;IAC9C,OAAO,YAAY,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/user/handler.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,11 @@
1
1
  import type { TextBuffer } from "../text-editing/readline-ops.js";
2
2
  import { type CurateDecision, type CuratePromptHandler, type CurateResult } from "./curate-prompt.js";
3
+ import { type OffscreenBinding } from "../offscreen/controller.js";
3
4
  import type { ReviewVerdict } from "../agents/reviewers/types.js";
4
5
  import type { TerminalHost } from "../terminal/host.js";
5
6
  import type { CuratePromptContext } from "./curate-prompt.js";
6
7
  import { AttachmentManager } from "../paste-image/attachment-manager.js";
8
+ import { type FeedbackEditTarget } from "./feedback-editing.js";
7
9
  export declare const KDR_HINT = "\u001B[2mK\u001B[0m[eep]/\u001B[2mD\u001B[0m[rop]/\u001B[2mR\u001B[0m[evise]";
8
10
  /**
9
11
  * Host-backed curate-verdict prompt. The plan is always visible:
@@ -28,7 +30,7 @@ export declare const KDR_HINT = "\u001B[2mK\u001B[0m[eep]/\u001B[2mD\u001B[0m[ro
28
30
  * - Up/Down moves the cursor among all navigable rows.
29
31
  * - Ctrl+D submits; Ctrl+C quits poly-weaver (exit code 130). Inside the
30
32
  * inline revise editor (`state.editing`), Ctrl+C cancels the edit only.
31
- * - Ctrl+] is consumed by the host's `InputRouter` for dump capture.
33
+ * - Alt+] is consumed by the host's `InputRouter` for dump capture.
32
34
  */
33
35
  export declare class HostBackedCuratePrompt implements CuratePromptHandler {
34
36
  private readonly host;
@@ -49,15 +51,14 @@ interface CurateState {
49
51
  planScrollTop: number;
50
52
  nextCycle: number[];
51
53
  }
52
- export declare function curateHelpTokens(state: Pick<CurateState, "editing" | "cursor" | "decisions" | "userAdded">, issueCount: number, citationLive: boolean): string[];
54
+ export declare function curateHelpTokens(state: Pick<CurateState, "editing" | "cursor" | "decisions" | "userAdded">, issueCount: number, citationLive: boolean, issueInquiry?: {
55
+ binding: OffscreenBinding;
56
+ ready: boolean;
57
+ }[]): string[];
53
58
  type EditTarget = {
54
59
  kind: "reviewer-revise";
55
60
  index: number;
56
- } | {
57
- kind: "user-edit";
58
- index: number;
59
- } | {
60
- kind: "user-add";
61
- };
61
+ } | FeedbackEditTarget;
62
+ export declare function globalHint(context: CuratePromptContext, primaryReady?: boolean): string;
62
63
  export {};
63
64
  //# sourceMappingURL=host-curate-prompt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"host-curate-prompt.d.ts","sourceRoot":"","sources":["../../src/user/host-curate-prompt.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAKL,KAAK,cAAc,EAEnB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAC;AAY5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAmC,MAAM,qBAAqB,CAAC;AACzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAczE,eAAO,MAAM,QAAQ,iFAC+C,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,sBAAuB,YAAW,mBAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAEzC,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,YAAY,CAAC;CAqazB;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,QAAQ,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IACjC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE;QACP,MAAM,EAAE,UAAU,CAAC;QACnB,MAAM,EAAE,UAAU,CAAC;QACnB,WAAW,EAAE,iBAAiB,CAAC;QAC/B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B,GAAG,SAAS,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC,EAC1E,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,OAAO,GACpB,MAAM,EAAE,CAmBV;AAED,KAAK,UAAU,GACX;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"host-curate-prompt.d.ts","sourceRoot":"","sources":["../../src/user/host-curate-prompt.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAKL,KAAK,cAAc,EAEnB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAC;AAS5B,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAmC,MAAM,qBAAqB,CAAC;AACzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAQzE,OAAO,EAOL,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAM/B,eAAO,MAAM,QAAQ,iFAC+C,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,sBAAuB,YAAW,mBAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAEzC,MAAM,CACV,OAAO,EAAE,aAAa,EACtB,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,YAAY,CAAC;CA8ZzB;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,QAAQ,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IACjC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE;QACP,MAAM,EAAE,UAAU,CAAC;QACnB,MAAM,EAAE,UAAU,CAAC;QACnB,WAAW,EAAE,iBAAiB,CAAC;QAC/B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B,GAAG,SAAS,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC,EAC1E,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,OAAO,EACrB,YAAY,GAAE;IAAE,OAAO,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,EAAO,GACjE,MAAM,EAAE,CAsBV;AAWD,KAAK,UAAU,GACX;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1C,kBAAkB,CAAC;AAkWvB,wBAAgB,UAAU,CAAC,OAAO,EAAE,mBAAmB,EAAE,YAAY,UAAO,GAAG,MAAM,CAWpF"}
@@ -2,16 +2,17 @@ import { bold, cyan, dim, reset, visibleLength, yellow, } from "../ansi.js";
2
2
  import { AgentInterruptedError } from "../agents/runner.js";
3
3
  import { renderMarkdown } from "../markdown.js";
4
4
  import { EmacsInputParser } from "./prompt.js";
5
- import { applyTextBufferEvent, isTextBufferEvent, splitPasteToEvents, } from "../text-editing/emacs-input.js";
6
- import { cursorToVisual, renderWrappedLine, softWrapLine } from "../text-editing/soft-wrap.js";
5
+ import { aliasSelectionNavEvent, isTextBufferEvent, } from "../text-editing/emacs-input.js";
7
6
  import { clipToWidth, tagFor, userAddedTag, wrapToWidth, } from "./curate-prompt.js";
8
7
  import { buildPlanPane } from "./plan-pane.js";
8
+ import { buildIssuesArtifactPane, issueMetaToken } from "./issues-pane.js";
9
9
  import { buildSplitSurface, computeSplitMetrics, SPLIT_COLLAPSE_AT_COLS, } from "./split-surface.js";
10
10
  import { renderShortcutHints } from "./shortcut-hints.js";
11
11
  import { OffscreenController, } from "../offscreen/controller.js";
12
+ import { composeIssueInquiry } from "./issue-inquiry.js";
12
13
  import { AttachmentManager } from "../paste-image/attachment-manager.js";
13
14
  import { ALT_V_PASTE_IMAGE_HINT, handleBracketedPaste, handleImagePasteIntent, PASTING_IMAGE_HINT, } from "../paste-image/intents.js";
14
- import { ensurePersistentImagesDir } from "../paste-image/persistence.js";
15
+ import { applyEditingBufferEvent, applyEditInsertedText, bufferFromText, emptyBuffer, finalizeEditText, renderMultilineEditor, } from "./feedback-editing.js";
15
16
  const DECISION_CYCLE = ["keep", "drop", "revise"];
16
17
  const PLAN_PAGE_OVERLAP = 1;
17
18
  const COLLAPSE_AT_COLS = SPLIT_COLLAPSE_AT_COLS;
@@ -40,7 +41,7 @@ export const KDR_HINT = `${dim}K${reset}[eep]/${dim}D${reset}[rop]/${dim}R${rese
40
41
  * - Up/Down moves the cursor among all navigable rows.
41
42
  * - Ctrl+D submits; Ctrl+C quits poly-weaver (exit code 130). Inside the
42
43
  * inline revise editor (`state.editing`), Ctrl+C cancels the edit only.
43
- * - Ctrl+] is consumed by the host's `InputRouter` for dump capture.
44
+ * - Alt+] is consumed by the host's `InputRouter` for dump capture.
44
45
  */
45
46
  export class HostBackedCuratePrompt {
46
47
  host;
@@ -144,12 +145,6 @@ export class HostBackedCuratePrompt {
144
145
  }
145
146
  clampCursor(issues.length, state);
146
147
  };
147
- const finalizeEditText = async (editing, text) => {
148
- const targetDir = context.persistentDir
149
- ? await ensurePersistentImagesDir(context.persistentDir)
150
- : undefined;
151
- return editing.attachments.finalize(text, targetDir ? { targetDir } : {});
152
- };
153
148
  const submitEdit = () => {
154
149
  const editing = state.editing;
155
150
  if (!editing)
@@ -162,7 +157,7 @@ export class HostBackedCuratePrompt {
162
157
  return;
163
158
  }
164
159
  settlingEdit = true;
165
- void finalizeEditText(editing, text).then((finalText) => {
160
+ void finalizeEditText(editing, text, context.persistentDir).then((finalText) => {
166
161
  if (!active || state.editing !== editing)
167
162
  return;
168
163
  applySubmittedEdit(editing, finalText);
@@ -189,11 +184,6 @@ export class HostBackedCuratePrompt {
189
184
  transientHint: null,
190
185
  };
191
186
  };
192
- const applyEditInsertedText = (editing, text) => {
193
- for (const textEvent of splitPasteToEvents(text)) {
194
- applyCurateTextBufferEvent(editing, textEvent);
195
- }
196
- };
197
187
  const applyEditPasteOutcome = (editing, outcome) => {
198
188
  if (!active || settlingEdit || state.editing !== editing)
199
189
  return;
@@ -213,9 +203,12 @@ export class HostBackedCuratePrompt {
213
203
  const processEvents = (events) => {
214
204
  let dirty = false;
215
205
  let finished = false;
216
- for (const event of events) {
206
+ for (const rawEvent of events) {
217
207
  if (finished)
218
208
  break;
209
+ const event = state.editing
210
+ ? rawEvent
211
+ : aliasSelectionNavEvent(rawEvent);
219
212
  if (state.editing) {
220
213
  if (settlingEdit) {
221
214
  dirty = true;
@@ -251,20 +244,20 @@ export class HostBackedCuratePrompt {
251
244
  continue;
252
245
  }
253
246
  if (event.type === "ctrl-j") {
254
- dirty = applyCurateTextBufferEvent(state.editing, { type: "newline" }) || dirty;
247
+ dirty = applyEditingBufferEvent(state.editing, { type: "newline" }) || dirty;
255
248
  dirty = true;
256
249
  continue;
257
250
  }
258
251
  if (event.type === "arrow") {
259
252
  if (event.direction === "left" || event.direction === "right") {
260
- dirty = applyCurateTextBufferEvent(state.editing, {
253
+ dirty = applyEditingBufferEvent(state.editing, {
261
254
  type: event.direction === "left" ? "ctrl-b" : "ctrl-f",
262
255
  }) || dirty;
263
256
  }
264
257
  continue;
265
258
  }
266
259
  if (isTextBufferEvent(event)) {
267
- dirty = applyCurateTextBufferEvent(state.editing, event) || dirty;
260
+ dirty = applyEditingBufferEvent(state.editing, event) || dirty;
268
261
  continue;
269
262
  }
270
263
  continue;
@@ -429,7 +422,7 @@ export class HostBackedCuratePrompt {
429
422
  const layout = this.host.getLayout();
430
423
  const cols = Math.max(20, layout.columns);
431
424
  const rows = Math.max(1, layout.childRows);
432
- return buildSurface(verdict, plan, state, cols, rows, context);
425
+ return buildSurface(verdict, plan, state, cols, rows, context, offscreenController);
433
426
  },
434
427
  onEvents: (keys) => {
435
428
  processEvents(parser.mapKeys(keys));
@@ -437,13 +430,19 @@ export class HostBackedCuratePrompt {
437
430
  },
438
431
  };
439
432
  const mode = context.offscreen
440
- ? (offscreenController = new OffscreenController(this.host, context.offscreen.workdir, context.offscreen.slots, curateArtifactPaneConfigs(verdict, plan))).wrap(baseMode)
433
+ ? (offscreenController = new OffscreenController(this.host, context.offscreen.workdir, context.offscreen.slots, curateArtifactPaneConfigs(verdict, plan), {
434
+ composeIssueQuestion: (binding) => {
435
+ if (state.cursor >= issues.length)
436
+ return undefined;
437
+ return composeIssueInquiry(issues[state.cursor], binding === "primary" ? "planner" : "reviewer");
438
+ },
439
+ })).wrap(baseMode)
441
440
  : baseMode;
442
441
  detach = this.host.attachParentUi(mode);
443
442
  });
444
443
  }
445
444
  }
446
- export function curateHelpTokens(state, issueCount, citationLive) {
445
+ export function curateHelpTokens(state, issueCount, citationLive, issueInquiry = []) {
447
446
  if (state.editing) {
448
447
  const tokens = ["Ctrl+J Newline", "Enter Submit", "Esc Cancel", ALT_V_PASTE_IMAGE_HINT];
449
448
  if (state.editing.transientHint) {
@@ -458,6 +457,9 @@ export function curateHelpTokens(state, issueCount, citationLive) {
458
457
  if (citationLive)
459
458
  tokens.push("N Next Citation");
460
459
  tokens.push("A Add");
460
+ for (const slot of issueInquiry) {
461
+ tokens.push(issueInquiryHintToken(slot.binding, slot.ready));
462
+ }
461
463
  return tokens;
462
464
  }
463
465
  if (state.cursor < issueCount + state.userAdded.length) {
@@ -465,29 +467,13 @@ export function curateHelpTokens(state, issueCount, citationLive) {
465
467
  }
466
468
  return ["Enter/A Add"];
467
469
  }
468
- function emptyBuffer() {
469
- return { lines: [""], cursorRow: 0, cursorCol: 0 };
470
- }
471
- function bufferFromText(text) {
472
- const lines = text.length > 0 ? text.split("\n") : [""];
473
- const cursorRow = Math.max(0, lines.length - 1);
474
- return {
475
- lines,
476
- cursorRow,
477
- cursorCol: lines[cursorRow]?.length ?? 0,
478
- };
479
- }
480
- function normalizeBuffer(buffer) {
481
- if (buffer.lines.length === 0)
482
- buffer.lines.push("");
483
- buffer.cursorRow = Math.max(0, Math.min(buffer.cursorRow, buffer.lines.length - 1));
484
- buffer.cursorCol = Math.max(0, Math.min(buffer.cursorCol, buffer.lines[buffer.cursorRow].length));
485
- }
486
- function applyCurateTextBufferEvent(editing, event) {
487
- normalizeBuffer(editing.buffer);
488
- const changed = applyTextBufferEvent(editing.buffer, event);
489
- normalizeBuffer(editing.buffer);
490
- return changed;
470
+ function issueInquiryHintToken(binding, ready) {
471
+ switch (binding) {
472
+ case "primary":
473
+ return ready ? "Alt+O Ask planner" : `${dim}Alt+O Planner busy${reset}`;
474
+ case "secondary":
475
+ return ready ? "Alt+Q Ask reviewer" : `${dim}Alt+Q Reviewer busy${reset}`;
476
+ }
491
477
  }
492
478
  function navigableCount(issueCount, state) {
493
479
  return issueCount + state.userAdded.length + 1;
@@ -495,38 +481,7 @@ function navigableCount(issueCount, state) {
495
481
  function clampCursor(issueCount, state) {
496
482
  state.cursor = Math.max(0, Math.min(state.cursor, navigableCount(issueCount, state) - 1));
497
483
  }
498
- function renderMultilineEditor(buffer, width, firstPrefix, continuationPrefix) {
499
- normalizeBuffer(buffer);
500
- const lines = [];
501
- const firstPrefixWidth = visibleLength(firstPrefix);
502
- const continuationPrefixWidth = visibleLength(continuationPrefix);
503
- const bodyWidth = Math.max(1, width - firstPrefixWidth);
504
- for (let row = 0; row < buffer.lines.length; row++) {
505
- const raw = buffer.lines[row] ?? "";
506
- const rendered = renderWrappedLine(raw, bodyWidth, row === buffer.cursorRow ? buffer.cursorCol : null);
507
- for (let subRow = 0; subRow < rendered.length; subRow++) {
508
- const prefix = row === 0 && subRow === 0 ? firstPrefix : continuationPrefix;
509
- lines.push(clipToWidth(`${prefix}${rendered[subRow]}`, width));
510
- }
511
- }
512
- const cursorLine = buffer.lines[buffer.cursorRow] ?? "";
513
- let cursorRowOffset = 0;
514
- for (let row = 0; row < buffer.cursorRow; row++) {
515
- cursorRowOffset += softWrapLine(buffer.lines[row] ?? "", bodyWidth).length;
516
- }
517
- const cursorSegments = softWrapLine(cursorLine, bodyWidth);
518
- const cursor = cursorToVisual(cursorSegments, buffer.cursorCol, cursorLine.length, bodyWidth);
519
- cursorRowOffset += cursor.subRow;
520
- const cursorPrefixWidth = buffer.cursorRow === 0 && cursor.subRow === 0
521
- ? firstPrefixWidth
522
- : continuationPrefixWidth;
523
- return {
524
- lines,
525
- cursorRowOffset,
526
- cursorCol: Math.min(Math.max(0, width - 1), cursorPrefixWidth + cursor.visCol),
527
- };
528
- }
529
- function buildLeftPane(verdict, state, width, rows, globalHintText, citationLive) {
484
+ function buildLeftPane(verdict, state, width, rows, globalHintText, citationLive, issueInquiry) {
530
485
  const pinnedHint = clipToWidth(globalHintText, width);
531
486
  const scrollRows = Math.max(0, rows - 1);
532
487
  if (scrollRows === 0) {
@@ -666,7 +621,7 @@ function buildLeftPane(verdict, state, width, rows, globalHintText, citationLive
666
621
  rowEnds[rowIndex] = lines.length;
667
622
  }
668
623
  lines.push("");
669
- for (const l of wrapToWidth(renderShortcutHints(curateHelpTokens(state, issues.length, citationLive)), width)) {
624
+ for (const l of wrapToWidth(renderShortcutHints(curateHelpTokens(state, issues.length, citationLive, issueInquiry)), width)) {
670
625
  lines.push(l);
671
626
  }
672
627
  const activeStart = rowStarts[state.cursor] ?? 0;
@@ -757,9 +712,14 @@ function computeNarrowPlanRows(rows) {
757
712
  // visible.
758
713
  return Math.max(3, Math.floor((rows - 1) / 2));
759
714
  }
760
- function buildSurface(verdict, plan, state, cols, rows, context) {
715
+ function buildSurface(verdict, plan, state, cols, rows, context, offscreenController) {
761
716
  const split = computeSplitMetrics({ cols, rows, collapseAt: COLLAPSE_AT_COLS });
762
- const hint = globalHint(context);
717
+ const primaryReady = offscreenController?.isIssueInquiryReady("primary") ?? true;
718
+ const hint = globalHint(context, primaryReady);
719
+ const issueInquiry = (context.offscreen?.slots ?? []).map((slot) => ({
720
+ binding: slot.binding,
721
+ ready: offscreenController?.isIssueInquiryReady(slot.binding) ?? true,
722
+ }));
763
723
  const planWidth = split.collapsed ? cols : split.rightWidth;
764
724
  const citationLive = !state.editing &&
765
725
  state.cursor < verdict.issues.length &&
@@ -771,7 +731,7 @@ function buildSurface(verdict, plan, state, cols, rows, context) {
771
731
  const planRows = computeNarrowPlanRows(rows);
772
732
  const issueRows = Math.max(1, rows - 1 - planRows);
773
733
  const right = buildRightPane(verdict, plan, state, cols, planRows);
774
- const left = buildLeftPane(verdict, state, cols, issueRows, hint, citationLive);
734
+ const left = buildLeftPane(verdict, state, cols, issueRows, hint, citationLive, issueInquiry);
775
735
  const separator = `${dim}${"─".repeat(cols)}${reset}`;
776
736
  const lines = [...right, separator, ...left.lines];
777
737
  while (lines.length < rows)
@@ -788,16 +748,25 @@ function buildSurface(verdict, plan, state, cols, rows, context) {
788
748
  cursor: { row: cursorRow, col: left.cursor.col },
789
749
  };
790
750
  }
791
- const left = buildLeftPane(verdict, state, split.leftWidth, rows, hint, citationLive);
751
+ const left = buildLeftPane(verdict, state, split.leftWidth, rows, hint, citationLive, issueInquiry);
792
752
  const right = buildRightPane(verdict, plan, state, split.rightWidth, rows);
793
753
  return buildSplitSurface({ lines: left.lines, cursor: left.cursor }, { lines: right }, { cols, rows, collapseAt: COLLAPSE_AT_COLS });
794
754
  }
795
- function globalHint(context) {
755
+ export function globalHint(context, primaryReady = true) {
796
756
  const tokens = ["Ctrl+D Submit", "Ctrl+C Quit"];
797
- for (const slot of context.offscreen?.slots ?? [])
757
+ const slots = context.offscreen?.slots ?? [];
758
+ for (const slot of slots) {
798
759
  tokens.push(slot.hint);
760
+ }
761
+ const primarySlot = slots.find((slot) => slot.binding === "primary");
762
+ if (primarySlot?.summarizeHint) {
763
+ tokens.push(summarizeHintToken(primarySlot.summarizeHint, primaryReady));
764
+ }
799
765
  return renderShortcutHints(tokens);
800
766
  }
767
+ function summarizeHintToken(hint, ready) {
768
+ return ready ? hint : `${dim}${hint}${reset}`;
769
+ }
801
770
  function curateArtifactPaneConfigs(verdict, plan) {
802
771
  return {
803
772
  primary: {
@@ -810,40 +779,6 @@ function curateArtifactPaneConfigs(verdict, plan) {
810
779
  },
811
780
  };
812
781
  }
813
- function buildIssuesArtifactPane(verdict, width) {
814
- const paneWidth = Math.max(1, width);
815
- const lines = [];
816
- const issueCount = verdict.issues.length;
817
- const suffix = issueCount === 1 ? "" : "s";
818
- lines.push(clipToWidth(`${bold}${cyan}Reviewer Issues${reset} — ${issueCount} issue${suffix}`, paneWidth));
819
- lines.push(`${dim}${"─".repeat(paneWidth)}${reset}`);
820
- if (verdict.summary) {
821
- for (const line of renderMarkdown(verdict.summary, paneWidth)) {
822
- lines.push(clipToWidth(line, paneWidth));
823
- }
824
- lines.push("");
825
- }
826
- for (let i = 0; i < verdict.issues.length; i++) {
827
- if (i > 0)
828
- lines.push("");
829
- const issue = verdict.issues[i];
830
- const title = `${bold}Issue ${i + 1}${reset}`;
831
- const meta = issueMetaToken(issue);
832
- lines.push(clipToWidth(meta ? `${title} ${meta}` : title, paneWidth));
833
- for (const line of renderMarkdown(issue.description, paneWidth)) {
834
- lines.push(clipToWidth(line, paneWidth));
835
- }
836
- }
837
- return lines;
838
- }
839
- function issueMetaToken(issue) {
840
- const meta = [];
841
- if (issue.severity)
842
- meta.push(issue.severity);
843
- if (issue.category)
844
- meta.push(issue.category);
845
- return meta.length ? `${dim}[${meta.join("/")}]${reset}` : "";
846
- }
847
782
  function planMetrics(plan, host) {
848
783
  const layout = host.getLayout();
849
784
  const cols = Math.max(20, layout.columns);
@@ -1 +1 @@
1
- {"version":3,"file":"host-curate-prompt.js","sourceRoot":"","sources":["../../src/user/host-curate-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host-curate-prompt.js","sourceRoot":"","sources":["../../src/user/host-curate-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,KAAK,EACL,aAAa,EACb,MAAM,GACP,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAsB,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAiB,MAAM,aAAa,CAAC;AAE9D,OAAO,EACL,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,WAAW,EACX,MAAM,EACN,YAAY,EACZ,WAAW,GAKZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,mBAAmB,GAGpB,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GAEnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,qBAAqB,GAEtB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,cAAc,GAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;AACpE,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AAChD,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAC7C,MAAM,CAAC,MAAM,QAAQ,GACnB,GAAG,GAAG,IAAI,KAAK,SAAS,GAAG,IAAI,KAAK,SAAS,GAAG,IAAI,KAAK,SAAS,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,sBAAsB;IACJ;IAA7B,YAA6B,IAAkB;QAAlB,SAAI,GAAJ,IAAI,CAAc;IAAG,CAAC;IAEnD,KAAK,CAAC,MAAM,CACV,OAAsB,EACtB,QAAiB,EACjB,UAA+B,EAAE;QAEjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,OAAO;gBACL,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAe,EAAE,CAAC,CAAC;aACpF,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,IAAI,GAAG,QAAQ,IAAI,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAgB;YACzB,MAAM,EAAE,CAAC;YACT,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;YACnC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YACrC,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,SAAS;YAClB,aAAa,EAAE,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;SAC/B,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAEtC,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnD,IAAI,MAAgC,CAAC;YACrC,IAAI,mBAAoD,CAAC;YACzD,IAAI,MAAM,GAAG,IAAI,CAAC;YAClB,IAAI,YAAY,GAAG,KAAK,CAAC;YAEzB,MAAM,OAAO,GAAG,GAAS,EAAE;gBACzB,MAAM,GAAG,KAAK,CAAC;gBACf,mBAAmB,EAAE,OAAO,EAAE,CAAC;gBAC/B,mBAAmB,GAAG,SAAS,CAAC;gBAChC,MAAM,EAAE,EAAE,CAAC;gBACX,MAAM,GAAG,SAAS,CAAC;YACrB,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,CAAC,MAAoB,EAAQ,EAAE;gBAC5C,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,CAAC;YAEF,MAAM,QAAQ,GAAG,CAAC,GAAU,EAAQ,EAAE;gBACpC,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,GAAiB,EAAE;gBAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAChD,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC1D,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;oBAC9B,CAAC;gBACH,CAAC;gBACD,MAAM,MAAM,GAAiB;oBAC3B,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;wBACxC,MAAM,GAAG,GAAyB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;wBAC9D,IAAI,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC1C,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBAClC,CAAC;wBACD,OAAO,GAAG,CAAC;oBACb,CAAC,CAAC;iBACH,CAAC;gBACF,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,CAAC,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;gBAC1C,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC,CAAC;YAEF,MAAM,UAAU,GAAG,GAAS,EAAE;gBAC5B,IAAI,YAAY;oBAAE,OAAO;gBACzB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC9B,IAAI,CAAC,OAAO;oBAAE,OAAO;gBACrB,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;gBAC1B,IACE,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAiB;oBACzC,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EACrC,CAAC;oBACD,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;gBACjD,CAAC;gBACD,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACpC,CAAC,CAAC;YAEF,MAAM,kBAAkB,GAAG,CACzB,OAA4C,EAC5C,IAAY,EACN,EAAE;gBACR,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;gBAE1B,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBAC9C,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC/B,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;oBACvD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;wBAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;oBACpD,OAAO;gBACT,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBACxC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC/B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACpB,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;oBAC5B,CAAC;yBAAM,CAAC;wBACN,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC7B,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBACpC,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpB,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC3B,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC5D,CAAC;gBACD,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACpC,CAAC,CAAC;YAEF,MAAM,UAAU,GAAG,GAAS,EAAE;gBAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC9B,IAAI,CAAC,OAAO;oBAAE,OAAO;gBACrB,IAAI,YAAY;oBAAE,OAAO;gBACzB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBACpD,IAAI,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChD,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBAClC,OAAO;gBACT,CAAC;gBACD,YAAY,GAAG,IAAI,CAAC;gBACpB,KAAK,gBAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;oBAC7E,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO;wBAAE,OAAO;oBACjD,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;oBACvC,YAAY,GAAG,KAAK,CAAC;oBACrB,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBACrC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;oBACxB,YAAY,GAAG,KAAK,CAAC;oBACrB,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAChE,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,IAAI,GAAG,EAAE,EAAQ,EAAE;gBAC5D,KAAK,CAAC,OAAO,GAAG;oBACd,MAAM,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE;oBAC1C,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC;oBAC5B,WAAW,EAAE,IAAI,iBAAiB,EAAE;oBACpC,aAAa,EAAE,IAAI;iBACpB,CAAC;YACJ,CAAC,CAAC;YAEF,MAAM,iBAAiB,GAAG,GAAS,EAAE;gBACnC,KAAK,CAAC,OAAO,GAAG;oBACd,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;oBAC5B,MAAM,EAAE,WAAW,EAAE;oBACrB,WAAW,EAAE,IAAI,iBAAiB,EAAE;oBACpC,aAAa,EAAE,IAAI;iBACpB,CAAC;YACJ,CAAC,CAAC;YAEF,MAAM,qBAAqB,GAAG,CAC5B,OAA4C,EAC5C,OAA2B,EACrB,EAAE;gBACR,IAAI,CAAC,MAAM,IAAI,YAAY,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO;oBAAE,OAAO;gBACjE,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC;gBAC7C,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;oBAAE,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACrF,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACrC,CAAC,CAAC;YAEF,MAAM,qBAAqB,GAAG,CAC5B,OAA4C,EAC5C,IAAiC,EAC3B,EAAE;gBACR,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;oBAC1F,IAAI,CAAC,MAAM,IAAI,YAAY,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO;wBAAE,OAAO;oBACjE,OAAO,CAAC,aAAa,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACzE,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBACrC,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,MAAM,aAAa,GAAG,CAAC,MAAkB,EAAW,EAAE;gBACpD,IAAI,KAAK,GAAG,KAAK,CAAC;gBAClB,IAAI,QAAQ,GAAG,KAAK,CAAC;gBACrB,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;oBAC9B,IAAI,QAAQ;wBAAE,MAAM;oBACpB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO;wBACzB,CAAC,CAAC,QAAQ;wBACV,CAAC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;oBAErC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBAClB,IAAI,YAAY,EAAE,CAAC;4BACjB,KAAK,GAAG,IAAI,CAAC;4BACb,SAAS;wBACX,CAAC;wBACD,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;4BAChC,KAAK,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;4BACnC,KAAK,GAAG,IAAI,CAAC;wBACf,CAAC;wBACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;4BAC9B,qBAAqB,CACnB,OAAO,EACP,oBAAoB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CACzD,CAAC;4BACF,SAAS;wBACX,CAAC;wBACD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;4BACjC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;4BAC9B,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,EAAE;gCAC9E,IAAI,CAAC,MAAM,IAAI,YAAY,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO;oCAAE,OAAO;gCACjE,OAAO,CAAC,aAAa,GAAG,kBAAkB,CAAC;gCAC3C,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;4BACrC,CAAC,CAAC,CAAC,CAAC;4BACJ,SAAS;wBACX,CAAC;wBACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACvD,UAAU,EAAE,CAAC;4BACb,KAAK,GAAG,IAAI,CAAC;4BACb,SAAS;wBACX,CAAC;wBACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BACtD,UAAU,EAAE,CAAC;4BACb,KAAK,GAAG,IAAI,CAAC;4BACb,SAAS;wBACX,CAAC;wBACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BAC5B,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,IAAI,KAAK,CAAC;4BAC7E,KAAK,GAAG,IAAI,CAAC;4BACb,SAAS;wBACX,CAAC;wBACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BAC3B,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;gCAC9D,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,OAAO,EAAE;oCAC7C,IAAI,EAAE,KAAK,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;iCACvD,CAAC,IAAI,KAAK,CAAC;4BACd,CAAC;4BACD,SAAS;wBACX,CAAC;wBACD,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;4BAC7B,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC;4BAC/D,SAAS;wBACX,CAAC;wBACD,SAAS;oBACX,CAAC;oBAED,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC5B,QAAQ,CAAC,IAAI,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC;wBACnD,QAAQ,GAAG,IAAI,CAAC;wBAChB,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC5B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;wBACjB,QAAQ,GAAG,IAAI,CAAC;wBAChB,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC3B,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;wBACnD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;4BAC7B,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC;4BAClD,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;gCAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACpE,KAAK,GAAG,IAAI,CAAC;wBACf,CAAC;6BAAM,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;4BACtC,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;4BAC1C,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;gCAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACpE,KAAK,GAAG,IAAI,CAAC;wBACf,CAAC;wBACD,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;wBACjC,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;wBACvC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,GAAG,iBAAiB,CAAC,CAAC;wBAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;wBACpD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;4BAC7B,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;wBAChE,CAAC;6BAAM,CAAC;4BACN,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;wBAClE,CAAC;wBACD,KAAK,GAAG,IAAI,CAAC;wBACb,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;wBACjC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;wBACxB,KAAK,GAAG,IAAI,CAAC;wBACb,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBAChC,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;wBACvC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;wBAC9D,KAAK,GAAG,IAAI,CAAC;wBACb,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;wBAClC,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;wBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;wBACpD,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAC5B,GAAG,EACH,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,CAC/C,CAAC;wBACF,KAAK,GAAG,IAAI,CAAC;wBACb,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC3B,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;4BACjC,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,CAAC;gCAC/C,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gCACrE,KAAK,GAAG,IAAI,CAAC;4BACf,CAAC;wBACH,CAAC;6BAAM,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;4BACjE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;4BAC3C,KAAK,CAAC,OAAO,GAAG;gCACd,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE;gCACpC,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gCACpD,WAAW,EAAE,IAAI,iBAAiB,EAAE;gCACpC,aAAa,EAAE,IAAI;6BACpB,CAAC;4BACF,KAAK,GAAG,IAAI,CAAC;wBACf,CAAC;6BAAM,CAAC;4BACN,iBAAiB,EAAE,CAAC;4BACpB,KAAK,GAAG,IAAI,CAAC;wBACf,CAAC;wBACD,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;wBACzB,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM;4BAAE,SAAS;wBAC5C,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBAC1C,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;wBACvF,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;wBACrC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;4BACtB,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBACnC,CAAC;wBACD,KAAK,GAAG,IAAI,CAAC;wBACb,SAAS;oBACX,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC5B,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;4BACrC,iBAAiB,EAAE,CAAC;4BACpB,KAAK,GAAG,IAAI,CAAC;4BACb,SAAS;wBACX,CAAC;wBACD,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;4BACrC,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM;gCAAE,SAAS;4BAC5C,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;4BACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;4BAClD,MAAM,OAAO,GAAG,mBAAmB,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;4BAC1D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gCAAE,SAAS;4BAEnC,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;4BACvE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;4BACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;4BAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC;4BAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;4BACvD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;4BAC/D,MAAM,eAAe,GAAG,YAAY,KAAK,KAAK,CAAC,aAAa,CAAC;4BAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC;4BAErC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCACvB,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;4BAClE,CAAC;4BACD,IAAI,eAAe,IAAI,OAAO;gCAAE,SAAS;4BAEzC,KAAK,CAAC,aAAa,GAAG,YAAY,CAAC;4BACnC,KAAK,GAAG,IAAI,CAAC;4BACb,SAAS;wBACX,CAAC;wBACD,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM;4BAAE,SAAS;wBACtE,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;4BAClC,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;gCACrC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gCACxD,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gCAClC,KAAK,GAAG,IAAI,CAAC;4BACf,CAAC;4BACD,SAAS;wBACX,CAAC;wBACD,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;wBACpC,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBAC3C,IAAI,EAAE,KAAK,GAAG;4BAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;6BAClD,IAAI,EAAE,KAAK,GAAG;4BAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;6BACvD,IAAI,EAAE,KAAK,GAAG;4BAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;;4BACzD,SAAS;wBACd,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC;wBAChE,IAAI,YAAY,EAAE,CAAC;4BACjB,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBACnC,CAAC;wBACD,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,YAAY;4BAAE,KAAK,GAAG,IAAI,CAAC;oBAC3E,CAAC;gBACH,CAAC;gBACD,IAAI,KAAK,IAAI,CAAC,QAAQ;oBAAE,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC3D,OAAO,QAAQ,CAAC;YAClB,CAAC,CAAC;YAEF,MAAM,QAAQ,GAAqB;gBACjC,UAAU,EAAE,GAAkB,EAAE;oBAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBACrC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;oBAC3C,OAAO,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;gBACtF,CAAC;gBACD,QAAQ,EAAE,CAAC,IAAmB,EAAW,EAAE;oBACzC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;oBACpC,OAAO,IAAI,CAAC;gBACd,CAAC;aACF,CAAC;YAEF,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS;gBAC5B,CAAC,CAAC,CAAC,mBAAmB,GAAG,IAAI,mBAAmB,CAC5C,IAAI,CAAC,IAAI,EACT,OAAO,CAAC,SAAS,CAAC,OAAO,EACzB,OAAO,CAAC,SAAS,CAAC,KAAK,EACvB,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,EACxC;oBACE,oBAAoB,EAAE,CAAC,OAAO,EAAE,EAAE;wBAChC,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM;4BAAE,OAAO,SAAS,CAAC;wBACpD,OAAO,mBAAmB,CACxB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EACpB,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAC/C,CAAC;oBACJ,CAAC;iBACF,CACF,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACnB,CAAC,CAAC,QAAQ,CAAC;YAEb,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAiBD,MAAM,UAAU,gBAAgB,CAC9B,KAA0E,EAC1E,UAAkB,EAClB,YAAqB,EACrB,eAAgE,EAAE;IAElE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,CAAC,gBAAgB,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,CAAC,CAAC;QACxF,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,GAAG,KAAK,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1B,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ;YAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1E,IAAI,YAAY;YAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACvD,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,aAAa,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAyB,EAAE,KAAc;IACtE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,GAAG,qBAAqB,KAAK,EAAE,CAAC;QAC1E,KAAK,WAAW;YACd,OAAO,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,GAAG,sBAAsB,KAAK,EAAE,CAAC;IAC9E,CAAC;AACH,CAAC;AAMD,SAAS,cAAc,CAAC,UAAkB,EAAE,KAAkB;IAC5D,OAAO,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,WAAW,CAAC,UAAkB,EAAE,KAAkB;IACzD,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5F,CAAC;AAOD,SAAS,aAAa,CACpB,OAAsB,EACtB,KAAkB,EAClB,KAAa,EACb,IAAY,EACZ,cAAsB,EACtB,YAAqB,EACrB,YAA6D;IAE7D,MAAM,UAAU,GAAG,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;IAEzC,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO;YACL,KAAK,EAAE,CAAC,UAAU,CAAC;YACnB,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;SAC3B,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;IACxB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,WAAW,CACpB,GAAG,IAAI,GAAG,IAAI,wBAAwB,KAAK,MAAM,CAAC,SAAS,CAAC,EAAE,EAC9D,KAAK,CACN,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;YACvD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,sEAAsE;IACtE,sEAAsE;IACtE,8BAA8B;IAC9B,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,SAA6B,CAAC;IAClC,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1B,MAAM,QAAQ,GAAG,CAAC,CAAC;QACnB,MAAM,QAAQ,GAAG,QAAQ,KAAK,KAAK,CAAC,MAAM,CAAC;QAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,IAAI,GAAG,GAAG,KAAK,IAAI,GAAG,GAAG,CAAC;QAChC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC1D,SAAS,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QACnC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACzD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBACjC,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC9C,oEAAoE;gBACpE,iDAAiD;gBACjD,IAAI,OAAO,GAAG,CAAC,GAAG,SAAS,IAAI,KAAK,EAAE,CAAC;oBACrC,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC;gBACpD,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,SAAS,EAAE,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,eAAe,CAAC;YAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/D,IACE,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,iBAAiB;gBAChD,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,EAChC,CAAC;gBACD,MAAM,cAAc,GAAG,qBAAqB,CAC1C,KAAK,CAAC,OAAO,CAAC,MAAM,EACpB,KAAK,EACL,GAAG,GAAG,GAAG,MAAM,GAAG,KAAK,EAAE,EACzB,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,EAAE,CACrD,CAAC;gBACF,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC,eAAe,CAAC;gBAC1D,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC;gBACrC,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC;iBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;gBACvD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAE,EAAE,WAAW,CAAC,CAAC;gBAC7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACxC,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;oBACnD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,GAAG,GAAG,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QACnC,IAAI,QAAQ,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,QAAQ,KAAK,KAAK,CAAC,MAAM,CAAC;QAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,MAAM,IAAI,GAAG,GAAG,KAAK,IAAI,YAAY,EAAE,GAAG,CAAC;QAC3C,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACrC,SAAS,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QAEnC,IACE,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,WAAW;YAC1C,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,EAChC,CAAC;YACD,MAAM,cAAc,GAAG,qBAAqB,CAC1C,KAAK,CAAC,OAAO,CAAC,MAAM,EACpB,KAAK,EACL,IAAI,EACJ,MAAM,CACP,CAAC;YACF,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC,eAAe,CAAC;YAC1D,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;YACjE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;gBACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACzC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,CAAC;QACC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QACxD,IAAI,QAAQ,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,QAAQ,KAAK,KAAK,CAAC,MAAM,CAAC;QAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,SAAS,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QAEnC,IAAI,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,GAAG,KAAK,IAAI,YAAY,EAAE,GAAG,CAAC;YAC3C,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,cAAc,GAAG,qBAAqB,CAC1C,KAAK,CAAC,OAAO,CAAC,MAAM,EACpB,KAAK,EACL,IAAI,EACJ,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CACtB,CAAC;YACF,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC,eAAe,CAAC;YAC1D,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,KAAK,IAAI,GAAG,iBAAiB,KAAK,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,MAAM,CAAC,IAAI,WAAW,CACzB,mBAAmB,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,EACvF,KAAK,CACN,EAAE,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;IAED,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC;IACjE,uEAAuE;IACvE,gEAAgE;IAChE,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3B,IAAI,KAAK,GAAG,UAAU,EAAE,CAAC;QACvB,oDAAoD;QACpD,SAAS,GAAG,WAAW,CAAC;QACxB,sEAAsE;QACtE,qEAAqE;QACrE,SAAS;QACT,IAAI,kBAAkB,GAAG,SAAS,GAAG,UAAU,EAAE,CAAC;YAChD,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,CAAC;YAC5C,IAAI,SAAS,GAAG,WAAW;gBAAE,SAAS,GAAG,WAAW,CAAC;QACvD,CAAC;QACD,qDAAqD;QACrD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,SAAS,GAAG,SAAS;gBAAE,SAAS,GAAG,SAAS,CAAC;YACjD,IAAI,SAAS,IAAI,SAAS,GAAG,UAAU;gBAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,CAAC,CAAC;QAClF,CAAC;QACD,SAAS;QACT,IAAI,SAAS,GAAG,CAAC;YAAE,SAAS,GAAG,CAAC,CAAC;QACjC,IAAI,SAAS,GAAG,UAAU,GAAG,KAAK;YAAE,SAAS,GAAG,KAAK,GAAG,UAAU,CAAC;IACrE,CAAC;IAED,IAAI,SAAiB,CAAC;IACtB,IAAI,SAAiB,CAAC;IACtB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;QAClC,SAAS,GAAG,SAAS,CAAC;IACxB,CAAC;SAAM,CAAC;QACN,sEAAsE;QACtE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;QACpC,SAAS,GAAG,CAAC,CAAC;IAChB,CAAC;IAED,2EAA2E;IAC3E,gCAAgC;IAChC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClB,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,UAAU;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjD,IAAI,KAAK,CAAC,MAAM,GAAG,UAAU;QAAE,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;IAEnF,IAAI,SAAS,GAAG,CAAC;QAAE,SAAS,GAAG,CAAC,CAAC;IACjC,IAAI,SAAS,IAAI,UAAU;QAAE,SAAS,GAAG,UAAU,GAAG,CAAC,CAAC;IACxD,IAAI,SAAS,GAAG,CAAC;QAAE,SAAS,GAAG,CAAC,CAAC;IACjC,IAAI,SAAS,IAAI,KAAK;QAAE,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAE3D,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEvB,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC9C,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE;KAC3C,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CACrB,OAAsB,EACtB,IAAY,EACZ,KAAkB,EAClB,KAAa,EACb,IAAY;IAEZ,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,IAAI,KAAK,CAAC,aAAa,GAAG,GAAG;QAAE,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC;IACzD,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC;QAAE,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK;SAC3B,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;SAC7D,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAC1D,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAClD,MAAM,IAAI,sBAAsB,CAAC,MAAM,EAAE,SAAS,CAAC;QACjD,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC;QAC3B,CAAC,CAAC,IAAI,CACT,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,GAAG,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,4EAA4E;IAC5E,2EAA2E;IAC3E,WAAW;IACX,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,YAAY,CACnB,OAAsB,EACtB,IAAY,EACZ,KAAkB,EAClB,IAAY,EACZ,IAAY,EACZ,OAA4B,EAC5B,mBAAsE;IAEtE,MAAM,KAAK,GAAG,mBAAmB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAChF,MAAM,YAAY,GAAG,mBAAmB,EAAE,mBAAmB,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;IACjF,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnE,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI;KACtE,CAAC,CAAC,CAAC;IACJ,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,UAAW,CAAC;IAC7D,MAAM,YAAY,GAChB,CAAC,KAAK,CAAC,OAAO;QACd,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM;QACpC,mBAAmB,CACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,EACvC,mBAAmB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAC7C,CAAC,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,wEAAwE;QACxE,qEAAqE;QACrE,uCAAuC;QACvC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,aAAa,CACxB,OAAO,EACP,KAAK,EACL,IAAI,EACJ,SAAS,EACT,IAAI,EACJ,YAAY,EACZ,YAAY,CACb,CAAC;QACF,MAAM,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC;QACtD,MAAM,KAAK,GAAa,CAAC,GAAG,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC,MAAM,GAAG,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI;YAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QACjE,IAAI,SAAS,GAAG,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;QAC/C,IAAI,SAAS,GAAG,CAAC;YAAE,SAAS,GAAG,CAAC,CAAC;QACjC,IAAI,SAAS,IAAI,IAAI;YAAE,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC;QAC5C,OAAO;YACL,KAAK;YACL,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;SACjD,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,aAAa,CACxB,OAAO,EACP,KAAK,EACL,KAAK,CAAC,SAAS,EACf,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,YAAY,CACb,CAAC;IACF,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,UAAW,EAAE,IAAI,CAAC,CAAC;IAC5E,OAAO,iBAAiB,CACtB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAC1C,EAAE,KAAK,EAAE,KAAK,EAAE,EAChB,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAA4B,EAAE,YAAY,GAAG,IAAI;IAC1E,MAAM,MAAM,GAAG,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC;IAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;IACrE,IAAI,WAAW,EAAE,aAAa,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY,EAAE,KAAc;IACtD,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,yBAAyB,CAChC,OAAsB,EACtB,IAAY;IAEZ,OAAO;QACL,OAAO,EAAE;YACP,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK;SAClE;QACD,SAAS,EAAE;YACT,WAAW,EAAE,OAAO;YACpB,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC;SACnE;KACF,CAAC;AACJ,CAAC;AAQD,SAAS,WAAW,CAAC,IAAY,EAAE,IAAkB;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,mBAAmB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAChF,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;IACvF,CAAC;IACD,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,UAAW,CAAC,CAAC;IAC1D,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;AACnF,CAAC;AAOD,SAAS,mBAAmB,CAAC,IAAY,EAAE,KAAa;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;IAC7C,uEAAuE;IACvE,0EAA0E;IAC1E,mEAAmE;IACnE,MAAM,UAAU,GAAG,aAAa,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO;QACL,KAAK,EAAE;YACL,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YACzB,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YACzB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC;SACpC;QACD,OAAO,EAAE;YACP,SAAS;YACT,SAAS;YACT,GAAG,WAAW;SACf;KACF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAsC,EACtC,SAA8C;IAE9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACpE,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,QAAQ,CAAC;QAC9B,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;YAC5B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;YACrB,KAAK,IAAI,MAAM,CAAC,GAAG;YACnB,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC;AAOD,SAAS,mBAAmB,CAC1B,SAA8C,EAC9C,OAAwB;IAExB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAgC,EAAE,CACxE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvB,QAAQ,CAAC,MAAM,KAAK,CAAC;QACrB,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAC9B,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,KAAK,MAAM,QAAQ,IAAI,MAAM,EAAE,CAAC;QAC9B,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,QAAQ,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,IAAI,GAAG,IAAI,KAAK,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;gBACzD,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;gBACzC,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5E,CAAC"}
@@ -1,23 +1,33 @@
1
1
  import type { UserPromptContext, UserPromptHandler, UserPromptResult } from "./prompt.js";
2
2
  import type { TerminalHost } from "../terminal/host.js";
3
+ export declare const FEEDBACK_AREA_MAX_ROWS = 10;
3
4
  /**
4
- * Host-backed user-review prompt with a top-down stack layout.
5
+ * Host-backed user-review prompt: a scrollable plan/spec body plus the review
6
+ * controls, stacked top-to-bottom or split on wide terminals.
5
7
  *
6
- * Plan on top (header rule + scrollable body), full-width dim separator, and
7
- * a controls block (Approve + bounded feedback editor + compact hint row).
8
+ * The controls use the same multi-item feedback model as verdict curation: add,
9
+ * edit, and delete feedback items, then submit the list as discrete feedback
10
+ * items (or Approve to accept with no feedback).
8
11
  *
9
- * Key handling:
10
- * - ↑/↓ toggles between Approve and the editor (does NOT scroll the plan).
11
- * - PageUp/PageDown/Home/End/wheel scrolls the plan.
12
- * - Ctrl+D submits feedback (or accepts when on Approve).
13
- * - Ctrl+C quits poly-weaver (exit code 130). When the feedback editor has
14
- * typed text, the first Ctrl+C clears the buffer instead; a second Ctrl+C
15
- * on an empty buffer quits.
16
- * - Ctrl+] is consumed by the host's `InputRouter` for dump capture.
12
+ * ↑/↓ moves among the control rows without scrolling the plan, while
13
+ * PageUp/PageDown/Home/End/wheel scroll the plan. Alt+] is consumed by the
14
+ * host's `InputRouter` for dump capture before reaching this prompt.
17
15
  */
18
16
  export declare class HostBackedUserPrompt implements UserPromptHandler {
19
17
  private readonly host;
20
18
  constructor(host: TerminalHost);
21
19
  prompt(plan: string, _phase: string, context: UserPromptContext): Promise<UserPromptResult>;
22
20
  }
21
+ interface PromptRowState {
22
+ /** Index into the current navigable row descriptor list. */
23
+ cursor: number;
24
+ userAdded: string[];
25
+ }
26
+ export interface PromptHelpState extends PromptRowState {
27
+ editing: {
28
+ transientHint: string | null;
29
+ } | undefined;
30
+ }
31
+ export declare function promptHelpTokens(state: PromptHelpState, offscreenHint?: string, summarizeHint?: string): string[];
32
+ export {};
23
33
  //# sourceMappingURL=host-prompt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"host-prompt.d.ts","sourceRoot":"","sources":["../../src/user/host-prompt.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,YAAY,EAAmC,MAAM,qBAAqB,CAAC;AAmBzF;;;;;;;;;;;;;;GAcG;AACH,qBAAa,oBAAqB,YAAW,iBAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAEzC,MAAM,CACV,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC;CA8O7B"}
1
+ {"version":3,"file":"host-prompt.d.ts","sourceRoot":"","sources":["../../src/user/host-prompt.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,YAAY,EAAmC,MAAM,qBAAqB,CAAC;AA4BzF,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAOzC;;;;;;;;;;;GAWG;AACH,qBAAa,oBAAqB,YAAW,iBAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,YAAY;IAEzC,MAAM,CACV,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC;CAgU7B;AAED,UAAU,cAAc;IACtB,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,OAAO,EAAE;QAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,SAAS,CAAC;CACvD;AAyOD,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,eAAe,EACtB,aAAa,CAAC,EAAE,MAAM,EACtB,aAAa,CAAC,EAAE,MAAM,GACrB,MAAM,EAAE,CAyBV"}