hammoc 1.8.4 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -6
- package/package.json +1 -1
- package/packages/client/dist/assets/MermaidViewer-B-LwclIl.js +7 -0
- package/packages/client/dist/assets/PdfViewer-C3Nymwn3.js +12 -0
- package/packages/client/dist/assets/PdfViewer-QCQEGvBO.css +1 -0
- package/packages/client/dist/assets/abnfDiagram-VRR7QNED-GfhY_hnV.js +1 -0
- package/packages/client/dist/assets/{agentExampleHighlight-Dws80em9.js → agentExampleHighlight-CyhVLy0_.js} +1 -1
- package/packages/client/dist/assets/arc-8nyjXGC3.js +1 -0
- package/packages/client/dist/assets/architectureDiagram-ZJ3FMSHR-B4onXLm4.js +36 -0
- package/packages/client/dist/assets/blockDiagram-677ZJIJ3-D0D6ncaN.js +132 -0
- package/packages/client/dist/assets/c4Diagram-LMCZKHZV-CE7Tip-_.js +10 -0
- package/packages/client/dist/assets/channel-CPjlbdOo.js +1 -0
- package/packages/client/dist/assets/chunk-2Q5K7J3B-4rW1da1Z.js +1 -0
- package/packages/client/dist/assets/chunk-32BRIVSS-JuzxS4QA.js +1 -0
- package/packages/client/dist/assets/chunk-5VM5RSS4-WRNf-xsi.js +15 -0
- package/packages/client/dist/assets/chunk-EX3LRPZG-BDWPlBKO.js +231 -0
- package/packages/client/dist/assets/chunk-JWPE2WC7-B8nCyQAc.js +1 -0
- package/packages/client/dist/assets/chunk-MOJQB5TN-7c-yriHe.js +88 -0
- package/packages/client/dist/assets/chunk-RYQCIY6F-LTDywRs7.js +1 -0
- package/packages/client/dist/assets/chunk-V7JOEXUC-DjVgQpjl.js +206 -0
- package/packages/client/dist/assets/chunk-VR4S4FIN-7jDdkUpx.js +1 -0
- package/packages/client/dist/assets/chunk-XXDRQBXY-ENKV2O8a.js +1 -0
- package/packages/client/dist/assets/classDiagram-OUVF2IWQ-C0PbC7Pi.js +1 -0
- package/packages/client/dist/assets/classDiagram-v2-EOCWNBFH-C0PbC7Pi.js +1 -0
- package/packages/client/dist/assets/{commandTokenHighlight-aR071CNy.js → commandTokenHighlight-DGP0RKx0.js} +1 -1
- package/packages/client/dist/assets/cose-bilkent-JH36ORCC-CQTNdQ-g.js +1 -0
- package/packages/client/dist/assets/cynefin-VYW2F7L2-BYlAJRcO.js +178 -0
- package/packages/client/dist/assets/cynefinDiagram-TSTJHNR4-7zyUTflT.js +62 -0
- package/packages/client/dist/assets/cytoscape.esm-DTSO7Bv0.js +331 -0
- package/packages/client/dist/assets/dagre-VKFMJZFB-DyZir42W.js +4 -0
- package/packages/client/dist/assets/defaultLocale-DX6XiGOO.js +1 -0
- package/packages/client/dist/assets/diagram-FQU43EPY-CmNAU8Nw.js +3 -0
- package/packages/client/dist/assets/diagram-G47NLZAW-B0EIk03o.js +24 -0
- package/packages/client/dist/assets/diagram-NH7WQ7WH-Dulv0f1N.js +24 -0
- package/packages/client/dist/assets/diagram-OA4YK3LP-DEEcMLgi.js +30 -0
- package/packages/client/dist/assets/diagram-WEI45ONY-ZYebAZ93.js +41 -0
- package/packages/client/dist/assets/ebnfDiagram-CCIWWBDH-DCHpt3qn.js +1 -0
- package/packages/client/dist/assets/erDiagram-Q63AITRT-B6T87-48.js +85 -0
- package/packages/client/dist/assets/flowDiagram-23GEKE2U-DAcW6mKJ.js +156 -0
- package/packages/client/dist/assets/ganttDiagram-NO4QXBWP-Ct_eFFcM.js +292 -0
- package/packages/client/dist/assets/gitGraphDiagram-IHSO6WYX-BGi8Fdm2.js +106 -0
- package/packages/client/dist/assets/graph-C9eacEi8.js +1 -0
- package/packages/client/dist/assets/index-CtMiUbMJ.js +1671 -0
- package/packages/client/dist/assets/index-hTu6ZG2N.js +2 -0
- package/packages/client/dist/assets/index-oBa2uNlv.css +32 -0
- package/packages/client/dist/assets/infoDiagram-FWYZ7A6U-CqvwbXJn.js +2 -0
- package/packages/client/dist/assets/init-Gi6I4Gst.js +1 -0
- package/packages/client/dist/assets/ishikawaDiagram-FXEZZL3T-CHhr5ioQ.js +70 -0
- package/packages/client/dist/assets/journeyDiagram-5HDEW3XC-d20NzZAd.js +139 -0
- package/packages/client/dist/assets/kanban-definition-HUTT4EX6-CHx3wOer.js +89 -0
- package/packages/client/dist/assets/katex-C5jXJg4s.js +257 -0
- package/packages/client/dist/assets/layout-DEXfKzaS.js +1 -0
- package/packages/client/dist/assets/linear-Cnp1E9M4.js +1 -0
- package/packages/client/dist/assets/map-Czzmt4hB.js +1 -0
- package/packages/client/dist/assets/mermaid.core-jAhLhPYr.js +314 -0
- package/packages/client/dist/assets/mindmap-definition-LN4V7U3C-zi30RPoJ.js +96 -0
- package/packages/client/dist/assets/ordinal-Cboi1Yqb.js +1 -0
- package/packages/client/dist/assets/pdf.worker.min-qwK7q_zL.mjs +28 -0
- package/packages/client/dist/assets/pegDiagram-2B236MQR-4gKLzTqu.js +1 -0
- package/packages/client/dist/assets/pieDiagram-ENE6RG2P-DRDhpjxP.js +39 -0
- package/packages/client/dist/assets/quadrantDiagram-ABIIQ3AL-FmTxRIlW.js +7 -0
- package/packages/client/dist/assets/railroadDiagram-RFXS5EU6-Bc-Q7iPs.js +1 -0
- package/packages/client/dist/assets/requirementDiagram-TGXJPOKE-D209tlqv.js +84 -0
- package/packages/client/dist/assets/sankeyDiagram-HTMAVEWB--I_lSbCV.js +40 -0
- package/packages/client/dist/assets/sequenceDiagram-DBY2YBRQ-Da5YJcDJ.js +162 -0
- package/packages/client/dist/assets/sizeCapture-X5ZJPWSS-DYuc-rzB.js +1 -0
- package/packages/client/dist/assets/{snippetTokenHighlight-ot6u3hW4.js → snippetTokenHighlight-qXHxvlCE.js} +1 -1
- package/packages/client/dist/assets/stateDiagram-2N3HPSRC-DoOeZoRP.js +1 -0
- package/packages/client/dist/assets/stateDiagram-v2-6OUMAXLB-DLkUyWs6.js +1 -0
- package/packages/client/dist/assets/swimlanes-5IMT3BWC-BcR7uCTf.js +2 -0
- package/packages/client/dist/assets/swimlanesDiagram-G3AALYLV-C0FDo-hf.js +8 -0
- package/packages/client/dist/assets/timeline-definition-FHXFAJF6-CLzKR6_i.js +120 -0
- package/packages/client/dist/assets/vennDiagram-L72KCM5P-TajEacPR.js +34 -0
- package/packages/client/dist/assets/wardleyDiagram-EHGQE667-DKvVEb3V.js +78 -0
- package/packages/client/dist/assets/xychartDiagram-FW5EYKEG-CaJG8r0j.js +7 -0
- package/packages/client/dist/index.html +2 -2
- package/packages/client/dist/sw.js +2 -2
- package/packages/server/dist/controllers/accountController.d.ts.map +1 -1
- package/packages/server/dist/controllers/accountController.js +31 -11
- package/packages/server/dist/controllers/accountController.js.map +1 -1
- package/packages/server/dist/controllers/fileSystemController.d.ts +6 -0
- package/packages/server/dist/controllers/fileSystemController.d.ts.map +1 -1
- package/packages/server/dist/controllers/fileSystemController.js +34 -0
- package/packages/server/dist/controllers/fileSystemController.js.map +1 -1
- package/packages/server/dist/controllers/projectController.d.ts.map +1 -1
- package/packages/server/dist/controllers/projectController.js +4 -2
- package/packages/server/dist/controllers/projectController.js.map +1 -1
- package/packages/server/dist/controllers/sessionController.d.ts +5 -0
- package/packages/server/dist/controllers/sessionController.d.ts.map +1 -1
- package/packages/server/dist/controllers/sessionController.js +95 -3
- package/packages/server/dist/controllers/sessionController.js.map +1 -1
- package/packages/server/dist/handlers/hookBridge.d.ts +131 -0
- package/packages/server/dist/handlers/hookBridge.d.ts.map +1 -0
- package/packages/server/dist/handlers/hookBridge.js +178 -0
- package/packages/server/dist/handlers/hookBridge.js.map +1 -0
- package/packages/server/dist/handlers/streamCallbacks.d.ts.map +1 -1
- package/packages/server/dist/handlers/streamCallbacks.js +30 -4
- package/packages/server/dist/handlers/streamCallbacks.js.map +1 -1
- package/packages/server/dist/handlers/websocket.d.ts +44 -2
- package/packages/server/dist/handlers/websocket.d.ts.map +1 -1
- package/packages/server/dist/handlers/websocket.js +666 -64
- package/packages/server/dist/handlers/websocket.js.map +1 -1
- package/packages/server/dist/index.js +4 -1
- package/packages/server/dist/index.js.map +1 -1
- package/packages/server/dist/locales/en/server.json +9 -3
- package/packages/server/dist/locales/es/server.json +9 -3
- package/packages/server/dist/locales/ja/server.json +9 -3
- package/packages/server/dist/locales/ko/server.json +9 -3
- package/packages/server/dist/locales/pt/server.json +9 -3
- package/packages/server/dist/locales/zh-CN/server.json +9 -3
- package/packages/server/dist/routes/account.d.ts.map +1 -1
- package/packages/server/dist/routes/account.js +4 -2
- package/packages/server/dist/routes/account.js.map +1 -1
- package/packages/server/dist/routes/fileSystem.d.ts.map +1 -1
- package/packages/server/dist/routes/fileSystem.js +2 -0
- package/packages/server/dist/routes/fileSystem.js.map +1 -1
- package/packages/server/dist/routes/sessions.d.ts.map +1 -1
- package/packages/server/dist/routes/sessions.js +2 -0
- package/packages/server/dist/routes/sessions.js.map +1 -1
- package/packages/server/dist/services/accountInfoService.d.ts +36 -1
- package/packages/server/dist/services/accountInfoService.d.ts.map +1 -1
- package/packages/server/dist/services/accountInfoService.js +90 -4
- package/packages/server/dist/services/accountInfoService.js.map +1 -1
- package/packages/server/dist/services/accountStorageService.d.ts +55 -9
- package/packages/server/dist/services/accountStorageService.d.ts.map +1 -1
- package/packages/server/dist/services/accountStorageService.js +244 -12
- package/packages/server/dist/services/accountStorageService.js.map +1 -1
- package/packages/server/dist/services/chatEngine.d.ts +59 -3
- package/packages/server/dist/services/chatEngine.d.ts.map +1 -1
- package/packages/server/dist/services/chatService.d.ts +112 -3
- package/packages/server/dist/services/chatService.d.ts.map +1 -1
- package/packages/server/dist/services/chatService.js +353 -98
- package/packages/server/dist/services/chatService.js.map +1 -1
- package/packages/server/dist/services/claudeLoginService.d.ts +14 -3
- package/packages/server/dist/services/claudeLoginService.d.ts.map +1 -1
- package/packages/server/dist/services/claudeLoginService.js +18 -4
- package/packages/server/dist/services/claudeLoginService.js.map +1 -1
- package/packages/server/dist/services/cliChatEngine.d.ts.map +1 -1
- package/packages/server/dist/services/cliChatEngine.js +124 -22
- package/packages/server/dist/services/cliChatEngine.js.map +1 -1
- package/packages/server/dist/services/cliModalDetect.d.ts +14 -0
- package/packages/server/dist/services/cliModalDetect.d.ts.map +1 -1
- package/packages/server/dist/services/cliModalDetect.js +12 -3
- package/packages/server/dist/services/cliModalDetect.js.map +1 -1
- package/packages/server/dist/services/cliSessionPool.js +1 -1
- package/packages/server/dist/services/cliSessionPool.js.map +1 -1
- package/packages/server/dist/services/commandService.d.ts.map +1 -1
- package/packages/server/dist/services/commandService.js +19 -9
- package/packages/server/dist/services/commandService.js.map +1 -1
- package/packages/server/dist/services/engineResidencyRegistry.d.ts +112 -0
- package/packages/server/dist/services/engineResidencyRegistry.d.ts.map +1 -0
- package/packages/server/dist/services/engineResidencyRegistry.js +195 -0
- package/packages/server/dist/services/engineResidencyRegistry.js.map +1 -0
- package/packages/server/dist/services/harnessAgentService.d.ts.map +1 -1
- package/packages/server/dist/services/harnessAgentService.js +12 -2
- package/packages/server/dist/services/harnessAgentService.js.map +1 -1
- package/packages/server/dist/services/harnessLintService.d.ts.map +1 -1
- package/packages/server/dist/services/harnessLintService.js +25 -114
- package/packages/server/dist/services/harnessLintService.js.map +1 -1
- package/packages/server/dist/services/historyParser.d.ts.map +1 -1
- package/packages/server/dist/services/historyParser.js +23 -6
- package/packages/server/dist/services/historyParser.js.map +1 -1
- package/packages/server/dist/services/imageStorageService.d.ts.map +1 -1
- package/packages/server/dist/services/imageStorageService.js +7 -0
- package/packages/server/dist/services/imageStorageService.js.map +1 -1
- package/packages/server/dist/services/projectService.d.ts +4 -1
- package/packages/server/dist/services/projectService.d.ts.map +1 -1
- package/packages/server/dist/services/projectService.js +14 -1
- package/packages/server/dist/services/projectService.js.map +1 -1
- package/packages/server/dist/services/promptQueue.d.ts +34 -0
- package/packages/server/dist/services/promptQueue.d.ts.map +1 -0
- package/packages/server/dist/services/promptQueue.js +80 -0
- package/packages/server/dist/services/promptQueue.js.map +1 -0
- package/packages/server/dist/services/ptyService.d.ts.map +1 -1
- package/packages/server/dist/services/ptyService.js +4 -1
- package/packages/server/dist/services/ptyService.js.map +1 -1
- package/packages/server/dist/services/queueService.d.ts.map +1 -1
- package/packages/server/dist/services/queueService.js +62 -4
- package/packages/server/dist/services/queueService.js.map +1 -1
- package/packages/server/dist/services/rateLimitProbeService.d.ts +73 -3
- package/packages/server/dist/services/rateLimitProbeService.d.ts.map +1 -1
- package/packages/server/dist/services/rateLimitProbeService.js +397 -30
- package/packages/server/dist/services/rateLimitProbeService.js.map +1 -1
- package/packages/server/dist/services/sessionBufferManager.d.ts.map +1 -1
- package/packages/server/dist/services/sessionBufferManager.js +22 -4
- package/packages/server/dist/services/sessionBufferManager.js.map +1 -1
- package/packages/server/dist/services/sessionExportService.d.ts +34 -0
- package/packages/server/dist/services/sessionExportService.d.ts.map +1 -0
- package/packages/server/dist/services/sessionExportService.js +269 -0
- package/packages/server/dist/services/sessionExportService.js.map +1 -0
- package/packages/server/dist/services/sessionService.d.ts +6 -0
- package/packages/server/dist/services/sessionService.d.ts.map +1 -1
- package/packages/server/dist/services/sessionService.js +30 -9
- package/packages/server/dist/services/sessionService.js.map +1 -1
- package/packages/server/dist/services/streamHandler.d.ts +177 -1
- package/packages/server/dist/services/streamHandler.d.ts.map +1 -1
- package/packages/server/dist/services/streamHandler.js +425 -39
- package/packages/server/dist/services/streamHandler.js.map +1 -1
- package/packages/server/dist/services/workspaceContext.d.ts.map +1 -1
- package/packages/server/dist/services/workspaceContext.js +6 -0
- package/packages/server/dist/services/workspaceContext.js.map +1 -1
- package/packages/server/dist/snippets/fix-lint-command-not-on-path +13 -0
- package/packages/server/dist/snippets/fix-lint-duplicate-name +12 -0
- package/packages/server/dist/snippets/fix-lint-env-var-undefined +13 -0
- package/packages/server/dist/snippets/fix-lint-regex-invalid +14 -0
- package/packages/server/dist/snippets/fix-lint-tools-non-standard +14 -0
- package/packages/server/dist/snippets/fix-lint-url-invalid +13 -0
- package/packages/server/dist/snippets/fix-lint-yaml-parse-error +14 -0
- package/packages/server/dist/snippets/fix-malformed-skill +17 -0
- package/packages/server/dist/utils/backgroundHookSettings.d.ts +31 -0
- package/packages/server/dist/utils/backgroundHookSettings.d.ts.map +1 -0
- package/packages/server/dist/utils/backgroundHookSettings.js +41 -0
- package/packages/server/dist/utils/backgroundHookSettings.js.map +1 -0
- package/packages/server/dist/utils/backgroundTaskPoller.d.ts +69 -0
- package/packages/server/dist/utils/backgroundTaskPoller.d.ts.map +1 -0
- package/packages/server/dist/utils/backgroundTaskPoller.js +356 -0
- package/packages/server/dist/utils/backgroundTaskPoller.js.map +1 -0
- package/packages/server/dist/utils/backgroundTaskTracker.d.ts +51 -3
- package/packages/server/dist/utils/backgroundTaskTracker.d.ts.map +1 -1
- package/packages/server/dist/utils/backgroundTaskTracker.js +117 -9
- package/packages/server/dist/utils/backgroundTaskTracker.js.map +1 -1
- package/packages/server/dist/utils/backgroundToolGuard.d.ts +26 -0
- package/packages/server/dist/utils/backgroundToolGuard.d.ts.map +1 -0
- package/packages/server/dist/utils/backgroundToolGuard.js +40 -0
- package/packages/server/dist/utils/backgroundToolGuard.js.map +1 -0
- package/packages/server/dist/utils/boundedRing.d.ts +44 -0
- package/packages/server/dist/utils/boundedRing.d.ts.map +1 -0
- package/packages/server/dist/utils/boundedRing.js +77 -0
- package/packages/server/dist/utils/boundedRing.js.map +1 -0
- package/packages/server/dist/utils/effortUtils.d.ts +7 -6
- package/packages/server/dist/utils/effortUtils.d.ts.map +1 -1
- package/packages/server/dist/utils/effortUtils.js +10 -9
- package/packages/server/dist/utils/effortUtils.js.map +1 -1
- package/packages/server/dist/utils/messageTree.d.ts +25 -0
- package/packages/server/dist/utils/messageTree.d.ts.map +1 -1
- package/packages/server/dist/utils/messageTree.js +167 -3
- package/packages/server/dist/utils/messageTree.js.map +1 -1
- package/packages/server/dist/utils/pathUtils.d.ts.map +1 -1
- package/packages/server/dist/utils/pathUtils.js +1 -0
- package/packages/server/dist/utils/pathUtils.js.map +1 -1
- package/packages/server/dist/utils/residencyActivation.d.ts +61 -0
- package/packages/server/dist/utils/residencyActivation.d.ts.map +1 -0
- package/packages/server/dist/utils/residencyActivation.js +60 -0
- package/packages/server/dist/utils/residencyActivation.js.map +1 -0
- package/packages/server/dist/utils/residencyPolicy.d.ts +62 -0
- package/packages/server/dist/utils/residencyPolicy.d.ts.map +1 -0
- package/packages/server/dist/utils/residencyPolicy.js +82 -0
- package/packages/server/dist/utils/residencyPolicy.js.map +1 -0
- package/packages/server/dist/utils/runtimeParamStrategy.d.ts +51 -0
- package/packages/server/dist/utils/runtimeParamStrategy.d.ts.map +1 -0
- package/packages/server/dist/utils/runtimeParamStrategy.js +60 -0
- package/packages/server/dist/utils/runtimeParamStrategy.js.map +1 -0
- package/packages/server/dist/utils/stopStrategy.d.ts +62 -0
- package/packages/server/dist/utils/stopStrategy.d.ts.map +1 -0
- package/packages/server/dist/utils/stopStrategy.js +65 -0
- package/packages/server/dist/utils/stopStrategy.js.map +1 -0
- package/packages/server/resources/internals/INDEX.md +1 -1
- package/packages/server/resources/internals/image-storage.md +14 -2
- package/packages/server/resources/manual/02-chat.md +30 -13
- package/packages/server/resources/manual/03-sessions.md +22 -1
- package/packages/server/resources/manual/04-slash-commands-favorites.md +2 -1
- package/packages/server/resources/manual/05-projects.md +1 -0
- package/packages/server/resources/manual/06-file-explorer-editor.md +21 -2
- package/packages/server/resources/manual/07-git.md +1 -1
- package/packages/server/resources/manual/08-terminal.md +1 -1
- package/packages/server/resources/manual/12-harness-workbench.md +21 -16
- package/packages/server/resources/manual/13-settings.md +22 -6
- package/packages/server/resources/manual/14-keyboard-shortcuts.md +8 -1
- package/packages/shared/dist/constants/messageTree.d.ts +2 -0
- package/packages/shared/dist/constants/messageTree.d.ts.map +1 -1
- package/packages/shared/dist/constants/messageTree.js +6 -0
- package/packages/shared/dist/constants/messageTree.js.map +1 -1
- package/packages/shared/dist/index.d.ts +1 -1
- package/packages/shared/dist/index.d.ts.map +1 -1
- package/packages/shared/dist/index.js.map +1 -1
- package/packages/shared/dist/types/accounts.d.ts +13 -0
- package/packages/shared/dist/types/accounts.d.ts.map +1 -1
- package/packages/shared/dist/types/history.d.ts +14 -1
- package/packages/shared/dist/types/history.d.ts.map +1 -1
- package/packages/shared/dist/types/message.d.ts +26 -3
- package/packages/shared/dist/types/message.d.ts.map +1 -1
- package/packages/shared/dist/types/message.js +21 -1
- package/packages/shared/dist/types/message.js.map +1 -1
- package/packages/shared/dist/types/preferences.d.ts +5 -1
- package/packages/shared/dist/types/preferences.d.ts.map +1 -1
- package/packages/shared/dist/types/preferences.js +3 -0
- package/packages/shared/dist/types/preferences.js.map +1 -1
- package/packages/shared/dist/types/sdk.d.ts +68 -10
- package/packages/shared/dist/types/sdk.d.ts.map +1 -1
- package/packages/shared/dist/types/sdk.js +56 -16
- package/packages/shared/dist/types/sdk.js.map +1 -1
- package/packages/shared/dist/types/session.d.ts +6 -0
- package/packages/shared/dist/types/session.d.ts.map +1 -1
- package/packages/shared/dist/types/session.js +6 -0
- package/packages/shared/dist/types/session.js.map +1 -1
- package/packages/shared/dist/types/streaming.d.ts +32 -2
- package/packages/shared/dist/types/streaming.d.ts.map +1 -1
- package/packages/shared/dist/types/streaming.js.map +1 -1
- package/packages/shared/dist/types/websocket.d.ts +4 -0
- package/packages/shared/dist/types/websocket.d.ts.map +1 -1
- package/scripts/probe-persistent-hooks.mjs +795 -0
- package/packages/client/dist/assets/index-BHbx57gc.js +0 -2
- package/packages/client/dist/assets/index-BX7y_Qt3.css +0 -32
- package/packages/client/dist/assets/index-DWIOf7rA.js +0 -1657
|
@@ -7,13 +7,16 @@ import { ERROR_CODES, SUPPORTED_LANGUAGES } from '@hammoc/shared';
|
|
|
7
7
|
import { createChatEngine } from './chatEngineFactory.js';
|
|
8
8
|
import { parseSDKError } from '../utils/errors.js';
|
|
9
9
|
import { createLogger } from '../utils/logger.js';
|
|
10
|
+
import { denyBackgroundBash } from '../utils/backgroundToolGuard.js';
|
|
11
|
+
import { BackgroundTaskTracker } from '../utils/backgroundTaskTracker.js';
|
|
10
12
|
import { clampEffortForModel, supportsAdaptiveThinking } from '../utils/effortUtils.js';
|
|
11
13
|
import i18next from '../i18n.js';
|
|
12
14
|
import { isSnippetRef, resolveSnippet, SnippetError } from '../utils/snippetResolver.js';
|
|
13
15
|
const log = createLogger('queueService');
|
|
14
16
|
import { formatAskQuestionPrompt } from './notificationService.js';
|
|
15
|
-
import { createHeadlessStream, isSessionStreaming, rekeyStream, finalizeStream, broadcastStreamChange, } from '../handlers/websocket.js';
|
|
17
|
+
import { createHeadlessStream, isSessionStreaming, rekeyStream, finalizeStream, broadcastStreamChange, evictResidentEngine, } from '../handlers/websocket.js';
|
|
16
18
|
import { buildStreamCallbacks } from '../handlers/streamCallbacks.js';
|
|
19
|
+
import { waitForBackgroundTasksAndFollowUp } from '../utils/backgroundTaskPoller.js';
|
|
17
20
|
import { createMcpCallRecorder } from './observabilityService.js';
|
|
18
21
|
export class QueueService {
|
|
19
22
|
projectService;
|
|
@@ -702,6 +705,18 @@ export class QueueService {
|
|
|
702
705
|
this.pauseForReview(t('queue.error.sessionBusy'));
|
|
703
706
|
return { shouldAdvance: false };
|
|
704
707
|
}
|
|
708
|
+
// The queue's engine is an OUT-OF-BAND writer on a resumed session: a prior
|
|
709
|
+
// chat turn may have left a resident SDK engine parked on it, holding the
|
|
710
|
+
// conversation in process memory. Appending queue turns to the JSONL behind
|
|
711
|
+
// that engine's back would fork its in-memory state from disk (the next chat
|
|
712
|
+
// send would reuse it and answer without the queue turns) — evict it first.
|
|
713
|
+
// No-op when nothing is resident (the common case: queue-created sessions).
|
|
714
|
+
// MUST stay below the streaming guard above: remove() is unconditional, so
|
|
715
|
+
// running it while a user turn is live on this session would close the
|
|
716
|
+
// resident engine mid-turn and kill that turn — the guard pauses us first.
|
|
717
|
+
if (chatOptions.resume) {
|
|
718
|
+
await evictResidentEngine(chatOptions.resume);
|
|
719
|
+
}
|
|
705
720
|
// Identical to handleChatSend: headless stream → createStreamEmit
|
|
706
721
|
const { stream, emit } = createHeadlessStream(streamKey, this.abortController, this.projectSlug);
|
|
707
722
|
stream.chatService = this.chatService;
|
|
@@ -710,6 +725,13 @@ export class QueueService {
|
|
|
710
725
|
// canUseTool — permissions stored in stream.pendingPermissions
|
|
711
726
|
// (same map that permission:respond handler in websocket.ts checks)
|
|
712
727
|
const canUseTool = async (toolName, input, options) => {
|
|
728
|
+
// Hammoc forbids tool-level background execution so `end_turn = done` stays true —
|
|
729
|
+
// see backgroundToolGuard. Must run before the bypass auto-approve branch below.
|
|
730
|
+
const bgDeny = denyBackgroundBash(toolName, input);
|
|
731
|
+
if (bgDeny) {
|
|
732
|
+
log.info(`[queue canUseTool] blocking ${toolName} run_in_background — steer to OS-level detach`);
|
|
733
|
+
return bgDeny;
|
|
734
|
+
}
|
|
713
735
|
// Auto-approve CLI safety checks in Bypass mode when user preference is enabled.
|
|
714
736
|
if (toolName !== 'AskUserQuestion' && this.chatService?.getPermissionMode() === 'bypassPermissions') {
|
|
715
737
|
try {
|
|
@@ -776,6 +798,7 @@ export class QueueService {
|
|
|
776
798
|
try {
|
|
777
799
|
// Emit user message to streaming buffer (identical to handleChatSend in websocket.ts)
|
|
778
800
|
emit('user:message', { content: item.prompt, sessionId: streamKey, timestamp: new Date().toISOString() });
|
|
801
|
+
const backgroundTracker = new BackgroundTaskTracker();
|
|
779
802
|
// Build shared callbacks (common logic for browser & queue paths)
|
|
780
803
|
const { callbacks, sessionIdRef } = buildStreamCallbacks({
|
|
781
804
|
emit,
|
|
@@ -791,6 +814,7 @@ export class QueueService {
|
|
|
791
814
|
}),
|
|
792
815
|
// Story 31.3 — projectSlug is known synchronously on the queue path.
|
|
793
816
|
mcpRecorder: createMcpCallRecorder(() => this.projectSlug || undefined),
|
|
817
|
+
backgroundTracker,
|
|
794
818
|
engineMode: this.engineMode,
|
|
795
819
|
}, {
|
|
796
820
|
onSessionIdResolved: (sid) => { this.currentSessionId = sid; },
|
|
@@ -823,17 +847,51 @@ export class QueueService {
|
|
|
823
847
|
baseOnCompact(metadata);
|
|
824
848
|
};
|
|
825
849
|
const baseOnToolResult = callbacks.onToolResult;
|
|
826
|
-
callbacks.onToolResult = (toolCallId, result) => {
|
|
850
|
+
callbacks.onToolResult = (toolCallId, result, provisional) => {
|
|
827
851
|
// Only log extra detail when there's an error (base already logs id + success)
|
|
828
852
|
if (result.error) {
|
|
829
853
|
log.debug(`executePrompt: onToolResult id=${toolCallId}, error=${result.error.slice(0, 200)}`);
|
|
830
854
|
}
|
|
831
|
-
|
|
855
|
+
// Forward provisional — the base callback's background bookkeeping must
|
|
856
|
+
// skip screen-scraped (truncated/synthetic-id) results.
|
|
857
|
+
baseOnToolResult(toolCallId, result, provisional);
|
|
832
858
|
};
|
|
833
|
-
|
|
859
|
+
// The turn boundary inside the SDK engine is DUAL-GATED (Story 38.2 +
|
|
860
|
+
// 2026-07-12 fix): the engine's Stop-hook background_tasks[] ledger AND
|
|
861
|
+
// backgroundTracker (arg 10) as gate 2 — a result only ends the turn when
|
|
862
|
+
// both are empty. Gate 2 covers the queued-notification window (the LAST
|
|
863
|
+
// task completing while a generation runs leaves the ledger early), which
|
|
864
|
+
// matters here: an early turn end would advance the queue into the
|
|
865
|
+
// engine's imminent auto-resume follow-up and shift every later item's
|
|
866
|
+
// turn attribution. The tracker doubles as the crash-safety-net poller's
|
|
867
|
+
// pending set (waitForBackgroundTasksAndFollowUp below) if the engine dies
|
|
868
|
+
// mid-hold; inert on the normal path (the hold drains it to completion).
|
|
869
|
+
const response = await this.chatService.sendMessageWithCallbacks(item.prompt, callbacks, chatOptions, canUseTool, undefined, undefined, undefined, undefined, undefined, backgroundTracker);
|
|
870
|
+
// Wait for background tasks (and any auto-resume follow-up generation)
|
|
871
|
+
// before checking the response or advancing the queue.
|
|
872
|
+
if (backgroundTracker.isWaiting) {
|
|
873
|
+
const slug = this.projectSlug;
|
|
874
|
+
const sid = sessionIdRef.current || this.currentSessionId;
|
|
875
|
+
if (slug && sid) {
|
|
876
|
+
const svc = new (await import('./sessionService.js')).SessionService();
|
|
877
|
+
const settled = await waitForBackgroundTasksAndFollowUp({
|
|
878
|
+
filePath: svc.getSessionFilePath(slug, sid),
|
|
879
|
+
tracker: backgroundTracker,
|
|
880
|
+
keepRunning: () => this._isRunning,
|
|
881
|
+
callbacks,
|
|
882
|
+
logPrefix: '[queue]',
|
|
883
|
+
});
|
|
884
|
+
log.info(`[queue] background wait finished: settled=${settled}, pending=${backgroundTracker.pending}`);
|
|
885
|
+
}
|
|
886
|
+
}
|
|
834
887
|
// Guard: SDK process terminated without yielding a result message.
|
|
835
888
|
// The generator ends silently (no throw) so we must check response.done.
|
|
836
889
|
if (!response.done) {
|
|
890
|
+
// Abort is intentional — not an error (mirrors the catch-block guard below)
|
|
891
|
+
if (!this._isRunning) {
|
|
892
|
+
log.debug(`executePrompt: SDK stream ended (done=false) after abort — not an error`);
|
|
893
|
+
return { shouldAdvance: false };
|
|
894
|
+
}
|
|
837
895
|
log.error(`executePrompt: SDK terminated without result message (done=${response.done}, content=${JSON.stringify((response.content || '').slice(0, 120))})`);
|
|
838
896
|
const te = i18next.getFixedT(this.lang);
|
|
839
897
|
this.pauseWithError(te('queue.error.sdkError', { value: 'SDK process terminated unexpectedly without completing the conversation' }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queueService.js","sourceRoot":"","sources":["../../src/services/queueService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,MAAM,MAAM,aAAa,CAAC;AAcjC,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAElE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxF,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEzF,MAAM,GAAG,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;AAEzC,OAAO,EAA8B,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAE/F,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAclE,MAAM,OAAO,YAAY;IA8Cb;IACA;IACA;IACA;IAhDF,KAAK,GAAgB,EAAE,CAAC;IACxB,YAAY,GAAW,CAAC,CAAC;IACzB,UAAU,GAAY,KAAK,CAAC;IAC5B,QAAQ,GAAY,KAAK,CAAC;IAC1B,WAAW,GAAY,KAAK,CAAC,CAAC,wCAAwC;IACtE,gBAAgB,GAAkB,IAAI,CAAC;IACvC,YAAY,GAAuB,SAAS,CAAC;IAC7C,WAAW,GAAW,EAAE,CAAC;IACzB,gBAAgB,GAAW,EAAE,CAAC;IAC9B,WAAW,GAAsB,IAAI,CAAC;IACtC,UAAU,GAAkB,KAAK,CAAC;IAClC,eAAe,GAA2B,IAAI,CAAC;IAC/C,WAAW,GAAuB,SAAS,CAAC;IAC5C,eAAe,GAAkB,IAAI,CAAC;IACtC,SAAS,GAAgD,IAAI,CAAC;IAC9D,mBAAmB,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC7D,4DAA4D;IACpD,YAAY,GAAY,KAAK,CAAC;IAC9B,UAAU,GAAY,KAAK,CAAC;IACpC,2DAA2D;IACnD,gBAAgB,GAAW,CAAC,CAAC;IACrC,gEAAgE;IACxD,gBAAgB,GAAkB,IAAI,CAAC;IACvC,iBAAiB,GAAY,KAAK,CAAC;IAC3C,sFAAsF;IAC9E,kBAAkB,GAAY,KAAK,CAAC;IACpC,oBAAoB,GAAG,IAAI,OAAO,EAAa,CAAC;IACxD,wEAAwE;IAChE,SAAS,GAAuB,SAAS,CAAC;IAClD,wDAAwD;IAChD,SAAS,GAON,IAAI,CAAC;IAChB,wDAAwD;IAChD,kBAAkB,GAAW,EAAE,CAAC;IACxC,kFAAkF;IAC1E,iBAAiB,GAAY,KAAK,CAAC;IACnC,aAAa,GAAY,KAAK,CAAC;IAC/B,IAAI,GAAW,IAAI,CAAC;IAC5B,YACU,cAA8B,EAC9B,mBAAwC,EACxC,kBAAsC,EACtC,EAAmB;QAHnB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,OAAE,GAAF,EAAE,CAAiB;IAC1B,CAAC;IAEJ,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAkB,EAAE,WAAmB,EAAE,SAAkB,EAAE,cAA+B;QACtG,4FAA4F;QAC5F,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,mFAAmF;QACnF,+EAA+E;QAC/E,IAAI,KAAkC,CAAC;QACvC,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;YACxD,IAAI,KAAK,CAAC,QAAQ,IAAI,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,QAA8C,CAAC,EAAE,CAAC;gBACzG,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC;YAC7B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,uBAAuB,CAAC,CAAC;QAEnC,IAAI,CAAC,gBAAgB,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACnF,IAAI,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACvF,oFAAoF;QACpF,4EAA4E;QAC5E,4BAA4B;QAC5B,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC1F,IAAI,CAAC,WAAW,GAAG,gBAAgB,CACjC,IAAI,CAAC,UAAU,EACf,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,wBAAwB,EAAE,KAAK,EAAE,wBAAwB,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,IAAI,IAAI,EAAE,CAC5P,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,oBAAoB,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,gBAAgB,GAAG,SAAS,IAAI,IAAI,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAE,CAAC;QACrC,GAAG,CAAC,IAAI,CAAC,mBAAmB,WAAW,YAAY,KAAK,CAAC,MAAM,eAAe,SAAS,IAAI,OAAO,UAAU,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACtI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACpB,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAChc,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7B,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;QACtF,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,GAAG,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,iBAAiB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACpG,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,qDAAqD;YACrD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,8CAA8C;QAC9E,CAAC;aAAM,CAAC;YACN,2DAA2D;YAC3D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,wBAAwB,CAAC,CAAC;YAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,WAAW;QACT,IAAI,CAAC,IAAI,CAAC,iBAAiB;YAAE,OAAO;QACpC,GAAG,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,2EAA2E;QAC3E,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACvC,GAAG,CAAC,KAAK,CAAC,4BAA4B,IAAI,CAAC,QAAQ,iBAAiB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YACxF,OAAO;QACT,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,eAAe,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACxG,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,4EAA4E;QAC5E,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,GAAG,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,eAAe,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACvG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7B,4DAA4D;QAC5D,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,oBAAoB,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;IAChC,CAAC;IAED,gFAAgF;IAChF,OAAO;QACL,iDAAiD;QACjD,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB;YAAE,OAAO;QAExE,GAAG,CAAC,IAAI,CAAC,yBAAyB,IAAI,CAAC,YAAY,gBAAgB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACtF,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,4CAA4C;QAC5C,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,oBAAoB,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,QAAQ;QACN,2DAA2D;QAC3D,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC;QAC3H,kEAAkE;QAClE,MAAM,eAAe,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QACrE,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB;YACnH,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;YACxC,iBAAiB,EAAE,IAAI,CAAC,kBAAkB;YAC1C,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,cAAc,IAAI,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACjE,SAAS,EAAE,IAAI,CAAC,gBAAgB,KAAK,IAAI;YACzC,mBAAmB,EAAE,CAAC,GAAG,EAAE;gBACzB,mFAAmF;gBACnF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAC9C,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAChE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACpD,CAAC;gBACD,OAAO,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,CAAC,CAAC,EAAE;YACJ,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC7B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS;gBACnC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG;gBACvB,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU;gBACrC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM;aACxC,CAAC,CAAC,CAAC,SAAS;SACd,CAAC;IACJ,CAAC;IAED,2DAA2D;IAC3D,UAAU,CAAC,SAAiB;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACrD,IAAI,SAAS,IAAI,IAAI,CAAC,YAAY,IAAI,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAEnF,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAChC,qDAAqD;QACrD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAClD,IAAI,GAAG,GAAG,SAAS;gBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1C,sHAAsH;QACxH,CAAC;QACD,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAElC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACxD,GAAG,CAAC,IAAI,CAAC,sBAAsB,SAAS,cAAc,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6CAA6C;IAC7C,OAAO,CAAC,IAAe;QACrB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACrD,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC,CAAC,+CAA+C;QAC5E,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;YAAE,OAAO,KAAK,CAAC,CAAC,wDAAwD;QAErH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACxD,GAAG,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAChH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+FAA+F;IAC/F,YAAY,CAAC,QAAkB;QAC7B,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAErD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC;QAEtD,2EAA2E;QAC3E,IAAI,QAAQ,CAAC,MAAM,KAAK,YAAY;YAAE,OAAO,KAAK,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3F,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAExD,gBAAgB;QAChB,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;QAElE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,GAAG,CAAC,IAAI,CAAC,+BAA+B,YAAY,cAAc,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC9F,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+EAA+E;IAC/E,YAAY,CAAC,QAAqB,EAAE,QAAiB;QACnD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACjC,+CAA+C;QAC/C,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO,KAAK,CAAC;QACzC,IAAI,QAAQ,IAAI,IAAI,CAAC,gBAAgB,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAEjE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;QACjE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,gCAAgC;QAEvD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,+BAA+B,YAAY,cAAc,QAAQ,CAAC,MAAM,cAAc,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACpH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iHAAiH;IACjH,SAAS,CAAC,QAAiB;QACzB,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACjC,MAAM,EAAE,GAAG,QAAQ,IAAI,SAAS,CAAC;QACjC,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,KAAK,EAAE,EAAE,CAAC;YAC1D,GAAG,CAAC,IAAI,CAAC,0CAA0C,IAAI,CAAC,gBAAgB,kBAAkB,EAAE,EAAE,CAAC,CAAC;YAChG,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qDAAqD;IACrD,OAAO,CAAC,QAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO;QACnC,wDAAwD;QACxD,IAAI,QAAQ,IAAI,IAAI,CAAC,gBAAgB,KAAK,QAAQ;YAAE,OAAO;QAC3D,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,sBAAsB,QAAQ,IAAI,SAAS,EAAE,CAAC,CAAC;IAC1D,CAAC;IAEO,aAAa;QACnB,8DAA8D;QAC9D,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAwB,EAAE;YACvE,SAAS,EAAE,IAAI,CAAC,gBAAgB,KAAK,IAAI;SAC1C,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB;QACtB,8DAA8D;QAC9D,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,oBAA2B,EAAE;YAC1E,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACtD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,GAAG,CAAC,KAAK,CAAC,kCAAkC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACtF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,GAAG,CAAC,KAAK,CAAC,gCAAgC,IAAI,CAAC,YAAY,aAAa,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;oBAC7F,MAAM;gBACR,CAAC;gBACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC3C,GAAG,CAAC,KAAK,CAAC,+BAA+B,IAAI,CAAC,YAAY,aAAa,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;gBAC/J,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI;oBACtB,CAAC,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;oBAClC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC7D,GAAG,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,YAAY,aAAa,OAAO,oBAAoB,MAAM,CAAC,aAAa,cAAc,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAE3I,+CAA+C;gBAC/C,oFAAoF;gBACpF,8FAA8F;gBAC9F,oGAAoG;gBACpG,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAChC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACzC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;oBAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;wBAC/E,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;qBAAM,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;oBAChC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACzC,IAAI,CAAC,YAAY,EAAE,CAAC;oBACpB,0FAA0F;oBAC1F,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;wBAC/E,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;gBACD,qDAAqD;gBACrD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC7C,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;oBAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACrB,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,wBAAwB,CAAC,CAAC;oBAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC9B,CAAC;gBACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,GAAG,CAAC,KAAK,CAAC,yCAAyC,IAAI,CAAC,YAAY,aAAa,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;oBACtG,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC9D,GAAG,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,KAAK,CAAC,MAAM,SAAS,CAAC,CAAC;gBAC7D,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC1C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;gBAC/B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;gBAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,uCAAuC;gBAC9D,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC/B,MAAM,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;YAC7E,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,kCAAkC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,eAAe,IAAI,CAAC,UAAU,cAAc,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,8DAA8D;YAC9D,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,MAAM,QAAQ,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,GAAG,CAAC,KAAK,CAAC,0CAA0C,IAAI,CAAC,YAAY,GAAG,EAAE,MAAM,CAAC,CAAC;YAClF,IAAI,QAAQ;gBAAE,GAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;YACzD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC1C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;YACnD,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;QAClF,CAAC;gBAAS,CAAC;YACT,GAAG,CAAC,KAAK,CAAC,uDAAuD,IAAI,CAAC,UAAU,WAAW,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YACrI,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,IAAe;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAK,CAAC;QAExB,kCAAkC;QAClC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG;gBACf,SAAS,EAAE,CAAC;gBACZ,UAAU,EAAE,CAAC;gBACb,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC;YACF,GAAG,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,GAAG,WAAW,IAAI,CAAC,KAAK,IAAI,QAAQ,cAAc,IAAI,CAAC,QAAQ,gBAAgB,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACvI,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;YAC1D,2EAA2E;YAC3E,GAAG,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YACpE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,0BAA0B,IAAI,CAAC,SAAS,CAAC,SAAS,gBAAgB,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;YACxG,4EAA4E;YAC5E,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACnE,IAAI,UAAU,EAAE,YAAY,EAAE,CAAC;gBAC7B,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAE7B,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1F,yCAAyC;YACzC,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpG,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBAClE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBAE7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBAEjD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;oBAC1B,uEAAuE;oBACvE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;gBAClC,CAAC;gBAED,yEAAyE;gBACzE,gFAAgF;gBAChF,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;gBAClC,CAAC;gBAED,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;gBAC5B,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBAE7B,+EAA+E;gBAC/E,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC3B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;oBAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACrB,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,wBAAwB,CAAC,CAAC;oBAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;oBAC5B,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;gBAClC,CAAC;YACH,CAAC;YAED,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACtC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;YAED,gGAAgG;YAChG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACnD,IAAI,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3D,GAAG,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,KAAK,wBAAwB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;oBAC5G,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;oBACtB,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBACjC,CAAC;YACH,CAAC;YAED,iBAAiB;YACjB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC;YAC9B,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC;QAED,cAAc;QACd,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACzB,kCAAkC;YAClC,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACxC,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvC,MAAM,MAAM,GAAG,CAAC,CAAC,wBAAwB,EAAE;oBACzC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG;oBACvB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK;oBAC3B,YAAY,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,GAAG,wBAAwB,IAAI,CAAC,SAAS,CAAC,KAAK,uBAAuB;iBAC1H,CAAC,CAAC;gBACH,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC5B,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBAChF,+FAA+F;gBAC/F,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;YACD,0DAA0D;QAC5D,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,6BAA6B,IAAI,CAAC,SAAS,EAAE,SAAS,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,IAAe;QACvC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAE/B,6EAA6E;QAC7E,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YACzC,GAAG,CAAC,KAAK,CAAC,4BAA4B,YAAY,UAAU,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;YACtF,IAAI,CAAC,gBAAgB,GAAG,YAAY,CAAC;YACrC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,GAAG,CAAC,KAAK,CAAC,+BAA+B,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,GAAG,CAAC,KAAK,CAAC,mCAAmC,IAAI,CAAC,eAAe,gBAAgB,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;YAC1G,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;gBACzD,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,2BAA2B,EAAE,EAAE,YAAY,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC;gBACxG,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;YACD,qEAAqE;YACrE,yDAAyD;YACzD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAC/C,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,eAAe,CACnE,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,GAAG,CAAC,KAAK,CAAC,0CAA0C,GAAG,GAAG,CAAC,CAAC;gBAC5D,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,wBAAwB,EAAE,EAAE,YAAY,EAAE,gBAAgB,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC1F,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,GAAG,CAAC,KAAK,CAAC,mCAAmC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;YACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAClE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,GAAG,CAAC,IAAI,CAAC,uCAAuC,IAAI,CAAC,eAAe,aAAa,CAAC,CAAC;gBACnF,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;YACD,GAAG,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,GAAG,CAAC,KAAK,CAAC,iCAAiC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;YAC9D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,GAAG,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;YAClD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChD,MAAM,OAAO,GAAG,GAAG,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1D,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAClF,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrB,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBAC/C,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YACjC,CAAC;QACH,CAAC;QAED,2BAA2B;QAC3B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC,iDAAiD;YACjF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC;YAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC5B,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,yEAAyE;QACzE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YAChD,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,4GAA4G;QAC5G,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;YACtC,IAAI,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;gBACpE,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;oBACrB,GAAG,CAAC,IAAI,CAAC,yBAAyB,MAAM,8CAA8C,CAAC,CAAC;oBACxF,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBACjC,CAAC;gBACD,IAAI,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBACnC,GAAG,CAAC,IAAI,CAAC,mBAAmB,MAAM,cAAc,SAAS,8BAA8B,IAAI,CAAC,YAAY,kBAAkB,CAAC,CAAC;oBAC5H,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBACjC,CAAC;gBACD,GAAG,CAAC,IAAI,CAAC,kBAAkB,KAAK,2BAA2B,IAAI,CAAC,YAAY,OAAO,SAAS,YAAY,MAAM,IAAI,CAAC,CAAC;gBACpH,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YACrD,CAAC;YACD,GAAG,CAAC,KAAK,CAAC,8BAA8B,KAAK,gDAAgD,CAAC,CAAC;YAC/F,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,kFAAkF;QAClF,IAAI,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrF,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACzE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,MAAM,QAAQ,GAAgB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBACvD,MAAM,EAAE,GAAc,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;wBACzD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBAClC,OAAO,EAAE,CAAC;oBACZ,CAAC,CAAC,CAAC;oBACH,4DAA4D;oBAC5D,gFAAgF;oBAChF,4EAA4E;oBAC5E,0CAA0C;oBAC1C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;wBACnB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;oBAC7E,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;oBAC3D,CAAC;oBACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;oBAClC,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,iBAAiB;wBAC3D,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,qBAAqB;4BACxD,CAAC,CAAC,mBAAmB,CAAC;oBACxB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,EAAE;wBAC1C,IAAI,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO;wBACxC,OAAO,EAAE,KAAK,CAAC,OAAO;wBACtB,YAAY,EAAE,KAAK,CAAC,OAAO;qBAC5B,CAAC,CAAC,CAAC;oBACJ,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;gBAClC,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,yDAAyD;QACzD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QAED,GAAG,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAC9C,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,aAAa,CAAC,IAAe;QACzC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,IAAI,iBAAiB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACzE,GAAG,CAAC,KAAK,CAAC,+BAA+B,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,eAAe,SAAS,WAAW,WAAW,CAAC,KAAK,IAAI,WAAW,YAAY,WAAW,CAAC,MAAM,IAAI,MAAM,eAAe,WAAW,CAAC,SAAS,IAAI,MAAM,EAAE,CAAC,CAAC;QAEvP,+DAA+D;QAC/D,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,0BAA0B,SAAS,+CAA+C,CAAC,CAAC;YAC7F,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC;YAClD,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC;QAED,kEAAkE;QAClE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,eAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAClG,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAY,CAAC;QACvC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAEpC,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,+DAA+D;QAC/D,oEAAoE;QACpE,MAAM,UAAU,GAAe,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAA6B,EAAE;YAC3F,iFAAiF;YACjF,IAAI,QAAQ,KAAK,iBAAiB,IAAI,IAAI,CAAC,WAAW,EAAE,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,CAAC;gBACpG,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;oBAC9D,IAAI,KAAK,CAAC,uBAAuB,IAAI,IAAI,EAAE,CAAC;wBAC1C,GAAG,CAAC,KAAK,CAAC,+CAA+C,QAAQ,oCAAoC,CAAC,CAAC;wBACvG,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;oBACpD,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAC,4CAA4C,CAAC,CAAC;YAC1D,CAAC;YAED,MAAM,iBAAiB,GAAG,QAAQ,KAAK,iBAAiB,CAAC;YACzD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,cAAc,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAClE,GAAG,CAAC,KAAK,CAAC,oBAAoB,QAAQ,uBAAuB,iBAAiB,eAAe,SAAS,EAAE,CAAC,CAAC;YAE1G,uDAAuD;YACvD,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;YACrK,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC7B,MAAM,IAAI,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;YAEhF,wEAAwE;YACxE,IAAI,CAAC,oBAAoB,EAAE;gBACzB,EAAE,EAAE,SAAS;gBACb,SAAS,EAAE,IAAI,CAAC,gBAAgB,IAAI,EAAE;gBACtC,QAAQ,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;gBAClD,gBAAgB,EAAE,IAAI;aACF,CAAC,CAAC;YAExB,uEAAuE;YACvE,IAAI,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/D,MAAM,MAAM,GAAG,iBAAiB;oBAC9B,CAAC,CAAC,uBAAuB,CAAC,KAAgC,CAAC;oBAC3D,CAAC,CAAC,GAAG,QAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACnF,CAAC;YAED,uFAAuF;YACvF,MAAM,YAAY,GAAG,MAAM,IAAI,OAAO,CAGnC,CAAC,OAAO,EAAE,EAAE;gBACb,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE;oBACvC,OAAO;oBACP,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY;iBAC/D,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,8BAA8B;YAC9B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;YAC7B,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAE7B,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,SAAS,GAAI,KAAiC,CAAC,SAAwC,CAAC;gBAC9F,IAAI,OAA0C,CAAC;gBAC/C,IAAI,OAAO,YAAY,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACzH,OAAO,GAAG,YAAY,CAAC,QAA6C,CAAC;gBACvE,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,GAAG,OAAO,YAAY,CAAC,QAAQ,KAAK,QAAQ;wBACtD,CAAC,CAAC,YAAY,CAAC,QAAQ;wBACvB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjF,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;gBAChD,CAAC;gBACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC;YACrE,CAAC;YAED,OAAO,YAAY,CAAC,QAAQ;gBAC1B,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE;gBAC5C,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC/E,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,sFAAsF;YACtF,IAAI,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAE1G,kEAAkE;YAClE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,oBAAoB,CACtD;gBACE,IAAI;gBACJ,MAAM;gBACN,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC,MAAM;gBAChC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,SAAS;gBACpD,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC;gBAC9C,qBAAqB;gBACrB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;gBAC7C,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;oBACvB,OAAO,EAAE,IAAI,CAAC,YAAY,GAAG,CAAC;oBAC9B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;iBACzB,CAAC;gBACF,qEAAqE;gBACrE,WAAW,EAAE,qBAAqB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC;gBACvE,UAAU,EAAE,IAAI,CAAC,UAAU;aAC5B,EACD;gBACE,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,CAAC,CAAC;gBAC9D,mBAAmB,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aAChE,CACF,CAAC;YAEF,uCAAuC;YACvC,SAAS,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;gBAC5B,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;gBACtC,GAAG,CAAC,KAAK,CAAC,oCAAoC,QAAQ,CAAC,OAAO,UAAU,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC1F,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC3E,IAAI,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC/D,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC3E,CAAC;YACH,CAAC,CAAC;YAEF,0DAA0D;YAC1D,MAAM,cAAc,GAAG,SAAS,CAAC,UAAW,CAAC;YAC7C,SAAS,CAAC,UAAU,GAAG,CAAC,QAAQ,EAAE,EAAE;gBAClC,MAAM,cAAc,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAC9D,GAAG,CAAC,KAAK,CAAC,iCAAiC,YAAY,CAAC,OAAO,IAAI,QAAQ,CAAC,SAAS,aAAa,QAAQ,CAAC,OAAO,WAAW,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,QAAQ,QAAQ,CAAC,KAAK,CAAC,YAAY,UAAU,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,aAAa,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;gBAC5T,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC3B,CAAC,CAAC;YAEF,MAAM,iBAAiB,GAAG,SAAS,CAAC,aAAc,CAAC;YACnD,SAAS,CAAC,aAAa,GAAG,CAAC,IAAI,EAAE,EAAE;gBACjC,GAAG,CAAC,KAAK,CAAC,wCAAwC,IAAI,CAAC,OAAO,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC/I,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC,CAAC;YAEF,MAAM,aAAa,GAAG,SAAS,CAAC,SAAU,CAAC;YAC3C,SAAS,CAAC,SAAS,GAAG,CAAC,QAAQ,EAAE,EAAE;gBACjC,GAAG,CAAC,KAAK,CAAC,oCAAoC,QAAQ,CAAC,OAAO,eAAe,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;gBACnG,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC1B,CAAC,CAAC;YAEF,MAAM,gBAAgB,GAAG,SAAS,CAAC,YAAa,CAAC;YACjD,SAAS,CAAC,YAAY,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE;gBAC9C,+EAA+E;gBAC/E,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,GAAG,CAAC,KAAK,CAAC,kCAAkC,UAAU,WAAW,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjG,CAAC;gBACD,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACvC,CAAC,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;YAEnH,mEAAmE;YACnE,yEAAyE;YACzE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,GAAG,CAAC,KAAK,CAAC,8DAA8D,QAAQ,CAAC,IAAI,aAAa,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC7J,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,yEAAyE,EAAE,CAAC,CAAC,CAAC;gBACtI,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,6BAA6B,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBACvG,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;YAED,kFAAkF;YAClF,oFAAoF;YACpF,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO;oBAC7B,CAAC,CAAC,EAAE,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACzD,CAAC,CAAC,EAAE,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC,CAAC;gBACvE,GAAG,CAAC,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC;gBAC7D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC5B,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBAChF,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YAEtC,2DAA2D;YAC3D,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpD,GAAG,CAAC,KAAK,CAAC,+CAA+C,QAAQ,CAAC,IAAI,eAAe,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACzG,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;YAED,MAAM,aAAa,GAAG,CAAC,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACxF,GAAG,CAAC,KAAK,CAAC,6BAA6B,QAAQ,CAAC,IAAI,aAAa,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;YACrF,IAAI,aAAa;gBAAE,GAAG,CAAC,KAAK,CAAC,4BAA4B,EAAE,aAAa,CAAC,CAAC;YAC1E,IAAI,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;gBAC/D,GAAG,CAAC,KAAK,CAAC,oCAAoC,EAAE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAClF,CAAC;YACD,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC7E,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;YAC1F,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC;gBAAS,CAAC;YACT,GAAG,CAAC,KAAK,CAAC,mDAAmD,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;YACjF,wDAAwD;YACxD,wEAAwE;YACxE,8EAA8E;YAC9E,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;YAC5B,MAAM,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QAED,uEAAuE;QACvE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC7C,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1C,GAAG,CAAC,KAAK,CAAC,4CAA4C,IAAI,CAAC,eAAe,YAAY,MAAM,CAAC,MAAM,gBAAgB,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC;QAErJ,mBAAmB;QACnB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBACrD,GAAG,CAAC,IAAI,CAAC,6BAA6B,IAAI,CAAC,SAAS,wBAAwB,CAAC,CAAC;gBAC9E,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,MAAM,GAAG,EAAE,CAAC,+BAA+B,EAAE;oBACjD,KAAK,EAAE,IAAI,CAAC,SAAS;oBACrB,YAAY,EAAE,cAAc,IAAI,CAAC,SAAS,wBAAwB;iBACnE,CAAC,CAAC;gBACH,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAC5B,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBAChF,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QACD,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,IAAY;QAC1C,qEAAqE;QACrE,yDAAyD;QACzD,IAAI,YAAoC,CAAC;QACzC,IAAI,CAAC;YACH,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACnF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,GAAG,CAAC,KAAK,CAAC,oDAAoD,GAAG,GAAG,CAAC,CAAC;YACtE,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACvE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QACvE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACvE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,IAAI,GAAgB,EAAE,eAAe,EAAE,IAAI,CAAC,eAAgB,EAAE,CAAC;QACrE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC;QACrC,CAAC;aAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACzC,CAAC;QACD,IAAI,IAAI,CAAC,YAAY;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;QAEtD,iEAAiE;QACjE,kEAAkE;QAClE,qEAAqE;QACrE,2DAA2D;QAC3D,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,EAAE,CAAC;YACtE,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS;gBAAE,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC;YAC/F,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;YAC1E,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YACxC,MAAM,eAAe,GAAG,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACpE,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBAC9D,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;YACnD,CAAC;YACD,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,IAAI,IAAI,CAAC;gBAC5D,IAAI,CAAC,QAAQ,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YAC/F,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;gBAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YACjE,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS;gBAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;YAC7E,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC3E,IAAI,MAAM,KAAK,SAAS;gBAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YAC/C,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;gBACnC,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;YACtC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,sCAAsC,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,cAAc,CAAC,MAAc;QACnC,GAAG,CAAC,KAAK,CAAC,yBAAyB,IAAI,CAAC,YAAY,aAAa,MAAM,GAAG,CAAC,CAAC;QAC5E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QACjE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,oGAAoG;IAC5F,cAAc,CAAC,MAAc;QACnC,GAAG,CAAC,IAAI,CAAC,yBAAyB,IAAI,CAAC,YAAY,aAAa,MAAM,GAAG,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAEO,cAAc,CAAC,KAAa;QAClC,8DAA8D;QAC9D,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,aAAoB,EAAE;YACnE,SAAS,EAAE,IAAI,CAAC,YAAY;YAC5B,KAAK;YACL,SAAS,EAAE,IAAI,CAAC,gBAAgB,IAAI,EAAE;SACvC,CAAC,CAAC;IACL,CAAC;IAEO,eAAe;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,oBAAoB,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;QACxG,OAAO,GAAG,OAAO,aAAa,IAAI,CAAC,WAAW,aAAa,IAAI,CAAC,gBAAgB,IAAI,EAAE,EAAE,CAAC;IAC3F,CAAC;IAEO,YAAY,CAAC,MAAgE;QACnF,8DAA8D;QAC9D,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAuB,EAAE;YACtE,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB;YACxF,MAAM;YACN,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,gBAAgB,IAAI,EAAE;YACtC,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;YACxC,iBAAiB,EAAE,IAAI,CAAC,kBAAkB;YAC1C,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC7B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS;gBACnC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG;gBACvB,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU;gBACrC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM;aACxC,CAAC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,SAAiB;QACxC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACnD,8DAA8D;QAC9D,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,oBAA2B,EAAE;YAC1E,SAAS;YACT,SAAS;SACV,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"queueService.js","sourceRoot":"","sources":["../../src/services/queueService.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,15 +8,22 @@ import type { SubscriptionRateLimit, ApiHealthStatus } from '@hammoc/shared';
|
|
|
8
8
|
declare class RateLimitProbeService {
|
|
9
9
|
private cachedToken;
|
|
10
10
|
private tokenCachedAt;
|
|
11
|
+
private cachedOrgUuid;
|
|
12
|
+
private orgUuidCachedAt;
|
|
11
13
|
private lastProbeResult;
|
|
12
14
|
private lastProbeAt;
|
|
13
15
|
private pollTimer;
|
|
14
16
|
private broadcastFn;
|
|
15
17
|
private healthBroadcastFn;
|
|
18
|
+
private throttleBroadcastFn;
|
|
16
19
|
private apiHealthy;
|
|
17
20
|
private healthLastCheckedAt;
|
|
18
21
|
private healthLastError;
|
|
19
22
|
private consecutiveThrottles;
|
|
23
|
+
private generation;
|
|
24
|
+
private inflightProbe;
|
|
25
|
+
private throttledUntil;
|
|
26
|
+
private throttleRecoveryTimer;
|
|
20
27
|
/**
|
|
21
28
|
* Check if the user has OAuth credentials (Claude.ai subscriber).
|
|
22
29
|
* Used to guard features unavailable for subscribers (e.g. max effort).
|
|
@@ -33,24 +40,72 @@ declare class RateLimitProbeService {
|
|
|
33
40
|
* Read OAuth access token from ~/.claude/.credentials.json
|
|
34
41
|
*/
|
|
35
42
|
private readAccessToken;
|
|
43
|
+
/** Shared request options for the OAuth surface (usage + prepaid-credits endpoints). */
|
|
44
|
+
private oauthRequestInit;
|
|
45
|
+
/**
|
|
46
|
+
* Org UUID for the prepaid-credits endpoint path, read via accountStorageService — the
|
|
47
|
+
* single owner of the CLI identity cache (~/.claude.json `oauthAccount`), which it swaps
|
|
48
|
+
* atomically on account switch. Cached like the token (TTL + cleared by
|
|
49
|
+
* invalidateTokenCache) so the growing config file is not re-parsed on every poll.
|
|
50
|
+
*/
|
|
51
|
+
private readOrganizationUuid;
|
|
52
|
+
/**
|
|
53
|
+
* Remaining prepaid credit balance in minor units (negative = overdraft), or null when
|
|
54
|
+
* unavailable (no org UUID, endpoint error/unsupported shape). Mirrors the CLI's own
|
|
55
|
+
* balance fetch: GET .../prepaid/credits → numeric `amount`. Never throws.
|
|
56
|
+
*/
|
|
57
|
+
private fetchPrepaidBalance;
|
|
36
58
|
/**
|
|
37
59
|
* Call Anthropic OAuth Usage API and return rate limit data.
|
|
38
60
|
* Returns null on failure (graceful degradation).
|
|
39
61
|
*/
|
|
40
62
|
probe(): Promise<SubscriptionRateLimit | null>;
|
|
63
|
+
private probeOnce;
|
|
64
|
+
/**
|
|
65
|
+
* Probe immediately and push a successful result to every connected client via the
|
|
66
|
+
* registered broadcast callback (registered by {@link startPolling}; no-op when polling
|
|
67
|
+
* has not started or the probe fails/turns stale). Called right after an account switch so
|
|
68
|
+
* ALL tabs converge on the new account's usage within one round trip instead of waiting up
|
|
69
|
+
* to a full poll interval — bypasses the 429 backoff on purpose (fresh credential).
|
|
70
|
+
*/
|
|
71
|
+
probeAndBroadcast(): Promise<void>;
|
|
41
72
|
/**
|
|
42
73
|
* Start periodic polling. Calls broadcast function on each successful probe.
|
|
43
74
|
* Safe to call multiple times — only one timer runs at a time.
|
|
44
75
|
*/
|
|
45
|
-
startPolling(broadcast: (data: SubscriptionRateLimit) => void, healthBroadcast?: (data: ApiHealthStatus) => void): void;
|
|
76
|
+
startPolling(broadcast: (data: SubscriptionRateLimit) => void, healthBroadcast?: (data: ApiHealthStatus) => void, throttleBroadcast?: (throttledUntil: number) => void): void;
|
|
46
77
|
/**
|
|
47
78
|
* Stop periodic polling.
|
|
48
79
|
*/
|
|
49
80
|
stopPolling(): void;
|
|
50
81
|
/**
|
|
51
|
-
*
|
|
82
|
+
* Parse a 429's Retry-After into the stand-down window: block probing until it passes,
|
|
83
|
+
* schedule the recovery one-shot, and push the window to every connected client — the
|
|
84
|
+
* regular broadcast channel only carries successes, so a tab parked on the settings page
|
|
85
|
+
* would otherwise never learn WHY the bars are empty. Definite server-declared window
|
|
86
|
+
* (measured: burst → 300s) — no exponential guessing: stand down exactly that long.
|
|
87
|
+
* Returns false when the header is absent/invalid (that 429 takes the backoff path).
|
|
88
|
+
*/
|
|
89
|
+
private recordThrottleWindow;
|
|
90
|
+
/**
|
|
91
|
+
* One-shot poll right after a Retry-After window expires (small buffer added), so usage
|
|
92
|
+
* refills and broadcasts at the earliest allowed moment instead of the next 2-min tick.
|
|
93
|
+
* Safe to fire anytime: pollOnce re-checks the window and generation-guarded probe rules.
|
|
52
94
|
*/
|
|
53
|
-
|
|
95
|
+
private scheduleThrottleRecovery;
|
|
96
|
+
/**
|
|
97
|
+
* Return last cached probe result (no API call). Deliberately NO stale fallback: usage can
|
|
98
|
+
* change from other devices at any moment, so anything but a live-generation probe result
|
|
99
|
+
* must not be presented as current. When this is null because of a throttle window, callers
|
|
100
|
+
* surface {@link getThrottledUntil} to the user instead.
|
|
101
|
+
*/
|
|
102
|
+
getCachedResult(maxAgeMs?: number): SubscriptionRateLimit | null;
|
|
103
|
+
/**
|
|
104
|
+
* Epoch ms until which the usage API refuses queries (server-declared Retry-After window),
|
|
105
|
+
* or null when probing is currently allowed. Lets the UI say "temporarily rate-limited,
|
|
106
|
+
* resumes in ~N min" honestly instead of an indefinite "checking…".
|
|
107
|
+
*/
|
|
108
|
+
getThrottledUntil(): number | null;
|
|
54
109
|
/**
|
|
55
110
|
* Cross-check a screen-scraped "usage limit" notice against the authoritative usage numbers.
|
|
56
111
|
* The CLI engine reads the limit notice off the PTY *screen*, which cannot tell the genuine
|
|
@@ -76,6 +131,21 @@ declare class RateLimitProbeService {
|
|
|
76
131
|
* Parse usage API JSON response into SubscriptionRateLimit
|
|
77
132
|
*/
|
|
78
133
|
private parseUsageResponse;
|
|
134
|
+
/**
|
|
135
|
+
* Every observed window's utilization, all families — the single enumeration shared by
|
|
136
|
+
* overallStatus and limit corroboration, so a new window family can never reach one
|
|
137
|
+
* aggregate and silently miss the other.
|
|
138
|
+
*/
|
|
139
|
+
private windowUtilizations;
|
|
140
|
+
/**
|
|
141
|
+
* Extra-usage credit standing. The two raw blocks carry the same standing under different
|
|
142
|
+
* field names — each is normalized to one intermediate and the FIRST one with an actual
|
|
143
|
+
* credit signal wins (a present-but-empty `spend` falls through to a populated `extra_usage`;
|
|
144
|
+
* transitional responses may carry both). Returns undefined when neither block carries any
|
|
145
|
+
* signal (never enabled, nothing spent, no cap, no disabled reason) so the UI omits the
|
|
146
|
+
* section entirely.
|
|
147
|
+
*/
|
|
148
|
+
private parseCredit;
|
|
79
149
|
private getStatus;
|
|
80
150
|
}
|
|
81
151
|
export declare const rateLimitProbeService: RateLimitProbeService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rateLimitProbeService.d.ts","sourceRoot":"","sources":["../../src/services/rateLimitProbeService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"rateLimitProbeService.d.ts","sourceRoot":"","sources":["../../src/services/rateLimitProbeService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,qBAAqB,EAA2C,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAkCtH,cAAM,qBAAqB;IACzB,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,aAAa,CAAK;IAE1B,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,eAAe,CAAsC;IAC7D,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,WAAW,CAAwD;IAC3E,OAAO,CAAC,iBAAiB,CAAkD;IAC3E,OAAO,CAAC,mBAAmB,CAAmD;IAC9E,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,oBAAoB,CAAK;IAOjC,OAAO,CAAC,UAAU,CAAK;IAKvB,OAAO,CAAC,aAAa,CAAgF;IAIrG,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,qBAAqB,CAA8C;IAE3E;;;OAGG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;;;;OAKG;IACH,oBAAoB,IAAI,IAAI;IAmB5B;;OAEG;IACH,OAAO,CAAC,eAAe;IA4BvB,wFAAwF;IACxF,OAAO,CAAC,gBAAgB;IAYxB;;;;;OAKG;YACW,oBAAoB;IAmBlC;;;;OAIG;YACW,mBAAmB;IA2BjC;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;YActC,SAAS;IAsFvB;;;;;;OAMG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IASxC;;;OAGG;IACH,YAAY,CACV,SAAS,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,EAChD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,EACjD,iBAAiB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,GACnD,IAAI;IAcP;;OAEG;IACH,WAAW,IAAI,IAAI;IAenB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IAUhC;;;;;OAKG;IACH,eAAe,CAAC,QAAQ,GAAE,MAA6B,GAAG,qBAAqB,GAAG,IAAI;IAStF;;;;OAIG;IACH,iBAAiB,IAAI,MAAM,GAAG,IAAI;IAIlC;;;;;;;;;;;;OAYG;IACH,mBAAmB,IAAI,OAAO;IAc9B;;;OAGG;IACH,YAAY,IAAI,eAAe,GAAG,IAAI;IAStC,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,QAAQ;IA8BhB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqG1B;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;IAgEnB,OAAO,CAAC,SAAS;CAKlB;AAED,eAAO,MAAM,qBAAqB,uBAA8B,CAAC"}
|