@sireai/optimus 0.1.1
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.
- package/.env.example +16 -0
- package/LICENSE +21 -0
- package/README.md +104 -0
- package/dist/cli/optimus.d.ts +2 -0
- package/dist/cli/optimus.js +2951 -0
- package/dist/cli/optimus.js.map +1 -0
- package/dist/cli/self-update.d.ts +49 -0
- package/dist/cli/self-update.js +264 -0
- package/dist/cli/self-update.js.map +1 -0
- package/dist/config/load-config.d.ts +3 -0
- package/dist/config/load-config.js +321 -0
- package/dist/config/load-config.js.map +1 -0
- package/dist/config/optimus-paths.d.ts +13 -0
- package/dist/config/optimus-paths.js +44 -0
- package/dist/config/optimus-paths.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/integrations/jira/jira-cli.d.ts +1 -0
- package/dist/integrations/jira/jira-cli.js +278 -0
- package/dist/integrations/jira/jira-cli.js.map +1 -0
- package/dist/integrations/jira/jira-client.d.ts +99 -0
- package/dist/integrations/jira/jira-client.js +521 -0
- package/dist/integrations/jira/jira-client.js.map +1 -0
- package/dist/integrations/jira/jira-submit.d.ts +71 -0
- package/dist/integrations/jira/jira-submit.js +351 -0
- package/dist/integrations/jira/jira-submit.js.map +1 -0
- package/dist/problem-solving-core/codex/codex-auth-resolver.d.ts +23 -0
- package/dist/problem-solving-core/codex/codex-auth-resolver.js +136 -0
- package/dist/problem-solving-core/codex/codex-auth-resolver.js.map +1 -0
- package/dist/problem-solving-core/codex/codex-connectivity-checks.d.ts +6 -0
- package/dist/problem-solving-core/codex/codex-connectivity-checks.js +81 -0
- package/dist/problem-solving-core/codex/codex-connectivity-checks.js.map +1 -0
- package/dist/problem-solving-core/codex/codex-failure-classifier.d.ts +2 -0
- package/dist/problem-solving-core/codex/codex-failure-classifier.js +49 -0
- package/dist/problem-solving-core/codex/codex-failure-classifier.js.map +1 -0
- package/dist/problem-solving-core/codex/codex-global-config.d.ts +17 -0
- package/dist/problem-solving-core/codex/codex-global-config.js +100 -0
- package/dist/problem-solving-core/codex/codex-global-config.js.map +1 -0
- package/dist/problem-solving-core/codex/codex-preflight.d.ts +13 -0
- package/dist/problem-solving-core/codex/codex-preflight.js +142 -0
- package/dist/problem-solving-core/codex/codex-preflight.js.map +1 -0
- package/dist/problem-solving-core/codex/codex-provider-profile.d.ts +14 -0
- package/dist/problem-solving-core/codex/codex-provider-profile.js +68 -0
- package/dist/problem-solving-core/codex/codex-provider-profile.js.map +1 -0
- package/dist/problem-solving-core/codex/codex-required-env.d.ts +3 -0
- package/dist/problem-solving-core/codex/codex-required-env.js +21 -0
- package/dist/problem-solving-core/codex/codex-required-env.js.map +1 -0
- package/dist/problem-solving-core/codex/codex-runner.d.ts +37 -0
- package/dist/problem-solving-core/codex/codex-runner.js +926 -0
- package/dist/problem-solving-core/codex/codex-runner.js.map +1 -0
- package/dist/problem-solving-core/codex/evolution-skill-guard.d.ts +36 -0
- package/dist/problem-solving-core/codex/evolution-skill-guard.js +143 -0
- package/dist/problem-solving-core/codex/evolution-skill-guard.js.map +1 -0
- package/dist/problem-solving-core/codex/repo-memory-service.d.ts +24 -0
- package/dist/problem-solving-core/codex/repo-memory-service.js +114 -0
- package/dist/problem-solving-core/codex/repo-memory-service.js.map +1 -0
- package/dist/problem-solving-core/codex/skill-sync-service.d.ts +35 -0
- package/dist/problem-solving-core/codex/skill-sync-service.js +280 -0
- package/dist/problem-solving-core/codex/skill-sync-service.js.map +1 -0
- package/dist/task-environment/cancellation/task-abort-registry.d.ts +17 -0
- package/dist/task-environment/cancellation/task-abort-registry.js +51 -0
- package/dist/task-environment/cancellation/task-abort-registry.js.map +1 -0
- package/dist/task-environment/cancellation/task-cancellation-service.d.ts +25 -0
- package/dist/task-environment/cancellation/task-cancellation-service.js +54 -0
- package/dist/task-environment/cancellation/task-cancellation-service.js.map +1 -0
- package/dist/task-environment/cancellation/task-cleanup-service.d.ts +22 -0
- package/dist/task-environment/cancellation/task-cleanup-service.js +67 -0
- package/dist/task-environment/cancellation/task-cleanup-service.js.map +1 -0
- package/dist/task-environment/delivery/commit-message/bugfix-commit-message-template.d.ts +13 -0
- package/dist/task-environment/delivery/commit-message/bugfix-commit-message-template.js +83 -0
- package/dist/task-environment/delivery/commit-message/bugfix-commit-message-template.js.map +1 -0
- package/dist/task-environment/delivery/commit-message/commit-message-builder.d.ts +6 -0
- package/dist/task-environment/delivery/commit-message/commit-message-builder.js +15 -0
- package/dist/task-environment/delivery/commit-message/commit-message-builder.js.map +1 -0
- package/dist/task-environment/delivery/commit-message/commit-message-template-types.d.ts +16 -0
- package/dist/task-environment/delivery/commit-message/commit-message-template-types.js +2 -0
- package/dist/task-environment/delivery/commit-message/commit-message-template-types.js.map +1 -0
- package/dist/task-environment/delivery/feishu-analysis-doc-service.d.ts +50 -0
- package/dist/task-environment/delivery/feishu-analysis-doc-service.js +454 -0
- package/dist/task-environment/delivery/feishu-analysis-doc-service.js.map +1 -0
- package/dist/task-environment/delivery/feishu-card-renderer.d.ts +38 -0
- package/dist/task-environment/delivery/feishu-card-renderer.js +449 -0
- package/dist/task-environment/delivery/feishu-card-renderer.js.map +1 -0
- package/dist/task-environment/delivery/feishu-content/feishu-content-renderer.d.ts +34 -0
- package/dist/task-environment/delivery/feishu-content/feishu-content-renderer.js +201 -0
- package/dist/task-environment/delivery/feishu-content/feishu-content-renderer.js.map +1 -0
- package/dist/task-environment/delivery/feishu-content/feishu-copy-config.d.ts +27 -0
- package/dist/task-environment/delivery/feishu-content/feishu-copy-config.js +74 -0
- package/dist/task-environment/delivery/feishu-content/feishu-copy-config.js.map +1 -0
- package/dist/task-environment/delivery/feishu-notifier.d.ts +45 -0
- package/dist/task-environment/delivery/feishu-notifier.js +250 -0
- package/dist/task-environment/delivery/feishu-notifier.js.map +1 -0
- package/dist/task-environment/delivery/feishu-templates/analysis-message-template.d.ts +6 -0
- package/dist/task-environment/delivery/feishu-templates/analysis-message-template.js +39 -0
- package/dist/task-environment/delivery/feishu-templates/analysis-message-template.js.map +1 -0
- package/dist/task-environment/delivery/feishu-templates/bugfix-message-template.d.ts +6 -0
- package/dist/task-environment/delivery/feishu-templates/bugfix-message-template.js +40 -0
- package/dist/task-environment/delivery/feishu-templates/bugfix-message-template.js.map +1 -0
- package/dist/task-environment/delivery/feishu-templates/default-message-template.d.ts +6 -0
- package/dist/task-environment/delivery/feishu-templates/default-message-template.js +33 -0
- package/dist/task-environment/delivery/feishu-templates/default-message-template.js.map +1 -0
- package/dist/task-environment/delivery/feishu-templates/patch-message-template.d.ts +6 -0
- package/dist/task-environment/delivery/feishu-templates/patch-message-template.js +40 -0
- package/dist/task-environment/delivery/feishu-templates/patch-message-template.js.map +1 -0
- package/dist/task-environment/delivery/feishu-templates/template-registry.d.ts +2 -0
- package/dist/task-environment/delivery/feishu-templates/template-registry.js +11 -0
- package/dist/task-environment/delivery/feishu-templates/template-registry.js.map +1 -0
- package/dist/task-environment/delivery/feishu-templates/template-types.d.ts +20 -0
- package/dist/task-environment/delivery/feishu-templates/template-types.js +2 -0
- package/dist/task-environment/delivery/feishu-templates/template-types.js.map +1 -0
- package/dist/task-environment/delivery/task-delivery-dispatcher.d.ts +14 -0
- package/dist/task-environment/delivery/task-delivery-dispatcher.js +109 -0
- package/dist/task-environment/delivery/task-delivery-dispatcher.js.map +1 -0
- package/dist/task-environment/delivery/task-delivery-service.d.ts +33 -0
- package/dist/task-environment/delivery/task-delivery-service.js +432 -0
- package/dist/task-environment/delivery/task-delivery-service.js.map +1 -0
- package/dist/task-environment/delivery/task-publication-service.d.ts +97 -0
- package/dist/task-environment/delivery/task-publication-service.js +1369 -0
- package/dist/task-environment/delivery/task-publication-service.js.map +1 -0
- package/dist/task-environment/execution-addresses.d.ts +40 -0
- package/dist/task-environment/execution-addresses.js +63 -0
- package/dist/task-environment/execution-addresses.js.map +1 -0
- package/dist/task-environment/intake/cli-file-intake.d.ts +12 -0
- package/dist/task-environment/intake/cli-file-intake.js +56 -0
- package/dist/task-environment/intake/cli-file-intake.js.map +1 -0
- package/dist/task-environment/intake/manual-problem-intake.d.ts +3 -0
- package/dist/task-environment/intake/manual-problem-intake.js +57 -0
- package/dist/task-environment/intake/manual-problem-intake.js.map +1 -0
- package/dist/task-environment/intake/polling-problem-intake.d.ts +14 -0
- package/dist/task-environment/intake/polling-problem-intake.js +232 -0
- package/dist/task-environment/intake/polling-problem-intake.js.map +1 -0
- package/dist/task-environment/observability/logger.d.ts +76 -0
- package/dist/task-environment/observability/logger.js +604 -0
- package/dist/task-environment/observability/logger.js.map +1 -0
- package/dist/task-environment/observability/runtime-panel.d.ts +82 -0
- package/dist/task-environment/observability/runtime-panel.js +1008 -0
- package/dist/task-environment/observability/runtime-panel.js.map +1 -0
- package/dist/task-environment/observability/sound-notifier.d.ts +18 -0
- package/dist/task-environment/observability/sound-notifier.js +71 -0
- package/dist/task-environment/observability/sound-notifier.js.map +1 -0
- package/dist/task-environment/orchestration/execution-context-assembler.d.ts +41 -0
- package/dist/task-environment/orchestration/execution-context-assembler.js +464 -0
- package/dist/task-environment/orchestration/execution-context-assembler.js.map +1 -0
- package/dist/task-environment/orchestration/git-change-classifier.d.ts +19 -0
- package/dist/task-environment/orchestration/git-change-classifier.js +106 -0
- package/dist/task-environment/orchestration/git-change-classifier.js.map +1 -0
- package/dist/task-environment/orchestration/harness-registry.d.ts +27 -0
- package/dist/task-environment/orchestration/harness-registry.js +116 -0
- package/dist/task-environment/orchestration/harness-registry.js.map +1 -0
- package/dist/task-environment/orchestration/harness-resolver.d.ts +8 -0
- package/dist/task-environment/orchestration/harness-resolver.js +39 -0
- package/dist/task-environment/orchestration/harness-resolver.js.map +1 -0
- package/dist/task-environment/orchestration/task-orchestrator.d.ts +45 -0
- package/dist/task-environment/orchestration/task-orchestrator.js +1122 -0
- package/dist/task-environment/orchestration/task-orchestrator.js.map +1 -0
- package/dist/task-environment/orchestration/task-package-assembler.d.ts +4 -0
- package/dist/task-environment/orchestration/task-package-assembler.js +10 -0
- package/dist/task-environment/orchestration/task-package-assembler.js.map +1 -0
- package/dist/task-environment/orchestration/triage-agent.d.ts +54 -0
- package/dist/task-environment/orchestration/triage-agent.js +636 -0
- package/dist/task-environment/orchestration/triage-agent.js.map +1 -0
- package/dist/task-environment/orchestration/triage-runner.d.ts +65 -0
- package/dist/task-environment/orchestration/triage-runner.js +655 -0
- package/dist/task-environment/orchestration/triage-runner.js.map +1 -0
- package/dist/task-environment/publication-target.d.ts +12 -0
- package/dist/task-environment/publication-target.js +174 -0
- package/dist/task-environment/publication-target.js.map +1 -0
- package/dist/task-environment/runtime/blocking-event-queue.d.ts +7 -0
- package/dist/task-environment/runtime/blocking-event-queue.js +27 -0
- package/dist/task-environment/runtime/blocking-event-queue.js.map +1 -0
- package/dist/task-environment/runtime/optimus-runtime.d.ts +69 -0
- package/dist/task-environment/runtime/optimus-runtime.js +751 -0
- package/dist/task-environment/runtime/optimus-runtime.js.map +1 -0
- package/dist/task-environment/storage/sqlite-event-store.d.ts +52 -0
- package/dist/task-environment/storage/sqlite-event-store.js +288 -0
- package/dist/task-environment/storage/sqlite-event-store.js.map +1 -0
- package/dist/task-environment/storage/sqlite-task-store.d.ts +122 -0
- package/dist/task-environment/storage/sqlite-task-store.js +1182 -0
- package/dist/task-environment/storage/sqlite-task-store.js.map +1 -0
- package/dist/types.d.ts +629 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/embedded-skills/shared/repo-inspection/SKILL.md +9 -0
- package/embedded-skills/shared/repo-inspection/skill.json +5 -0
- package/embedded-skills/task/bugfix/android-debug-protocol/SKILL.md +10 -0
- package/embedded-skills/task/bugfix/android-debug-protocol/skill.json +6 -0
- package/harness/AGENTS.md +30 -0
- package/harness/CHECKLIST.md +44 -0
- package/harness/CONSTRAINTS.md +60 -0
- package/harness/FRAMEWORK.md +28 -0
- package/harness/GOAL.md +28 -0
- package/harness/HANDOFF.md +45 -0
- package/harness/TASK_PLAN.md +79 -0
- package/optimus.config.template.json +34 -0
- package/package.json +109 -0
- package/task-harnesses/bugfix/ACCEPT.md +47 -0
- package/task-harnesses/bugfix/CONSTRAINTS.md +46 -0
- package/task-harnesses/bugfix/CONTEXT.md +29 -0
- package/task-harnesses/bugfix/EVOLUTION.md +82 -0
- package/task-harnesses/bugfix/ROLE.md +29 -0
- package/task-harnesses/bugfix/STANDARD.md +250 -0
- package/task-harnesses/bugfix/manifest.json +13 -0
- package/task-harnesses/registry.json +8 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-publication-service.js","sourceRoot":"","sources":["../../../src/task-environment/delivery/task-publication-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAY,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAWtC,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,oBAAoB,EAErB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAElF,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC1C,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAiFxC,MAAM,OAAO,sBAAsB;IAGG;IAFnB,oBAAoB,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAEnE,YAAoC,MAAiE;QAAjE,WAAM,GAAN,MAAM,CAA2D;IAAG,CAAC;IAElG,KAAK,CAAC,OAAO,CAAC,KAAgC;QACnD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC;QAC7C,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;YAC7B,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;wBAChD,MAAM,EAAE,SAAS;wBACjB,OAAO,EAAE,2CAA2C;wBACpD,SAAS;qBACV,CAAC,CAAC;gBACH,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC1B,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;wBAChD,MAAM,EAAE,SAAS;wBACjB,OAAO,EAAE,6DAA6D;wBACtE,SAAS;qBACV,CAAC,CAAC;gBACH,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YAC/C,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;wBAChD,MAAM,EAAE,SAAS;wBACjB,OAAO,EAAE,0BAA0B,WAAW,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,GAAG;wBAC9E,SAAS;qBACV,CAAC,CAAC;gBACH,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,IAAI,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACpG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,WAAW,CAAC,YAAY,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACpE,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,eAAe;wBACrB,MAAM,EAAE,SAAS;wBACjB,OAAO,EAAE,qEAAqE;wBAC9E,SAAS;qBACV,CAAC,CAAC;gBACH,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;wBAChD,MAAM,EAAE,QAAQ;wBAChB,OAAO,EAAE,eAAe,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,yCAAyC;wBAC3G,SAAS;wBACT,KAAK,EAAE,sBAAsB;qBAC9B,CAAC,CAAC;gBACH,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE9C,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;YAC9D,MAAM,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;YAClF,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,SAAS;wBACjB,OAAO,EAAE,0CAA0C,WAAW,CAAC,YAAY,CAAC,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG;wBAC7H,SAAS;wBACT,YAAY;qBACb,CAAC,CAAC;gBACH,SAAS,EAAE,CAAC;wBACV,IAAI,EAAE,kBAAkB;wBACxB,IAAI,EAAE,YAAY;wBAClB,SAAS;qBACV,CAAC;aACH,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC;QAC/C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,eAAe;wBACrB,MAAM,EAAE,QAAQ;wBAChB,OAAO,EAAE,0DAA0D;wBACnE,SAAS;wBACT,KAAK,EAAE,mBAAmB;qBAC3B,CAAC,CAAC;gBACH,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACzD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;YACrH,MAAM,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;YAC3G,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,eAAe;wBACrB,MAAM,EAAE,SAAS,CAAC,MAAM;wBACxB,OAAO,EAAE,SAAS,CAAC,OAAO;wBAC1B,SAAS;wBACT,YAAY,EAAE,UAAU;wBACxB,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;qBACnD,CAAC,CAAC;gBACH,SAAS,EAAE,CAAC;wBACV,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,UAAU;wBAChB,SAAS;qBACV,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,uCAAuC,EAAE;gBAChE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;gBAC3B,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ;gBAC/B,mBAAmB,EAAE,WAAW,CAAC,YAAY,CAAC,QAAQ;gBACtD,gBAAgB,EAAE,WAAW,CAAC,YAAY,CAAC,IAAI;gBAC/C,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;aAC9B,CAAC,CAAC;YACH,MAAM,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;oBAC9E,KAAK,EAAE,aAAa;oBACpB,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,WAAW,CAAC,YAAY,CAAC,QAAQ;oBAC3C,MAAM,EAAE,OAAO;iBAChB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YACb,OAAO;gBACL,QAAQ,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;wBACzC,IAAI,EAAE,eAAe;wBACrB,MAAM,EAAE,QAAQ;wBAChB,OAAO,EAAE,6BAA6B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;wBAC7D,SAAS;wBACT,YAAY,EAAE,UAAU;wBACxB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;qBAC7B,CAAC,CAAC;gBACH,SAAS,EAAE,CAAC;wBACV,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,UAAU;wBAChB,SAAS;qBACV,CAAC;aACH,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,YAAY,CAClB,MAA0B,EAC1B,OAAyD;QAEzD,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,GAAG,OAAO;SACX,CAAC;IACJ,CAAC;IAEO,kBAAkB,CACxB,MAA0B,EAC1B,UAAmD,EACnD,MAAe;QAEf,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,MAAM,cAAc,GAAG,WAAW,EAAE,GAAG,EAAE,YAAY,IAAI,EAAE,CAAC;QAC5D,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe;YAC1C,cAAc;YACd,YAAY,EAAE,IAAI,CAAC,4BAA4B,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC;SACpF,CAAC;IACJ,CAAC;IAEO,4BAA4B,CAClC,MAA0B,EAC1B,UAAmD,EACnD,cAA6C;QAE7C,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,CAAC;QACvD,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,GAAG,CACnC,cAAc;iBACX,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC;iBAChD,MAAM,CAAC,CAAC,KAAK,EAA0C,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAC7E,CAAC,CAAC;QACH,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,QAAQ;aACnB,CAAC;QACJ,CAAC;QACD,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAClD,IAAI,oBAAoB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,CAAC,CAAC;QAClE,CAAC;QACD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,QAAQ;SACnB,CAAC;IACJ,CAAC;IAEO,yBAAyB,CAC/B,UAAgF,EAChF,QAAiD;QAEjD,MAAM,cAAc,GAAgH;YAClI,MAAM,EAAE,eAAe;YACvB,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,QAAQ;SACjB,CAAC;QACF,MAAM,UAAU,GAAkH;YAChI,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,SAAS;SAClB,CAAC;QAEF,OAAO;YACL,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;YACnB,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC;YAC5B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC;SACrC,CAAC;IACJ,CAAC;IAEO,6BAA6B,CAAC,QAAuC;QAC3E,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,eAAe;gBAClB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;YACtC,KAAK,WAAW;gBACd,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;YACtC;gBACE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;QACnD,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,MAA0B;QAC7C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,IAAI,WAAW,EAAE,GAAG,EAAE,cAAc,IAAI,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YACvE,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,cAAc,IAAI,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAC/E,CAAC;QACD,IAAI,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;YAC3C,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,oBAAoB,CAAC;QACpE,CAAC;QACD,IAAI,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC;YACnC,OAAO,WAAW,CAAC,GAAG,CAAC,YAAY,KAAK,mBAAmB;gBACzD,CAAC,CAAC,qBAAqB,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE;gBACrD,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC;QACnC,CAAC;QACD,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAEO,UAAU,CAAC,MAA0B,EAAE,IAA4B;QACzE,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,MAAM,KAAK,GAAG;YACZ,oBAAoB;YACpB,EAAE;YACF,YAAY;YACZ,EAAE;YACF,WAAW,MAAM,CAAC,MAAM,EAAE;YAC1B,gBAAgB,MAAM,CAAC,QAAQ,EAAE;YACjC,cAAc,MAAM,CAAC,OAAO,EAAE;YAC9B,eAAe,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE;YACxC,WAAW,IAAI,CAAC,IAAI,EAAE;YACtB,qBAAqB,WAAW,EAAE,GAAG,EAAE,aAAa,IAAI,SAAS,EAAE;YACnE,yBAAyB,WAAW,EAAE,MAAM,IAAI,MAAM,EAAE;YACxD,yBAAyB,WAAW,EAAE,MAAM,IAAI,KAAK,EAAE;YACvD,aAAa,WAAW,EAAE,GAAG,EAAE,MAAM,IAAI,KAAK,EAAE;YAChD,eAAe,WAAW,EAAE,GAAG,EAAE,cAAc,IAAI,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,cAAc,IAAI,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE;YACnK,wBAAwB,WAAW,EAAE,GAAG,EAAE,gBAAgB,IAAI,KAAK,EAAE;YACrE,oBAAoB,WAAW,EAAE,GAAG,EAAE,YAAY,IAAI,KAAK,EAAE;YAC7D,oBAAoB,WAAW,EAAE,GAAG,EAAE,YAAY,IAAI,KAAK,EAAE;YAC7D,oBAAoB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAChE,YAAY,MAAM,CAAC,SAAS,CAAC,SAAS,IAAI,KAAK,EAAE;YACjD,EAAE;YACF,oBAAoB;YACpB,EAAE;YACF,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC;YAC3C,EAAE;YACF,oBAAoB;YACpB,EAAE;YACF,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;gBAChC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;gBACzE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACd,GAAG,CAAC,WAAW,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,uBAAuB,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/H,EAAE;YACF,sBAAsB;YACtB,EAAE;YACF,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;YAClE,EAAE;YACF,UAAU;YACV,EAAE;YACF,iEAAiE;YACjE,6EAA6E;SAC9E,CAAC;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEO,kBAAkB,CAAC,YAAyC;QAClE,MAAM,KAAK,GAAG,CAAC,GAAG,YAAY,CAAC,IAAI,KAAK,YAAY,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClE,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAEO,qBAAqB,CAAC,MAA0B,EAAE,IAA4B;QACpF,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,aAAa,CAAC;QAC7D,QAAQ,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YACnC,KAAK,eAAe;gBAClB,IAAI,aAAa,KAAK,cAAc,EAAE,CAAC;oBACrC,OAAO,IAAI,CAAC,+BAA+B,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC9F,CAAC;gBACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACnF,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACnF;gBACE,OAAO,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAEO,+BAA+B,CACrC,MAA0B,EAC1B,cAA6C,EAC7C,YAAyC;QAEzC,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;QACnG,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,OAAO;YACL,sHAAsH,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,GAAG;YAC5J,qDAAqD,KAAK,CAAC,CAAC,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YACrF,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACxB,MAAM,qBAAqB,GAAG,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;gBACjG,OAAO,KAAK,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,IAAI,0BAA0B,MAAM,qBAAqB,CAAC,UAAU,IAAI,QAAQ,EAAE,CAAC;YAChM,CAAC,CAAC;SACH,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAC1B,MAA0B,EAC1B,cAA6C,EAC7C,YAAyC;QAEzC,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;QACnG,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACtC,MAAM,qBAAqB,GAAG,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;YACjG,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,IAAI,qBAAqB,CAAC,UAAU,IAAI,QAAQ,CAAC;YACrF,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACxG,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,KAAK,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,0DAA0D,CAAC;YACvG,CAAC;YACD,OAAO,KAAK,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,cAAc,MAAM,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7G,CAAC,CAAC,CAAC;QACH,OAAO;YACL,6DAA6D;YAC7D,GAAG,QAAQ;SACZ,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAC1B,MAA0B,EAC1B,cAA6C,EAC7C,YAAyC;QAEzC,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;QACnG,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1C,MAAM,qBAAqB,GAAG,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;YACjG,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YACjF,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,IAAI,qBAAqB,CAAC,UAAU,IAAI,QAAQ,CAAC;YACrF,MAAM,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YAChH,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,KAAK,6CAA6C,CAAC,CAAC;YACnE,CAAC;YACD,OAAO;gBACL,KAAK,KAAK,cAAc,MAAM,oBAAoB,UAAU,EAAE;gBAC9D,KAAK,KAAK,yBAAyB,UAAU,WAAW,UAAU,EAAE;aACrE,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO;YACL,oEAAoE;YACpE,GAAG,QAAQ;SACZ,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAC1B,MAA0B,EAC1B,cAA6C,EAC7C,YAAyC;QAEzC,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;QACnG,OAAO;YACL,sEAAsE,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC,QAAQ,GAAG;YACnH,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,wDAAwD,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,IAAI,0BAA0B,GAAG,CAAC;SACrN,CAAC;IACJ,CAAC;IAEO,sBAAsB,CAAC,MAA0B;QACvD,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC;QACpC,OAAO;YACL,WAAW,EAAE,GAAG;YAChB,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC;IACJ,CAAC;IAEO,mBAAmB,CAAC,OAAoC;QAC9D,MAAM,KAAK,GAAG,CAAC,KAAK,OAAO,CAAC,WAAW,KAAK,OAAO,CAAC,YAAY,IAAI,KAAK,KAAK,OAAO,CAAC,YAAY,IAAI,SAAS,GAAG,CAAC,CAAC;QACpH,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YACrD,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAEO,iBAAiB,CAAC,MAAwD;QAChF,OAAO,MAAM,CAAC,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;IACvE,CAAC;IAEO,qBAAqB,CAAC,MAA0B;QACtD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IAEO,yBAAyB,CAAC,MAA0B;QAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IAEO,sBAAsB,CAAC,MAA0B,EAAE,QAAuC;QAChG,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,aAAa,CAAC;QAC7D,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,eAAe;gBAClB,IAAI,aAAa,KAAK,cAAc,EAAE,CAAC;oBACrC,OAAO;wBACL,2GAA2G;wBAC3G,+EAA+E;qBAChF,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,6EAA6E;oBAC7E,2EAA2E;iBAC5E,CAAC;YACJ,KAAK,WAAW;gBACd,OAAO;oBACL,oFAAoF;oBACpF,6EAA6E;iBAC9E,CAAC;YACJ;gBACE,OAAO;oBACL,kGAAkG;oBAClG,qFAAqF;iBACtF,CAAC;QACN,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,MAA0B,EAC1B,IAA4B,EAC5B,OAAyC,EACzC,WAAmB,EACnB,WAAmB;QAEnB,MAAM,OAAO,GAAG;YACd,MAAM;YACN,YAAY,EAAE,IAAI,CAAC,YAAY;SACA,CAAC;QAClC,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,wCAAwC,EAAE;YAChE,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;YAC/C,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YACxC,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,aAAa,IAAI,SAAS;SACnE,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC1F,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAChF,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC3D,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,gDAAgD,EAAE;YACzE,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,iBAAiB,EAAE,MAAM;YACzB,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;YAC/C,KAAK,EAAE,cAAc,CAAC,KAAK,IAAI,IAAI;YACnC,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,IAAI;YACzC,SAAS,EAAE,cAAc,CAAC,SAAS,IAAI,IAAI;YAC3C,UAAU,EAAE,cAAc,CAAC,UAAU,IAAI,EAAE;YAC3C,SAAS,EAAE,cAAc,CAAC,SAAS,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAClG,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,0CAA0C,EAAE;YAClE,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,iBAAiB,EAAE,MAAM;YACzB,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;YAC/C,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;YAChF,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;YAC1E,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;YAC5E,KAAK,EAAE,cAAc,CAAC,KAAK,IAAI,IAAI;YACnC,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,IAAI;YACzC,SAAS,EAAE,cAAc,CAAC,SAAS,IAAI,IAAI;YAC3C,OAAO;SACR,CAAC,CAAC;QACH,OAAO;YACL,MAAM;YACN,OAAO;YACP,OAAO;SACR,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,OAA8B,EAC9B,IAA4B,EAC5B,OAAyC,EACzC,WAAmB,EACnB,WAAmB;QAEnB,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC;QACpD,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QAChF,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,EAAE;YAC1E,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;YAC7B,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;YACjC,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;YAC/C,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YACxC,WAAW,EAAE,OAAO,CAAC,MAAM;YAC3B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAChC,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI;gBACzC,UAAU,EAAE,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,IAAI;gBAC3E,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;aACrD,CAAC,CAAC;SACJ,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC;oBAChC,KAAK,EAAE,aAAa;oBACpB,MAAM,EAAE,SAAS;oBACjB,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;oBACpC,YAAY,EAAE,SAAS;oBACvB,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,UAAU;oBACxC,YAAY,EAAE,SAAS;oBACvB,SAAS,EAAE,SAAS;oBACpB,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,2CAA2C;iBACpD,CAAC,CAAC,CAAC;QACN,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACrE,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,iDAAiD,EAAE;YAC1E,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;YAC7B,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;YACjC,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;YAC/C,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YACxC,cAAc,EAAE,QAAQ,CAAC,IAAI;YAC7B,YAAY,EAAE,QAAQ,CAAC,KAAK;SAC7B,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACpE,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,MAA0B,EAC1B,IAA4B,EAC5B,WAAmB;QAEnB,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC;QAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC;QAC7C,IAAI,CAAC,WAAW,EAAE,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC;QACpH,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,GAAG,CAAC;YACjF,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC;YACvC,CAAC,CAAC,EAAE,CAAC;QAEP,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACpC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,KAAK,GAAG;gBAC7C,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YACrE,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAQ,CAAC;YACtC,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,KAAK,GAAG;gBAC/C,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC,gBAAgB,CAAC;gBAC3B,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;gBACtC,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,OAAO,EAAE,aAAa;gBACtB,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY;gBAC9D,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,WAAW,CAAC,cAAc;gBACpE,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY;gBACvD,YAAY,EAAE,WAAW;aAC1B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,qBAAqB,CAAC,MAA0B,EAAE,OAAiC;QACzF,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,EAAE,aAAa,CAAC;QAC7D,IAAI,aAAa,KAAK,cAAc,EAAE,CAAC;YACrC,OAAO;gBACL,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;aACnF,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACzJ,IAAI,aAAa,KAAK,iBAAiB,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClE,OAAO;gBACL,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE,WAAW;aACnB,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,WAAW;SACnB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,OAA8B,EAC9B,OAAiC,EACjC,OAAyC;QAEzC,MAAM,eAAe,GAA4B,EAAE,CAAC;QACpD,MAAM,eAAe,GAAG,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,CAAC;QAEtE,IAAI,CAAC;YACH,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;wBAChC,eAAe,CAAC,IAAI,CAAC;4BACnB,MAAM;4BACN,UAAU,EAAE,EAAE;4BACd,QAAQ,EAAE,SAAS;4BACnB,QAAQ,EAAE,SAAS;yBACpB,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;oBACD,MAAM,YAAY,GAAG,eAAe;wBAClC,CAAC,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;wBAC5D,CAAC,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;oBAC9D,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACrC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;oBAC3F,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YAED,MAAM,kBAAkB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7G,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACjG,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,8CAA8C,EAAE;gBACtE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;gBAC7B,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;gBACjC,YAAY,EAAE,kBAAkB,CAAC,MAAM;gBACvC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC;gBACnF,KAAK,EAAE,KAAK,IAAI,IAAI;aACrB,CAAC,CAAC;YACH,MAAM,OAAO,GAAiC,EAAE,CAAC;YACjD,KAAK,MAAM,YAAY,IAAI,eAAe,EAAE,CAAC;gBAC3C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;oBACnF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;wBACrC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK;wBAChC,MAAM,EAAE,SAAS;wBACjB,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ;wBACnD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3B,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACjC,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,YAAY;wBAC9C,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,cAAc,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;wBAC7F,YAAY,EAAE,SAAS;wBACvB,SAAS,EAAE,SAAS;wBACpB,QAAQ,EAAE,SAAS;wBACnB,MAAM,EAAE,qDAAqD;qBAC9D,CAAC,CAAC,CAAC;oBACJ,SAAS;gBACX,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;YACxE,CAAC;YACD,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,gDAAgD,EAAE;gBACxE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;gBAC7B,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;gBACjC,YAAY,EAAE,kBAAkB,CAAC,MAAM;gBACvC,KAAK,EAAE,KAAK,IAAI,IAAI;gBACpB,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;gBAChF,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;gBAC5E,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM;aAC3E,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;QACjB,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,0BAA0B,CAAC,eAAe,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,YAAmC,EACnC,KAAc;QAEd,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,OAA8B,EAC9B,OAAiC,EACjC,OAAyC,EACzC,WAAmB;QAEnB,MAAM,SAAS,GAA4B,EAAE,CAAC;QAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,CAAC;QACtE,IAAI,CAAC;YACH,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;wBAChC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;wBACrF,SAAS;oBACX,CAAC;oBACD,MAAM,YAAY,GAAG,eAAe;wBAClC,CAAC,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;wBAC5D,CAAC,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;oBAC9D,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;oBACrF,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YAED,MAAM,sBAAsB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAClH,MAAM,KAAK,GAAG,sBAAsB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9F,MAAM,OAAO,GAAiC,EAAE,CAAC;YACjD,KAAK,MAAM,YAAY,IAAI,SAAS,EAAE,CAAC;gBACrC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC7C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;wBACrC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK;wBAChC,MAAM,EAAE,SAAS;wBACjB,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ;wBACnD,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,YAAY;wBAC9C,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,cAAc,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;wBAC7F,YAAY,EAAE,SAAS;wBACvB,SAAS,EAAE,SAAS;wBACpB,QAAQ,EAAE,SAAS;wBACnB,MAAM,EAAE,qDAAqD;qBAC9D,CAAC,CAAC,CAAC;oBACJ,SAAS;gBACX,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;gBACjD,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACpG,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,OAA8B,EAC9B,OAAiC,EACjC,OAAyC,EACzC,WAAmB;QAEnB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,OAAO,CAAC,YAAY,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YAClD,OAAO,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QACvF,CAAC;QAED,IAAI,OAAO,EAAE,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACvC,OAAO,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAClF,CAAC;QAED,IAAI,OAAO,EAAE,SAAS,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC1C,OAAO,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,CAAC,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IACrF,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,MAA0B,EAC1B,MAA8B;QAE9B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxE,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;QACnD,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,0BAA0B,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,MAA0B,EAC1B,MAA8B,EAC9B,OAA6B;QAE7B,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC;QACpD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QAC9F,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,kBAAkB,YAAY,6BAA6B,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;QACtG,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;QACnD,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,0BAA0B,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,MAA0B,EAC1B,MAA8B,EAC9B,WAAmB;QAEnB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QACxI,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnE,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;gBAC3C,IAAI;gBACJ,QAAQ;gBACR,MAAM;gBACN,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,QAAQ;gBACnE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;aACvE,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,oBAAoB,CAAC;gBAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,WAAW;gBACnB,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ;gBACtC,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,UAAU,EAAE,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU;gBACnE,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC;gBAC7D,QAAQ,EAAE,YAAY,CAAC,QAAQ;gBAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;aAC7B,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,MAA0B,EAC1B,MAA8B,EAC9B,OAAyC,EACzC,WAAmB;QAEnB,MAAM,eAAe,GAAG,OAAO,EAAE,SAAS,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,EAAE,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC;QACpG,MAAM,QAAQ,GAAG,eAAe;YAC9B,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACxF,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACtF,MAAM,cAAc,GAAG,OAAO,EAAE,SAAS,CAAC,IAAI,KAAK,SAAS;YAC1D,CAAC,CAAC,MAAM,IAAI,CAAC,6BAA6B,CAAC,QAAQ,CAAC;YACpD,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YACxI,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnE,kBAAkB,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,YAA+C,CAAC;QACpD,IAAI,CAAC;YACH,YAAY,GAAG,eAAe;gBAC5B,CAAC,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;gBAC9E,CAAC,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAChF,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YACjF,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,QAAQ,EAAE,mBAAmB,UAAU,EAAE,CAAC,CAAC,CAAC;YACnK,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;gBAC5C,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,YAAY,CAAC;gBACvD,QAAQ,EAAE,UAAU;gBACpB,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK;gBAC/B,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC;aACjD,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;YACtB,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YACvE,OAAO,IAAI,CAAC,oBAAoB,CAAC;gBAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,WAAW;gBACnB,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ;gBACtC,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,UAAU,EAAE,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU;gBACnE,YAAY,EAAE,UAAU;gBACxB,SAAS;gBACT,QAAQ,EAAE,YAAY,CAAC,QAAQ;gBAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;aAC/B,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,IAAI,eAAe,IAAI,YAAY,EAAE,CAAC;gBACpC,MAAM,IAAI,CAAC,0BAA0B,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;YACxD,CAAC;YACD,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,IAAI,CAAC,6BAA6B,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,kBAAkB,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,6BAA6B,CAAC,OAAe;QACzD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;aACnF,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;aAC7B,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC1B,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;aACnG,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;aAC7B,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC1B,MAAM,oBAAoB,GAAG,UAAU,IAAI,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1F,MAAM,WAAW,GAAG,oBAAoB;YACtC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,CAAC,CAAC;iBAC1G,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;iBAC7B,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YACzB,CAAC,CAAC,SAAS,CAAC;QACd,OAAO;YACL,UAAU;YACV,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,6BAA6B,CAAC,OAAe,EAAE,QAAgC;QAC3F,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QACnG,CAAC;QAAC,MAAM,CAAC;YACP,4DAA4D;QAC9D,CAAC;QAED,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QAC1H,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,MAA0B,EAAE,MAA8B;QAC7F,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;aACxF,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;aAC7B,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAClG,MAAM,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;QACpF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;YACzE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC/D,IAAI,CAAC,2BAA2B,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC;gBACvD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;YACnE,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,KAAK,eAAe;gBAC/D,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC;gBAC1C,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,YAAY,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAC;YAC/D,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YACzI,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;YAC9F,OAAO;gBACL,MAAM;gBACN,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE;gBAC7B,QAAQ;gBACR,QAAQ;aACT,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,MAA0B,EAAE,MAA8B;QAC9F,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;aACxF,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;aAC7B,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC1B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtE,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC/D,IAAI,CAAC,2BAA2B,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,aAAa,MAAM,CAAC,OAAO,6BAA6B,CAAC,CAAC;QAC5E,CAAC;QACD,MAAM,YAAY,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAC;QAC/D,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;QACzI,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9F,OAAO;YACL,MAAM;YACN,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE;YAC7B,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YACjH,QAAQ;SACT,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,YAAmC,EAAE,KAAc;QAChF,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;YAC3C,IAAI;YACJ,YAAY,CAAC,MAAM,CAAC,OAAO;YAC3B,MAAM;YACN,YAAY,CAAC,MAAM,CAAC,cAAc,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,QAAQ;YAC7F,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC;SACvC,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC,oBAAoB,CAAC;YAC/B,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK;YAChC,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ;YACnD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,YAAY;YAC9C,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,cAAc,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;YAC7F,YAAY,EAAE,KAAK;YACnB,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC;YAC1E,QAAQ,EAAE,YAAY,CAAC,QAAQ;YAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,MAA8B,EAAE,YAAgC;QACrG,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,QAAQ,CAAC;QACnF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9E,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IACxF,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,MAA8B,EAAE,YAAgC,EAAE,eAAwB;QACvH,MAAM,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,QAAQ,CAAC;QACnF,MAAM,OAAO,GAAG,eAAe,IAAI,MAAM,CAAC,OAAO,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,CAAC;IAEO,+BAA+B,CAAC,OAAyC;QAC/E,OAAO,OAAO,EAAE,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,SAAkC;QACzE,KAAK,MAAM,YAAY,IAAI,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACpF,SAAS;YACX,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,QAAQ,IAAI,GAAG,YAAY,CAAC,UAAU,GAAG,CAAC,CAAC;YACvH,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,OAAe,EAAE,OAA2B;QAC7E,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC;QACpF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,sBAAsB,GAAG,0BAA0B,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;QAC9G,KAAK,MAAM,YAAY,IAAI,sBAAsB,EAAE,CAAC;YAClD,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAAe,EAAE,UAA8B,EAAE,YAAgC;QAC5G,MAAM,gBAAgB,GAAG,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC;QACtE,IAAI,UAAU,IAAI,gBAAgB,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;gBACrF,OAAO,YAAY,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACP,gEAAgE;YAClE,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;QACjF,OAAO,IAAI,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,OAAe,EAAE,QAAgB,EAAE,OAAe;QACnF,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAClG,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,OAAe,EAAE,QAAgB;QAClE,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC3F,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,OAAe;QACxC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAe,EAAE,CAAC;QAChC,IAAI,OAAO,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvB,OAAO,GAAG,EAAE,CAAC;YACf,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAChE,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,GAAW;QAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACvC,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5E,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,CAAC;QACD,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAChE,CAAC;IAEO,iBAAiB,CAAC,QAAwB,EAAE,WAAmB;QACrE,MAAM,OAAO,GAAG,QAAQ;aACrB,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;aACvF,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;QAC3E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxD,CAAC;IAEO,sBAAsB,CAAC,GAAW,EAAE,WAAmB;QAC7D,MAAM,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC;QAC3D,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACnC,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;gBACnC,OAAO,IAAI;qBACR,OAAO,CAAC,MAAM,MAAM,EAAE,EAAE,KAAK,CAAC;qBAC9B,OAAO,CAAC,MAAM,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;YACpC,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,MAAM,EAAE,EAAE,QAAQ,CAAC,CAAC;YACnD,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,MAAM,EAAE,EAAE,QAAQ,CAAC,CAAC;YACnD,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,MAAM,EAAE,EAAE,cAAc,CAAC,CAAC;YAC/D,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC;YAC3D,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC;YAC3D,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAChC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEO,kBAAkB,CAAC,WAAmB,EAAE,WAAmB;QACjE,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC;IAClF,CAAC;IAEO,kBAAkB,CACxB,MAA0B,EAC1B,MAAiG,EACjG,YAAsB;QAEtB,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;YACrC,MAAM;YACN,MAAM;YACN,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IAEO,mBAAmB,CAAC,MAA0B,EAAE,MAAoE;QAC1H,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC;aAC5B,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;aACzG,MAAM,CAAC,KAAK,CAAC,CAAC;QACjB,OAAO,IAAI,IAAI,EAAE,CAAC;IACpB,CAAC;IAEO,iBAAiB,CAAC,MAA0B,EAAE,MAAmD;QACvG,MAAM,KAAK,GAAG;YACZ,SAAS,MAAM,CAAC,MAAM,EAAE;YACxB,YAAY,MAAM,CAAC,OAAO,EAAE;YAC5B,aAAa,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE;SACvC,CAAC;QACF,IAAI,MAAM,CAAC,WAAW,KAAK,GAAG,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEO,qBAAqB,CAAC,MAAc,EAAE,WAAmB;QAC/D,MAAM,MAAM,GAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACxE,OAAO,WAAW,MAAM,IAAI,MAAM,EAAE,CAAC;IACvC,CAAC;IAEO,UAAU,CAAC,MAAc;QAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QACjC,MAAM,iBAAiB,GAAG,UAAU,CAAC,KAAK,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;QAC7F,IAAI,iBAAiB,EAAE,CAAC;YACtB,OAAO,WAAW,iBAAiB,EAAE,CAAC;QACxC,CAAC;QACD,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACxE,OAAO,QAAQ,CAAC,CAAC,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IAEO,kBAAkB,CAAC,MAAc,EAAE,KAAc;QACvD,OAAO,iBAAiB,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACpE,CAAC;IAEO,mBAAmB,CAAC,MAA0B;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,mBAAmB,CAAC,MAA0B;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,gBAAgB,CAAC,KASxB;QACC,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAAC,KAY5B;QACC,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,GAAW,EAAE,IAAwB;QAC7D,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;IACxC,CAAC;IAEO,sBAAsB,CAAC,OAAqC;QAClE,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;QACxF,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;QAClF,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;QACpF,IAAI,cAAc,GAAG,CAAC,IAAI,WAAW,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YAClE,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,qBAAqB,CAAC,OAAqC,EAAE,QAAuC;QAC1G,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;QACxF,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;QAClF,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;QACpF,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,cAAc,KAAK,KAAK,EAAE,CAAC;YAC7B,OAAO,mCAAmC,cAAc,IAAI,KAAK,kBAAkB,QAAQ,GAAG,CAAC;QACjG,CAAC;QACD,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,6CAA6C,QAAQ,eAAe,cAAc,YAAY,WAAW,aAAa,YAAY,GAAG,CAAC;QAC/I,CAAC;QACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,gCAAgC,WAAW,IAAI,KAAK,kBAAkB,QAAQ,GAAG,CAAC;QAC3F,CAAC;QACD,OAAO,iCAAiC,YAAY,IAAI,KAAK,kBAAkB,QAAQ,GAAG,CAAC;IAC7F,CAAC;IAEO,qBAAqB,CAAC,OAAqC;QACjE,MAAM,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,QAAQ,KAAK,eAAe,CAAC,CAAC;QAChI,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACrI,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3I,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9H,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5H,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1D,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAClG,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO;YACL,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/C,CAAC;IACJ,CAAC;IAEO,kBAAkB,CACxB,MAA0B,EAC1B,IAA4B,EAC5B,OAAqC;QAErC,MAAM,KAAK,GAAG;YACZ,iBAAiB;YACjB,EAAE;YACF,WAAW,MAAM,CAAC,MAAM,EAAE;YAC1B,gBAAgB,MAAM,CAAC,QAAQ,EAAE;YACjC,cAAc,MAAM,CAAC,OAAO,EAAE;YAC9B,oBAAoB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAChE,YAAY,MAAM,CAAC,SAAS,CAAC,SAAS,IAAI,KAAK,EAAE;YACjD,EAAE;YACF,uBAAuB;YACvB,EAAE;SACH,CAAC;QACF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACvE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAChC,CAAC;YACD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBACxB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAClC,CAAC;YACD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBACxB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAClC,CAAC;YACD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,KAAK,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEO,gBAAgB,CAAC,MAAc,EAAE,YAAqD;QAC5F,MAAM,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;aACjD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;aAClD,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,6BAA6B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9E,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7F,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,YAAY,EAAE,IAAI,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACjD,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YAC9D,OAAO,WAAW,IAAI,MAAM,YAAY,CAAC,UAAU,MAAM,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,CAAC;QACD,OAAO,WAAW,IAAI,MAAM,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,CAAC;IAEO,mBAAmB,CAAC,YAAqD,EAAE,KAAyB;QAC1G,IAAI,YAAY,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9C,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAChG,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,WAAW,IAAI,YAAY,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;IAChE,CAAC;IAEO,wBAAwB,CAAC,SAA6B;QAC5D,MAAM,UAAU,GAAG,SAAS,EAAE,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5E,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;QAED,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACxE,OAAO,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAEO,OAAO,CAAC,KAAa;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC;IACrF,CAAC;IAEO,OAAO,CAAC,KAAa;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;IAEO,qBAAqB,CAAC,KAAa;QACzC,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC;IACrD,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,OAAe;QAChD,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,uBAAuB,CAAC,EAAE;gBAClH,SAAS,EAAE,eAAe;aAC3B,CAAC,CAAC;YACH,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,uBAAuB,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5H,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,OAAe,EAAE,OAA+B;QACjF,MAAM,KAAK,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;IAC7E,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,OAAe,EAAE,IAAc,EAAE,OAA8C;QACtG,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE;gBACjC,GAAG,EAAE,OAAO,EAAE,GAAG;gBACjB,SAAS,EAAE,eAAe;gBAC1B,GAAG,CAAC,OAAO,OAAO,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,IAAc,EAAE,OAA8C;QACvG,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE;gBAC5D,GAAG,EAAE,OAAO,EAAE,GAAG;gBACjB,SAAS,EAAE,eAAe;gBAC1B,GAAG,CAAC,OAAO,OAAO,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClF,CAAC,CAAC;YACH,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,OAAe,EAAE,IAAc,EAAE,KAAc;QACrE,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,KAOf,CAAC;YACF,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;gBAC/I,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,0EAA0E,CAAC;YACxG,CAAC;YACD,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YACjF,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;YAClG,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvL,CAAC;QACD,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACjE,CAAC;CACF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { RepositoryExecutionMode, TaskExecutionContext, TaskPackage } from "../types.js";
|
|
2
|
+
export interface ExecutionAddresses {
|
|
3
|
+
mode: RepositoryExecutionMode;
|
|
4
|
+
workspaceDir: string;
|
|
5
|
+
sourceDir: string;
|
|
6
|
+
artifactDir: string;
|
|
7
|
+
repoRef: string;
|
|
8
|
+
}
|
|
9
|
+
interface CreateExecutionAddressesInput {
|
|
10
|
+
mode: RepositoryExecutionMode;
|
|
11
|
+
workspaceDir: string;
|
|
12
|
+
sourceDir: string;
|
|
13
|
+
artifactDir: string;
|
|
14
|
+
repoRef?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare function createExecutionAddresses(input: CreateExecutionAddressesInput): ExecutionAddresses;
|
|
17
|
+
export declare function getExecutionAdditionalDirectories(addresses: ExecutionAddresses): string[];
|
|
18
|
+
export declare function getVisibleRepoDir(addresses: ExecutionAddresses): string | undefined;
|
|
19
|
+
export declare function buildExecutionTaskPackage(taskPackage: TaskPackage, addresses: ExecutionAddresses): TaskPackage;
|
|
20
|
+
export declare function buildExecutionContextPrompt(context: TaskExecutionContext): {
|
|
21
|
+
taskRootDir: string;
|
|
22
|
+
addresses: {
|
|
23
|
+
mode: ExecutionAddresses["mode"];
|
|
24
|
+
workspaceDir: string;
|
|
25
|
+
artifactDir: string;
|
|
26
|
+
repoRef: string;
|
|
27
|
+
visibleRepoDir?: string;
|
|
28
|
+
};
|
|
29
|
+
sandboxMode: TaskExecutionContext["sandboxMode"];
|
|
30
|
+
approvalPolicy: TaskExecutionContext["approvalPolicy"];
|
|
31
|
+
workspaceSkillMountDir?: string | null;
|
|
32
|
+
mountedSkills?: Array<{
|
|
33
|
+
id: string;
|
|
34
|
+
level: string;
|
|
35
|
+
sourceKind: string;
|
|
36
|
+
version: string;
|
|
37
|
+
}>;
|
|
38
|
+
allowedEvolutionSkillDir?: string | null;
|
|
39
|
+
};
|
|
40
|
+
export {};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// ExecutionAddresses is the single address contract shared by runtime and runners.
|
|
2
|
+
// It hides copy/inplace differences behind one stable shape so downstream code can consume addresses instead of branching on mode.
|
|
3
|
+
export function createExecutionAddresses(input) {
|
|
4
|
+
return {
|
|
5
|
+
mode: input.mode,
|
|
6
|
+
workspaceDir: input.workspaceDir,
|
|
7
|
+
sourceDir: input.sourceDir,
|
|
8
|
+
artifactDir: input.artifactDir,
|
|
9
|
+
repoRef: input.repoRef ?? input.sourceDir
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export function getExecutionAdditionalDirectories(addresses) {
|
|
13
|
+
return addresses.mode === "inplace" ? [addresses.sourceDir] : [];
|
|
14
|
+
}
|
|
15
|
+
export function getVisibleRepoDir(addresses) {
|
|
16
|
+
return addresses.mode === "inplace" ? addresses.sourceDir : undefined;
|
|
17
|
+
}
|
|
18
|
+
function normalizePromptText(value) {
|
|
19
|
+
const trimmed = value?.trim();
|
|
20
|
+
if (!trimmed) {
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
return trimmed.replace(/\r\n/g, "\n");
|
|
24
|
+
}
|
|
25
|
+
export function buildExecutionTaskPackage(taskPackage, addresses) {
|
|
26
|
+
const repo = typeof taskPackage.repo === "string" && taskPackage.repo.trim().length > 0
|
|
27
|
+
? addresses.repoRef
|
|
28
|
+
: taskPackage.repo;
|
|
29
|
+
const content = normalizePromptText(taskPackage.input.content) ?? taskPackage.input.content;
|
|
30
|
+
const { description: _description, ...restInput } = taskPackage.input;
|
|
31
|
+
return {
|
|
32
|
+
...taskPackage,
|
|
33
|
+
...(repo ? { repo } : {}),
|
|
34
|
+
input: {
|
|
35
|
+
...restInput,
|
|
36
|
+
content
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
export function buildExecutionContextPrompt(context) {
|
|
41
|
+
const visibleRepoDir = getVisibleRepoDir(context.addresses);
|
|
42
|
+
return {
|
|
43
|
+
taskRootDir: context.taskRootDir,
|
|
44
|
+
addresses: {
|
|
45
|
+
mode: context.addresses.mode,
|
|
46
|
+
workspaceDir: context.addresses.workspaceDir,
|
|
47
|
+
artifactDir: context.addresses.artifactDir,
|
|
48
|
+
repoRef: context.addresses.repoRef,
|
|
49
|
+
...(visibleRepoDir ? { visibleRepoDir } : {})
|
|
50
|
+
},
|
|
51
|
+
sandboxMode: context.sandboxMode,
|
|
52
|
+
approvalPolicy: context.approvalPolicy,
|
|
53
|
+
workspaceSkillMountDir: context.workspaceSkillMountDir ?? null,
|
|
54
|
+
mountedSkills: (context.mountedSkills ?? []).map((skill) => ({
|
|
55
|
+
id: skill.id,
|
|
56
|
+
level: skill.level,
|
|
57
|
+
sourceKind: skill.sourceKind,
|
|
58
|
+
version: skill.version
|
|
59
|
+
})),
|
|
60
|
+
allowedEvolutionSkillDir: context.allowedEvolutionSkillDir ?? null
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=execution-addresses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution-addresses.js","sourceRoot":"","sources":["../../src/task-environment/execution-addresses.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { RuntimeEvent } from "../../types.js";
|
|
2
|
+
export declare class CliFileIntake {
|
|
3
|
+
private readonly inboxDir;
|
|
4
|
+
constructor(inboxDir: string);
|
|
5
|
+
init(): Promise<void>;
|
|
6
|
+
listInboxFiles(): Promise<string[]>;
|
|
7
|
+
readEventFromFile(path: string): Promise<RuntimeEvent>;
|
|
8
|
+
deleteInboxFile(path: string): Promise<void>;
|
|
9
|
+
buildInboxFilePath(): string;
|
|
10
|
+
getSignalPath(): string;
|
|
11
|
+
touchSignal(): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { mkdir, readFile, readdir, rm, stat, utimes, writeFile } from "node:fs/promises";
|
|
2
|
+
import { basename, join } from "node:path";
|
|
3
|
+
export class CliFileIntake {
|
|
4
|
+
inboxDir;
|
|
5
|
+
constructor(inboxDir) {
|
|
6
|
+
this.inboxDir = inboxDir;
|
|
7
|
+
}
|
|
8
|
+
// Inbox initialization creates both the drop directory and the watcher signal file.
|
|
9
|
+
async init() {
|
|
10
|
+
await mkdir(this.inboxDir, { recursive: true });
|
|
11
|
+
try {
|
|
12
|
+
await stat(this.getSignalPath());
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
await writeFile(this.getSignalPath(), "signal", "utf8");
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
async listInboxFiles() {
|
|
19
|
+
const entries = await readdir(this.inboxDir, { withFileTypes: true });
|
|
20
|
+
return entries
|
|
21
|
+
.filter((entry) => entry.isFile() && entry.name.endsWith(".json"))
|
|
22
|
+
.map((entry) => join(this.inboxDir, entry.name))
|
|
23
|
+
.sort();
|
|
24
|
+
}
|
|
25
|
+
// Inbox files are normalized into raw runtime events at the edge of the system.
|
|
26
|
+
async readEventFromFile(path) {
|
|
27
|
+
const raw = await readFile(path, "utf8");
|
|
28
|
+
const payload = JSON.parse(raw);
|
|
29
|
+
const content = payload.content;
|
|
30
|
+
if (!content || typeof content.content !== "string") {
|
|
31
|
+
throw new Error(`Missing content in inbox file ${basename(path)}`);
|
|
32
|
+
}
|
|
33
|
+
const stableEventId = payload.eventId?.trim() || `event-${basename(path, ".json")}`;
|
|
34
|
+
return {
|
|
35
|
+
eventId: stableEventId,
|
|
36
|
+
type: payload.type ?? "task.submitted_manually",
|
|
37
|
+
content,
|
|
38
|
+
createdAt: payload.createdAt?.trim() || new Date().toISOString()
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
async deleteInboxFile(path) {
|
|
42
|
+
await rm(path, { force: true });
|
|
43
|
+
}
|
|
44
|
+
buildInboxFilePath() {
|
|
45
|
+
return join(this.inboxDir, `submit-${Date.now()}-${Math.random().toString(36).slice(2, 8)}.json`);
|
|
46
|
+
}
|
|
47
|
+
getSignalPath() {
|
|
48
|
+
return join(this.inboxDir, "inbox.signal");
|
|
49
|
+
}
|
|
50
|
+
// Touching the signal file lets runtime watchers react without scanning the whole inbox.
|
|
51
|
+
async touchSignal() {
|
|
52
|
+
const now = new Date();
|
|
53
|
+
await utimes(this.getSignalPath(), now, now);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=cli-file-intake.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-file-intake.js","sourceRoot":"","sources":["../../../src/task-environment/intake/cli-file-intake.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { RuntimeEvent, RuntimeEventContent } from "../../types.js";
|
|
2
|
+
export declare function createManualEventContent(args: Record<string, string>): RuntimeEventContent;
|
|
3
|
+
export declare function createManualProblemEvent(args: Record<string, string>): Omit<RuntimeEvent, "eventId" | "createdAt">;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// Manual submissions only build raw runtime events.
|
|
2
|
+
// Task understanding is deferred to triage instead of being hard-coded at intake time.
|
|
3
|
+
export function createManualEventContent(args) {
|
|
4
|
+
const title = (args.title ?? "").trim();
|
|
5
|
+
const description = (args.desc ?? args.description ?? "").trim();
|
|
6
|
+
const content = [title, description, args.repro, args.logs].filter(Boolean).join("\n\n").trim();
|
|
7
|
+
const metadata = {};
|
|
8
|
+
if (args.expected) {
|
|
9
|
+
metadata.expectedResult = args.expected;
|
|
10
|
+
}
|
|
11
|
+
if (args.actual) {
|
|
12
|
+
metadata.actualResult = args.actual;
|
|
13
|
+
}
|
|
14
|
+
if (args.env) {
|
|
15
|
+
metadata.envInfo = args.env;
|
|
16
|
+
}
|
|
17
|
+
if (args.repro) {
|
|
18
|
+
metadata.reproSteps = args.repro;
|
|
19
|
+
}
|
|
20
|
+
if (args.logs) {
|
|
21
|
+
metadata.logs = args.logs;
|
|
22
|
+
}
|
|
23
|
+
if (args["task-type"]) {
|
|
24
|
+
metadata.taskTypeHint = args["task-type"];
|
|
25
|
+
}
|
|
26
|
+
if (args["allow-duplicate"] === "true") {
|
|
27
|
+
// Manual replay mode intentionally disables title-based idempotency so the same real case can be resubmitted.
|
|
28
|
+
metadata.allowDuplicate = true;
|
|
29
|
+
}
|
|
30
|
+
const qAssignee = {
|
|
31
|
+
...(args["q-assignee-display-name"] ? { displayName: args["q-assignee-display-name"] } : {}),
|
|
32
|
+
...(args["q-assignee-login"] ? { login: args["q-assignee-login"] } : {}),
|
|
33
|
+
...(args["q-assignee-email"] ? { email: args["q-assignee-email"] } : {}),
|
|
34
|
+
...(args["q-assignee-open-id"] ? { openId: args["q-assignee-open-id"] } : {}),
|
|
35
|
+
...(args["q-assignee-resolved-by"] ? { resolvedBy: args["q-assignee-resolved-by"] } : {})
|
|
36
|
+
};
|
|
37
|
+
if (Object.keys(qAssignee).length > 0) {
|
|
38
|
+
metadata.qAssignee = qAssignee;
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
source: "manual",
|
|
42
|
+
...(args.sourceRef ? { sourceRef: args.sourceRef } : {}),
|
|
43
|
+
title,
|
|
44
|
+
...(description ? { description } : {}),
|
|
45
|
+
content,
|
|
46
|
+
...(args.repo ? { repo: args.repo } : {}),
|
|
47
|
+
...(args.branch ? { branch: args.branch } : {}),
|
|
48
|
+
...(Object.keys(metadata).length > 0 ? { metadata } : {})
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
export function createManualProblemEvent(args) {
|
|
52
|
+
return {
|
|
53
|
+
type: "task.submitted_manually",
|
|
54
|
+
content: createManualEventContent(args)
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=manual-problem-intake.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manual-problem-intake.js","sourceRoot":"","sources":["../../../src/task-environment/intake/manual-problem-intake.ts"],"names":[],"mappings":"AAEA,oDAAoD;AACpD,uFAAuF;AACvF,MAAM,UAAU,wBAAwB,CAAC,IAA4B;IACnE,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACjE,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAChG,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAE7C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC1C,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;IACtC,CAAC;IACD,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;IAC9B,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;IACnC,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IAC5B,CAAC;IACD,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QACtB,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,MAAM,EAAE,CAAC;QACvC,8GAA8G;QAC9G,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC;IACjC,CAAC;IACD,MAAM,SAAS,GAAG;QAChB,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1F,CAAC;IACF,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;IACjC,CAAC;IAED,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,KAAK;QACL,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,OAAO;QACP,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAA4B;IACnE,OAAO;QACL,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE,wBAAwB,CAAC,IAAI,CAAC;KACxC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { OptimusConfig, PollingEnqueueResult, PollingIntakeSourceConfig, RuntimeEvent } from "../../types.js";
|
|
2
|
+
import { BlockingEventQueue } from "../runtime/blocking-event-queue.js";
|
|
3
|
+
import { SQLiteEventStore } from "../storage/sqlite-event-store.js";
|
|
4
|
+
export declare class PollingProblemIntake {
|
|
5
|
+
private readonly eventQueue;
|
|
6
|
+
private readonly eventStore;
|
|
7
|
+
private readonly config;
|
|
8
|
+
private readonly adapters;
|
|
9
|
+
constructor(eventQueue: BlockingEventQueue<RuntimeEvent>, eventStore: SQLiteEventStore, config: OptimusConfig);
|
|
10
|
+
pollAndEnqueue(source: PollingIntakeSourceConfig): Promise<PollingEnqueueResult>;
|
|
11
|
+
listConfiguredSources(): PollingIntakeSourceConfig[];
|
|
12
|
+
listEnabledSources(): PollingIntakeSourceConfig[];
|
|
13
|
+
private createRuntimeEvent;
|
|
14
|
+
}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { readFile, rm } from "node:fs/promises";
|
|
3
|
+
class NoopPollingSourceAdapter {
|
|
4
|
+
async poll(source, checkpoint) {
|
|
5
|
+
void source;
|
|
6
|
+
void checkpoint;
|
|
7
|
+
return [];
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
// sample_file stays as a one-shot fixture adapter for tests and local debugging.
|
|
11
|
+
class SampleFilePollingSourceAdapter {
|
|
12
|
+
async poll(source, checkpoint) {
|
|
13
|
+
const records = await readJsonRecords(resolveJsonInputPath(source, "sampleFile"));
|
|
14
|
+
void checkpoint;
|
|
15
|
+
await rm(source.sampleFile, { force: true });
|
|
16
|
+
return records.map((entry, index) => normalizeSourceRecord(source, entry, index));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
// json_file is the first reusable static adapter for turning platform snapshots into stable polling input.
|
|
20
|
+
class JsonFilePollingSourceAdapter {
|
|
21
|
+
async poll(source, checkpoint) {
|
|
22
|
+
const records = await readJsonRecords(resolveJsonInputPath(source, "jsonFile"));
|
|
23
|
+
void checkpoint;
|
|
24
|
+
if (source.removeAfterRead) {
|
|
25
|
+
await rm(source.jsonFile, { force: true });
|
|
26
|
+
}
|
|
27
|
+
return records.map((entry, index) => normalizeSourceRecord(source, entry, index));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export class PollingProblemIntake {
|
|
31
|
+
eventQueue;
|
|
32
|
+
eventStore;
|
|
33
|
+
config;
|
|
34
|
+
adapters = new Map([
|
|
35
|
+
["noop", new NoopPollingSourceAdapter()],
|
|
36
|
+
["sample_file", new SampleFilePollingSourceAdapter()],
|
|
37
|
+
["json_file", new JsonFilePollingSourceAdapter()]
|
|
38
|
+
]);
|
|
39
|
+
constructor(eventQueue, eventStore, config) {
|
|
40
|
+
this.eventQueue = eventQueue;
|
|
41
|
+
this.eventStore = eventStore;
|
|
42
|
+
this.config = config;
|
|
43
|
+
}
|
|
44
|
+
// Polling intake converts external source records into deduplicated runtime events and records source identities for future polls.
|
|
45
|
+
async pollAndEnqueue(source) {
|
|
46
|
+
const adapter = this.adapters.get(source.type);
|
|
47
|
+
if (!adapter) {
|
|
48
|
+
throw new Error(`Unsupported polling source type: ${source.type}`);
|
|
49
|
+
}
|
|
50
|
+
const checkpoint = await this.eventStore.getPollerCheckpoint(source.id);
|
|
51
|
+
const records = await adapter.poll(source, checkpoint);
|
|
52
|
+
let acceptedCount = 0;
|
|
53
|
+
let duplicateCount = 0;
|
|
54
|
+
let updatedCount = 0;
|
|
55
|
+
let skippedCount = 0;
|
|
56
|
+
for (const record of records) {
|
|
57
|
+
if (!record.sourceRecordId || !record.contentFingerprint) {
|
|
58
|
+
skippedCount += 1;
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
const event = this.createRuntimeEvent(record);
|
|
62
|
+
const previous = await this.eventStore.getSourceRecord(record.pollerId, record.sourceRecordId);
|
|
63
|
+
const dedup = await this.eventStore.upsertSourceRecord({
|
|
64
|
+
pollerId: record.pollerId,
|
|
65
|
+
sourceRecordId: record.sourceRecordId,
|
|
66
|
+
contentFingerprint: record.contentFingerprint,
|
|
67
|
+
eventId: event.eventId
|
|
68
|
+
});
|
|
69
|
+
if (!dedup.accepted) {
|
|
70
|
+
duplicateCount += 1;
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
if (previous) {
|
|
74
|
+
updatedCount += 1;
|
|
75
|
+
}
|
|
76
|
+
this.eventQueue.push(event);
|
|
77
|
+
acceptedCount += 1;
|
|
78
|
+
}
|
|
79
|
+
return {
|
|
80
|
+
pollerId: source.id,
|
|
81
|
+
acceptedCount,
|
|
82
|
+
duplicateCount,
|
|
83
|
+
updatedCount,
|
|
84
|
+
skippedCount,
|
|
85
|
+
checkpoint: buildCheckpoint(records, acceptedCount, duplicateCount, updatedCount, skippedCount)
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
listConfiguredSources() {
|
|
89
|
+
const configured = this.config.intake.pollingSources ?? [];
|
|
90
|
+
if (configured.length > 0) {
|
|
91
|
+
return configured;
|
|
92
|
+
}
|
|
93
|
+
if (!this.config.intake.pollingEnabled) {
|
|
94
|
+
return [];
|
|
95
|
+
}
|
|
96
|
+
return [{
|
|
97
|
+
id: "default-polling-source",
|
|
98
|
+
type: this.config.intake.pollingProvider,
|
|
99
|
+
enabled: true,
|
|
100
|
+
intervalMs: this.config.intake.pollingIntervalMs,
|
|
101
|
+
...(this.config.intake.pollingSampleFile
|
|
102
|
+
? this.config.intake.pollingProvider === "json_file"
|
|
103
|
+
? { jsonFile: this.config.intake.pollingSampleFile, removeAfterRead: false }
|
|
104
|
+
: { sampleFile: this.config.intake.pollingSampleFile }
|
|
105
|
+
: {}),
|
|
106
|
+
eventType: "problem.discovered"
|
|
107
|
+
}];
|
|
108
|
+
}
|
|
109
|
+
listEnabledSources() {
|
|
110
|
+
return this.listConfiguredSources().filter((source) => source.enabled);
|
|
111
|
+
}
|
|
112
|
+
createRuntimeEvent(record) {
|
|
113
|
+
const eventId = buildRuntimeEventId(record.pollerId, record.sourceRecordId, record.contentFingerprint);
|
|
114
|
+
return {
|
|
115
|
+
eventId,
|
|
116
|
+
type: record.eventType,
|
|
117
|
+
content: {
|
|
118
|
+
...record.content,
|
|
119
|
+
sourceRecordId: record.sourceRecordId,
|
|
120
|
+
contentFingerprint: record.contentFingerprint
|
|
121
|
+
},
|
|
122
|
+
createdAt: new Date().toISOString()
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
function buildCheckpoint(records, acceptedCount, duplicateCount, updatedCount, skippedCount) {
|
|
127
|
+
const lastRecord = records.at(-1);
|
|
128
|
+
return {
|
|
129
|
+
...(lastRecord?.sourceRecordId ? { lastSourceRecordId: lastRecord.sourceRecordId } : {}),
|
|
130
|
+
observedAt: new Date().toISOString(),
|
|
131
|
+
acceptedCount,
|
|
132
|
+
duplicateCount,
|
|
133
|
+
updatedCount,
|
|
134
|
+
skippedCount
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
function normalizeSourceRecord(source, entry, index) {
|
|
138
|
+
const content = normalizeRuntimeEventContent(source, entry);
|
|
139
|
+
const sourceRecordId = resolveSourceRecordId(source, entry, index, content);
|
|
140
|
+
const contentFingerprint = buildContentFingerprint(content);
|
|
141
|
+
return {
|
|
142
|
+
pollerId: source.id,
|
|
143
|
+
sourceRecordId,
|
|
144
|
+
contentFingerprint,
|
|
145
|
+
eventType: resolveSourceEventType(source),
|
|
146
|
+
content
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
function normalizeRuntimeEventContent(source, entry) {
|
|
150
|
+
const title = readOptionalString(entry.title);
|
|
151
|
+
const description = readOptionalString(entry.description);
|
|
152
|
+
const content = readOptionalString(entry.content) ?? description ?? title ?? "";
|
|
153
|
+
const sourceRef = readOptionalString(entry.sourceRef) ?? readOptionalString(entry.id) ?? title ?? undefined;
|
|
154
|
+
const repo = readOptionalString(entry.repo) ?? source.defaultRepo;
|
|
155
|
+
const metadata = {
|
|
156
|
+
pollerId: source.id,
|
|
157
|
+
sourceType: source.type,
|
|
158
|
+
rawRecord: entry,
|
|
159
|
+
...buildAutomationMetadata(source)
|
|
160
|
+
};
|
|
161
|
+
return {
|
|
162
|
+
source: "polling",
|
|
163
|
+
...(sourceRef ? { sourceRef } : {}),
|
|
164
|
+
...(title ? { title } : {}),
|
|
165
|
+
...(description ? { description } : {}),
|
|
166
|
+
content,
|
|
167
|
+
...(repo ? { repo } : {}),
|
|
168
|
+
metadata
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
function buildAutomationMetadata(source) {
|
|
172
|
+
if (!source.automation?.enabled) {
|
|
173
|
+
return {};
|
|
174
|
+
}
|
|
175
|
+
return {
|
|
176
|
+
...(source.automation.taskTypeHint ? { taskTypeHint: source.automation.taskTypeHint } : {}),
|
|
177
|
+
...(source.automation.metadata ? source.automation.metadata : {})
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
function resolveSourceRecordId(source, entry, index, content) {
|
|
181
|
+
const explicit = readOptionalString(entry.sourceRecordId) ?? readOptionalString(entry.id) ?? readOptionalString(entry.sourceRef);
|
|
182
|
+
if (explicit) {
|
|
183
|
+
return `${source.id}:${explicit}`;
|
|
184
|
+
}
|
|
185
|
+
const fallbackSeed = [content.title ?? "", content.description ?? "", content.content, String(index)].join("\n");
|
|
186
|
+
return `${source.id}:${createHash("sha256").update(fallbackSeed).digest("hex")}`;
|
|
187
|
+
}
|
|
188
|
+
function resolveSourceEventType(source) {
|
|
189
|
+
return source.eventType ?? "problem.discovered";
|
|
190
|
+
}
|
|
191
|
+
function buildContentFingerprint(content) {
|
|
192
|
+
const normalized = [
|
|
193
|
+
normalizeFingerprintField(content.title),
|
|
194
|
+
normalizeFingerprintField(content.description),
|
|
195
|
+
normalizeFingerprintField(content.content),
|
|
196
|
+
normalizeFingerprintField(content.repo),
|
|
197
|
+
normalizeFingerprintField(content.branch)
|
|
198
|
+
].join("\n");
|
|
199
|
+
return createHash("sha256").update(normalized).digest("hex");
|
|
200
|
+
}
|
|
201
|
+
function normalizeFingerprintField(value) {
|
|
202
|
+
if (!value) {
|
|
203
|
+
return "";
|
|
204
|
+
}
|
|
205
|
+
return value.replace(/\s+/g, " ").trim().toLowerCase();
|
|
206
|
+
}
|
|
207
|
+
function buildRuntimeEventId(pollerId, sourceRecordId, contentFingerprint) {
|
|
208
|
+
const digest = createHash("sha256")
|
|
209
|
+
.update([pollerId, sourceRecordId, contentFingerprint].join("\n"))
|
|
210
|
+
.digest("hex")
|
|
211
|
+
.slice(0, 16);
|
|
212
|
+
return `event-${digest}`;
|
|
213
|
+
}
|
|
214
|
+
function readOptionalString(value) {
|
|
215
|
+
return typeof value === "string" && value.trim().length > 0 ? value.trim() : undefined;
|
|
216
|
+
}
|
|
217
|
+
function resolveJsonInputPath(source, key) {
|
|
218
|
+
const path = source[key];
|
|
219
|
+
if (!path) {
|
|
220
|
+
throw new Error(`${key} is required for poller ${source.id}`);
|
|
221
|
+
}
|
|
222
|
+
return path;
|
|
223
|
+
}
|
|
224
|
+
async function readJsonRecords(path) {
|
|
225
|
+
const raw = await readFile(path, "utf8");
|
|
226
|
+
const parsed = JSON.parse(raw);
|
|
227
|
+
if (!Array.isArray(parsed)) {
|
|
228
|
+
throw new Error(`Polling source file ${path} must contain a JSON array.`);
|
|
229
|
+
}
|
|
230
|
+
return parsed.filter((entry) => typeof entry === "object" && entry !== null);
|
|
231
|
+
}
|
|
232
|
+
//# sourceMappingURL=polling-problem-intake.js.map
|