@namzu/sdk 57.1.0 → 58.0.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 (240) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/dist/agents/QueryAgent.d.ts.map +1 -1
  3. package/dist/agents/QueryAgent.js +2 -0
  4. package/dist/agents/QueryAgent.js.map +1 -1
  5. package/dist/agents/file-definitions.d.ts +35 -4
  6. package/dist/agents/file-definitions.d.ts.map +1 -1
  7. package/dist/agents/file-definitions.js +98 -8
  8. package/dist/agents/file-definitions.js.map +1 -1
  9. package/dist/authorization/protected-paths.d.ts +9 -0
  10. package/dist/authorization/protected-paths.d.ts.map +1 -1
  11. package/dist/authorization/protected-paths.js +29 -3
  12. package/dist/authorization/protected-paths.js.map +1 -1
  13. package/dist/connector/mcp/client.d.ts +8 -0
  14. package/dist/connector/mcp/client.d.ts.map +1 -1
  15. package/dist/connector/mcp/client.js +75 -2
  16. package/dist/connector/mcp/client.js.map +1 -1
  17. package/dist/constants/mcp/index.d.ts +2 -0
  18. package/dist/constants/mcp/index.d.ts.map +1 -1
  19. package/dist/constants/mcp/index.js +2 -0
  20. package/dist/constants/mcp/index.js.map +1 -1
  21. package/dist/constants/plugin/index.d.ts +2 -0
  22. package/dist/constants/plugin/index.d.ts.map +1 -1
  23. package/dist/constants/plugin/index.js +2 -0
  24. package/dist/constants/plugin/index.js.map +1 -1
  25. package/dist/manager/agent/lifecycle.d.ts +1 -1
  26. package/dist/manager/agent/lifecycle.d.ts.map +1 -1
  27. package/dist/manager/agent/lifecycle.js +25 -4
  28. package/dist/manager/agent/lifecycle.js.map +1 -1
  29. package/dist/manager/session/turn-recorder.d.ts.map +1 -1
  30. package/dist/manager/session/turn-recorder.js +2 -1
  31. package/dist/manager/session/turn-recorder.js.map +1 -1
  32. package/dist/persona/assembler.d.ts.map +1 -1
  33. package/dist/persona/assembler.js +2 -2
  34. package/dist/persona/assembler.js.map +1 -1
  35. package/dist/plugin/index.d.ts +1 -1
  36. package/dist/plugin/index.d.ts.map +1 -1
  37. package/dist/plugin/lifecycle.d.ts +8 -1
  38. package/dist/plugin/lifecycle.d.ts.map +1 -1
  39. package/dist/plugin/lifecycle.js +9 -2
  40. package/dist/plugin/lifecycle.js.map +1 -1
  41. package/dist/plugin/shell-hook-http.d.ts +39 -0
  42. package/dist/plugin/shell-hook-http.d.ts.map +1 -0
  43. package/dist/plugin/shell-hook-http.js +163 -0
  44. package/dist/plugin/shell-hook-http.js.map +1 -0
  45. package/dist/plugin/shell-hook.d.ts +93 -11
  46. package/dist/plugin/shell-hook.d.ts.map +1 -1
  47. package/dist/plugin/shell-hook.js +223 -39
  48. package/dist/plugin/shell-hook.js.map +1 -1
  49. package/dist/public-runtime.d.ts +2 -2
  50. package/dist/public-runtime.d.ts.map +1 -1
  51. package/dist/public-runtime.js +2 -2
  52. package/dist/public-runtime.js.map +1 -1
  53. package/dist/public-tools.d.ts +1 -0
  54. package/dist/public-tools.d.ts.map +1 -1
  55. package/dist/public-tools.js +2 -0
  56. package/dist/public-tools.js.map +1 -1
  57. package/dist/public-types.d.ts +1 -1
  58. package/dist/public-types.d.ts.map +1 -1
  59. package/dist/runtime/query/executor.d.ts +1 -0
  60. package/dist/runtime/query/executor.d.ts.map +1 -1
  61. package/dist/runtime/query/executor.js +34 -9
  62. package/dist/runtime/query/executor.js.map +1 -1
  63. package/dist/runtime/query/index.d.ts +2 -0
  64. package/dist/runtime/query/index.d.ts.map +1 -1
  65. package/dist/runtime/query/index.js +25 -1
  66. package/dist/runtime/query/index.js.map +1 -1
  67. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  68. package/dist/runtime/query/iteration/index.js +6 -2
  69. package/dist/runtime/query/iteration/index.js.map +1 -1
  70. package/dist/runtime/query/iteration/phases/compaction-breaker.d.ts +18 -8
  71. package/dist/runtime/query/iteration/phases/compaction-breaker.d.ts.map +1 -1
  72. package/dist/runtime/query/iteration/phases/compaction-breaker.js +33 -9
  73. package/dist/runtime/query/iteration/phases/compaction-breaker.js.map +1 -1
  74. package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
  75. package/dist/runtime/query/iteration/phases/compaction.js +6 -4
  76. package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
  77. package/dist/runtime/query/iteration/phases/context.d.ts +2 -0
  78. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  79. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  80. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  81. package/dist/runtime/query/iteration/phases/tool-review.js +70 -3
  82. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  83. package/dist/runtime/query/path-escalation.d.ts +2 -0
  84. package/dist/runtime/query/path-escalation.d.ts.map +1 -1
  85. package/dist/runtime/query/path-escalation.js +7 -4
  86. package/dist/runtime/query/path-escalation.js.map +1 -1
  87. package/dist/runtime/query/plugin-hooks.js +2 -2
  88. package/dist/runtime/query/plugin-hooks.js.map +1 -1
  89. package/dist/runtime/query/prepare-turn.d.ts +2 -0
  90. package/dist/runtime/query/prepare-turn.d.ts.map +1 -1
  91. package/dist/runtime/query/prepare-turn.js +25 -0
  92. package/dist/runtime/query/prepare-turn.js.map +1 -1
  93. package/dist/runtime/query/review-policy.d.ts +3 -2
  94. package/dist/runtime/query/review-policy.d.ts.map +1 -1
  95. package/dist/runtime/query/review-policy.js +32 -13
  96. package/dist/runtime/query/review-policy.js.map +1 -1
  97. package/dist/session/retention/archive.js +1 -1
  98. package/dist/session/retention/archive.js.map +1 -1
  99. package/dist/session/workspace/driver.d.ts +6 -0
  100. package/dist/session/workspace/driver.d.ts.map +1 -1
  101. package/dist/session/workspace/git-worktree.d.ts.map +1 -1
  102. package/dist/session/workspace/git-worktree.js +28 -0
  103. package/dist/session/workspace/git-worktree.js.map +1 -1
  104. package/dist/skills/index.d.ts +1 -1
  105. package/dist/skills/index.d.ts.map +1 -1
  106. package/dist/skills/index.js +1 -1
  107. package/dist/skills/index.js.map +1 -1
  108. package/dist/skills/loader.d.ts +7 -0
  109. package/dist/skills/loader.d.ts.map +1 -1
  110. package/dist/skills/loader.js +53 -0
  111. package/dist/skills/loader.js.map +1 -1
  112. package/dist/skills/registry.d.ts +1 -1
  113. package/dist/skills/registry.d.ts.map +1 -1
  114. package/dist/skills/registry.js +2 -1
  115. package/dist/skills/registry.js.map +1 -1
  116. package/dist/tools/builtins/bash-cwd.d.ts +52 -0
  117. package/dist/tools/builtins/bash-cwd.d.ts.map +1 -0
  118. package/dist/tools/builtins/bash-cwd.js +127 -0
  119. package/dist/tools/builtins/bash-cwd.js.map +1 -0
  120. package/dist/tools/builtins/bash.d.ts.map +1 -1
  121. package/dist/tools/builtins/bash.js +41 -6
  122. package/dist/tools/builtins/bash.js.map +1 -1
  123. package/dist/tools/builtins/bounded-file-read.d.ts +10 -0
  124. package/dist/tools/builtins/bounded-file-read.d.ts.map +1 -0
  125. package/dist/tools/builtins/bounded-file-read.js +67 -0
  126. package/dist/tools/builtins/bounded-file-read.js.map +1 -0
  127. package/dist/tools/builtins/grep.d.ts +6 -1
  128. package/dist/tools/builtins/grep.d.ts.map +1 -1
  129. package/dist/tools/builtins/grep.js +187 -24
  130. package/dist/tools/builtins/grep.js.map +1 -1
  131. package/dist/tools/builtins/read-file.d.ts +1 -0
  132. package/dist/tools/builtins/read-file.d.ts.map +1 -1
  133. package/dist/tools/builtins/read-file.js +113 -28
  134. package/dist/tools/builtins/read-file.js.map +1 -1
  135. package/dist/tools/builtins/read-media.d.ts +68 -0
  136. package/dist/tools/builtins/read-media.d.ts.map +1 -0
  137. package/dist/tools/builtins/read-media.js +397 -0
  138. package/dist/tools/builtins/read-media.js.map +1 -0
  139. package/dist/tools/builtins/search-tools.js +1 -1
  140. package/dist/tools/builtins/search-tools.js.map +1 -1
  141. package/dist/tools/builtins/skill.d.ts +4 -2
  142. package/dist/tools/builtins/skill.d.ts.map +1 -1
  143. package/dist/tools/builtins/skill.js +61 -2
  144. package/dist/tools/builtins/skill.js.map +1 -1
  145. package/dist/tools/builtins/sleep-guard.d.ts +15 -0
  146. package/dist/tools/builtins/sleep-guard.d.ts.map +1 -0
  147. package/dist/tools/builtins/sleep-guard.js +33 -0
  148. package/dist/tools/builtins/sleep-guard.js.map +1 -0
  149. package/dist/tools/builtins/view-image.d.ts +23 -1
  150. package/dist/tools/builtins/view-image.d.ts.map +1 -1
  151. package/dist/tools/builtins/view-image.js +66 -58
  152. package/dist/tools/builtins/view-image.js.map +1 -1
  153. package/dist/tools/file-read-tracker.d.ts.map +1 -1
  154. package/dist/tools/file-read-tracker.js +31 -0
  155. package/dist/tools/file-read-tracker.js.map +1 -1
  156. package/dist/toolsets/manager.js +3 -3
  157. package/dist/toolsets/manager.js.map +1 -1
  158. package/dist/types/agent/query.d.ts +2 -0
  159. package/dist/types/agent/query.d.ts.map +1 -1
  160. package/dist/types/agent/task.d.ts +6 -2
  161. package/dist/types/agent/task.d.ts.map +1 -1
  162. package/dist/types/agent/task.js.map +1 -1
  163. package/dist/types/connector/mcp.d.ts +46 -0
  164. package/dist/types/connector/mcp.d.ts.map +1 -1
  165. package/dist/types/hitl/index.d.ts +1 -1
  166. package/dist/types/plugin/index.d.ts +72 -5
  167. package/dist/types/plugin/index.d.ts.map +1 -1
  168. package/dist/types/plugin/index.js +12 -1
  169. package/dist/types/plugin/index.js.map +1 -1
  170. package/dist/types/session/sub-session.d.ts +6 -2
  171. package/dist/types/session/sub-session.d.ts.map +1 -1
  172. package/dist/types/skills/index.d.ts +36 -0
  173. package/dist/types/skills/index.d.ts.map +1 -1
  174. package/dist/types/skills/index.js +9 -0
  175. package/dist/types/skills/index.js.map +1 -1
  176. package/dist/types/tool/index.d.ts +22 -0
  177. package/dist/types/tool/index.d.ts.map +1 -1
  178. package/dist/types/tool/index.js.map +1 -1
  179. package/dist/types/workspace/ref.d.ts +2 -0
  180. package/dist/types/workspace/ref.d.ts.map +1 -1
  181. package/dist/utils/frontmatter.d.ts +12 -0
  182. package/dist/utils/frontmatter.d.ts.map +1 -1
  183. package/dist/utils/frontmatter.js +6 -0
  184. package/dist/utils/frontmatter.js.map +1 -1
  185. package/package.json +1 -1
  186. package/src/agents/QueryAgent.ts +2 -0
  187. package/src/agents/file-definitions.ts +126 -6
  188. package/src/authorization/protected-paths.ts +30 -2
  189. package/src/connector/mcp/client.ts +87 -1
  190. package/src/constants/mcp/index.ts +3 -0
  191. package/src/constants/plugin/index.ts +2 -0
  192. package/src/manager/agent/lifecycle.ts +24 -5
  193. package/src/manager/session/turn-recorder.ts +2 -1
  194. package/src/persona/assembler.ts +2 -2
  195. package/src/plugin/index.ts +5 -0
  196. package/src/plugin/lifecycle.ts +16 -2
  197. package/src/plugin/shell-hook-http.ts +181 -0
  198. package/src/plugin/shell-hook.ts +386 -89
  199. package/src/public-runtime.ts +2 -0
  200. package/src/public-tools.ts +2 -0
  201. package/src/public-types.ts +5 -0
  202. package/src/runtime/query/executor.ts +40 -10
  203. package/src/runtime/query/index.ts +33 -0
  204. package/src/runtime/query/iteration/index.ts +11 -3
  205. package/src/runtime/query/iteration/phases/compaction-breaker.ts +38 -9
  206. package/src/runtime/query/iteration/phases/compaction.ts +21 -4
  207. package/src/runtime/query/iteration/phases/context.ts +2 -0
  208. package/src/runtime/query/iteration/phases/tool-review.ts +74 -3
  209. package/src/runtime/query/path-escalation.ts +11 -5
  210. package/src/runtime/query/plugin-hooks.ts +2 -2
  211. package/src/runtime/query/prepare-turn.ts +33 -0
  212. package/src/runtime/query/review-policy.ts +45 -16
  213. package/src/session/retention/archive.ts +1 -1
  214. package/src/session/workspace/driver.ts +6 -0
  215. package/src/session/workspace/git-worktree.ts +31 -0
  216. package/src/skills/index.ts +6 -1
  217. package/src/skills/loader.ts +54 -0
  218. package/src/skills/registry.ts +7 -6
  219. package/src/tools/builtins/bash-cwd.ts +156 -0
  220. package/src/tools/builtins/bash.ts +79 -34
  221. package/src/tools/builtins/bounded-file-read.ts +80 -0
  222. package/src/tools/builtins/grep.ts +198 -28
  223. package/src/tools/builtins/read-file.ts +151 -30
  224. package/src/tools/builtins/read-media.ts +483 -0
  225. package/src/tools/builtins/search-tools.ts +1 -1
  226. package/src/tools/builtins/skill.ts +91 -2
  227. package/src/tools/builtins/sleep-guard.ts +31 -0
  228. package/src/tools/builtins/view-image.ts +74 -62
  229. package/src/tools/file-read-tracker.ts +30 -0
  230. package/src/toolsets/manager.ts +3 -3
  231. package/src/types/agent/query.ts +2 -0
  232. package/src/types/agent/task.ts +6 -2
  233. package/src/types/connector/mcp.ts +48 -0
  234. package/src/types/hitl/index.ts +1 -1
  235. package/src/types/plugin/index.ts +102 -16
  236. package/src/types/session/sub-session.ts +6 -2
  237. package/src/types/skills/index.ts +48 -0
  238. package/src/types/tool/index.ts +22 -0
  239. package/src/types/workspace/ref.ts +2 -0
  240. package/src/utils/frontmatter.ts +21 -0
