@undefineds.co/linx 0.3.8 → 0.3.13

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 (42) hide show
  1. package/README.md +17 -0
  2. package/dist/generated/version.js +2 -2
  3. package/dist/generated/version.js.map +1 -1
  4. package/dist/index.js +13 -3
  5. package/dist/index.js.map +1 -1
  6. package/dist/lib/auto-mode/pod-approval.js +216 -2
  7. package/dist/lib/auto-mode/pod-approval.js.map +1 -1
  8. package/dist/lib/linx-status-line.js +335 -0
  9. package/dist/lib/linx-status-line.js.map +1 -0
  10. package/dist/lib/linx-tui-contract.js +3 -3
  11. package/dist/lib/linx-tui-contract.js.map +1 -1
  12. package/dist/lib/models.js +2 -2
  13. package/dist/lib/models.js.map +1 -1
  14. package/dist/lib/pi-adapter/auth.js +68 -0
  15. package/dist/lib/pi-adapter/auth.js.map +1 -0
  16. package/dist/lib/pi-adapter/interactive.js +326 -231
  17. package/dist/lib/pi-adapter/interactive.js.map +1 -1
  18. package/dist/lib/pi-adapter/pod-mirror.js +52 -2
  19. package/dist/lib/pi-adapter/pod-mirror.js.map +1 -1
  20. package/dist/lib/pi-adapter/pod-tools.js +140 -0
  21. package/dist/lib/pi-adapter/pod-tools.js.map +1 -0
  22. package/dist/lib/pi-adapter/runtime.js +14 -4
  23. package/dist/lib/pi-adapter/runtime.js.map +1 -1
  24. package/dist/lib/pi-adapter/stream.js +24 -1
  25. package/dist/lib/pi-adapter/stream.js.map +1 -1
  26. package/dist/lib/status-line-command.js +108 -0
  27. package/dist/lib/status-line-command.js.map +1 -0
  28. package/dist/lib/symphony/pod-projection.js +15 -7
  29. package/dist/lib/symphony/pod-projection.js.map +1 -1
  30. package/dist/lib/symphony-command.js +20 -21
  31. package/dist/lib/symphony-command.js.map +1 -1
  32. package/dist/skills/symphony/SKILL.md +69 -10
  33. package/dist/skills/xpod-cli/SKILL.md +70 -0
  34. package/package.json +9 -3
  35. package/vendor/agent-runtime/dist/client-inbox-subscription.d.ts +56 -0
  36. package/vendor/agent-runtime/dist/client-inbox-subscription.js +93 -0
  37. package/vendor/agent-runtime/dist/index.d.ts +1 -0
  38. package/vendor/agent-runtime/dist/index.js +1 -0
  39. package/vendor/agent-runtime/dist/reconciler.d.ts +60 -1
  40. package/vendor/agent-runtime/dist/reconciler.js +148 -4
  41. package/vendor/agent-runtime/dist/thread-reconciler-controller.d.ts +2 -1
  42. package/vendor/agent-runtime/dist/thread-reconciler-controller.js +4 -0
package/README.md CHANGED
@@ -101,6 +101,23 @@ OpenRouter 请求需要显式提供环境变量后单独运行:
101
101
  LINX_OPENROUTER_SMOKE=1 OPENROUTER_API_KEY=sk-or-xxx node --test test/ai-connect-boundary-smoke.test.mjs
