ptbk 0.118.0-1 → 0.119.0-5

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 (142) hide show
  1. package/README.md +5 -2
  2. package/changelog/_current-preversion.md +14 -0
  3. package/dist/coder/add-wizard.d.ts +14 -0
  4. package/dist/coder/add-wizard.js +88 -0
  5. package/dist/coder/add-wizard.js.map +1 -0
  6. package/dist/coder/agents.js +3 -2
  7. package/dist/coder/agents.js.map +1 -1
  8. package/dist/coder/attached-dashboard.d.ts +14 -0
  9. package/dist/coder/attached-dashboard.js +210 -0
  10. package/dist/coder/attached-dashboard.js.map +1 -0
  11. package/dist/coder/authoring.d.ts +14 -5
  12. package/dist/coder/authoring.js +49 -13
  13. package/dist/coder/authoring.js.map +1 -1
  14. package/dist/coder/browser.d.ts +12 -0
  15. package/dist/coder/browser.js +142 -30
  16. package/dist/coder/browser.js.map +1 -1
  17. package/dist/coder/check-setup.d.ts +44 -0
  18. package/dist/coder/check-setup.js +174 -0
  19. package/dist/coder/check-setup.js.map +1 -0
  20. package/dist/coder/checks.js +3 -1
  21. package/dist/coder/checks.js.map +1 -1
  22. package/dist/coder/choices.d.ts +36 -0
  23. package/dist/coder/choices.js +409 -0
  24. package/dist/coder/choices.js.map +1 -0
  25. package/dist/coder/cli.d.ts +3 -0
  26. package/dist/coder/cli.js +664 -126
  27. package/dist/coder/cli.js.map +1 -1
  28. package/dist/coder/configuration.d.ts +21 -0
  29. package/dist/coder/configuration.js +186 -0
  30. package/dist/coder/configuration.js.map +1 -0
  31. package/dist/coder/dashboard-page.d.ts +2 -0
  32. package/dist/coder/dashboard-page.js +91 -0
  33. package/dist/coder/dashboard-page.js.map +1 -0
  34. package/dist/coder/diagnostics.d.ts +13 -0
  35. package/dist/coder/diagnostics.js +44 -0
  36. package/dist/coder/diagnostics.js.map +1 -0
  37. package/dist/coder/edit-task-control.d.ts +7 -0
  38. package/dist/coder/edit-task-control.js +43 -0
  39. package/dist/coder/edit-task-control.js.map +1 -0
  40. package/dist/coder/engine.d.ts +17 -0
  41. package/dist/coder/engine.js +37 -15
  42. package/dist/coder/engine.js.map +1 -1
  43. package/dist/coder/file-replacement.d.ts +13 -0
  44. package/dist/coder/file-replacement.js +25 -0
  45. package/dist/coder/file-replacement.js.map +1 -0
  46. package/dist/coder/finite.d.ts +22 -0
  47. package/dist/coder/finite.js +251 -0
  48. package/dist/coder/finite.js.map +1 -0
  49. package/dist/coder/harness-plugins/acp.d.ts +8 -0
  50. package/dist/coder/harness-plugins/acp.js +107 -0
  51. package/dist/coder/harness-plugins/acp.js.map +1 -0
  52. package/dist/coder/harness-plugins/claude-code/index.d.ts +2 -0
  53. package/dist/coder/harness-plugins/claude-code/index.js +140 -0
  54. package/dist/coder/harness-plugins/claude-code/index.js.map +1 -0
  55. package/dist/coder/harness-plugins/cline/index.d.ts +2 -0
  56. package/dist/coder/harness-plugins/cline/index.js +111 -0
  57. package/dist/coder/harness-plugins/cline/index.js.map +1 -0
  58. package/dist/coder/harness-plugins/configuration.d.ts +4 -0
  59. package/dist/coder/harness-plugins/configuration.js +22 -0
  60. package/dist/coder/harness-plugins/configuration.js.map +1 -0
  61. package/dist/coder/harness-plugins/contract.d.ts +123 -0
  62. package/dist/coder/harness-plugins/contract.js +2 -0
  63. package/dist/coder/harness-plugins/contract.js.map +1 -0
  64. package/dist/coder/harness-plugins/gemini/index.d.ts +2 -0
  65. package/dist/coder/harness-plugins/gemini/index.js +70 -0
  66. package/dist/coder/harness-plugins/gemini/index.js.map +1 -0
  67. package/dist/coder/harness-plugins/github-copilot/index.d.ts +2 -0
  68. package/dist/coder/harness-plugins/github-copilot/index.js +197 -0
  69. package/dist/coder/harness-plugins/github-copilot/index.js.map +1 -0
  70. package/dist/coder/harness-plugins/index.d.ts +5 -0
  71. package/dist/coder/harness-plugins/index.js +17 -0
  72. package/dist/coder/harness-plugins/index.js.map +1 -0
  73. package/dist/coder/harness-plugins/locks.d.ts +13 -0
  74. package/dist/coder/harness-plugins/locks.js +123 -0
  75. package/dist/coder/harness-plugins/locks.js.map +1 -0
  76. package/dist/coder/harness-plugins/maintenance.d.ts +33 -0
  77. package/dist/coder/harness-plugins/maintenance.js +115 -0
  78. package/dist/coder/harness-plugins/maintenance.js.map +1 -0
  79. package/dist/coder/harness-plugins/openai-codex/index.d.ts +2 -0
  80. package/dist/coder/harness-plugins/openai-codex/index.js +272 -0
  81. package/dist/coder/harness-plugins/openai-codex/index.js.map +1 -0
  82. package/dist/coder/harness-plugins/opencode/index.d.ts +2 -0
  83. package/dist/coder/harness-plugins/opencode/index.js +81 -0
  84. package/dist/coder/harness-plugins/opencode/index.js.map +1 -0
  85. package/dist/coder/harness-plugins/qwen-code/index.d.ts +2 -0
  86. package/dist/coder/harness-plugins/qwen-code/index.js +65 -0
  87. package/dist/coder/harness-plugins/qwen-code/index.js.map +1 -0
  88. package/dist/coder/harness-plugins/shared.d.ts +27 -0
  89. package/dist/coder/harness-plugins/shared.js +277 -0
  90. package/dist/coder/harness-plugins/shared.js.map +1 -0
  91. package/dist/coder/harness-process.d.ts +51 -0
  92. package/dist/coder/harness-process.js +349 -0
  93. package/dist/coder/harness-process.js.map +1 -0
  94. package/dist/coder/harness.d.ts +18 -64
  95. package/dist/coder/harness.js +45 -1027
  96. package/dist/coder/harness.js.map +1 -1
  97. package/dist/coder/help.d.ts +39 -0
  98. package/dist/coder/help.js +279 -0
  99. package/dist/coder/help.js.map +1 -0
  100. package/dist/coder/initialization.d.ts +80 -0
  101. package/dist/coder/initialization.js +567 -0
  102. package/dist/coder/initialization.js.map +1 -0
  103. package/dist/coder/interactive.d.ts +45 -0
  104. package/dist/coder/interactive.js +299 -0
  105. package/dist/coder/interactive.js.map +1 -0
  106. package/dist/coder/planner.d.ts +4 -0
  107. package/dist/coder/planner.js +20 -9
  108. package/dist/coder/planner.js.map +1 -1
  109. package/dist/coder/presentation.d.ts +34 -0
  110. package/dist/coder/presentation.js +106 -0
  111. package/dist/coder/presentation.js.map +1 -0
  112. package/dist/coder/requests.js +16 -2
  113. package/dist/coder/requests.js.map +1 -1
  114. package/dist/coder/service-worker.js +8 -1
  115. package/dist/coder/service-worker.js.map +1 -1
  116. package/dist/coder/service.d.ts +32 -3
  117. package/dist/coder/service.js +325 -122
  118. package/dist/coder/service.js.map +1 -1
  119. package/dist/coder/setup.d.ts +17 -28
  120. package/dist/coder/setup.js +54 -250
  121. package/dist/coder/setup.js.map +1 -1
  122. package/dist/coder/sources.d.ts +9 -4
  123. package/dist/coder/sources.js +30 -16
  124. package/dist/coder/sources.js.map +1 -1
  125. package/dist/coder/state.d.ts +6 -5
  126. package/dist/coder/state.js +108 -24
  127. package/dist/coder/state.js.map +1 -1
  128. package/dist/coder/terminal.d.ts +7 -2
  129. package/dist/coder/terminal.js +203 -34
  130. package/dist/coder/terminal.js.map +1 -1
  131. package/dist/coder/updates.d.ts +34 -0
  132. package/dist/coder/updates.js +99 -0
  133. package/dist/coder/updates.js.map +1 -0
  134. package/dist/coder/version.d.ts +4 -0
  135. package/dist/coder/version.js +16 -0
  136. package/dist/coder/version.js.map +1 -0
  137. package/dist/coder/workspace.d.ts +4 -0
  138. package/dist/coder/workspace.js +6 -4
  139. package/dist/coder/workspace.js.map +1 -1
  140. package/docs/releasing.md +2 -0
  141. package/docs/runtime.md +46 -9
  142. package/package.json +1 -1