@@ -1,3 +1,4 @@
1
+ import { rm } from 'node:fs/promises';
1
2
  import { z } from 'zod';
2
3
  import { isReadOnlyCommandLine } from '../../authorization/readonly-commands.js';
3
4
  import { SANDBOX_KILL_GRACE_MS } from '../../constants/sandbox/index.js';
@@ -12,8 +13,10 @@ import { defineTool } from '../defineTool.js';
12
13
  import { scrubInheritedEnv, withheldEnvNoticeText } from '../env-scrub.js';
13
14
  import { createHostOutputDecoder } from '../host-output.js';
14
15
  import { looksBinary, windowText } from '../text-window.js';
16
+ import { bashWorkingDirectoryForExecution, newCwdFile, recordDirectory, withCwdCapture, } from './bash-cwd.js';
15
17
  import { judgeExit } from './exit-semantics.js';
16
18
  import { jsonStringEscapes } from './json-string-hint.js';
19
+ import { leadingLongSleep, longSleepRefusal } from './sleep-guard.js';
17
20
  // Namzu owns its own bash timeout knob — `NAMZU_BASH_TIMEOUT_MS` — and
18
21
  // reads no consumer's env name. A consumer that wants one knob aliases
19
22
  // its own variable to `NAMZU_BASH_TIMEOUT_MS` at deploy time.