102
102
  ```
103
103
 
104
+ ACP backend 验证也分两层:默认测试用 fake ACP backend 覆盖 Codex / Claude /
105
+ CodeBuddy 的统一事件归一化和归档;真实 backend smoke 需要手动运行,它会检测当前
106
+ 环境,只跑本机有命令和可用配置迹象的 backend:
107
+
108
+ ```bash
109
+ yarn test:cli:live-acp
110
+ # or
111
+ yarn workspace @undefineds.co/linx test:live-acp
112
+ ```
113
+
114
+ 可选覆盖项:
115
+
116
+ ```bash
117
+ LINX_LIVE_CLAUDE_MODEL=haiku yarn workspace @undefineds.co/linx test:live-acp
118
+ LINX_LIVE_ACP_TIMEOUT_MS=300000 yarn workspace @undefineds.co/linx test:live-acp
119
+ ```
120
+
104
121
  ## Backend Control Notes
105
122
 
106
123
  - Design contract: see [`docs/backend-pod-contract.md`](../../docs/backend-pod-contract.md)
@@ -1,3 +1,3 @@
1
- // Generated by apps/cli/scripts/build.mjs. Keep a committed fallback for direct test compiles.
2
- export const LINX_CLI_VERSION = "0.3.8";
1
+ // Auto-generated by LinX release tooling. Keep in sync with apps/cli/package.json.
2
+ export const LINX_CLI_VERSION = "0.3.12";
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/generated/version.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/generated/version.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CAAA"}
package/dist/index.js CHANGED
@@ -8,6 +8,7 @@ import { aiCommand } from './lib/ai-command.js';
8
8
  import { resolveAccountBaseUrl } from './lib/account-api.js';
9
9
  import { loadCredentials } from './lib/credentials-store.js';
10
10
  import { loginCommand, logoutCommand, whoamiCommand } from './lib/login-command.js';
11
+ import { configCommand } from './lib/status-line-command.js';
11
12
  import { DefaultPackageManager, SettingsManager, SessionSelectorComponent, initTheme, runPrintMode } from '@earendil-works/pi-coding-agent';
12
13
  import { ProcessTerminal, TUI } from '@earendil-works/pi-tui';
13
14
  import { promptText } from './lib/prompt.js';
@@ -48,6 +49,14 @@ function resolveRemoteModelProviderLabel(model) {
48
49
  return model.provider || model.ownedBy;
49
50
  }
50
51
  let chatRuntimePromise = null;
52
+ const RESERVED_NON_TOP_LEVEL_COMMANDS = new Set([
53
+ 'automode',
54
+ 'footer',
55
+ 'resume',
56
+ 'status-line',
57
+ 'statusline',
58
+ 'watch',
59
+ ]);
51
60
  async function loadChatRuntime() {
52
61
  if (!chatRuntimePromise) {
53
62
  chatRuntimePromise = Promise.all([
@@ -296,8 +305,8 @@ function printConfiguredLinxPackages(packageManager) {
296
305
  }
297
306
  async function runPiCommand(argv) {
298
307
  const firstPromptToken = Array.isArray(argv.prompt) ? argv.prompt[0] : undefined;
299
- // Reject old command aliases explicitly; auto-mode is only selected through flags.
300
- if (firstPromptToken === 'automode' || firstPromptToken === 'watch' || firstPromptToken === 'resume') {
308
+ // Reject command-shaped aliases that should not fall through to the default TUI prompt.
309
+ if (firstPromptToken && RESERVED_NON_TOP_LEVEL_COMMANDS.has(firstPromptToken)) {
301
310
  throw new Error(`Unknown command: ${firstPromptToken}`);
302
311
  }
303
312
  if (argv.resume) {
@@ -686,6 +695,7 @@ const cli = yargs(hideBin(process.argv))
686
695
  .command(logoutCommand)
687
696
  .command(whoamiCommand)
688
697
  .command(aiCommand)
698
+ .command(configCommand)
689
699
  .command(retiredSymphonyCommand)
690
700
  .command('install [source]', 'Install a LinX package or extension', (command) => command
691
701
  .positional('source', { type: 'string', describe: 'Package source to install' })
@@ -764,7 +774,7 @@ const cli = yargs(hideBin(process.argv))
764
774
  })
765
775
  .command(hiddenPiAliasCommand)
766
776
  .command(hiddenPiFrontendAliasCommand)
767
- .command('codex-native-proxy', 'Start a local app-server websocket proxy for native Codex TUI', (command) => command
777
+ .command('codex-native-proxy', false, (command) => command
768
778
  .option('cwd', {
769
779
  type: 'string',
770
780
  describe: 'Workspace path exposed to the native Codex shell',
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,8BAA8B,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,KAAwC,MAAM,OAAO,CAAA;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACnF,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,wBAAwB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAC3I,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,GAEnB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,iCAAiC,EACjC,qCAAqC,GAGtC,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,wBAAwB,EAAuB,MAAM,2BAA2B,CAAA;AAC3I,OAAO,EAAE,2BAA2B,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAA;AACnG,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAA;AAE3G,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAA;AAC9E,OAAO,EAAE,+BAA+B,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAC9G,OAAO,EAAE,OAAO,EAAE,cAAc,EAAsB,MAAM,iBAAiB,CAAA;AAE7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAsEtE,SAAS,kBAAkB;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAA;QAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAA;QACnD,OAAO,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;IAC/F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAkF;IACnH,MAAM,QAAQ,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACvD,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,KAAK,CAAC,CAAA;AAChB,CAAC;AAED,SAAS,+BAA+B,CAAC,KAA0D;IACjG,IAAI,6BAA6B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAkD,CAAC,EAAE,CAAC;QACrG,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,OAAO,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAA;AACxC,CAAC;AAED,IAAI,kBAAkB,GAAgC,IAAI,CAAA;AAE1D,KAAK,UAAU,eAAe;IAC5B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC;YAC/B,MAAM,CAAC,mBAAmB,CAAC;YAC3B,MAAM,CAAC,yBAAyB,CAAC;YACjC,MAAM,CAAC,qBAAqB,CAAC;SAC9B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/C,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;YACtD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;YACjD,iBAAiB,EAAE,YAAY,CAAC,iBAAiB;YACjD,sBAAsB,EAAE,YAAY,CAAC,sBAAsB;YAC3D,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,oBAAoB,EAAE,YAAY,CAAC,oBAAoB;YACvD,eAAe,EAAE,YAAY,CAAC,eAAe;YAC7C,gBAAgB,EAAE,YAAY,CAAC,gBAAgB;YAC/C,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;SACjD,CAAC,CAAC,CAAA;IACL,CAAC;IAED,OAAO,kBAAmB,CAAA;AAC5B,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,WAAoB;IAChD,MAAM,OAAO,GAAG,MAAM,eAAe,EAAE,CAAA;IACvC,MAAM,UAAU,GAAG,MAAM,wBAAwB,EAAE,CAAA;IACnD,MAAM,MAAM,GAAG,oBAAoB,CAAC;QAClC,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG;QACrC,kBAAkB,EAAE,WAAW;KAChC,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAA;IAEvC,MAAM,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAClC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AACpH,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,WAAoB;IAC3D,MAAM,OAAO,GAAG,MAAM,eAAe,EAAE,CAAA;IACvC,MAAM,UAAU,GAAG,MAAM,wBAAwB,EAAE,CAAA;IACnD,MAAM,MAAM,GAAG,oBAAoB,CAAC;QAClC,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG;QACrC,kBAAkB,EAAE,WAAW;KAChC,CAAC,CAAA;IAEF,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,UAAU,CAAC,YAAY;QAClC,OAAO,EAAE,UAAU,CAAC,YAAY;QAChC,UAAU;QACV,OAAO;KACR,CAAA;AACH,CAAC;AAED,KAAK,UAAU,wBAAwB;IACrC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAClE,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,oBAAoB,EAAE,CAAA;IAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IACxE,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,KAAK,UAAU,gCAAgC;IAC7C,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACvB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,wBAAwB,EAAE,CAAA;AACnC,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,OAK5B;IACC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAChD,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IAEpD,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,sBAAsB,CAAC;QACrD,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,KAAK;QACL,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;KACxF,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAA;IACzE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,SAAS,MAAM,CAAC,CAAA;IAC1C,MAAM,2BAA2B,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;AACrE,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,GAAmB,EAAE,QAAgB;IAClE,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC9D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yEAAyE,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACnI,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,GAAmB,EACnB,QAAgB,EAChB,MAAc,EACd,SAAiB;IAEjB,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC5E,MAAM,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;IACtF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzG,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,OAM9B;IACC,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;IAE9E,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,UAAU;YACvB,CAAC,CAAC,MAAM,oBAAoB,CAAC,GAAG,CAAC;YACjC,CAAC,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;QAChE,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAA;IACrG,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAA;IAC3G,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,gBAAgB,GAAG,SAAS,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAA;QAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qEAAqE,gBAAgB,KAAK,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACpJ,OAAO,gBAAgB,CAAA;IACzB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,GAAmB;IACrD,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mDAAmD,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC7G,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,OAK7B;IACC,MAAM,EAAE,GAAG,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,OAAO,CAAA;IACrE,IAAI,QAAQ,GAAG,eAAe,CAAA;IAC9B,IAAI,KAAK,GAAG,YAAY,CAAA;IAExB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,QAAQ,YAAY,KAAK,IAAI,2BAA2B,0BAA0B,CAAC,CAAA;IAEnI,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,aAAa,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAA;IACtE,CAAC;IAED,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAChD,IAAI,CAAC,KAAK;YAAE,SAAQ;QAEpB,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YAC3C,MAAK;QACP,CAAC;QAED,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,qHAAqH,CACtH,CAAA;YACD,SAAQ;QACV,CAAC;QAED,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;YACtE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;gBACtC,SAAQ;YACV,CAAC;YAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC/G,SAAQ;QACV,CAAC;QAED,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAA;YAChG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,QAAQ,MAAM,CAAC,CAAA;YACnD,SAAQ;QACV,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC1C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;YACtE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,YAAY,MAAM,CAAC,CAAA;gBACvD,SAAQ;YACV,CAAC;YACD,QAAQ,GAAG,YAAY,CAAA;YACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,QAAQ,MAAM,CAAC,CAAA;YACpD,SAAQ;QACV,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAChC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAA;YAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,2BAA2B,MAAM,CAAC,CAAA;YACzE,SAAQ;QACV,CAAC;QAED,MAAM,aAAa,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IAC9D,CAAC;AACH,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,OAA2B,EAAE,UAG9D,EAAE;IACJ,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,wBAAwB,OAAO,gBAAgB,CAAC,CAAA;IACpF,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;IACzB,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;IACnE,MAAM,cAAc,GAAG,IAAI,qBAAqB,CAAC;QAC/C,GAAG;QACH,QAAQ,EAAE,cAAc;QACxB,eAAe;KAChB,CAAC,CAAA;IACF,cAAc,CAAC,mBAAmB,CAAC,CAAC,KAA0C,EAAE,EAAE;QAChF,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS;YACZ,MAAM,cAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC1F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;YACrD,OAAM;QACR,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACzG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;YACpE,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;YACnD,OAAM;QACR,CAAC;QACD,KAAK,QAAQ;YACX,MAAM,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAA;YAC3F,OAAM;QACR,KAAK,MAAM;YACT,2BAA2B,CAAC,cAAc,CAAC,CAAA;YAC3C,OAAM;IACV,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,cAEpC;IACC,MAAM,kBAAkB,GAAG,cAAc,CAAC,sBAAsB,EAAE,CAAA;IAClE,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAChD,OAAM;IACR,CAAC;IAED,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,QAAmC,EAAQ,EAAE;QAC9E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAM;QACR,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,CAAA;QACnC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAA;YACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,OAAO,IAAI,CAAC,CAAA;YACtC,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;gBACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,aAAa,IAAI,CAAC,CAAA;YACpD,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IAED,UAAU,CAAC,eAAe,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAA;IACrF,UAAU,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAA;AAC7F,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAaL;IACrB,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAChF,mFAAmF;IACnF,IAAI,gBAAgB,KAAK,UAAU,IAAI,gBAAgB,KAAK,OAAO,IAAI,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QACrG,MAAM,IAAI,KAAK,CAAC,oBAAoB,gBAAgB,EAAE,CAAC,CAAA;IACzD,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QACrE,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;YAC7C,OAAM;QACR,CAAC;QACD,MAAM,YAAY,CAAC;YACjB,GAAG,IAAI;YACP,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,eAAe;SACzB,CAAC,CAAA;QACF,OAAM;IACR,CAAC;IAED,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC9B,OAAM;IACR,CAAC;IAED,IAAI,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC3B,MAAM,sBAAsB,EAAE,CAAA;QAC9B,OAAM;IACR,CAAC;IAED,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1B,MAAM,qBAAqB,CAAC;YAC1B,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;YAC9B,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC;SACjC,CAAC,CAAA;QACF,OAAM;IACR,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,kBAAkB,CAAC;YACvB,GAAG,IAAI;YACP,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;SACzC,CAAC,CAAA;QACF,OAAM;IACR,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IACrC,MAAM,kBAAkB,GAAG,MAAM,qCAAqC,CAAC;QACrE,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,SAAS,EAAE,qBAAqB,EAAE;QAClC,cAAc,EAAE,gCAAgC;KACjD,CAAC,CAAA;IAEF,MAAM,cAAc,GAAG,MAAM,0BAA0B,CAAC;QACtD,GAAG;QACH,QAAQ,EAAE,cAAc;QACxB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC;KAC1C,CAAC,CAAA;IACF,MAAM,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,CAAA;IACpF,MAAM,YAAY,GAAG,MAAM,4BAA4B,CAAC;QACtD,aAAa,EAAE,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QACrE,cAAc,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,kBAAkB,CAAC,YAAY;QAC/D,wBAAwB;QACxB,cAAc;KACf,CAAC,CAAA;IACF,MAAM,WAAW,GAAG,YAAY,CAAC,WAAW,CAAA;IAC5C,MAAM,eAAe,GAAG,YAAY,CAAC,eAAe,CAAA;IAEpD,MAAM,OAAO,GAAG,wBAAwB,CAAC;QACvC,KAAK,CAAC,sBAAsB,CAAC,OAAO;YAClC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAA;YACjD,OAAO,OAAO,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAA;QACtD,CAAC;QACD,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO;YACnD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAA;YACjD,OAAO,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACzG,CAAC;KACF,EAAE;QACD,GAAG;QACH,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,OAAO;QAChB,WAAW;QACX,eAAe;QACf,iBAAiB,EAAE,wBAAwB;QAC3C,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,cAAc,EAAE;YACd,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,8BAA8B,CAAC;YACtE,SAAS,EAAE,qBAAqB,EAAE;SACnC;KACF,CAAC,CAAA;IAEF,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;IAErB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC;QAC1C,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,QAAQ,EAAE,cAAc;QACxB,cAAc;KACf,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,CAAE,IAAI,CAAC,MAA+B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;IAC7E,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE;gBAC3C,IAAI,EAAE,MAAM;gBACZ,cAAc,EAAE,MAAM,IAAI,SAAS;aACpC,CAAC,CAAA;YACF,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;gBACnB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAC7B,CAAC;YACD,OAAM;QACR,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC;YACpC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,cAAc;YACd,WAAW;YACX,eAAe;YACf,eAAe,EAAE,6BAA6B,CAAC;gBAC7C,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,CAAC,YAAY,EAAE,CAAC;aAClF,CAAC;YACF,OAAO,CAAC,KAAK;gBACX,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;oBACnC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;oBACrF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,OAAO,IAAI,CAAC,CAAA;gBACxD,CAAC;YACH,CAAC;SACF,CAAC,CACD;QAAC,OAA4D,CAAC,eAAe,GAAG,SAAS,CAAA;QAC1F,MAAM,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAc,EAAE,EAAE;YACxE,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAC9B,CAAC,CAAC,CAAA;QACF,MAAM,WAAW,GAAG,4BAA4B,CAAC,OAAO,EAAE;YACxD,cAAc,EAAE,MAAM,IAAI,SAAS;YACnC,YAAY,EAAE,WAAW,IAAI,wBAAwB;YACrD,mBAAmB,CAAC,OAAO;gBACzB,KAAK,SAAS,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;YAC9C,CAAC;YACD,uBAAuB,CAAC,OAAO;gBAC7B,KAAK,SAAS,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAA;YAClD,CAAC;SACF,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,OAAiF,CAAA;QAChG,MAAM,iBAAiB,GAA2B,iCAAiC,CAAC;YAClF,eAAe,EAAE,kBAAkB;YACnC,oBAAoB,EAAE,MAAM,CAAC,cAAc,EAAE,wBAAwB;SACtE,CAAC,CAAA;QACF,IAAI,iBAAiB,EAAE,CAAC;YACtB,WAAW,CAAC,YAAY,EAAE,CAAC,iBAAiB,CAAC,CAAA;QAC/C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,WAAW,CAAC,GAAG,EAAE,CAAA;QACzB,CAAC;gBAAS,CAAC;YACT,oBAAoB,EAAE,CAAA;YACtB,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAC9C,WAAW,CAAC,IAAI,EAAE,CAAA;QACpB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;QACrB,0BAA0B,EAAE,CAAA;IAC9B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,4BAA4B,CAAC,OAK3C;IACC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAC5B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,aAAa,KAAK,IAAI;YAC3C,eAAe,EAAE,KAAK;SACvB,CAAA;IACH,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,wBAAwB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;IAClE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,aAAa,KAAK,IAAI;YAC3C,eAAe,EAAE,KAAK;SACvB,CAAA;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE;YACvC,MAAM,EAAE,KAAK;YACb,uBAAuB,EAAE,IAAI;YAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,mBAAmB,EAAE,KAAc;YACnC,MAAM,EAAE,cAAc;SACvB,CAA6B,CAAA;QAC9B,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAAC;YAChD,EAAE;YACF,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE;YAChD,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC,cAAc,CAAC;YACxD,OAAO,CAAC,KAAK;gBACX,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;oBACnC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;oBACrF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,OAAO,IAAI,CAAC,CAAA;gBAC3D,CAAC;YACH,CAAC;SACF,CAAC,CAAA;QACF,OAAO;YACL,GAAG,+BAA+B,CAAC;gBACjC,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,SAAS;gBACT,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;aAC3D,CAAC;SACH,CAAA;IACH,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAC9C,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,cAAwF;IACrH,MAAM,SAAS,GAAG,cAAc,CAAC,UAAU,EAAE;SAC1C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SACvC,IAAI,CAAC,CAAC,IAAI,EAAgB,EAAE,CAAC,IAAI,YAAY,IAAI,CAAC,CAAA;IACrD,OAAO,SAAS,IAAI,4BAA4B,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,IAAI,IAAI,IAAI,EAAE,CAAA;AAC/F,CAAC;AAED,SAAS,4BAA4B,CAAC,EAAU;IAC9C,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAChD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAA;IAC7B,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AACnD,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QAC5D,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5B,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IACnD,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,UAAU,CAAC,GAAY;IAC9B,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;AACpE,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,GAAW;IAC1C,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;IACnE,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAA;IAErC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,IAAI,eAAe,EAAE,CAAC,CAAA;QACzC,IAAI,QAAQ,GAAG,KAAK,CAAA;QACpB,MAAM,MAAM,GAAG,CAAC,WAA0B,EAAQ,EAAE;YAClD,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAM;YACR,CAAC;YACD,QAAQ,GAAG,IAAI,CAAA;YACf,EAAE,CAAC,IAAI,EAAE,CAAA;YACT,OAAO,CAAC,WAAW,CAAC,CAAA;QACtB,CAAC,CAAA;QACD,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAA;QAC9F,MAAM,QAAQ,GAAG,IAAI,wBAAwB,CAC3C,YAAY,EACZ,YAAY,EACZ,CAAC,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EACpC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAClB,GAAG,EAAE;YACH,EAAE,CAAC,IAAI,EAAE,CAAA;YACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC,EACD,GAAG,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,EACxB,EAAE,cAAc,EAAE,KAAK,EAAE,CAC1B,CAAA;QACD,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACrB,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAA;QACtC,EAAE,CAAC,KAAK,EAAE,CAAA;IACZ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,sBAAsB;IACnC,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,cAAc,CAAC,CAAA;IACjE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;QAC5D,OAAM;IACR,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAA;QAChG,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAA;QAClG,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,IAAI,SAAS,CAAA;QACnE,OAAO,GAAG,OAAO,CAAC,SAAS,aAAa,MAAM,YAAY,OAAO,WAAW,MAAM,EAAE,CAAA;IACtF,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACpB,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,OAGpC;IACC,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAC/C,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,QAAQ,EAAE,cAAc;QACxB,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAA;IACF,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,OAAO,CAAC,SAAS,IAAI,CAAC,CAAA;QACrE,OAAM;IACR,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAA;IAC7E,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,MAAM,KAAK,MAAM;QACf,CAAC,CAAC,sDAAsD,OAAO,CAAC,SAAS,IAAI;QAC7E,CAAC,CAAC,0BAA0B,OAAO,CAAC,SAAS,KAAK,MAAM,KAAK,CAChE,CAAA;AACH,CAAC;AAmBD,SAAS,cAAc,CAAC,OAAqB;IAC3C,MAAM,UAAU,GAAG,oBAAoB,CAAC,OAAO,CAAC;SAC7C,MAAM,CAAC,KAAK,EAAE;QACb,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,qCAAqC;KAChD,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,0FAA0F;KACrG,CAAC;SACD,MAAM,CAAC,aAAa,EAAE;QACrB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,8BAA8B;QACvC,QAAQ,EAAE,4BAA4B;KACvC,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,uDAAuD;KAClE,CAAC;SACD,MAAM,CAAC,SAAS,EAAE;QACjB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,iDAAiD;KAC5D,CAAC;SACD,MAAM,CAAC,UAAU,EAAE;QAClB,KAAK,EAAE,GAAG;QACV,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,gCAAgC;KAC3C,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE;QAChB,KAAK,EAAE,GAAG;QACV,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,iCAAiC;KAC5C,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,IAAI;KACb,CAAC;SACD,MAAM,CAAC,gBAAgB,EAAE;QACxB,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,IAAI;KACb,CAAC;SACD,MAAM,CAAC,eAAe,EAAE;QACvB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,IAAI;KACb,CAAC;SACD,UAAU,CAAC,QAAQ,EAAE;QACpB,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,4CAA4C;KACvD,CAAC,CAAA;IACJ,OAAO,UAA0C,CAAA;AACnD,CAAC;AAED,MAAM,gBAAgB,GAAkD;IACtE,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,4CAA4C;IACtD,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,YAAY;CACtB,CAAA;AAED,MAAM,oBAAoB,GAAkD;IAC1E,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,YAAY;CACtB,CAAA;AAED,MAAM,4BAA4B,GAAkD;IAClF,OAAO,EAAE,wBAAwB;IACjC,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,YAAY;CACtB,CAAA;AAED,MAAM,WAAW,GAAkD;IACjE,OAAO,EAAE,iBAAiB;IAC1B,OAAO,EAAE,CAAC,GAAG,CAAC;IACd,QAAQ,EAAE,4BAA4B;IACtC,OAAO,EAAE,cAAc;IACvB,KAAK,CAAC,OAAO,CAAC,IAAI;QAChB,MAAM,YAAY,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9C,CAAC;CACF,CAAA;AAED,MAAM,sBAAsB,GAA+C;IACzE,OAAO,EAAE,mBAAmB;IAC5B,QAAQ,EAAE,KAAK;IACf,OAAO,CAAC,OAAO;QACb,OAAO,OAAO;aACX,IAAI,CAAC,KAAK,CAAC;aACX,OAAO,CAAC,KAAK,CAAC;aACd,UAAU,CAAC,MAAM,EAAE;YAClB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,gCAAgC;SAC3C,CAAC,CAAA;IACN,CAAC;IACD,OAAO;QACL,MAAM,IAAI,KAAK,CAAC,mIAAmI,CAAC,CAAA;IACtJ,CAAC;CACF,CAAA;AAED,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KACrC,UAAU,CAAC,MAAM,CAAC;KAClB,OAAO,CAAC,kBAAkB,EAAE,CAAC;KAC7B,mBAAmB,CAAC;IACnB,YAAY,EAAE,IAAI;CACnB,CAAC;KACD,OAAO,CAAC,YAAY,CAAC;KACrB,OAAO,CAAC,aAAa,CAAC;KACtB,OAAO,CAAC,aAAa,CAAC;KACtB,OAAO,CAAC,SAAS,CAAC;KAClB,OAAO,CAAC,sBAAsB,CAAC;KAC/B,OAAO,CACN,kBAAkB,EAClB,qCAAqC,EACrC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO;KACjB,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,2BAA2B,EAAE,CAAC;KAC/E,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,6CAA6C,EAAE,CAAC,EAC5H,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,qBAAqB,CAAC,SAAS,EAAE;QACrC,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QACjE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;KAC3B,CAAC,CAAA;AACJ,CAAC,CACF;KACA,OAAO,CACN,iBAAiB,EACjB,oCAAoC,EACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO;KACjB,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,0BAA0B,EAAE,CAAC;KAC9E,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,kDAAkD,EAAE,CAAC,EACjI,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,qBAAqB,CAAC,QAAQ,EAAE;QACpC,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QACjE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;KAC3B,CAAC,CAAA;AACJ,CAAC,CACF;KACA,OAAO,CACN,iBAAiB,EACjB,gCAAgC,EAChC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,0BAA0B,EAAE,CAAC,EACnG,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,qBAAqB,CAAC,QAAQ,EAAE;QACpC,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;KAClE,CAAC,CAAA;AACJ,CAAC,CACF;KACA,OAAO,CACN,MAAM,EACN,8BAA8B,EAC9B,GAAG,EAAE,CAAC,SAAS,EACf,KAAK,IAAI,EAAE;IACT,MAAM,qBAAqB,CAAC,MAAM,CAAC,CAAA;AACrC,CAAC,CACF;KACA,OAAO,CAAC,WAAW,CAAC;KACpB,OAAO,CAAC,gBAAgB,CAAC;KACzB,OAAO,CACN,iBAAiB,EACjB,KAAK,EACL,CAAC,OAAO,EAAE,EAAE,CACV,OAAO;KACJ,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC;KAClE,MAAM,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,wBAAwB,EAAE,CAAC;KAC3F,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,2BAA2B,EAAE,CAAC;KAC3E,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,+BAA+B,EAAE,CAAC;KAC5E,MAAM,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,kCAAkC,EAAE,CAAC,EAC1F,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC;QACrC,GAAG;QACH,YAAY,EAAE,IAAI,CAAC,QAAQ;QAC3B,gBAAgB,EAAE,IAAI,CAAC,MAAM;QAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,UAAU,EAAE,OAAO,CAAE,IAAI,CAAC,MAA+B,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;KAC7E,CAAC,CAAA;IAEF,MAAM,MAAM,GAAI,IAAI,CAAC,MAA+B,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAA;IACnF,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,aAAa,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACjE,MAAM,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QAC5B,OAAM;IACR,CAAC;IAED,MAAM,cAAc,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;IAClF,MAAM,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;AAC9B,CAAC,CACF;KACA,OAAO,CACN,QAAQ,EACR,8BAA8B,EAC9B,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,+BAA+B,EAAE,CAAC,EACjG,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,GAAG,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACrD,IAAI,MAAM,CAAA;IACV,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;IACjG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,MAAM,IAAI,KAAK,CAAC,oCAAoC,GAAG,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC,CAAA;IACnF,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAA;IACvE,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAA;YAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;IAED,MAAM,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;AAC9B,CAAC,CACF;KACA,OAAO,CACN,eAAe,EACf,qCAAqC,EACrC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO;KACjB,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC;KACvE,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,6BAA6B,EAAE,CAAC,EAC/F,GAAG,EAAE;IACH,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;AAC9E,CAAC,CACF;KACA,OAAO,CAAC,oBAAoB,CAAC;KAC7B,OAAO,CAAC,4BAA4B,CAAC;KACrC,OAAO,CACN,oBAAoB,EACpB,+DAA+D,EAC/D,CAAC,OAAO,EAAE,EAAE,CACV,OAAO;KACJ,MAAM,CAAC,KAAK,EAAE;IACb,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,kDAAkD;CAC7D,CAAC;KACD,MAAM,CAAC,OAAO,EAAE;IACf,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,+DAA+D;CAC1E,CAAC;KACD,MAAM,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,gDAAgD;CAC3D,CAAC,EACN,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,KAAK,GAAG,sBAAsB,CAAC;QACnC,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;QAC9B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,UAAU,EAAE,IAAI,CAAC,IAAI;KACtB,CAAC,CAAA;IAEF,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;IACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,KAAK,CAAC,SAAS,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAA;IAEvG,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAA;IAED,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,KAAK,QAAQ,EAAE,CAAA;IACjB,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,KAAK,QAAQ,EAAE,CAAA;IACjB,CAAC,CAAC,CAAA;IAEF,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AAC7B,CAAC,CACF;KACA,MAAM,EAAE;KACR,IAAI,EAAE;KACN,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;IACtC,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAA;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAA;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,aAAa,CAAC,QAAQ,EAAE,CAAA;IACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA;AAEJ,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,KAAc,EAAE,EAAE;IAClD,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA;AAEF,GAAG,CAAC,KAAK,EAAE,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { setTimeout as delay } from 'node:timers/promises';
2
- import { resolvePodBaseUrl } from '@undefineds.co/drizzle-solid';
2
+ import { parsePodResourceRef, resolvePodBaseUrl } from '@undefineds.co/drizzle-solid';
3
3
  import { getDefaultPodDataSession } from '../pod-data-session.js';
4
- import { agentResource, approvalResource, auditResource, chatResource, drizzle, grantResource, inboxNotificationResource, solidResources, threadRepository, } from '../models.js';
4
+ import { agentResource, approvalResource, auditResource, chatResource, claimApprovalRequest, claimInputRequest, drizzle, grantResource, inboxNotificationResource, inputRequestResource, solidResources, threadRepository, } from '../models.js';
5
5
  import { AS, ODRL, UDFS } from '@undefineds.co/models/namespaces';
6
6
  import { ApprovalVocab, AuditVocab, GrantReadVocab, GrantVocab, InboxNotificationVocab } from '@undefineds.co/models/vocab/sidecar';
7
7
  import { autoModeApprovalActionUri, autoModeApprovalDecisionForStoredApproval, autoModeApprovalRequestMessage, autoModeApprovalRisk, autoModeApprovalToolName, buildAutoModeApprovalDecisionReason, encodeAutoModeApprovalOptions, parseAutoModeApprovalDecisionReason, parseAutoModeApprovalOptions, shouldMaterializeAutoModeGrant, } from '../../../vendor/agent-runtime/dist/auto-mode.js';
@@ -443,6 +443,15 @@ function createSharedModelRemoteApprovalStore(webId, getDb) {
443
443
  throw new Error(`Remote approval not found: ${id}`);
444
444
  }
445
445
  },
446
+ claimApproval: async (input) => {
447
+ const db = await getDb();
448
+ return claimApprovalRequest(db, {
449
+ approval: input.approvalUri,
450
+ leaseOwner: input.leaseOwner,
451
+ leaseDurationMs: input.leaseDurationMs,
452
+ now: input.now,
453
+ });
454
+ },
446
455
  listAudits: () => modelList(getDb, auditResource),
447
456
  insertAudit: async (row) => {
448
457
  await modelInsert(getDb, auditResource, omitInternalFields(row));
@@ -456,6 +465,104 @@ function createSharedModelRemoteApprovalStore(webId, getDb) {
456
465
  },
457
466
  };
458
467
  }
468
+ export function createInboxNotificationControlResourceClaimHandler(input) {
469
+ return async (request) => claimInboxNotificationControlResource({
470
+ controlResourceUri: request.controlResource,
471
+ leaseOwner: request.clientId,
472
+ leaseDurationMs: request.requestedLeaseMs ?? input.leaseDurationMs,
473
+ now: input.now?.(),
474
+ getDb: input.getDb,
475
+ });
476
+ }
477
+ export async function claimInboxNotificationControlResource(input) {
478
+ const controlResource = normalizeString(input.controlResourceUri);
479
+ if (!controlResource) {
480
+ return {
481
+ status: 'none',
482
+ controlResource: input.controlResourceUri,
483
+ kind: 'unknown',
484
+ reason: 'Inbox notification did not include an as:object control resource IRI.',
485
+ };
486
+ }
487
+ if (!/^https?:\/\//u.test(controlResource)) {
488
+ return {
489
+ status: 'display_only',
490
+ controlResource,
491
+ kind: 'unknown',
492
+ reason: 'Control resource claim requires a full IRI from the Inbox notification as:object.',
493
+ };
494
+ }
495
+ const kind = classifyInboxNotificationControlResource(controlResource);
496
+ if (kind === 'inbox_notification') {
497
+ return {
498
+ status: 'display_only',
499
+ controlResource,
500
+ kind,
501
+ reason: 'InboxNotification is an ActivityStreams envelope; claim the linked as:object control resource instead.',
502
+ };
503
+ }
504
+ if (kind === 'unknown') {
505
+ return {
506
+ status: 'display_only',
507
+ controlResource,
508
+ kind,
509
+ reason: 'Inbox notification object is not a known claimable control resource.',
510
+ };
511
+ }
512
+ const db = await input.getDb();
513
+ if (kind === 'approval') {
514
+ return mapApprovalControlClaimResult(controlResource, await claimApprovalRequest(db, {
515
+ approval: controlResource,
516
+ leaseOwner: input.leaseOwner,
517
+ leaseDurationMs: input.leaseDurationMs,
518
+ now: input.now,
519
+ }));
520
+ }
521
+ return mapInputRequestControlClaimResult(controlResource, await claimInputRequest(db, {
522
+ inputRequest: controlResource,
523
+ leaseOwner: input.leaseOwner,
524
+ leaseDurationMs: input.leaseDurationMs,
525
+ now: input.now,
526
+ }));
527
+ }
528
+ function classifyInboxNotificationControlResource(controlResource) {
529
+ if (parsePodResourceRef(inboxNotificationResource, controlResource)) {
530
+ return 'inbox_notification';
531
+ }
532
+ if (parsePodResourceRef(approvalResource, controlResource)) {
533
+ return 'approval';
534
+ }
535
+ if (parsePodResourceRef(inputRequestResource, controlResource)) {
536
+ return 'input_request';
537
+ }
538
+ return 'unknown';
539
+ }
540
+ function mapApprovalControlClaimResult(controlResource, result) {
541
+ return {
542
+ status: mapModelsControlClaimStatus(result.status),
543
+ controlResource,
544
+ kind: 'approval',
545
+ leaseOwner: result.leaseOwner,
546
+ leaseExpiresAt: result.leaseExpiresAt,
547
+ ...(result.reason ? { reason: result.reason } : {}),
548
+ };
549
+ }
550
+ function mapInputRequestControlClaimResult(controlResource, result) {
551
+ return {
552
+ status: mapModelsControlClaimStatus(result.status),
553
+ controlResource,
554
+ kind: 'input_request',
555
+ leaseOwner: result.leaseOwner,
556
+ leaseExpiresAt: result.leaseExpiresAt,
557
+ ...(result.reason ? { reason: result.reason } : {}),
558
+ };
559
+ }
560
+ function mapModelsControlClaimStatus(status) {
561
+ if (status === 'claimed' || status === 'lost') {
562
+ return status;
563
+ }
564
+ return 'display_only';
565
+ }
459
566
  async function modelList(getDb, resource) {
460
567
  const db = await getDb();
461
568
  return await db.select().from(resource).execute();
@@ -535,6 +642,7 @@ function createNativeRemoteApprovalStore(webId, fetcher) {
535
642
  }
536
643
  await writeApprovalRow(webId, fetcher, { ...existing, ...patch });
537
644
  },
645
+ claimApproval: async (input) => claimNativeApproval(webId, fetcher, input),
538
646
  listAudits: () => listAuditRows(webId, fetcher),
539
647
  insertAudit: (row) => writeAuditRow(webId, fetcher, row),
540
648
  listGrants: () => listGrantRows(webId, fetcher),
@@ -542,6 +650,105 @@ function createNativeRemoteApprovalStore(webId, fetcher) {
542
650
  insertInboxNotification: (row) => writeInboxNotificationRow(webId, fetcher, row),
543
651
  };
544
652
  }
653
+ async function claimNativeApproval(webId, fetcher, input) {
654
+ const now = normalizeClaimDate(input.now);
655
+ const leaseDurationMs = input.leaseDurationMs ?? 60_000;
656
+ if (!Number.isFinite(leaseDurationMs) || leaseDurationMs <= 0) {
657
+ throw new Error('Approval claim leaseDurationMs must be a positive finite number.');
658
+ }
659
+ const leaseExpiresAt = new Date(now.getTime() + leaseDurationMs);
660
+ const missingResult = {
661
+ status: 'not_found',
662
+ approval: null,
663
+ leaseOwner: input.leaseOwner,
664
+ leaseExpiresAt: leaseExpiresAt.toISOString(),
665
+ reason: 'Approval request was not found.',
666
+ };
667
+ const existing = await readApprovalRowFromResource(fetcher, input.approvalUri);
668
+ if (!existing) {
669
+ return missingResult;
670
+ }
671
+ if (!isClaimableControlStatus(existing.status)) {
672
+ return {
673
+ status: 'not_actionable',
674
+ approval: existing,
675
+ leaseOwner: input.leaseOwner,
676
+ leaseExpiresAt: leaseExpiresAt.toISOString(),
677
+ reason: `Approval request status is ${String(existing.status || 'empty')}.`,
678
+ };
679
+ }
680
+ if (isPastDate(existing.expiresAt, now)) {
681
+ return {
682
+ status: 'not_actionable',
683
+ approval: existing,
684
+ leaseOwner: input.leaseOwner,
685
+ leaseExpiresAt: leaseExpiresAt.toISOString(),
686
+ reason: 'Approval request is past expiresAt.',
687
+ };
688
+ }
689
+ if (hasActiveForeignLease(existing, input.leaseOwner, now)) {
690
+ return {
691
+ status: 'lost',
692
+ approval: existing,
693
+ leaseOwner: input.leaseOwner,
694
+ leaseExpiresAt: leaseExpiresAt.toISOString(),
695
+ reason: 'Approval request is leased by another client.',
696
+ };
697
+ }
698
+ await writeApprovalRow(webId, fetcher, {
699
+ ...existing,
700
+ status: 'handling',
701
+ leaseOwner: input.leaseOwner,
702
+ leaseExpiresAt,
703
+ });
704
+ const claimed = await readApprovalRowFromResource(fetcher, input.approvalUri);
705
+ if (claimed?.leaseOwner === input.leaseOwner && !isPastDate(claimed.leaseExpiresAt, now)) {
706
+ return {
707
+ status: 'claimed',
708
+ approval: claimed,
709
+ leaseOwner: input.leaseOwner,
710
+ leaseExpiresAt: leaseExpiresAt.toISOString(),
711
+ };
712
+ }
713
+ return {
714
+ status: 'lost',
715
+ approval: (claimed ?? existing),
716
+ leaseOwner: input.leaseOwner,
717
+ leaseExpiresAt: leaseExpiresAt.toISOString(),
718
+ reason: 'Approval request lease was not retained after update.',
719
+ };
720
+ }
721
+ function normalizeClaimDate(value) {
722
+ const date = value instanceof Date ? value : new Date(value ?? Date.now());
723
+ if (Number.isNaN(date.getTime())) {
724
+ throw new Error('Invalid approval claim timestamp.');
725
+ }
726
+ return date;
727
+ }
728
+ function isClaimableControlStatus(status) {
729
+ if (typeof status !== 'string' || !status.trim()) {
730
+ return true;
731
+ }
732
+ const normalized = status.trim();
733
+ return normalized === 'pending' || normalized === 'handling';
734
+ }
735
+ function hasActiveForeignLease(row, leaseOwner, now) {
736
+ if (row.leaseOwner === leaseOwner) {
737
+ return false;
738
+ }
739
+ const currentOwner = normalizeString(row.leaseOwner);
740
+ if (!currentOwner) {
741
+ return false;
742
+ }
743
+ return !isPastDate(row.leaseExpiresAt, now);
744
+ }
745
+ function isPastDate(value, now) {
746
+ if (!value) {
747
+ return false;
748
+ }
749
+ const date = value instanceof Date ? value : new Date(value);
750
+ return !Number.isNaN(date.getTime()) && date.getTime() <= now.getTime();
751
+ }
545
752
  async function findApprovalRow(webId, fetcher, id, options = {}) {
546
753
  if (options.resourceUri) {
547
754
  return readApprovalRowFromResource(fetcher, options.resourceUri);
@@ -610,6 +817,8 @@ async function writeApprovalRow(webId, fetcher, row) {
610
817
  { predicate: ApprovalVocab.action, object: iri(row.action) },
611
818
  { predicate: ApprovalVocab.risk, object: literal(row.risk) },
612
819
  { predicate: ApprovalVocab.status, object: literal(row.status) },
820
+ ...(row.leaseOwner ? [{ predicate: ApprovalVocab.leaseOwner, object: literal(row.leaseOwner) }] : []),
821
+ ...(row.leaseExpiresAt ? [{ predicate: ApprovalVocab.leaseExpiresAt, object: literal(toIsoString(row.leaseExpiresAt, new Date().toISOString())) }] : []),
613
822
  ...(row.assignedTo ? [{ predicate: ApprovalVocab.assignedTo, object: iri(row.assignedTo) }] : []),
614
823
  ...(row.decisionBy ? [{ predicate: ApprovalVocab.decisionBy, object: iri(row.decisionBy) }] : []),
615
824
  ...(row.decisionRole ? [{ predicate: ApprovalVocab.decisionRole, object: literal(row.decisionRole) }] : []),
@@ -754,6 +963,8 @@ function approvalRowFromPredicates(url, predicates) {
754
963
  action,
755
964
  risk,
756
965
  status,
966
+ leaseOwner: firstLiteral(predicates, ApprovalVocab.leaseOwner),
967
+ leaseExpiresAt: firstLiteral(predicates, ApprovalVocab.leaseExpiresAt),
757
968
  assignedTo: firstIri(predicates, ApprovalVocab.assignedTo),
758
969
  decisionBy: firstIri(predicates, ApprovalVocab.decisionBy),
759
970
  decisionRole: firstLiteral(predicates, ApprovalVocab.decisionRole),
@@ -1277,8 +1488,11 @@ export const __podApprovalInternal = {
1277
1488
  buildActionUri,
1278
1489
  buildRisk,
1279
1490
  buildToolName,
1491
+ claimInboxNotificationControlResource,
1492
+ createInboxNotificationControlResourceClaimHandler,
1280
1493
  createSharedModelRemoteApprovalStore,
1281
1494
  createNativeRemoteApprovalStore,
1495
+ classifyInboxNotificationControlResource,
1282
1496
  extractToolCallId,
1283
1497
  decisionFromApprovalRow,
1284
1498
  encodeDecisionReason: buildAutoModeApprovalDecisionReason,