package/README.md CHANGED
@@ -14,13 +14,14 @@ npm install --save-dev ptbk
14
14
  npx ptbk init
15
15
  ```
16
16
 
17
- Initialization creates missing core agents, task templates and project conventions, preserving customized files. It offers supported harness installation and interactive authentication. `--no-install` skips installation; `--no-questions` avoids terminal prompts. Configure a meaningful project `check` script and commit the initialized project before starting work.
17
+ Initialization creates missing core agents, task templates, `ptbk.json` and project conventions, preserving customized files. Its wizard offers destination-local installation of the exact running version and selected global harness setup, reusing native login. Unattended setup requires `--installation local|global` or `--no-install`; `--non-interactive` disables prompts. Setup commits only safe generated artifacts; `--no-commit` defers persistence, and edits overlapping user work remain pending review. Configure meaningful project checks before starting work.
18
18
 
19
19
  ```bash
20
20
  ptbk add "Implement the new behavior and its acceptance checks" --commit
21
21
  ptbk list
22
22
  ptbk run --dry-run
23
23
  ptbk start # background agenda, localhost dashboard, reboot persistence
24
+ ptbk dashboard # attach terminal controls to the existing service
24
25
  ptbk show # inspect the same process and pending requests
25
26
  ptbk answer REQUEST_ID "Reply"
26
27
  ptbk stop # intentional stop also disables automatic restart
@@ -28,7 +29,9 @@ ptbk stop # intentional stop also disables automatic restar
28
29
 
29
30
  `start` discovers available authenticated harnesses, uses Manager for missing assignments, and executes one task at a time. It requires reported outcome evidence and passing project checks before committing implementation, dated task completion and learning follow-ups together. It watches future work and materializes goal enquiries when no unfinished backlog remains. Failures retain work and expose recovery diagnostics.
30
31
 
31
- Use `start --raw` for foreground logs or `start --interactive` for terminal controls. `--no-persist`, `--no-server`, `--no-qr` and `--port` customize startup. `run` executes a finite queue with one configuration; for example `ptbk run --harness openai-codex --check "npm run check" --limit 1`. Harness availability, account policy and capability checks happen before inference; unsupported installed provider features produce an actionable diagnostic.
32
+ Lifecycle commands report once and return; `start --raw` still launches a daemon. Use `dashboard` to attach terminal controls, or `start --foreground` to own execution in the current terminal (`--raw` gives plain foreground events). Q/Ctrl+C leaves an attached dashboard while its service continues. `--no-persist`, `--no-server`, `--no-qr` and `--port` customize startup. `run` executes a finite queue with one configuration; for example `ptbk run --harness openai-codex --check "npm run check" --limit 1`. Harness availability, account policy and capability checks happen before inference; unsupported installed provider features produce an actionable diagnostic.
33
+
34
+ Suitable terminals default to rich presentation; `--raw` or redirected output gives plain results without prompts or QR codes. `ptbk add` guides and confirms task creation. Use `ptbk init --help`, `ptbk init help` or `ptbk help init` for the same command-specific offline reference.
32
35
 