@@ -413,7 +416,7 @@ export const SANDBOX_CANNOT_DETACH = 'run_in_background is unavailable: this san
413
416
  * approval; exported so the test states the same words.
414
417
  */
415
418
  export const SANDBOX_ESCAPE_NOT_APPROVED = 'dangerously_disable_sandbox was not approved for this call, so the command did not run. Leaving the sandbox needs the user to confirm it each time, and this turn either cannot ask or does not allow it. Run the command inside the sandbox, or tell the user what it needs and let them run it.';
416
- const BASH_DESCRIPTION = 'Executes a command line using the execution shell disclosed in the system context and returns stdout/stderr output. Command timeout is configurable. The `command` parameter is required, so every call carries one. Long file content goes through `write`, not a heredoc, so it cannot hit the output token limit mid-stream.';
419
+ const BASH_DESCRIPTION = 'Executes a command line using the execution shell disclosed in the system context and returns stdout/stderr output. The working directory persists between calls, but shell state does not. Command timeout is configurable. The `command` parameter is required, so every call carries one. Long file content goes through `write`, not a heredoc, so it cannot hit the output token limit mid-stream.';
417
420
  const BashToolBase = defineTool({
418
421
  name: 'bash',
419
422
  description: BASH_DESCRIPTION,
@@ -462,6 +465,7 @@ const BashToolBase = defineTool({
462
465
  };
463
466
  },
464
467
  async execute(input, context) {
468
+ const startDirectory = bashWorkingDirectoryForExecution(context);
465
469
  if (isDangerousCommand(input.command)) {
466
470
  return {
467
471
  success: false,
@@ -470,6 +474,14 @@ const BashToolBase = defineTool({
470
474
  facts: { kind: 'failure', reason: 'blocked', subject: 'bash' },
471
475
  };
472
476
  }
477
+ // Where a job registry exists to wait on, a long leading sleep only
478
+ // holds the turn; it is refused with the better ways to wait.
479
+ if (!input.run_in_background && context.backgroundJobs && !backgroundTasksDisabled()) {
480
+ const longSleep = leadingLongSleep(input.command);
481
+ if (longSleep !== null) {
482
+ return { success: false, output: '', error: longSleepRefusal(longSleep) };
483
+ }
484
+ }
473
485
  // Asked to leave the sandbox. Honoured only on the executor's word that
474
486
  // a reviewer confirmed THIS call (`sandboxEscapeApproved`); the input
475
487
  // alone is the model's request, never the permission. Without a
@@ -526,7 +538,7 @@ const BashToolBase = defineTool({
526
538
  try {
527
539
  const job = context.backgroundJobs.start({
528
540
  command: input.command,
529
- workingDirectory: context.workingDirectory,
541
+ workingDirectory: startDirectory,
530
542
  });
531
543
  // `start` returns before the process exists, and a spawn that
532
544
  // fails (no such shell, bad directory) reports a tick later.
@@ -666,9 +678,24 @@ const BashToolBase = defineTool({
666
678
  let offerTimer;
667
679
  let withdrawOffer;
668
680
  const offer = context.backgroundJobs?.registerForeground?.bind(context.backgroundJobs);
681
+ // The directory carries over between calls of a session on a POSIX host
682
+ // shell; the shell records where it ended, read back in `finally`.
683
+ const hostShell = hostCommandShell();
684
+ const carryDirectory = context.sandbox === undefined &&
685
+ typeof context.sessionId === 'string' &&
686
+ hostShell.path !== undefined &&
687
+ hostShell.windows !== true;
688
+ const cwdFile = carryDirectory ? newCwdFile() : undefined;
689
+ let settled = false;
690
+ const settle = async () => {
691
+ if (cwdFile === undefined)
692
+ return undefined;
693
+ settled = true;
694
+ return recordDirectory(context.sessionId, cwdFile, context);
695
+ };
669
696
  try {
670
- const { stdout, stderr, stdoutBytes, stderrBytes, backgroundedJobId, backgroundedBy } = await execHostShell(input.command, {
671
- cwd: context.workingDirectory,
697
+ const { stdout, stderr, stdoutBytes, stderrBytes, backgroundedJobId, backgroundedBy } = await execHostShell(cwdFile === undefined ? input.command : withCwdCapture(input.command, cwdFile), {
698
+ cwd: startDirectory,
672
699
  timeout: input.timeout,
673
700
  env: { ...inherited.env, ...context.env },
674
701
  maxBuffer: DEFAULT_BASH_MAX_BUFFER_BYTES,
@@ -717,9 +744,10 @@ const BashToolBase = defineTool({
717
744
  facts: { kind: 'command', command: input.command, background: true, continued: true },
718
745
  };
719
746
  }
747
+ const reset = await settle();
720
748
  return {
721
749
  success: true,
722
- output: formatShellOutput(stdout, stderr) || '(no output)',
750
+ output: withResetNotice(formatShellOutput(stdout, stderr) || '(no output)', reset),
723
751
  data: {
724
752
  exitCode: 0,
725
753
  ...(leaveSandbox ? { sandboxed: false, sandboxEscape: true } : {}),
@@ -755,6 +783,7 @@ const BashToolBase = defineTool({
755
783
  // result, not a failure; the model sees it as an ordinary call.
756
784
  const judged = !timedOut && exitCode !== undefined ? judgeExit(input.command, exitCode) : undefined;
757
785
  const answered = judged !== undefined && !judged.isError;
786
+ const reset = await settle();
758
787
  const output = [
759
788
  formatShellOutput(failure.stdout, failure.stderr),
760
789
  clipped.length > 0
@@ -765,7 +794,7 @@ const BashToolBase = defineTool({
765
794
  .join('\n\n');
766
795
  return {
767
796
  success: answered,
768
- output: output || '(no output)',
797
+ output: withResetNotice(output || '(no output)', reset),
769
798
  data: {
770
799
  ...(exitCode !== undefined ? { exitCode } : {}),
771
800
  ...(judged?.note ? { exitNote: judged.note } : {}),
@@ -801,6 +830,8 @@ const BashToolBase = defineTool({
801
830
  };
802
831
  }
803
832
  finally {
833
+ if (cwdFile !== undefined && !settled)
834
+ await rm(cwdFile, { force: true });
804
835
  if (offerTimer !== undefined)
805
836
  clearTimeout(offerTimer);
806
837
  withdrawOffer?.();
@@ -842,6 +873,10 @@ function formatShellOutput(stdout, stderr) {
842
873
  .filter(Boolean)
843
874
  .join('\n\n');
844
875
  }
876
+ /** The result text with the directory-reset line, when there is one, on its own last line. */
877
+ function withResetNotice(output, notice) {
878
+ return notice === undefined ? output : `${output}\n${notice}`;
879
+ }
845
880
  /**
846
881
  * The notice text for the credential-shaped variables left out of a command's
847
882
  * environment (see {@link withheldEnvNoticeText}). It is sent as a notice after
@@ -1 +1 @@
1
- {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../src/tools/builtins/bash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAA;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAA;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAEN,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,0BAA0B,EAC1B,iBAAiB,EACjB,cAAc,EACd,kBAAkB,GAClB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,uEAAuE;AACvE,uEAAuE;AACvE,8DAA8D;AAC9D,wEAAwE;AACxE,0EAA0E;AAC1E,wEAAwE;AACxE,wEAAwE;AACxE,qDAAqD;AACrD,MAAM,uBAAuB,GAAG,kBAAkB,CAAC,uBAAuB,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;AAC1F,MAAM,6BAA6B,GAAG,kBAAkB,CACvD,6BAA6B,EAC7B,GAAG,GAAG,IAAI,GAAG,IAAI,CACjB,CAAA;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,2BAA2B,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;AAE3F;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,gCAAgC,CAAA;AAE5E,MAAM,UAAU,uBAAuB;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC7E,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,OAAO,CAAA;AACjF,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,OAAe;IACvC,MAAM,IAAI,GAAG,OAAO;SAClB,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC5B,EAAE,IAAI,EAAE;SACP,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACjB,OAAO,IAAI,KAAK,OAAO,CAAA;AACxB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,SAAiB;IACxE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAA;IACzD,OAAO,uCAAuC,OAAO,oDAAoD,KAAK,kFAAkF,CAAA;AACjM,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,CAAA;AAEhD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,MAAwC;IACvF,MAAM,GAAG,GACR,MAAM,KAAK,MAAM;QAChB,CAAC,CAAC,yBAAyB;QAC3B,CAAC,CAAC,MAAM,KAAK,SAAS;YACrB,CAAC,CAAC,8CAA8C;YAChD,CAAC,CAAC,yCAAyC,CAAA;IAC9C,OAAO,8CAA8C,KAAK,IAAI,GAAG,kFAAkF,CAAA;AACpJ,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,OAAO,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;QACP,yEAAyE;QACzE,uEAAuE;QACvE,yCAAyC;SACxC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CACtB,aAAa,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CACjF;SACA,QAAQ,CACR,2MAA2M,CAC3M;IACF,OAAO,EAAE,CAAC;SACR,UAAU,CACV,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC9C,CAAC;SACC,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,uBAAuB,CAAC;SAChC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC,CACtD;SACA,QAAQ,CACR,6CAA6C,uBAAuB,cAAc,mBAAmB,uUAAuU,CAC5a;IACF,iBAAiB,EAAE,CAAC;SAClB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACR,wwBAAwwB,CACxwB;IACF,2BAA2B,EAAE,CAAC;SAC5B,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACR,6bAA6b,CAC7b;CACF,CAAC,CAAA;AAIF;;;GAGG;AACH,SAAS,mBAAmB,CAAC,KAA4B;IACxD,6EAA6E;IAC7E,IAAI,OAAO,KAAK,EAAE,OAAO,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IACpD,IAAI,KAAK,CAAC,iBAAiB,KAAK,IAAI,IAAI,KAAK,CAAC,2BAA2B,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAChG,IAAI,CAAC;QACJ,OAAO,qBAAqB,CAAC,KAAK,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,OAAO,CAAC,CAAA;IACxE,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAA;IACb,CAAC;AACF,CAAC;AAED,MAAM,wBAAwB,GAAG,GAAG,CAAA;AAEpC,sEAAsE;AACtE,SAAS,kBAAkB,CAAC,QAAgB,EAAE,KAAa,EAAE,KAAa,EAAE,GAAW;IACtF,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,wBAAwB,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAC1F,CAAC,wBAAwB,CACzB,CAAA;AACF,CAAC;AAED,0EAA0E;AAC1E,SAAS,YAAY,CAAC,KAAa;IAClC,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IACvB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAChC,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM;QAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC7C,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM;QAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9D,OAAO,IAAI,CAAA;AACZ,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,MAAkC;IACxD,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAA;IAC7B,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IAC1C,IAAI,WAAW,GAAG,EAAE,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAiD,EAAQ,EAAE;QAChF,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;QAC1B,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,6EAA6E;QAC7E,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9C,IAAI,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;YACzD,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,MAAM,CAAA;YACrC,IAAI,GAAG,EAAE,CAAA;YACT,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAA;QACxB,CAAC;QACD,IAAI,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACzD,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;QACtB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,MAAM,CAAA;QAC5C,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,WAAW;YAAE,OAAM;QAC/C,WAAW,GAAG,OAAO,CAAA;QACrB,IAAI,CAAC;YACJ,MAAM,CAAC,OAAO,CAAC,CAAA;QAChB,CAAC;QAAC,MAAM,CAAC;YACR,gEAAgE;QACjE,CAAC;IACF,CAAC,CAAA;AACF,CAAC;AAQD;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAC5B,OAAe,EACf,OA2CC;IAYD,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAA;IAChC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtC,+DAA+D;QAC/D,8DAA8D;QAC9D,yBAAyB;QACzB,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,EAAE;YACrC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;SAChE,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG;YAChB,MAAM,EAAE;gBACP,MAAM,EAAE,EAAc;gBACtB,KAAK,EAAE,CAAC;gBACR,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,uBAAuB,EAAE;aAClC;YACD,MAAM,EAAE;gBACP,MAAM,EAAE,EAAc;gBACtB,KAAK,EAAE,CAAC;gBACR,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,uBAAuB,EAAE;aAClC;SACD,CAAA;QACD,IAAI,KAAqD,CAAA;QACzD,IAAI,OAAyD,CAAA;QAC7D,IAAI,UAAqD,CAAA;QACzD,IAAI,YAAsC,CAAA;QAC1C,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,MAAM,MAAM,GAAG,CAAC,MAAiC,EAAE,EAAE;YACpD,IAAI,MAAM,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAM;YACzC,KAAK,GAAG,MAAM,CAAA;YACd,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,UAAU,GAAG,SAAS,CAAA;gBACtB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;gBAC1B,gEAAgE;gBAChE,gEAAgE;gBAChE,+DAA+D;gBAC/D,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAA;gBACtB,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAA;gBACvB,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAA;YACxB,CAAC,EAAE,qBAAqB,CAAC,CAAA;YACzB,UAAU,CAAC,KAAK,EAAE,EAAE,CAAA;YACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QAC3B,CAAC,CAAA;QACD,MAAM,OAAO,GAAG,CAAC,MAA2B,EAAE,KAAa,EAAE,EAAE;YAC9D,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;YACpE,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;gBACd,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;gBACvD,KAAK,CAAC,KAAK,IAAI,IAAI,CAAA;YACpB,CAAC;YACD,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBACzB,KAAK,CAAC,SAAS,GAAG,IAAI,CAAA;gBACtB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACzB,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,GAAG,MAAM,4BAA4B,CAAC,EAAE;wBAC9E,IAAI,EAAE,mCAAmC;qBACzC,CAAC,CAAA;oBACF,MAAM,CAAC,WAAW,CAAC,CAAA;gBACpB,CAAC;YACF,CAAC;YACD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACtB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBACvC,IAAI,IAAI;oBAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;YAC7C,CAAC;QACF,CAAC,CAAA;QACD,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QAC5D,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QAC5D,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAClC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAClC,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,MAAM,OAAO,GAAG,GAAG,EAAE;YACpB,OAAO,GAAG,IAAI,CAAA;QACf,CAAC,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC5B,MAAM,OAAO,GAAG,CAAC,KAA4B,EAAE,EAAE;YAChD,oDAAoD;YACpD,OAAO,KAAK,OAAO;gBAClB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,MAAM,CAAC,MAAM,CACb,IAAI,KAAK,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;oBACnD,KAAK,EAAE,KAAK;iBACZ,CAAC,EACF,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CACpD,CAAA;QACJ,CAAC,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC5B,MAAM,aAAa,GAAG,CAAC,MAA2B,EAAE,EAAE;YACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;YAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;YACtD,4DAA4D;YAC5D,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAA;YACzC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACjC,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;QACrD,CAAC,CAAA;QACD,MAAM,OAAO,GAAG,CAAC,IAAmB,EAAE,MAA6B,EAAE,EAAE;YACtE,MAAM,GAAG,IAAI,CAAA;YACb,YAAY,EAAE,EAAE,CAAA;YAChB,YAAY,CAAC,QAAQ,CAAC,CAAA;YACtB,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC9B,YAAY,CAAC,UAAU,CAAC,CAAA;gBACxB,kEAAkE;gBAClE,qEAAqE;gBACrE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;YAC3B,CAAC;YACD,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YACnC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YACnC,KAAK,MAAM,MAAM,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAU,EAAE,CAAC;gBACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;gBAC3C,IAAI,IAAI;oBAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;YAC/C,CAAC;YACD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;YACtC,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;YACtC,IAAI,CAAC,OAAO,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,CAAC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACtE,OAAO,CAAC;oBACP,MAAM;oBACN,MAAM;oBACN,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK;oBAClC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK;iBAClC,CAAC,CAAA;gBACF,OAAM;YACP,CAAC;YACD,MAAM,KAAK,GACV,OAAO;gBACP,CAAC,KAAK,KAAK,QAAQ;oBAClB,CAAC,CAAC,MAAM,CAAC,MAAM,CACb,IAAI,KAAK,CAAC,2BAA2B,EAAE;wBACtC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM;qBAC7B,CAAC,EACF;wBACC,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,WAAW;qBACjB,CACD;oBACF,CAAC,CAAC,IAAI,KAAK,CAAC,mBAAmB,OAAO,KAAK,MAAM,EAAE,CAAC,CAAC,CAAA;YACvD,MAAM,CACL,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;gBACpB,MAAM;gBACN,MAAM;gBACN,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK;gBAClC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK;gBAClC,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;gBAC1C,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;gBAC1C,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;gBAChE,MAAM,EAAE,KAAK,KAAK,SAAS;gBAC3B,MAAM;gBACN,QAAQ,EAAE,KAAK,KAAK,SAAS;aAC7B,CAAC,CACF,CAAA;QACF,CAAC,CAAA;QACD,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC5B,uEAAuE;QACvE,gEAAgE;QAChE,MAAM,QAAQ,GAAG,CAAC,MAAoD,EAAW,EAAE;YAClF,MAAM,OAAO,GACZ,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC,CAAA;YAChF,IAAI,CAAC,OAAO,IAAI,MAAM,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YAC3D,IAAI,KAAyB,CAAA;YAC7B,IAAI,CAAC;gBACJ,KAAK,GAAG,OAAO,CAAC;oBACf,KAAK;oBACL,aAAa,EAAG,CAAC,QAAQ,EAAE,QAAQ,CAAW;yBAC5C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;yBAC1D,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;iBACpC,CAAC,CAAA;YACH,CAAC;YAAC,MAAM,CAAC;gBACR,2EAA2E;YAC5E,CAAC;YACD,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YACrC,iEAAiE;YACjE,2DAA2D;YAC3D,MAAM,GAAG,IAAI,CAAA;YACb,YAAY,EAAE,EAAE,CAAA;YAChB,YAAY,CAAC,QAAQ,CAAC,CAAA;YACtB,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YACnC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YACnC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3B,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3B,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3B,OAAO,CAAC;gBACP,iBAAiB,EAAE,KAAK;gBACxB,cAAc,EAAE,MAAM;gBACtB,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC;gBAC/B,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC;aAC/B,CAAC,CAAA;YACF,OAAO,IAAI,CAAA;QACZ,CAAC,CAAA;QACD,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE;YAChC,IAAI,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAM;YAC/B,MAAM,CAAC,SAAS,CAAC,CAAA;QAClB,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;QACnB,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAA;QAClB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;YAC7B,MAAM,OAAO,GAAG,GAAG,EAAE;gBACpB,iEAAiE;gBACjE,yDAAyD;gBACzD,IACC,OAAO,CAAC,gBAAgB,KAAK,IAAI;oBACjC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM;oBACvC,QAAQ,CAAC,WAAW,CAAC;oBAErB,OAAM;gBACP,MAAM,CAAC,QAAQ,CAAC,CAAA;YACjB,CAAC,CAAA;YACD,YAAY,GAAG,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;YAChD,IAAI,MAAM,CAAC,OAAO;gBAAE,OAAO,EAAE,CAAA;QAC9B,CAAC;QACD,OAAO,CAAC,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAClE,CAAC,CAAC,CAAA;AACH,CAAC;AAED,uGAAuG;AACvG,MAAM,UAAU,kBAAkB,CAAC,OAAe;IACjD,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;AACnE,CAAC;AAED,6GAA6G;AAC7G,MAAM,CAAC,MAAM,qBAAqB,GACjC,yNAAyN,CAAA;AAE1N;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GACvC,mSAAmS,CAAA;AAEpS,MAAM,gBAAgB,GACrB,iUAAiU,CAAA;AAElU,MAAM,YAAY,GAAG,UAAU,CAAC;IAC/B,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,gBAAgB;IAC7B,WAAW;IACX,qEAAqE;IACrE,kEAAkE;IAClE,kBAAkB,EAAE,sCAAsC,iBAAiB,CAAC,WAAW,CAAC,EAAE;IAC1F,wEAAwE;IACxE,2EAA2E;IAC3E,yBAAyB;IACzB,kBAAkB,EACjB,qJAAqJ;IACtJ,QAAQ,EAAE,OAAO;IACjB,0EAA0E;IAC1E,4EAA4E;IAC5E,wEAAwE;IACxE,eAAe,EAAE,SAAS;IAC1B,uEAAuE;IACvE,eAAe,EAAE,CAAC,KAAgB,EAAE,EAAE,CACrC,GAAG,KAAK,CAAC,2BAA2B,KAAK,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE;IAChG,yEAAyE;IACzE,cAAc,EAAE,eAAe;IAC/B,wEAAwE;IACxE,sEAAsE;IACtE,qBAAqB,EAAE,6BAA6B;IACpD,WAAW,EAAE,CAAC,eAAe,CAAC;IAC9B,4EAA4E;IAC5E,uEAAuE;IACvE,wEAAwE;IACxE,QAAQ,EAAE,CAAC,KAAgB,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC;IAC1D,WAAW,EAAE,CAAC,KAAgB,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC;IACpE,eAAe,EAAE,CAAC,KAAgB,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC;IACjE,yEAAyE;IACzE,2EAA2E;IAC3E,wEAAwE;IACxE,0EAA0E;IAC1E,oDAAoD;IACpD,SAAS,EAAE,mBAAmB,GAAG,MAAM;IAEvC,uEAAuE;IACvE,yEAAyE;IACzE,WAAW,CAAC,KAAK;QAChB,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAA;QACvD,OAAO;YACN,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC;YAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;SAClD,CAAA;IACF,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO;QAC3B,IAAI,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,+BAA+B,KAAK,CAAC,OAAO,GAAG;gBACtD,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE;aAC9D,CAAA;QACF,CAAC;QAED,wEAAwE;QACxE,sEAAsE;QACtE,gEAAgE;QAChE,kEAAkE;QAClE,MAAM,YAAY,GAAG,KAAK,CAAC,2BAA2B,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,CAAA;QAChG,IAAI,YAAY,IAAI,OAAO,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;YAC5D,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,2BAA2B;aAClC,CAAA;QACF,CAAC;QACD,IAAI,YAAY,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC7C,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EACJ,gLAAgL;aACjL,CAAA;QACF,CAAC;QAED,IAAI,KAAK,CAAC,iBAAiB,IAAI,uBAAuB,EAAE,EAAE,CAAC;YAC1D,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,0CAA0C,4BAA4B,oFAAoF;aACjK,CAAA;QACF,CAAC;QAED,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC7B,qEAAqE;YACrE,kEAAkE;YAClE,gEAAgE;YAChE,oEAAoE;YACpE,kEAAkE;YAClE,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBACpE,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,qBAAqB;iBAC5B,CAAA;YACF,CAAC;YACD,iEAAiE;YACjE,oEAAoE;YACpE,8DAA8D;YAC9D,oEAAoE;YACpE,oEAAoE;YACpE,oEAAoE;YACpE,qDAAqD;YACrD,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC7B,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EACJ,mKAAmK;iBACpK,CAAA;YACF,CAAC;YACD,IAAI,CAAC;gBACJ,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;oBACxC,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;iBAC1C,CAAC,CAAA;gBACF,8DAA8D;gBAC9D,6DAA6D;gBAC7D,8DAA8D;gBAC9D,gEAAgE;gBAChE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACnE,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;oBAClC,OAAO;wBACN,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,SAAS,GAAG,CAAC,EAAE,gBAAgB;wBACtD,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE;qBAC5D,CAAA;gBACF,CAAC;gBACD,OAAO;oBACN,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,0BAA0B,GAAG,CAAC,EAAE,mBAAmB;oBAC3D,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;oBACzC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;iBACpE,CAAA;YACF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,iEAAiE;gBACjE,gEAAgE;gBAChE,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACvD,CAAA;YACF,CAAC;QACF,CAAC;QAED,8DAA8D;QAC9D,EAAE;QACF,iEAAiE;QACjE,4EAA4E;QAC5E,gEAAgE;QAChE,6DAA6D;QAC7D,4DAA4D;QAC5D,gEAAgE;QAChE,6DAA6D;QAC7D,4DAA4D;QAC5D,2DAA2D;QAC3D,6DAA6D;QAC7D,4DAA4D;QAC5D,2DAA2D;QAC3D,4CAA4C;QAC5C,4DAA4D;QAC5D,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC9C,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,+DAA+D;YAC/D,iCAAiC;YACjC,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;gBACnE,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChE,4DAA4D;gBAC5D,+CAA+C;gBAC/C,MAAM,EAAE,OAAO,CAAC,WAAW;gBAC3B,+DAA+D;gBAC/D,8DAA8D;gBAC9D,8DAA8D;gBAC9D,2DAA2D;gBAC3D,2DAA2D;gBAC3D,yDAAyD;gBACzD,6BAA6B;gBAC7B,QAAQ;aACR,CAAC,CAAA;YAEF,+DAA+D;YAC/D,+DAA+D;YAC/D,8DAA8D;YAC9D,sCAAsC;YACtC,MAAM,OAAO,GAAG;gBACf,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBACtC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;aACtC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YAEjB,MAAM,MAAM,GAAG;gBACd,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;gBAChD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;gBAChD,OAAO,CAAC,MAAM,GAAG,CAAC;oBACjB,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,4MAA4M;oBACvO,CAAC,CAAC,EAAE;aACL;iBACC,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,MAAM,CAAC,CAAA;YAEd,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;YACtF,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;YACxD,OAAO;gBACN,OAAO,EAAE,QAAQ;gBACjB,MAAM,EAAE,MAAM,IAAI,aAAa;gBAC/B,IAAI,EAAE;oBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClD,SAAS,EAAE,IAAI;oBACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,KAAK;oBAChD,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,KAAK;iBAChD;gBACD,KAAK,EAAE,MAAM,CAAC,QAAQ;oBACrB,CAAC,CAAC,2BAA2B,KAAK,CAAC,OAAO,uDAAuD;oBACjG,CAAC,CAAC,CAAC,QAAQ;wBACV,CAAC,CAAC,4BAA4B,MAAM,CAAC,QAAQ,EAAE;wBAC/C,CAAC,CAAC,SAAS;gBACb,KAAK,EAAE,YAAY,CAAC;oBACnB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClD,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,MAAM,EAAE,MAAM,CAAC,MAAM;iBACrB,CAAC;aACF,CAAA;QACF,CAAC;QAED,uEAAuE;QACvE,yEAAyE;QACzE,uEAAuE;QACvE,0EAA0E;QAC1E,0DAA0D;QAC1D,wEAAwE;QACxE,yDAAyD;QACzD,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAA;QAErC,sEAAsE;QACtE,qEAAqE;QACrE,mEAAmE;QACnE,sEAAsE;QACtE,oEAAoE;QACpE,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QACzE,MAAM,UAAU,GACf,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,uBAAuB,EAAE,CAAA;QACnF,MAAM,gBAAgB,GAAG,UAAU,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACtE,MAAM,YAAY,GAAG,CAAC,OAGrB,EAAE,EAAE,CACJ,KAAK,EAAE,CAAC;YACP,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,aAAa,EAAE,OAAO,CAAC,aAAa;SACpC,CAAC,CAAC,EAAE,CAAA;QACN,wEAAwE;QACxE,IAAI,UAAqD,CAAA;QACzD,IAAI,aAAuC,CAAA;QAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,EAAE,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QAEtF,IAAI,CAAC;YACJ,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,GACpF,MAAM,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE;gBAClC,GAAG,EAAE,OAAO,CAAC,gBAAgB;gBAC7B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,GAAG,EAAE,EAAE,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;gBACzC,SAAS,EAAE,6BAA6B;gBACxC,MAAM,EAAE,OAAO,CAAC,WAAW;gBAC3B,QAAQ;gBACR,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxD,GAAG,CAAC,UAAU;oBACb,CAAC,CAAC;wBACA,KAAK,EAAE,YAAY;wBACnB,gBAAgB,EAAE,IAAI;wBACtB,GAAG,CAAC,KAAK;4BACR,CAAC,CAAC;gCACA,SAAS,EAAE,CAAC,OAEX,EAAE,EAAE;oCACJ,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE;wCAC5B,aAAa,GAAG,KAAK,CAAC;4CACrB,OAAO,EAAE,KAAK,CAAC,OAAO;4CACtB,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;yCAClD,CAAC,CAAA;oCACH,CAAC,EAAE,2BAA2B,CAAC,CAAA;oCAC/B,UAAU,CAAC,KAAK,EAAE,EAAE,CAAA;gCACrB,CAAC;6BACD;4BACF,CAAC,CAAC,EAAE,CAAC;qBACN;oBACF,CAAC,CAAC,EAAE,CAAC;aACN,CAAC,CAAA;YACH,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,cAAc,KAAK,SAAS,CAAA;gBAC7C,OAAO;oBACN,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE;wBACP,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC;wBACjC,QAAQ,IAAI,cAAc,KAAK,SAAS;4BACvC,CAAC,CAAC,wBAAwB,CAAC,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC;4BAC5D,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,cAAc,CAAC;qBACtD;yBACC,MAAM,CAAC,OAAO,CAAC;yBACf,IAAI,CAAC,MAAM,CAAC;oBACd,IAAI,EAAE;wBACL,KAAK,EAAE,iBAAiB;wBACxB,UAAU,EAAE,IAAI;wBAChB,GAAG,CAAC,QAAQ,IAAI,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACvE,iBAAiB,EAAE,IAAI;wBACvB,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC7C;oBACD,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE;iBACrF,CAAA;YACF,CAAC;YACD,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,aAAa;gBAC1D,IAAI,EAAE;oBACL,QAAQ,EAAE,CAAC;oBACX,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClE;gBACD,KAAK,EAAE,YAAY,CAAC;oBACnB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,QAAQ,EAAE,CAAC;oBACX,MAAM;oBACN,MAAM;oBACN,WAAW;oBACX,WAAW;iBACX,CAAC;aACF,CAAA;QACF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,MAAM,OAAO,GAAG,GAWf,CAAA;YAED,8DAA8D;YAC9D,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO;gBAAE,MAAM,GAAG,CAAA;YAE3C,gEAAgE;YAChE,iEAAiE;YACjE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,KAAK,IAAI,CAAA;YAC1C,MAAM,QAAQ,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;YAC5E,MAAM,OAAO,GAAG;gBACf,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBACvC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;aACvC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACjB,sEAAsE;YACtE,yEAAyE;YACzE,sEAAsE;YACtE,+BAA+B;YAC/B,oEAAoE;YACpE,gEAAgE;YAChE,MAAM,MAAM,GACX,CAAC,QAAQ,IAAI,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YACrF,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;YACxD,MAAM,MAAM,GAAG;gBACd,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;gBACjD,OAAO,CAAC,MAAM,GAAG,CAAC;oBACjB,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,uFAAuF;oBAC3J,CAAC,CAAC,EAAE;aACL;iBACC,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,MAAM,CAAC,CAAA;YAEd,OAAO;gBACN,OAAO,EAAE,QAAQ;gBACjB,MAAM,EAAE,MAAM,IAAI,aAAa;gBAC/B,IAAI,EAAE;oBACL,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/C,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClD,oEAAoE;oBACpE,iDAAiD;oBACjD,GAAG,CAAC,CAAC,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;wBAC5C,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE;wBAC3C,CAAC,CAAC,EAAE,CAAC;oBACN,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClE,QAAQ;oBACR,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,KAAK;oBACjD,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,KAAK;oBACjD,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACrD;gBACD,KAAK,EAAE,QAAQ;oBACd,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,QAAQ;wBACT,CAAC,CAAC,2BAA2B,KAAK,CAAC,OAAO,0DAA0D;wBACpG,CAAC,CAAC,QAAQ,KAAK,SAAS;4BACvB,CAAC,CAAC,4BAA4B,QAAQ,EAAE;4BACxC,CAAC,CAAC,mBAAmB,OAAO,CAAC,OAAO,EAAE;gBACzC,KAAK,EAAE,YAAY,CAAC;oBACnB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/C,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClD,QAAQ;oBACR,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;oBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;oBAC5B,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClF,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClF,CAAC;aACF,CAAA;QACF,CAAC;gBAAS,CAAC;YACV,IAAI,UAAU,KAAK,SAAS;gBAAE,YAAY,CAAC,UAAU,CAAC,CAAA;YACtD,aAAa,EAAE,EAAE,CAAA;QAClB,CAAC;IACF,CAAC;CACD,CAAC,CAAA;AAEF;;;;;GAKG;AACH,SAAS,YAAY,CAAC,KAUrB;IACA,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC3C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7E,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7E,MAAM,WAAW,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3E,OAAO;QACN,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,GAAG,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrE,CAAA;AACF,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,MAA0B,EAAE,MAA0B;IAChF,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7E,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAA;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA0B;IAC7D,OAAO,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;AAC7C,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAwB,MAAM,CAAC,cAAc,CACjE,EAAE,GAAG,YAAY,EAAE,EACnB,aAAa,EACb;IACC,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE,IAAI;IAClB,GAAG,EAAE,GAAG,EAAE,CACT,aAAa,CAAC,gBAAgB,EAAE,CAAC;QAChC,CAAC,CAAC,GAAG,gBAAgB,IAAI,qBAAqB,EAAE;QAChD,CAAC,CAAC,gBAAgB;CACpB,CACD,CAAA"}
1
+ {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../src/tools/builtins/bash.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /** A hard input ceiling, independent of output windows and allow_large. */
2
+ export declare const TEXT_MAX_INPUT_BYTES: number;
3
+ /**
4
+ * Read at most the limit plus one sentinel byte, even if the file grows after
5
+ * stat. No allocation or request is derived from an untrusted file size.
6
+ * The first bounded chunk can choose a stricter limit from the file signature.
7
+ */
8
+ export declare function readBoundedChunks(read: (offset: number, length: number) => Promise<Buffer>, maximum: number, signal?: AbortSignal, selectLimit?: (prefix: Buffer) => number): Promise<Buffer>;
9
+ export declare function readBoundedFile(path: string, maximum: number, signal?: AbortSignal, selectLimit?: (prefix: Buffer) => number): Promise<Buffer>;
10
+ //# sourceMappingURL=bounded-file-read.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bounded-file-read.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/bounded-file-read.ts"],"names":[],"mappings":"AAKA,2EAA2E;AAC3E,eAAO,MAAM,oBAAoB,QAAmB,CAAA;AAEpD;;;;GAIG;AACH,wBAAsB,iBAAiB,CACtC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,EACzD,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,EACpB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GACtC,OAAO,CAAC,MAAM,CAAC,CAiBjB;AAED,wBAAsB,eAAe,CACpC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,EACpB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GACtC,OAAO,CAAC,MAAM,CAAC,CA+BjB"}
@@ -0,0 +1,67 @@
1
+ import { constants } from 'node:fs';
2
+ import { open } from 'node:fs/promises';
3
+ const CHUNK_BYTES = 64 * 1024;
4
+ /** A hard input ceiling, independent of output windows and allow_large. */
5
+ export const TEXT_MAX_INPUT_BYTES = 32 * 1024 * 1024;
6
+ /**
7
+ * Read at most the limit plus one sentinel byte, even if the file grows after
8
+ * stat. No allocation or request is derived from an untrusted file size.
9
+ * The first bounded chunk can choose a stricter limit from the file signature.
10
+ */
11
+ export async function readBoundedChunks(read, maximum, signal, selectLimit) {
12
+ const chunks = [];
13
+ let offset = 0;
14
+ let limit = maximum;
15
+ for (;;) {
16
+ signal?.throwIfAborted();
17
+ const length = Math.min(CHUNK_BYTES, limit + 1 - offset);
18
+ const chunk = await read(offset, length);
19
+ signal?.throwIfAborted();
20
+ if (chunk.length > length)
21
+ throw new Error('The file backend returned more bytes than the requested bounded range.');
22
+ if (offset === 0 && selectLimit)
23
+ limit = Math.min(maximum, selectLimit(chunk));
24
+ offset += chunk.length;
25
+ if (offset > limit)
26
+ throw inputTooLarge(limit);
27
+ chunks.push(chunk);
28
+ if (chunk.length < length)
29
+ return Buffer.concat(chunks, offset);
30
+ }
31
+ }
32
+ export async function readBoundedFile(path, maximum, signal, selectLimit) {
33
+ // O_NONBLOCK prevents a substituted FIFO from blocking open before fstat.
34
+ signal?.throwIfAborted();
35
+ const file = await open(path, constants.O_RDONLY | constants.O_NONBLOCK);
36
+ try {
37
+ const info = await file.stat();
38
+ if (!info.isFile())
39
+ throw new Error('Read requires a regular file.');
40
+ if (info.size > maximum)
41
+ throw inputTooLarge(maximum);
42
+ return await readBoundedChunks(async (offset, length) => {
43
+ const buffer = Buffer.allocUnsafe(length);
44
+ let used = 0;
45
+ while (used < length) {
46
+ signal?.throwIfAborted();
47
+ const { bytesRead } = await file.read(buffer, used, length - used, offset + used);
48
+ if (bytesRead === 0)
49
+ break;
50
+ used += bytesRead;
51
+ }
52
+ return buffer.subarray(0, used);
53
+ }, maximum, signal, (prefix) => {
54
+ const limit = selectLimit?.(prefix) ?? maximum;
55
+ if (info.size > limit)
56
+ throw inputTooLarge(limit);
57
+ return limit;
58
+ });
59
+ }
60
+ finally {
61
+ await file.close();
62
+ }
63
+ }
64
+ function inputTooLarge(limit) {
65
+ return new Error(`File exceeds the bounded read limit (${limit} bytes). Extract a smaller file with a shell command.`);
66
+ }
67
+ //# sourceMappingURL=bounded-file-read.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bounded-file-read.js","sourceRoot":"","sources":["../../../src/tools/builtins/bounded-file-read.ts"],"names":[],"mappings":"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"}
@@ -2,15 +2,20 @@
2
2
  export declare const DEFAULT_HEAD_LIMIT = 250;
3
3
  /** A matching or context line longer than this is replaced by a notice, not printed. */
4
4
  export declare const MAX_LINE_COLUMNS = 500;
5
- export declare const GrepTool: import("../../public-types.js").ToolDefinition<{
5
+ export declare const GrepTool: import("../../types/tool/index.js").ToolDefinition<{
6
6
  pattern: string;
7
7
  offset: number;
8
8
  case_sensitive: boolean;
9
9
  context_lines: number;
10
10
  output_mode: "content" | "count" | "files_with_matches";
11
11
  path?: string | undefined;
12
+ type?: string | undefined;
12
13
  include?: string | undefined;
14
+ before_context?: number | undefined;
15
+ after_context?: number | undefined;
16
+ only_matching?: boolean | undefined;
13
17
  head_limit?: number | undefined;
18
+ multiline?: boolean | undefined;
14
19
  max_results?: number | undefined;
15
20
  }>;
16
21
  //# sourceMappingURL=grep.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/grep.ts"],"names":[],"mappings":"AAqDA,uDAAuD;AACvD,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,wFAAwF;AACxF,eAAO,MAAM,gBAAgB,MAAM,CAAA;AA2DnC,eAAO,MAAM,QAAQ;;;;;;;;;;EAqQnB,CAAA"}
1
+ {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/grep.ts"],"names":[],"mappings":"AAuDA,uDAAuD;AACvD,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,wFAAwF;AACxF,eAAO,MAAM,gBAAgB,MAAM,CAAA;AAiInC,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;EAoSnB,CAAA"}