33
36
  Global installation, local `npx ptbk`, or a project script such as `"ptbk": "ptbk"` work outside this repository. Each process loads its own installed runtime/version and pins that installation for restart. See [runtime usage](docs/runtime.md), [compatibility and verification](docs/compatibility.md), and [the specification](https://github.com/webgptorg/promptbook/blob/main/specs/_main.md).
34
37
 
@@ -7,3 +7,17 @@
7
7
  - Fix Windows runtime state/browser startup sharing violations, process cancellation, secret-redaction scope, portable trace/learning paths and isolation recovery across Git checkout line-ending filters.
8
8
  - Make integration fixtures independent of host path separators and Git line-ending defaults, with bounded completion waits that tolerate hosted-runner load and surface runtime failures immediately.
9
9
  - Keep all platform checks running after a matrix failure, bound concurrent fixture processes, and document releasing code fixes under a new immutable version tag.
10
+ - Fix `ptbk run` failing with `Invalid string length` while claiming tasks in large checkouts by storing deduplicated snapshot bytes separately from recovery journal JSON; preserve existing journal compatibility and verify stored bytes before recovery.
11
+ - Resolve versioned `ptbk.json` project defaults beneath temporary CLI overrides, preserve explicit disabled/empty settings, and keep credentials out of configuration. Make bare/help/about output offline, concise and specific to the invoked engine version.
12
+ - Add incremental initialization with exact-version destination-local installation, explicit ignored-child/submodule boundaries, scoped setup commits, and durable pending review for generated changes overlapping user edits. Separate invoked-engine self-update from selected global harness maintenance.
13
+ - Move the seven harness integrations into a common plugin contract with featured/More catalogs, selected-only setup, native login reuse, actual version evidence and bounded global updates protected against concurrent project invocations.
14
+ - Share versioned terminal/dashboard state and authenticated controls between finite run and ongoing start; add multiline input with safe paste, keyboard/pointer editing and draft preservation, independent persistent browser profile/mode changes, and actionable redacted diagnostics with real trace references.
15
+ - Replace typed predefined answers with labeled arrow-key pickers and Space-toggle checkboxes throughout setup, harness updates, confirmations and runtime requests. Preserve selections while browsing More, resizing and receiving logs; clarify the shared choice controls in the specification.
16
+ - Separate daemon/foreground placement from pretty/raw presentation: lifecycle commands render one result, `start --raw` launches a daemon, and `--foreground` explicitly owns execution. Add an authenticated attached `dashboard` client with client-only exit, shared controls and continuous raw observation.
17
+ - Add coherent rich terminal summaries and live panels, an independently usable local API with a lightweight synchronized browser SPA, explicit connection/control outcomes, retained input drafts and safe task editing. Preserve color suppression and plain redirected output.
18
+ - Add a finite task-creation wizard with reusable supplied inputs, template/priority selection, exact preview, Back and confirmation before any task is saved. Resolve offline command-scoped help in all supported help forms, with relevant defaults/examples, alias support and scoped usage diagnostics.
19
+ - Fix release validation on runners without a Git identity by isolating initialization fixtures from host configuration and supplying fixture-only authorship.
20
+ - Synchronize browser dashboard control outcomes with a fresh snapshot and make browser tests wait for document/control readiness. Bound DevTools and owned-browser shutdown waits, preserve ownership when termination fails, and close browsers before removing fixture profiles to prevent Windows CI hangs.
21
+ - Retry transient Windows file-sharing failures when recording task completion and saving dashboard edits, rechecking source revision, path confinement and workspace ownership before each attempt while preserving concurrent edits and checked work. Read decoded Git submodule configuration in release fixtures so escaped Windows paths are validated correctly.
22
+ - Fix daemon stop failing when a read-only shutdown inspection encounters a reset control connection. Bound inspection retries with fresh process authentication, preserve ownership checks and never replay a mutation whose reply was lost; keep client disconnects from terminating the supervisor.
23
+ - Resolve missing project validation through a shared init/start setup picker with exact-command confirmation and saved check defaults. Preserve custom validation and temporary overrides, reject recursive/placeholder checks before work, and report incomplete setup with actionable correction instead of recommending a start that will fail.
@@ -0,0 +1,14 @@
1
+ import type { Readable, Writable } from 'node:stream';
2
+ import type { Workspace } from './domain.js';
3
+ import { type PreparedAuthoredTask } from './authoring.js';
4
+ /** Supplied authoring inputs are reused rather than asked for again. @private */
5
+ export interface AddWizardOptions {
6
+ description?: string;
7
+ template?: string;
8
+ priority?: number;
9
+ signal?: AbortSignal;
10
+ input?: Readable;
11
+ output?: Writable;
12
+ }
13
+ /** Review exact task bytes in a finite wizard; cancellation never creates a task. @private */
14
+ export declare function addTaskWizard(workspace: Workspace, options?: AddWizardOptions): Promise<PreparedAuthoredTask | undefined>;
@@ -0,0 +1,88 @@
1
+ import { readdir } from 'node:fs/promises';
2
+ import { join, relative } from 'node:path';
3
+ import { prepareAuthoredTask } from './authoring.js';
4
+ import { promptChoice } from './choices.js';
5
+ import { promptText } from './interactive.js';
6
+ import { installedEngineVersion } from './version.js';
7
+ import { confinePath, InputError } from './workspace.js';
8
+ /** Inspect the selected project's templates without creating files or following escaping links. */
9
+ async function taskTemplates(workspace) {
10
+ const directory = await confinePath(workspace.projectPath, join(workspace.tasksPath, 'templates'));
11
+ try {
12
+ return (await readdir(directory, { withFileTypes: true })).filter(entry => entry.isFile() && /\.(?:book|md|txt)$/i.test(entry.name))
13
+ .sort((a, b) => a.name.localeCompare(b.name)).map(entry => ({ value: relative(workspace.projectPath, join(directory, entry.name)), label: entry.name }));
14
+ }
15
+ catch (error) {
16
+ if (error.code === 'ENOENT')
17
+ return [];
18
+ throw error;
19
+ }
20
+ }
21
+ /** Review exact task bytes in a finite wizard; cancellation never creates a task. @private */
22
+ export async function addTaskWizard(workspace, options = {}) {
23
+ const version = await installedEngineVersion();
24
+ const surface = { input: options.input, output: options.output, signal: options.signal };
25
+ const heading = (step) => `Promptbook ${version} · Add task · ${step}/4`;
26
+ let description = options.description;
27
+ let template = options.template;
28
+ let priority = options.priority;
29
+ /** Keep descriptions in the shared multiline editor while enforcing nonempty authoring input. */
30
+ const describe = () => promptText('Task description', { ...surface, heading: heading(1), initial: description,
31
+ validate: value => value.trim() ? undefined : 'Describe the task before continuing.' });
32
+ /** Select existing templates with labels; an omitted template keeps the description as supplied. */
33
+ const selectTemplate = async () => {
34
+ const templates = await taskTemplates(workspace);
35
+ if (!templates.length) {
36
+ template = undefined;
37
+ return;
38
+ }
39
+ const choice = await promptChoice('Task template', [{ value: '@none', label: 'No template', description: 'Use the task description directly.' }, ...templates], {
40
+ ...surface, heading: heading(2), initial: template && templates.some(item => item.value === template) ? template : '@none',
41
+ });
42
+ template = choice === '@none' ? undefined : choice;
43
+ };
44
+ /** Offer common priorities while retaining arbitrary nonnegative priorities through a custom field. */
45
+ const selectPriority = async () => {
46
+ const choice = await promptChoice('Task priority (higher values run first)', [
47
+ { value: '0', label: 'Normal · 0' }, { value: '1', label: 'Raised · 1' },
48
+ { value: '2', label: 'High · 2' }, { value: '3', label: 'Urgent · 3' },
49
+ { value: 'custom', label: 'Custom priority…' },
50
+ ], { ...surface, heading: heading(3), initial: priority !== undefined && priority <= 3 ? String(priority) : priority === undefined ? '0' : 'custom' });
51
+ if (choice !== 'custom') {
52
+ priority = Number(choice);
53
+ return;
54
+ }
55
+ const value = await promptText('Custom nonnegative priority', { ...surface, heading: heading(3), initial: String(priority ?? 0),
56
+ validate: text => /^\d+$/.test(text.trim()) && Number.isSafeInteger(Number(text.trim())) ? undefined : 'Use a nonnegative safe integer.' });
57
+ priority = Number(value.trim());
58
+ };
59
+ if (description === undefined)
60
+ description = await describe();
61
+ if (!description.trim())
62
+ throw new InputError('A non-empty task description is required.');
63
+ if (options.template === undefined)
64
+ await selectTemplate();
65
+ if (options.priority === undefined)
66
+ await selectPriority();
67
+ for (;;) {
68
+ const prepared = await prepareAuthoredTask(workspace, description, { template, priority });
69
+ const action = await promptChoice('Review the task before saving', [
70
+ { value: 'save', label: 'Save this task' },
71
+ { value: 'description', label: 'Back to description' },
72
+ { value: 'template', label: 'Back to template' },
73
+ { value: 'priority', label: 'Back to priority' },
74
+ { value: 'cancel', label: 'Cancel without creating a task' },
75
+ ], { ...surface, heading: heading(4), initial: 'cancel', preview: `${relative(workspace.projectPath, prepared.path)}\n${prepared.content}` });
76
+ if (action === 'save')
77
+ return prepared;
78
+ if (action === 'cancel')
79
+ return undefined;
80
+ if (action === 'description')
81
+ description = await describe();
82
+ else if (action === 'template')
83
+ await selectTemplate();
84
+ else
85
+ await selectPriority();
86
+ }
87
+ }
88
+ //# sourceMappingURL=add-wizard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-wizard.js","sourceRoot":"","sources":["../../src/coder/add-wizard.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { readFile, realpath, readdir, stat, mkdir, writeFile } from 'node:fs/pro
2
2
  import { basename, dirname, isAbsolute, relative, resolve } from 'node:path';
3
3
  import { lookup } from 'node:dns/promises';
4
4
  import { isIP } from 'node:net';
5
+ import { installedEngineVersion } from './version.js';
5
6
  /** Known multi-line Book commitments; code fences remain literal content. @private */
6
7
  const COMMITMENTS = /^(PERSONAE?|GOALS?|RULES?|STYLES?|LANGUAGES?|WRITING SAMPLE|WRITING RULES?|SAMPLES?|EXAMPLES?|FORMATS?|TEMPLATES?|FROM|IMPORTS?|KNOWLEDGE|TEAM|MODELS?|META (?:INPUT PLACEHOLDER|IMAGE|AVATAR|VISUAL|COLOR|FONT|LINK|DOMAIN|DISCLAIMER|VISIBILITY|VOICE|DESCRIPTION|FULLNAME|ID|EMAIL)|NOTES?|COMMENTS?|NONCE|TODO|CLOSED|OPEN|DELETE|CANCEL|DISCARD|REMOVE|CONTEXT|EXPECT|BEHAVIOURS?|AVOID(?:ANCE)?|MESSAGE(?: SUFFIX)?|INITIAL MESSAGE|DICTIONARY|USE (?:USER LOCATION|CALENDAR|POPUP|IMAGE GENERATOR|MCP|PRIVACY|PROJECT)|ACTIONS?)(?:[ \t]+(.*)|$)/;
7
8
  /** Missing core definitions are created from these installed-engine defaults only. @private */
@@ -269,10 +270,10 @@ export async function resolveAgentReference(raw, declaring, projectPath) {
269
270
  }
270
271
  /** Introspect this installed engine without exposing credentials or project-owned Expert files. @private */
271
272
  async function expertBook(projectPath) {
272
- const manifest = JSON.parse(await readFile(new URL('../../package.json', import.meta.url), 'utf8'));
273
+ const version = await installedEngineVersion();
273
274
  return `Expert
274
275
  FROM Void
275
- PERSONA Promptbook expertise supplied by the running ptbk ${manifest.version} engine.
276
+ PERSONA Promptbook expertise supplied by the running ptbk ${version} engine.
276
277
  KNOWLEDGE APT means Agent–Project–Task. An agent is a persistent role; a task is bounded work. This project is ${projectPath}. Runtime records and persistent browser sessions are Git-ignored in .ptbk/.
277
278
  KNOWLEDGE Agent names are first nonempty Book lines, unique after case/diacritic/separator normalization. FROM inherits Adam by default; FROM Void terminates; FROM User is invalid; IMPORT includes instructions in place; TEAM @Name and {Multi Word Name} make on-demand consultations, including @User and @Expert.
278
279
  KNOWLEDGE Core agents are editable Adam, Manager and closed Teacher in agents/.core/. Hidden agents remain resolvable but do not receive ordinary automatic work. Expert, User and Void are engine references without editable project files.
@@ -1 +1 @@
1
- {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/coder/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAiBhC,sFAAsF;AACtF,MAAM,WAAW,GAAG,yhBAAyhB,CAAC;AAE9iB,+FAA+F;AAC/F,MAAM,CAAC,MAAM,UAAU,GAAqC;IACxD,IAAI,EAAE,kQAAkQ;IACxQ,OAAO,EAAE,6SAA6S;IACtT,OAAO,EAAE,4bAA4b;CACxc,CAAC;AAEF,sFAAsF;AACtF,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC3C,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;AACzT,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,iBAAiB,CAAC,SAAiB;IAC/C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IACrE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACvG,IAAI,QAAQ,KAAK,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAClF,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC1F,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,gFAAgF;AAChF,SAAS,cAAc,CAAC,KAAmB,EAAE,MAAc;IACvD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;IAC9F,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAE,CAAC,IAAI,iDAAiD,CAAC,CAAC;IAC1H,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAE,CAAC,IAAI,4CAA4C,CAAC,CAAC;IACjJ,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,KAAK,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACjJ,CAAC;AAED,yFAAyF;AACzF,SAAS,SAAS,CAAC,IAAY,EAAE,MAAc;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAChE,IAAI,KAAK,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC;IACjE,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC;IACtG,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAE,CAAC,IAAI,EAAE,CAAC;IAClC,MAAM,WAAW,GAAiB,EAAE,CAAC;IACrC,IAAI,OAA+B,CAAC;IACpC,IAAI,KAAyB,CAAC;IAC9B,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QAC3D,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,KAAK;gBAAE,KAAK,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;iBAC3B,IAAI,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAE,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;gBAAE,KAAK,GAAG,SAAS,CAAC;YAC9F,IAAI,CAAC,OAAO;gBAAE,WAAW,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7G,OAAO,CAAC,KAAK,IAAI,KAAK,IAAI,EAAE,CAAC;YAC7B,SAAS;QACb,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC;QAC7G,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,uFAAuF,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAC;YACjN,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;YAC9E,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO;gBAAE,WAAW,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7G,OAAO,CAAC,KAAK,IAAI,KAAK,IAAI,EAAE,CAAC;QACjC,CAAC;IACL,CAAC;IACD,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,0DAA0D,CAAC,CAAC;IACjI,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,4DAA4D,CAAC,CAAC;IACtJ,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AACjC,CAAC;AAED,6EAA6E;AAC7E,SAAS,MAAM,CAAC,IAAY,EAAE,MAAc;IACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpC,OAAO,IAAI,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACrI,CAAC;AAED,+FAA+F;AAC/F,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,WAAmB;IAClE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,IAAI,EAAE,CAAC,CAAC;IACjG,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAChD,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IAChF,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAAE,OAAO,mEAAmE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxH,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACzC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IAC5O,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACjJ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM;QAAE,OAAO,oBAAoB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAE,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAE,GAAG,GAAG,EAAE,CAAC,CAAC;IACnL,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,MAAM,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,MAAM,CAAC,KAAK,MAAM,CAAC;AACxL,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,SAAS,CAAC,SAAiB;IACtC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/B,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,mEAAmE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAChK,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;IACnG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjJ,OAAO,GAAG,CAAC;AACf,CAAC;AAED,0FAA0F;AAC1F,KAAK,UAAU,UAAU,CAAC,MAAc;IACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,MAAM,EAAE,CAAC,CAAC;QAC3H,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;IACnH,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,QAAQ,UAAU,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnH,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACxH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACxD,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,SAAS,CAAC;QACN,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,IAAI;YAAE,MAAM;QACtB,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAAC,CAAC;QACpG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACpF,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAED,sGAAsG;AACtG,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,WAAmB;IACpD,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA2B,CAAC;IACtD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,wFAAwF;IACxF,KAAK,UAAU,IAAI,CAAC,SAAiB,EAAE,MAAe;QAClD,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC;YAAC,IAAI,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAAC,CAAC;QAC5D,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO;YAAC,MAAM,KAAK,CAAC;QAAC,CAAC;QAC9F,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;YAAE,OAAO;QAChE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1B,MAAM,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5G,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;YAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACrE,IAAI,UAAU,CAAC,WAAW,EAAE;gBAAE,MAAM,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;iBAChF,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBAAC,IAAI,QAAQ;oBAAE,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;YAAC,CAAC;iBACxI,IAAI,UAAU,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/E,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAChB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;gBACvD,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,CAAC,cAAc;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,qCAAqC,CAAC,CAAC;gBACnF,IAAI,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,iCAAiC,MAAM,CAAC,IAAI,2BAA2B,CAAC,CAAC;gBACpI,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;gBACtH,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAChD,IAAI,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,QAAQ,IAAI,EAAE,CAAC,CAAC;gBAC9G,UAAU,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;IACL,CAAC;IACD,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC;IAC3E,IAAI,OAAO,EAAE,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,8DAA8D,CAAC,CAAC;IAC3H,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,0GAA0G;AAC1G,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,WAAmB;IACtD,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;IACvF,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC;YAAC,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAC3E,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAAC,CAAC;QACtF,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QACvD,IAAI,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,sCAAsC,IAAI,EAAE,CAAC,CAAC;IACvH,CAAC;IACD,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IAClC,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,4GAA4G;AAC5G,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,GAAW,EAAE,SAAiB,EAAE,WAAmB;IAC3F,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvG,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC,IAAI,CAAC;IACnC,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,IAAI,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,SAAS,EAAE,CAAC,CAAC;QACnI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,SAAS,EAAE,CAAC,CAAC;QACjJ,OAAO,CAAC,MAAM,SAAS,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IACjD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAClH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;QACzF,SAAS,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;QAC5C,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;IACjG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,gBAAgB,SAAS,QAAQ,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IACnI,OAAO,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC;AAC5B,CAAC;AAED,4GAA4G;AAC5G,KAAK,UAAU,UAAU,CAAC,WAAmB;IACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAwB,CAAC;IAC3H,OAAO;;4DAEiD,QAAQ,CAAC,OAAO;iHACqC,WAAW;;;;;;;;CAQ3H,CAAC;AACF,CAAC;AAED,yGAAyG;AACzG,SAAS,cAAc,CAAC,KAAa;IACjC,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/I,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,4DAA4D,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACzJ,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,uGAAuG;AACvG,SAAS,kBAAkB,CAAC,KAAmB;IAC3C,IAAI,KAAyB,CAAC;IAC9B,MAAM,eAAe,GAA2B,EAAE,CAAC;IACnD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,CAAC;QAChE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACnF,MAAM,KAAK,GAAG,yDAAyD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnF,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM;gBAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;iBACpE,CAAC;gBACF,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,CAAC,MAAM,0CAA0C,CAAC,CAAC;gBAC9H,KAAK,GAAG,IAAI,CAAC;YACjB,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAChH,CAAC;AAED,0GAA0G;AAC1G,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,SAAiB,EAAE,WAAmB;IAC5E,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,iBAAiB,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAClF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,mBAAmB,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,qGAAqG;IACrG,KAAK,UAAU,aAAa,CAAC,GAAW,EAAE,SAAiB;QACvD,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvG,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QAClD,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC;QACjC,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;QAChM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,kBAAkB,CAAC,SAAS,CAAC,KAAK,MAAM;YAAE,OAAO,WAAW,CAAC;QACpF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,gBAAgB,SAAS,QAAQ,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACnI,OAAO,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC;IAC5B,CAAC;IACD,+FAA+F;IAC/F,KAAK,UAAU,MAAM,CAAC,IAAY;QAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,OAAO,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,EAAE,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QACtE,IAAI,OAAO,EAAE,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,+CAA+C,CAAC,CAAC;QACtG,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5G,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAC;QACrF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,IAAK,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QACvG,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,KAAK,IAAI,MAAM,EAAE,IAAI,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM;gBAAE,SAAS;YACtC,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACvD,IAAI,CAAC,QAAQ;oBAAE,OAAO,SAAS,CAAC;gBAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACxC,IAAI,CAAC,QAAQ;oBAAE,OAAO,SAAS,CAAC;gBAChC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;YAC/B,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC;gBAC/K,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,sBAAsB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC,CAAC;gBAClJ,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC;AAED,yGAAyG;AACzG,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,SAAiB,EAAE,WAAmB;IACrE,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,OAAO,EAAE,IAAI,KAAK,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;IACtI,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACvJ,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC3C,IAAI,WAAW,GAAG,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;IACtC,IAAI,QAAQ,GAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAC/C,0FAA0F;IAC1F,KAAK,UAAU,MAAM,CAAC,IAAY,EAAE,WAAW,GAAG,KAAK;QACnD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM;YAAE,OAAO,EAAE,CAAC;QACzC,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,+CAA+C,CAAC,CAAC;QAC5H,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5G,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAC;QACrF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACrH,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACrB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,WAAW,EAAE,CAAC;YAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;YAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAAC,CAAC;QACjI,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAiB,EAAE,CAAC;QAClC,IAAI,MAAM;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;;YACpG,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,qBAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5F,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM;gBAAE,SAAS;YACtC,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,qBAAqB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;iBACrH,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC;gBAC/K,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,sBAAsB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC,CAAC;gBAClJ,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC1B,YAAY,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClF,KAAK,MAAM,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBAC9E,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACzC,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM;oBAAE,SAAS;gBACxC,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI,IAAI,SAAS,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC;gBAC5E,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;YAChG,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,iEAAiE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/F,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,IAAI,QAAQ,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;gBACxO,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;gBAClD,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;YAC5B,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,OAAO,OAAO,EAAE,CAAC,CAAC;QACnF,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,SAAS;aACpG,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,MAAM,oDAAoD,CAAC,CAAC;;YACpK,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACtG,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;AAChR,CAAC;AAED,mHAAmH;AACnH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,WAAmB;IACpD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC;IACxH,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IAC9H,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,MAAM;QAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;IACvF,OAAO,QAAQ,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/coder/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAiBtD,sFAAsF;AACtF,MAAM,WAAW,GAAG,yhBAAyhB,CAAC;AAE9iB,+FAA+F;AAC/F,MAAM,CAAC,MAAM,UAAU,GAAqC;IACxD,IAAI,EAAE,kQAAkQ;IACxQ,OAAO,EAAE,6SAA6S;IACtT,OAAO,EAAE,4bAA4b;CACxc,CAAC;AAEF,sFAAsF;AACtF,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC3C,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;AACzT,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,iBAAiB,CAAC,SAAiB;IAC/C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IACrE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACvG,IAAI,QAAQ,KAAK,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAClF,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC1F,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,gFAAgF;AAChF,SAAS,cAAc,CAAC,KAAmB,EAAE,MAAc;IACvD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;IAC9F,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAE,CAAC,IAAI,iDAAiD,CAAC,CAAC;IAC1H,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAE,CAAC,IAAI,4CAA4C,CAAC,CAAC;IACjJ,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,KAAK,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACjJ,CAAC;AAED,yFAAyF;AACzF,SAAS,SAAS,CAAC,IAAY,EAAE,MAAc;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAChE,IAAI,KAAK,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC;IACjE,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC;IACtG,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAE,CAAC,IAAI,EAAE,CAAC;IAClC,MAAM,WAAW,GAAiB,EAAE,CAAC;IACrC,IAAI,OAA+B,CAAC;IACpC,IAAI,KAAyB,CAAC;IAC9B,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QAC3D,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,KAAK;gBAAE,KAAK,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;iBAC3B,IAAI,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAE,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;gBAAE,KAAK,GAAG,SAAS,CAAC;YAC9F,IAAI,CAAC,OAAO;gBAAE,WAAW,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7G,OAAO,CAAC,KAAK,IAAI,KAAK,IAAI,EAAE,CAAC;YAC7B,SAAS;QACb,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC;QAC7G,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,uFAAuF,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAC;YACjN,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;YAC9E,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO;gBAAE,WAAW,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7G,OAAO,CAAC,KAAK,IAAI,KAAK,IAAI,EAAE,CAAC;QACjC,CAAC;IACL,CAAC;IACD,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,0DAA0D,CAAC,CAAC;IACjI,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,4DAA4D,CAAC,CAAC;IACtJ,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AACjC,CAAC;AAED,6EAA6E;AAC7E,SAAS,MAAM,CAAC,IAAY,EAAE,MAAc;IACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpC,OAAO,IAAI,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACrI,CAAC;AAED,+FAA+F;AAC/F,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,WAAmB;IAClE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,IAAI,EAAE,CAAC,CAAC;IACjG,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAChD,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;IAChF,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAAE,OAAO,mEAAmE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxH,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACzC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IAC5O,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACjJ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM;QAAE,OAAO,oBAAoB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAE,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAE,GAAG,GAAG,EAAE,CAAC,CAAC;IACnL,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,MAAM,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,MAAM,CAAC,KAAK,MAAM,CAAC;AACxL,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,SAAS,CAAC,SAAiB;IACtC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/B,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,mEAAmE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAChK,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;IACnG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjJ,OAAO,GAAG,CAAC;AACf,CAAC;AAED,0FAA0F;AAC1F,KAAK,UAAU,UAAU,CAAC,MAAc;IACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,MAAM,EAAE,CAAC,CAAC;QAC3H,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;IACnH,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,QAAQ,UAAU,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnH,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACxH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACxD,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,SAAS,CAAC;QACN,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,IAAI;YAAE,MAAM;QACtB,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;YAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAAC,CAAC;QACpG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACpF,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAED,sGAAsG;AACtG,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,WAAmB;IACpD,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA2B,CAAC;IACtD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,wFAAwF;IACxF,KAAK,UAAU,IAAI,CAAC,SAAiB,EAAE,MAAe;QAClD,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC;YAAC,IAAI,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAAC,CAAC;QAC5D,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO;YAAC,MAAM,KAAK,CAAC;QAAC,CAAC;QAC9F,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;YAAE,OAAO;QAChE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1B,MAAM,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5G,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;YAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACrE,IAAI,UAAU,CAAC,WAAW,EAAE;gBAAE,MAAM,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;iBAChF,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBAAC,IAAI,QAAQ;oBAAE,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;YAAC,CAAC;iBACxI,IAAI,UAAU,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/E,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAChB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;gBACvD,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,CAAC,cAAc;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,qCAAqC,CAAC,CAAC;gBACnF,IAAI,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,iCAAiC,MAAM,CAAC,IAAI,2BAA2B,CAAC,CAAC;gBACpI,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;gBACtH,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAChD,IAAI,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,QAAQ,IAAI,EAAE,CAAC,CAAC;gBAC9G,UAAU,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;IACL,CAAC;IACD,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC;IAC3E,IAAI,OAAO,EAAE,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,8DAA8D,CAAC,CAAC;IAC3H,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,0GAA0G;AAC1G,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,WAAmB;IACtD,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;IACvF,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC;YAAC,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAC3E,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAAC,CAAC;QACtF,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QACvD,IAAI,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,sCAAsC,IAAI,EAAE,CAAC,CAAC;IACvH,CAAC;IACD,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IAClC,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,4GAA4G;AAC5G,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,GAAW,EAAE,SAAiB,EAAE,WAAmB;IAC3F,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvG,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC,IAAI,CAAC;IACnC,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,IAAI,2BAA2B,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,SAAS,EAAE,CAAC,CAAC;QACnI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,SAAS,EAAE,CAAC,CAAC;QACjJ,OAAO,CAAC,MAAM,SAAS,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IACjD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAClH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;QACzF,SAAS,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;QAC5C,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;IACjG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,gBAAgB,SAAS,QAAQ,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IACnI,OAAO,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC;AAC5B,CAAC;AAED,4GAA4G;AAC5G,KAAK,UAAU,UAAU,CAAC,WAAmB;IACzC,MAAM,OAAO,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC/C,OAAO;;4DAEiD,OAAO;iHAC8C,WAAW;;;;;;;;CAQ3H,CAAC;AACF,CAAC;AAED,yGAAyG;AACzG,SAAS,cAAc,CAAC,KAAa;IACjC,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/I,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,4DAA4D,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACzJ,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,uGAAuG;AACvG,SAAS,kBAAkB,CAAC,KAAmB;IAC3C,IAAI,KAAyB,CAAC;IAC9B,MAAM,eAAe,GAA2B,EAAE,CAAC;IACnD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,CAAC;QAChE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACnF,MAAM,KAAK,GAAG,yDAAyD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnF,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM;gBAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;iBACpE,CAAC;gBACF,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,CAAC,MAAM,0CAA0C,CAAC,CAAC;gBAC9H,KAAK,GAAG,IAAI,CAAC;YACjB,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAChH,CAAC;AAED,0GAA0G;AAC1G,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,SAAiB,EAAE,WAAmB;IAC5E,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,iBAAiB,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAClF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,mBAAmB,CAAC;IACxC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,qGAAqG;IACrG,KAAK,UAAU,aAAa,CAAC,GAAW,EAAE,SAAiB;QACvD,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvG,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QAClD,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC;QACjC,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;QAChM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,kBAAkB,CAAC,SAAS,CAAC,KAAK,MAAM;YAAE,OAAO,WAAW,CAAC;QACpF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,gBAAgB,SAAS,QAAQ,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACnI,OAAO,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC;IAC5B,CAAC;IACD,+FAA+F;IAC/F,KAAK,UAAU,MAAM,CAAC,IAAY;QAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,OAAO,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,EAAE,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QACtE,IAAI,OAAO,EAAE,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,+CAA+C,CAAC,CAAC;QACtG,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5G,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAC;QACrF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,IAAK,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QACvG,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,KAAK,IAAI,MAAM,EAAE,IAAI,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM;gBAAE,SAAS;YACtC,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACvD,IAAI,CAAC,QAAQ;oBAAE,OAAO,SAAS,CAAC;gBAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACxC,IAAI,CAAC,QAAQ;oBAAE,OAAO,SAAS,CAAC;gBAChC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;YAC/B,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC;gBAC/K,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,sBAAsB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC,CAAC;gBAClJ,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC;AAED,yGAAyG;AACzG,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,SAAiB,EAAE,WAAmB;IACrE,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,OAAO,EAAE,IAAI,KAAK,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;IACtI,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACvJ,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC3C,IAAI,WAAW,GAAG,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;IACtC,IAAI,QAAQ,GAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAC/C,0FAA0F;IAC1F,KAAK,UAAU,MAAM,CAAC,IAAY,EAAE,WAAW,GAAG,KAAK;QACnD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM;YAAE,OAAO,EAAE,CAAC;QACzC,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,+CAA+C,CAAC,CAAC;QAC5H,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5G,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAC;QACrF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACrH,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACrB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,WAAW,EAAE,CAAC;YAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;YAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAAC,CAAC;QACjI,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAiB,EAAE,CAAC;QAClC,IAAI,MAAM;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;;YACpG,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,qBAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5F,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM;gBAAE,SAAS;YACtC,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,qBAAqB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;iBACrH,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC;gBAC/K,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,sBAAsB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC,CAAC;gBAClJ,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAC1B,YAAY,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClF,KAAK,MAAM,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBAC9E,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACzC,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM;oBAAE,SAAS;gBACxC,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI,IAAI,SAAS,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC;gBAC5E,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;YAChG,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,iEAAiE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/F,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,IAAI,QAAQ,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;gBACxO,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;gBAClD,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;YAC5B,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,OAAO,OAAO,EAAE,CAAC,CAAC;QACnF,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,SAAS;aACpG,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,MAAM,oDAAoD,CAAC,CAAC;;YACpK,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACtG,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;AAChR,CAAC;AAED,mHAAmH;AACnH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,WAAmB;IACpD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC;IACxH,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IAC9H,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,MAAM;QAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;IACvF,OAAO,QAAQ,CAAC;AACpB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { Workspace } from './domain.js';
2
+ import { serviceCommand } from './service.js';
3
+ /** Client-only presentation options never configure or start the project's service. @private */
4
+ export interface AttachedDashboardOptions {
5
+ raw?: boolean;
6
+ interactive?: boolean;
7
+ signal?: AbortSignal;
8
+ input?: NodeJS.ReadStream;
9
+ output?: NodeJS.WriteStream;
10
+ pollIntervalMs?: number;
11
+ command?: typeof serviceCommand;
12
+ }
13
+ /** Observe one authenticated service until it ends or this client leaves, without owning execution. @private */
14
+ export declare function attachDashboard(workspace: Workspace, options?: AttachedDashboardOptions): Promise<void>;
@@ -0,0 +1,210 @@
1
+ import { serviceCommand, readServiceRecord } from './service.js';
2
+ import { createTerminal } from './terminal.js';
3
+ import { InputError } from './workspace.js';
4
+ import { editTaskFromTerminal } from './edit-task-control.js';
5
+ /** Bound a single observed item while making omitted evidence explicit. */
6
+ function bounded(value, limit = 8000) {
7
+ const text = typeof value === 'string' ? value : JSON.stringify(value) ?? String(value);
8
+ return text.length > limit ? `${text.slice(0, limit - 40)}\n[ptbk] … output truncated …` : text;
9
+ }
10
+ /** Observe one authenticated service until it ends or this client leaves, without owning execution. @private */
11
+ export async function attachDashboard(workspace, options = {}) {
12
+ const input = options.input ?? process.stdin;
13
+ const output = options.output ?? process.stdout;
14
+ const command = options.command ?? serviceCommand;
15
+ const interval = options.pollIntervalMs ?? 1000;
16
+ if (!Number.isFinite(interval) || interval < 10 || interval > 60_000)
17
+ throw new InputError('Dashboard refresh interval must be between 10 and 60000 milliseconds.');
18
+ if (options.signal?.aborted)
19
+ return;
20
+ const interactive = !options.raw && options.interactive !== false && Boolean(input.isTTY && output.isTTY) && process.env.TERM !== 'dumb';
21
+ let first;
22
+ try {
23
+ first = await command(workspace, 'inspect');
24
+ }
25
+ catch (error) {
26
+ throw new InputError(`Cannot attach to the selected project service: ${error.message}\nInspect ptbk status --path ${JSON.stringify(workspace.projectPath)} before reconnecting. No worker was started.`);
27
+ }
28
+ if (options.signal?.aborted)
29
+ return;
30
+ if (!first) {
31
+ const record = options.command ? undefined : await readServiceRecord(workspace);
32
+ throw new InputError(`${record?.status === 'stopped' || record?.desired === 'stopped' ? 'The selected project service is stopped.' : 'No reachable service is running for the selected project.'} Start it with ptbk start --path ${JSON.stringify(workspace.projectPath)}, then reopen ptbk dashboard. No worker was started.`);
33
+ }
34
+ if (typeof first.id !== 'string' || typeof first.pid !== 'number' || first.project !== workspace.projectPath)
35
+ throw new InputError('Dashboard process identity could not be verified for the selected project. Inspect ptbk status before reconnecting.');
36
+ const identity = { id: first.id, pid: first.pid };
37
+ let closed = false;
38
+ let ending = 'Dashboard closed; the service continues independently.';
39
+ let latest = first;
40
+ let wake;
41
+ let activeControl = false;
42
+ let stateSignature = '';
43
+ let eventKeys = new Set();
44
+ /** A client close wakes observation without sending a service-stop command. */
45
+ const leave = () => { closed = true; wake?.(); };
46
+ /** Pin all further reads and mutations to the initially verified process, including after restart. */
47
+ const send = async (action, value = {}) => command(workspace, action, value, identity);
48
+ /** Await the next refresh or a client-only interruption without retaining timers. */
49
+ const wait = () => new Promise(resolve => {
50
+ const timer = setTimeout(done, interval);
51
+ /** A single cleanup path serves timer, signal, keyboard and terminal disconnect. */
52
+ function done() { clearTimeout(timer); wake = undefined; resolve(); }
53
+ wake = done;
54
+ if (closed)
55
+ done();
56
+ });
57
+ const terminal = createTerminal(interactive, leave, workspace.projectPath, {
58
+ input, output, attached: true,
59
+ async onControl(action) {
60
+ if (activeControl || closed)
61
+ return;
62
+ activeControl = true;
63
+ try {
64
+ if (action === 'requests') {
65
+ const requests = (latest.requests || []);
66
+ if (!requests.length) {
67
+ terminal.status('There are no pending human requests.');
68
+ return;
69
+ }
70
+ const id = await terminal.choose('Choose a pending request to answer:', [...requests.map(request => ({ value: String(request.id), label: String(request.prompt), description: String(request.reason || '') })), { value: '@cancel', label: 'Leave requests pending' }]);
71
+ const request = requests.find(item => item.id === id);
72
+ if (!request || closed)
73
+ return;
74
+ const response = Array.isArray(request.choices) && request.choices.length
75
+ ? request.choices[Number(await terminal.choose(request.prompt, request.choices.map((label, index) => ({ value: String(index), label }))))]
76
+ : await terminal.question(`${request.prompt}\nAnswer (blank leaves the request pending):`);
77
+ if (response.trim() && !closed) {
78
+ await send('answer', { id, response });
79
+ terminal.status('Answer accepted by the service.');
80
+ }
81
+ }
82
+ else if (action === 'edit-task') {
83
+ await editTaskFromTerminal(terminal, latest, send);
84
+ }
85
+ else if (action === 'settings') {
86
+ const capabilities = latest.settingsCapabilities || {};
87
+ const value = await terminal.question(`Temporary runtime settings as JSON (blank to cancel).\nActive: ${bounded(latest.settings || {}, 3000)}\nLive: ${(capabilities.live || []).join(', ')}\nRestart required: ${(capabilities.requiresRestart || []).join(', ')}\n${capabilities.units || ''}`);
88
+ if (value.trim() && !closed) {
89
+ const result = await send('settings', { settings: JSON.parse(value) });
90
+ terminal.status(`Settings outcome: ${bounded(result)}`);
91
+ }
92
+ }
93
+ else if (action === 'inventory') {
94
+ let more = false;
95
+ while (!closed) {
96
+ const catalog = await send('harnesses', { more });
97
+ if (!catalog)
98
+ throw new Error('Service disconnected while inspecting harnesses.');
99
+ const entries = (more ? catalog.more : catalog.featured) || [];
100
+ const picked = await terminal.choose(more ? 'All harnesses:' : 'Featured harnesses:', [...entries.map(item => ({ value: String(item.name || item.id), label: String(item.displayName || item.name || item.id) })),
101
+ { value: more ? '@featured' : '@more', label: more ? 'Back to featured' : 'More harnesses' }, { value: '@cancel', label: 'Return to dashboard' }]);
102
+ if (picked === '@cancel')
103
+ break;
104
+ if (picked === '@more' || picked === '@featured') {
105
+ more = picked === '@more';
106
+ continue;
107
+ }
108
+ const detail = await send('harnesses', { name: picked });
109
+ await terminal.choose(`Harness details:\n${bounded(detail, 5000)}`, [{ value: '@back', label: 'Back to harnesses' }]);
110
+ }
111
+ }
112
+ else {
113
+ const result = await send(action);
114
+ if (!result)
115
+ throw new Error('Service disconnected before the control outcome was received.');
116
+ terminal.status(`${action}: ${bounded(result)}`);
117
+ }
118
+ }
119
+ catch (error) {
120
+ if (error.name !== 'AbortError' && !closed)
121
+ terminal.status(`Control failed: ${error.message}`);
122
+ }
123
+ finally {
124
+ activeControl = false;
125
+ }
126
+ },
127
+ });
128
+ /** Present observed state and newly exposed evidence without replaying the retained history. */
129
+ const present = (snapshot) => {
130
+ latest = snapshot;
131
+ terminal.setSnapshot({ ...snapshot, connection: 'live' });
132
+ const tasks = (snapshot.tasks || []);
133
+ const requests = (snapshot.requests || []);
134
+ const current = tasks.find(task => task.id === snapshot.currentTask);
135
+ const selection = snapshot.currentSelection || current || {};
136
+ const signature = JSON.stringify([snapshot.status, snapshot.phase, snapshot.paused, snapshot.pausePending, snapshot.waiting, snapshot.currentTask, selection, snapshot.statistics, snapshot.finishAfterTask, tasks.map(task => [task.id, task.status, task.eligibility]), requests.map(request => request.id), snapshot.pendingSettings, snapshot.restartSettings, snapshot.error]);
137
+ if (!interactive && signature !== stateSignature) {
138
+ terminal.status(`Promptbook ${snapshot.engineVersion || 'version unavailable'} · ${workspace.projectPath} · ${snapshot.mode || 'unknown mode'} · live\nState: ${snapshot.status || 'unknown'}${snapshot.pausePending ? ' · pause pending' : snapshot.paused ? ' · paused' : ''}${snapshot.waiting ? ' · pacing/backoff wait' : ''}${snapshot.finishAfterTask ? ' · finish after current task' : ''}\nPhase: ${snapshot.phase || 'not reported'}\nTask: ${current?.title || snapshot.currentTask || 'idle'} · Agent: ${selection.agent || 'none'} · Harness: ${selection.harness || 'none'}${selection.model ? ` · Model: ${selection.model}` : ''}${selection.thinkingLevel ? ` · Effort: ${selection.thinkingLevel}` : ''}\nQueue: ${tasks.length} · Results: ${snapshot.statistics?.completed ?? 0} completed, ${snapshot.statistics?.failed ?? 0} failed\nRequests: ${requests.length}${requests.length ? ` · answer with ptbk answer --path ${JSON.stringify(workspace.projectPath)}` : ''}${snapshot.error ? `\nFailure: ${bounded(snapshot.error)}\nNext: ${snapshot.nextAction || 'Inspect ptbk status and recovery evidence.'}${snapshot.diagnostic ? `\nDiagnostic: ${snapshot.diagnostic}` : ''}` : ''}`);
139
+ }
140
+ stateSignature = signature;
141
+ const events = (snapshot.events || []);
142
+ const retained = events.slice(-160);
143
+ if (!eventKeys.size && events.length > 160)
144
+ terminal.status('Earlier activity was truncated; showing the latest 160 exposed events.');
145
+ for (const event of retained) {
146
+ const key = JSON.stringify(event);
147
+ if (!eventKeys.has(key)) {
148
+ const text = bounded(event.message ?? 'No message was reported.');
149
+ if (event.type === 'output')
150
+ terminal.output(`${text}\n`);
151
+ else
152
+ terminal.status(`[${event.type || 'activity'}] ${text}`);
153
+ }
154
+ }
155
+ eventKeys = new Set(retained.map(event => JSON.stringify(event)));
156
+ };
157
+ input.once('end', leave);
158
+ input.once('close', leave);
159
+ output.once('close', leave);
160
+ options.signal?.addEventListener('abort', leave, { once: true });
161
+ process.once('SIGINT', leave);
162
+ process.once('SIGTERM', leave);
163
+ try {
164
+ present(first);
165
+ while (!closed) {
166
+ if (['stopped', 'interrupted'].includes(String(latest.status))) {
167
+ ending = `Service ${latest.status}; dashboard observation ended. Inspect ptbk status before starting again.`;
168
+ break;
169
+ }
170
+ await wait();
171
+ if (closed)
172
+ break;
173
+ let snapshot;
174
+ try {
175
+ snapshot = await send('inspect');
176
+ }
177
+ catch (error) {
178
+ ending = `Dashboard connection lost: ${error.message}\nNext: inspect ptbk status --path ${JSON.stringify(workspace.projectPath)} and reconnect. No replacement service was started.`;
179
+ break;
180
+ }
181
+ if (closed)
182
+ break;
183
+ if (!snapshot) {
184
+ const record = options.command ? undefined : await readServiceRecord(workspace).catch(() => undefined);
185
+ ending = record?.status === 'stopped' || record?.desired === 'stopped'
186
+ ? 'Service stopped; dashboard observation ended.'
187
+ : `Dashboard connection lost; live activity is no longer available.\nNext: inspect ptbk status --path ${JSON.stringify(workspace.projectPath)} and reconnect. No replacement service was started.`;
188
+ break;
189
+ }
190
+ if (snapshot.id !== identity.id || snapshot.pid !== identity.pid || snapshot.project !== workspace.projectPath) {
191
+ ending = 'Service identity changed; this dashboard has disconnected. Reopen ptbk dashboard to inspect the replacement process. No controls were sent to it.';
192
+ break;
193
+ }
194
+ present(snapshot);
195
+ }
196
+ }
197
+ finally {
198
+ closed = true;
199
+ wake?.();
200
+ terminal.close();
201
+ input.removeListener('end', leave);
202
+ input.removeListener('close', leave);
203
+ output.removeListener('close', leave);
204
+ options.signal?.removeEventListener('abort', leave);
205
+ process.removeListener('SIGINT', leave);
206
+ process.removeListener('SIGTERM', leave);
207
+ terminal.status(ending);
208
+ }
209
+ }
210
+ //# sourceMappingURL=attached-dashboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attached-dashboard.js","sourceRoot":"","sources":["../../src/coder/attached-dashboard.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,8 @@ import type { Workspace, TaskDefinition } from './domain.js';
3
3
  * @private Internal authoring command.
4
4
  */
5
5
  export declare function initializeProject(workspace: Workspace): Promise<string[]>;
6
- /** Creates one reviewed authoring task without calling a model.
7
- * @private Internal add command.
8
- */
9
- export declare function addTask(workspace: Workspace, description: string, options?: {
6
+ /** Task authoring fields are shared by supplied input and the finite creation wizard. @private */
7
+ export interface TaskAuthoringOptions {
10
8
  priority?: number;
11
9
  template?: string;
12
10
  status?: TaskDefinition['status'];
@@ -14,7 +12,18 @@ export declare function addTask(workspace: Workspace, description: string, optio
14
12
  origin?: string;
15
13
  parent?: string;
16
14
  dependencies?: string[];
17
- }): Promise<string>;
15
+ }
16
+ /** A fully validated task preview is immutable input to the later authorized save. @private */
17
+ export interface PreparedAuthoredTask {
18
+ path: string;
19
+ content: string;
20
+ }
21
+ /** Prepare exact task bytes without creating directories, files or runtime storage. @private */
22
+ export declare function prepareAuthoredTask(workspace: Workspace, description: string, options?: TaskAuthoringOptions): Promise<PreparedAuthoredTask>;
23
+ /** Save previously reviewed task bytes under the caller's authoring lease. @private */
24
+ export declare function saveAuthoredTask(workspace: Workspace, task: PreparedAuthoredTask): Promise<string>;
25
+ /** Creates one task from supplied authoring input without calling a model. @private */
26
+ export declare function addTask(workspace: Workspace, description: string, options?: TaskAuthoringOptions): Promise<string>;
18
27
  /** Creates unfinished task templates that cannot run automatically.
19
28
  * @private Internal boilerplate command.
20
29
  */