mindweave 0.0.1 → 2.1.2
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/LICENSE +190 -0
- package/README.md +171 -14
- package/dist/alternator/chassis/cache.js +47 -0
- package/dist/alternator/chassis/cache.js.map +1 -0
- package/dist/alternator/chassis/domRefs.js +53 -0
- package/dist/alternator/chassis/domRefs.js.map +1 -0
- package/dist/alternator/chassis/extractWorker.js +65 -0
- package/dist/alternator/chassis/extractWorker.js.map +1 -0
- package/dist/alternator/chassis/graph.js +221 -0
- package/dist/alternator/chassis/graph.js.map +1 -0
- package/dist/alternator/chassis/index.js +463 -0
- package/dist/alternator/chassis/index.js.map +1 -0
- package/dist/alternator/chassis/isolation.js +336 -0
- package/dist/alternator/chassis/isolation.js.map +1 -0
- package/dist/alternator/chassis/langCases.js +69 -0
- package/dist/alternator/chassis/langCases.js.map +1 -0
- package/dist/alternator/chassis/lsp.js +469 -0
- package/dist/alternator/chassis/lsp.js.map +1 -0
- package/dist/alternator/chassis/markup.js +262 -0
- package/dist/alternator/chassis/markup.js.map +1 -0
- package/dist/alternator/chassis/provision.js +198 -0
- package/dist/alternator/chassis/provision.js.map +1 -0
- package/dist/alternator/chassis/rank.js +72 -0
- package/dist/alternator/chassis/rank.js.map +1 -0
- package/dist/alternator/chassis/servers.js +215 -0
- package/dist/alternator/chassis/servers.js.map +1 -0
- package/dist/alternator/chassis/treesitter.js +608 -0
- package/dist/alternator/chassis/treesitter.js.map +1 -0
- package/dist/alternator/chassis/types.js +24 -0
- package/dist/alternator/chassis/types.js.map +1 -0
- package/dist/alternator/lane.js +67 -0
- package/dist/alternator/lane.js.map +1 -0
- package/dist/cli/App.js +2586 -0
- package/dist/cli/App.js.map +1 -0
- package/dist/cli/altScreen.js +67 -0
- package/dist/cli/altScreen.js.map +1 -0
- package/dist/cli/approvalChannel.js +72 -0
- package/dist/cli/approvalChannel.js.map +1 -0
- package/dist/cli/attachments.js +188 -0
- package/dist/cli/attachments.js.map +1 -0
- package/dist/cli/bootstrap.js +279 -0
- package/dist/cli/bootstrap.js.map +1 -0
- package/dist/cli/chatAnchor.js +94 -0
- package/dist/cli/chatAnchor.js.map +1 -0
- package/dist/cli/commandArgs.js +79 -0
- package/dist/cli/commandArgs.js.map +1 -0
- package/dist/cli/commandRoute.js +78 -0
- package/dist/cli/commandRoute.js.map +1 -0
- package/dist/cli/compaction.js +69 -0
- package/dist/cli/compaction.js.map +1 -0
- package/dist/cli/components/ApprovalBox.js +100 -0
- package/dist/cli/components/ApprovalBox.js.map +1 -0
- package/dist/cli/components/BlockView.js +128 -0
- package/dist/cli/components/BlockView.js.map +1 -0
- package/dist/cli/components/FirstRunFrame.js +41 -0
- package/dist/cli/components/FirstRunFrame.js.map +1 -0
- package/dist/cli/components/KeyManager.js +197 -0
- package/dist/cli/components/KeyManager.js.map +1 -0
- package/dist/cli/components/KeySetup.js +125 -0
- package/dist/cli/components/KeySetup.js.map +1 -0
- package/dist/cli/components/MenuFrame.js +24 -0
- package/dist/cli/components/MenuFrame.js.map +1 -0
- package/dist/cli/components/Picker.js +82 -0
- package/dist/cli/components/Picker.js.map +1 -0
- package/dist/cli/components/PromptInput.js +509 -0
- package/dist/cli/components/PromptInput.js.map +1 -0
- package/dist/cli/components/SubagentView.js +86 -0
- package/dist/cli/components/SubagentView.js.map +1 -0
- package/dist/cli/components/ToolGroup.js +60 -0
- package/dist/cli/components/ToolGroup.js.map +1 -0
- package/dist/cli/components/ToolLine.js +123 -0
- package/dist/cli/components/ToolLine.js.map +1 -0
- package/dist/cli/components/TrustGate.js +37 -0
- package/dist/cli/components/TrustGate.js.map +1 -0
- package/dist/cli/costView.js +40 -0
- package/dist/cli/costView.js.map +1 -0
- package/dist/cli/frameRate.js +30 -0
- package/dist/cli/frameRate.js.map +1 -0
- package/dist/cli/framebuffer/paint.js +165 -0
- package/dist/cli/framebuffer/paint.js.map +1 -0
- package/dist/cli/framebuffer/parse.js +266 -0
- package/dist/cli/framebuffer/parse.js.map +1 -0
- package/dist/cli/framebuffer/screen.js +196 -0
- package/dist/cli/framebuffer/screen.js.map +1 -0
- package/dist/cli/framebuffer/writer.js +139 -0
- package/dist/cli/framebuffer/writer.js.map +1 -0
- package/dist/cli/groupReveal.js +51 -0
- package/dist/cli/groupReveal.js.map +1 -0
- package/dist/cli/help.js +55 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/inputView.js +105 -0
- package/dist/cli/inputView.js.map +1 -0
- package/dist/cli/keyManager.js +65 -0
- package/dist/cli/keyManager.js.map +1 -0
- package/dist/cli/keySetup.js +35 -0
- package/dist/cli/keySetup.js.map +1 -0
- package/dist/cli/keyStore.js +73 -0
- package/dist/cli/keyStore.js.map +1 -0
- package/dist/cli/markdown.js +460 -0
- package/dist/cli/markdown.js.map +1 -0
- package/dist/cli/messageQueue.js +96 -0
- package/dist/cli/messageQueue.js.map +1 -0
- package/dist/cli/modes.js +90 -0
- package/dist/cli/modes.js.map +1 -0
- package/dist/cli/mouse.js +78 -0
- package/dist/cli/mouse.js.map +1 -0
- package/dist/cli/pasteAssembler.js +44 -0
- package/dist/cli/pasteAssembler.js.map +1 -0
- package/dist/cli/pathComplete.js +39 -0
- package/dist/cli/pathComplete.js.map +1 -0
- package/dist/cli/perfLog.js +90 -0
- package/dist/cli/perfLog.js.map +1 -0
- package/dist/cli/reveal.js +32 -0
- package/dist/cli/reveal.js.map +1 -0
- package/dist/cli/revealPace.js +59 -0
- package/dist/cli/revealPace.js.map +1 -0
- package/dist/cli/sessionCarry.js +19 -0
- package/dist/cli/sessionCarry.js.map +1 -0
- package/dist/cli/smoothScroll.js +74 -0
- package/dist/cli/smoothScroll.js.map +1 -0
- package/dist/cli/startupArgs.js +96 -0
- package/dist/cli/startupArgs.js.map +1 -0
- package/dist/cli/terminalRestore.js +34 -0
- package/dist/cli/terminalRestore.js.map +1 -0
- package/dist/cli/toolDisplay.js +219 -0
- package/dist/cli/toolDisplay.js.map +1 -0
- package/dist/cli/toolItems.js +65 -0
- package/dist/cli/toolItems.js.map +1 -0
- package/dist/cli/transcript.js +351 -0
- package/dist/cli/transcript.js.map +1 -0
- package/dist/cli/trust.js +79 -0
- package/dist/cli/trust.js.map +1 -0
- package/dist/cli/updateCheck.js +107 -0
- package/dist/cli/updateCheck.js.map +1 -0
- package/dist/cli/version.js +39 -0
- package/dist/cli/version.js.map +1 -0
- package/dist/cli/viewport.js +179 -0
- package/dist/cli/viewport.js.map +1 -0
- package/dist/cli/virtualWindow.js +103 -0
- package/dist/cli/virtualWindow.js.map +1 -0
- package/dist/cli/workingVerb.js +37 -0
- package/dist/cli/workingVerb.js.map +1 -0
- package/dist/cli/wrap.js +145 -0
- package/dist/cli/wrap.js.map +1 -0
- package/dist/drivers/anthropic/cachePoints.js +77 -0
- package/dist/drivers/anthropic/cachePoints.js.map +1 -0
- package/dist/drivers/anthropic/client.js +432 -0
- package/dist/drivers/anthropic/client.js.map +1 -0
- package/dist/drivers/anthropic/index.js +10 -0
- package/dist/drivers/anthropic/index.js.map +1 -0
- package/dist/drivers/anthropic/manifest.js +221 -0
- package/dist/drivers/anthropic/manifest.js.map +1 -0
- package/dist/drivers/cerebras/client.js +69 -0
- package/dist/drivers/cerebras/client.js.map +1 -0
- package/dist/drivers/cerebras/index.js +5 -0
- package/dist/drivers/cerebras/index.js.map +1 -0
- package/dist/drivers/cerebras/manifest.js +140 -0
- package/dist/drivers/cerebras/manifest.js.map +1 -0
- package/dist/drivers/clientId.js +41 -0
- package/dist/drivers/clientId.js.map +1 -0
- package/dist/drivers/contextOverflow.js +77 -0
- package/dist/drivers/contextOverflow.js.map +1 -0
- package/dist/drivers/deepseek/client.js +168 -0
- package/dist/drivers/deepseek/client.js.map +1 -0
- package/dist/drivers/deepseek/index.js +16 -0
- package/dist/drivers/deepseek/index.js.map +1 -0
- package/dist/drivers/deepseek/inlineTools.js +46 -0
- package/dist/drivers/deepseek/inlineTools.js.map +1 -0
- package/dist/drivers/deepseek/manifest.js +166 -0
- package/dist/drivers/deepseek/manifest.js.map +1 -0
- package/dist/drivers/gemini/client.js +38 -0
- package/dist/drivers/gemini/client.js.map +1 -0
- package/dist/drivers/gemini/index.js +5 -0
- package/dist/drivers/gemini/index.js.map +1 -0
- package/dist/drivers/gemini/manifest.js +150 -0
- package/dist/drivers/gemini/manifest.js.map +1 -0
- package/dist/drivers/glm/client.js +90 -0
- package/dist/drivers/glm/client.js.map +1 -0
- package/dist/drivers/glm/index.js +9 -0
- package/dist/drivers/glm/index.js.map +1 -0
- package/dist/drivers/glm/manifest.js +183 -0
- package/dist/drivers/glm/manifest.js.map +1 -0
- package/dist/drivers/groq/client.js +80 -0
- package/dist/drivers/groq/client.js.map +1 -0
- package/dist/drivers/groq/index.js +5 -0
- package/dist/drivers/groq/index.js.map +1 -0
- package/dist/drivers/groq/manifest.js +160 -0
- package/dist/drivers/groq/manifest.js.map +1 -0
- package/dist/drivers/kimi/client.js +82 -0
- package/dist/drivers/kimi/client.js.map +1 -0
- package/dist/drivers/kimi/index.js +9 -0
- package/dist/drivers/kimi/index.js.map +1 -0
- package/dist/drivers/kimi/manifest.js +168 -0
- package/dist/drivers/kimi/manifest.js.map +1 -0
- package/dist/drivers/meta/client.js +30 -0
- package/dist/drivers/meta/client.js.map +1 -0
- package/dist/drivers/meta/index.js +5 -0
- package/dist/drivers/meta/index.js.map +1 -0
- package/dist/drivers/meta/manifest.js +101 -0
- package/dist/drivers/meta/manifest.js.map +1 -0
- package/dist/drivers/minimax/client.js +36 -0
- package/dist/drivers/minimax/client.js.map +1 -0
- package/dist/drivers/minimax/index.js +5 -0
- package/dist/drivers/minimax/index.js.map +1 -0
- package/dist/drivers/minimax/manifest.js +120 -0
- package/dist/drivers/minimax/manifest.js.map +1 -0
- package/dist/drivers/mistral/client.js +54 -0
- package/dist/drivers/mistral/client.js.map +1 -0
- package/dist/drivers/mistral/index.js +5 -0
- package/dist/drivers/mistral/index.js.map +1 -0
- package/dist/drivers/mistral/manifest.js +118 -0
- package/dist/drivers/mistral/manifest.js.map +1 -0
- package/dist/drivers/openai/client.js +290 -0
- package/dist/drivers/openai/client.js.map +1 -0
- package/dist/drivers/openai/index.js +9 -0
- package/dist/drivers/openai/index.js.map +1 -0
- package/dist/drivers/openai/manifest.js +133 -0
- package/dist/drivers/openai/manifest.js.map +1 -0
- package/dist/drivers/openaiCompat/wire.js +493 -0
- package/dist/drivers/openaiCompat/wire.js.map +1 -0
- package/dist/drivers/partialTurn.js +23 -0
- package/dist/drivers/partialTurn.js.map +1 -0
- package/dist/drivers/providerError.js +181 -0
- package/dist/drivers/providerError.js.map +1 -0
- package/dist/drivers/qwen/client.js +93 -0
- package/dist/drivers/qwen/client.js.map +1 -0
- package/dist/drivers/qwen/index.js +9 -0
- package/dist/drivers/qwen/index.js.map +1 -0
- package/dist/drivers/qwen/manifest.js +146 -0
- package/dist/drivers/qwen/manifest.js.map +1 -0
- package/dist/drivers/registry.js +177 -0
- package/dist/drivers/registry.js.map +1 -0
- package/dist/drivers/retryPolicy.js +129 -0
- package/dist/drivers/retryPolicy.js.map +1 -0
- package/dist/drivers/searchBlocks.js +61 -0
- package/dist/drivers/searchBlocks.js.map +1 -0
- package/dist/drivers/types.js +2 -0
- package/dist/drivers/types.js.map +1 -0
- package/dist/drivers/xai/client.js +63 -0
- package/dist/drivers/xai/client.js.map +1 -0
- package/dist/drivers/xai/index.js +5 -0
- package/dist/drivers/xai/index.js.map +1 -0
- package/dist/drivers/xai/manifest.js +137 -0
- package/dist/drivers/xai/manifest.js.map +1 -0
- package/dist/dynamo/_probe.tmp.js +20 -0
- package/dist/dynamo/_probe.tmp.js.map +1 -0
- package/dist/dynamo/cacheBreak.js +88 -0
- package/dist/dynamo/cacheBreak.js.map +1 -0
- package/dist/dynamo/contextWindow.js +243 -0
- package/dist/dynamo/contextWindow.js.map +1 -0
- package/dist/dynamo/engine.js +2011 -0
- package/dist/dynamo/engine.js.map +1 -0
- package/dist/dynamo/guard.js +132 -0
- package/dist/dynamo/guard.js.map +1 -0
- package/dist/dynamo/liveMeter.js +58 -0
- package/dist/dynamo/liveMeter.js.map +1 -0
- package/dist/dynamo/model.js +172 -0
- package/dist/dynamo/model.js.map +1 -0
- package/dist/dynamo/planArtifact.js +125 -0
- package/dist/dynamo/planArtifact.js.map +1 -0
- package/dist/dynamo/pricing.js +140 -0
- package/dist/dynamo/pricing.js.map +1 -0
- package/dist/dynamo/prompt.js +264 -0
- package/dist/dynamo/prompt.js.map +1 -0
- package/dist/dynamo/spend.js +45 -0
- package/dist/dynamo/spend.js.map +1 -0
- package/dist/dynamo/verify.js +483 -0
- package/dist/dynamo/verify.js.map +1 -0
- package/dist/governor/forbidden.js +181 -0
- package/dist/governor/forbidden.js.map +1 -0
- package/dist/governor/freshness.js +83 -0
- package/dist/governor/freshness.js.map +1 -0
- package/dist/governor/frontmatter.js +38 -0
- package/dist/governor/frontmatter.js.map +1 -0
- package/dist/governor/glob.js +75 -0
- package/dist/governor/glob.js.map +1 -0
- package/dist/governor/index.js +87 -0
- package/dist/governor/index.js.map +1 -0
- package/dist/governor/rules.js +80 -0
- package/dist/governor/rules.js.map +1 -0
- package/dist/governor/scope.js +91 -0
- package/dist/governor/scope.js.map +1 -0
- package/dist/governor/skills.js +176 -0
- package/dist/governor/skills.js.map +1 -0
- package/dist/governor/types.js +16 -0
- package/dist/governor/types.js.map +1 -0
- package/dist/governor/write.js +182 -0
- package/dist/governor/write.js.map +1 -0
- package/dist/index.js +89 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/catalog.js +232 -0
- package/dist/mcp/catalog.js.map +1 -0
- package/dist/mcp/config.js +116 -0
- package/dist/mcp/config.js.map +1 -0
- package/dist/mcp/configWrite.js +254 -0
- package/dist/mcp/configWrite.js.map +1 -0
- package/dist/mcp/connection.js +504 -0
- package/dist/mcp/connection.js.map +1 -0
- package/dist/mcp/deferred.js +104 -0
- package/dist/mcp/deferred.js.map +1 -0
- package/dist/mcp/discover.js +128 -0
- package/dist/mcp/discover.js.map +1 -0
- package/dist/mcp/manager.js +679 -0
- package/dist/mcp/manager.js.map +1 -0
- package/dist/mcp/paramHeaders.js +163 -0
- package/dist/mcp/paramHeaders.js.map +1 -0
- package/dist/mcp/prompts.js +136 -0
- package/dist/mcp/prompts.js.map +1 -0
- package/dist/mcp/protocol.js +171 -0
- package/dist/mcp/protocol.js.map +1 -0
- package/dist/mcp/resources.js +119 -0
- package/dist/mcp/resources.js.map +1 -0
- package/dist/mcp/resultStore.js +180 -0
- package/dist/mcp/resultStore.js.map +1 -0
- package/dist/mcp/subscriptions.js +74 -0
- package/dist/mcp/subscriptions.js.map +1 -0
- package/dist/mcp/transport/headerValue.js +40 -0
- package/dist/mcp/transport/headerValue.js.map +1 -0
- package/dist/mcp/transport/http.js +321 -0
- package/dist/mcp/transport/http.js.map +1 -0
- package/dist/mcp/transport/stdio.js +234 -0
- package/dist/mcp/transport/stdio.js.map +1 -0
- package/dist/mcp/transport/types.js +27 -0
- package/dist/mcp/transport/types.js.map +1 -0
- package/dist/mcp/trust.js +98 -0
- package/dist/mcp/trust.js.map +1 -0
- package/dist/mcp/trustStore.js +55 -0
- package/dist/mcp/trustStore.js.map +1 -0
- package/dist/memory/autoMemory.js +340 -0
- package/dist/memory/autoMemory.js.map +1 -0
- package/dist/memory/compaction.js +513 -0
- package/dist/memory/compaction.js.map +1 -0
- package/dist/memory/images.js +173 -0
- package/dist/memory/images.js.map +1 -0
- package/dist/memory/presence.js +59 -0
- package/dist/memory/presence.js.map +1 -0
- package/dist/memory/projectNotes.js +247 -0
- package/dist/memory/projectNotes.js.map +1 -0
- package/dist/memory/restore.js +72 -0
- package/dist/memory/restore.js.map +1 -0
- package/dist/memory/session.js +472 -0
- package/dist/memory/session.js.map +1 -0
- package/dist/memory/sessionMemory.js +142 -0
- package/dist/memory/sessionMemory.js.map +1 -0
- package/dist/memory/sessionMemoryCompact.js +136 -0
- package/dist/memory/sessionMemoryCompact.js.map +1 -0
- package/dist/memory/store.js +217 -0
- package/dist/memory/store.js.map +1 -0
- package/dist/memory/types.js +14 -0
- package/dist/memory/types.js.map +1 -0
- package/dist/memory/workingSet.js +383 -0
- package/dist/memory/workingSet.js.map +1 -0
- package/dist/project/context.js +425 -0
- package/dist/project/context.js.map +1 -0
- package/dist/tools/approval.js +189 -0
- package/dist/tools/approval.js.map +1 -0
- package/dist/tools/askUser.js +103 -0
- package/dist/tools/askUser.js.map +1 -0
- package/dist/tools/atomicWrite.js +151 -0
- package/dist/tools/atomicWrite.js.map +1 -0
- package/dist/tools/backgroundShells.js +468 -0
- package/dist/tools/backgroundShells.js.map +1 -0
- package/dist/tools/captureSweep.js +77 -0
- package/dist/tools/captureSweep.js.map +1 -0
- package/dist/tools/chassisMux.js +92 -0
- package/dist/tools/chassisMux.js.map +1 -0
- package/dist/tools/checkpoints.js +328 -0
- package/dist/tools/checkpoints.js.map +1 -0
- package/dist/tools/codeIntel.js +267 -0
- package/dist/tools/codeIntel.js.map +1 -0
- package/dist/tools/deferredNative.js +121 -0
- package/dist/tools/deferredNative.js.map +1 -0
- package/dist/tools/detail.js +135 -0
- package/dist/tools/detail.js.map +1 -0
- package/dist/tools/diagnostics.js +174 -0
- package/dist/tools/diagnostics.js.map +1 -0
- package/dist/tools/edit.js +167 -0
- package/dist/tools/edit.js.map +1 -0
- package/dist/tools/editCore.js +283 -0
- package/dist/tools/editCore.js.map +1 -0
- package/dist/tools/editFile.js +183 -0
- package/dist/tools/editFile.js.map +1 -0
- package/dist/tools/editRipple.js +126 -0
- package/dist/tools/editRipple.js.map +1 -0
- package/dist/tools/editTarget.js +131 -0
- package/dist/tools/editTarget.js.map +1 -0
- package/dist/tools/editWindow.js +49 -0
- package/dist/tools/editWindow.js.map +1 -0
- package/dist/tools/eol.js +56 -0
- package/dist/tools/eol.js.map +1 -0
- package/dist/tools/exitPlan.js +175 -0
- package/dist/tools/exitPlan.js.map +1 -0
- package/dist/tools/focus.js +42 -0
- package/dist/tools/focus.js.map +1 -0
- package/dist/tools/gitignore.js +148 -0
- package/dist/tools/gitignore.js.map +1 -0
- package/dist/tools/glob.js +134 -0
- package/dist/tools/glob.js.map +1 -0
- package/dist/tools/governorTools.js +258 -0
- package/dist/tools/governorTools.js.map +1 -0
- package/dist/tools/grep.js +450 -0
- package/dist/tools/grep.js.map +1 -0
- package/dist/tools/guard.js +220 -0
- package/dist/tools/guard.js.map +1 -0
- package/dist/tools/killTree.js +215 -0
- package/dist/tools/killTree.js.map +1 -0
- package/dist/tools/listDir.js +143 -0
- package/dist/tools/listDir.js.map +1 -0
- package/dist/tools/mcpAdd.js +176 -0
- package/dist/tools/mcpAdd.js.map +1 -0
- package/dist/tools/mcpResources.js +116 -0
- package/dist/tools/mcpResources.js.map +1 -0
- package/dist/tools/mcpSearch.js +123 -0
- package/dist/tools/mcpSearch.js.map +1 -0
- package/dist/tools/multiEdit.js +168 -0
- package/dist/tools/multiEdit.js.map +1 -0
- package/dist/tools/paths.js +225 -0
- package/dist/tools/paths.js.map +1 -0
- package/dist/tools/posixShell.js +123 -0
- package/dist/tools/posixShell.js.map +1 -0
- package/dist/tools/readFile.js +371 -0
- package/dist/tools/readFile.js.map +1 -0
- package/dist/tools/readSymbol.js +145 -0
- package/dist/tools/readSymbol.js.map +1 -0
- package/dist/tools/registry.js +120 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/replaceSymbol.js +141 -0
- package/dist/tools/replaceSymbol.js.map +1 -0
- package/dist/tools/results.js +15 -0
- package/dist/tools/results.js.map +1 -0
- package/dist/tools/ripgrep.js +145 -0
- package/dist/tools/ripgrep.js.map +1 -0
- package/dist/tools/runCommand.js +633 -0
- package/dist/tools/runCommand.js.map +1 -0
- package/dist/tools/saveMemory.js +102 -0
- package/dist/tools/saveMemory.js.map +1 -0
- package/dist/tools/screenshot.js +200 -0
- package/dist/tools/screenshot.js.map +1 -0
- package/dist/tools/screenshotWin.js +227 -0
- package/dist/tools/screenshotWin.js.map +1 -0
- package/dist/tools/search.js +121 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/tools/sessionTools.js +187 -0
- package/dist/tools/sessionTools.js.map +1 -0
- package/dist/tools/shellCheckpoint.js +123 -0
- package/dist/tools/shellCheckpoint.js.map +1 -0
- package/dist/tools/shellLint.js +102 -0
- package/dist/tools/shellLint.js.map +1 -0
- package/dist/tools/shellTools.js +203 -0
- package/dist/tools/shellTools.js.map +1 -0
- package/dist/tools/spanCore.js +78 -0
- package/dist/tools/spanCore.js.map +1 -0
- package/dist/tools/subagent.js +224 -0
- package/dist/tools/subagent.js.map +1 -0
- package/dist/tools/subagentReport.js +114 -0
- package/dist/tools/subagentReport.js.map +1 -0
- package/dist/tools/tempSweep.js +118 -0
- package/dist/tools/tempSweep.js.map +1 -0
- package/dist/tools/todo.js +117 -0
- package/dist/tools/todo.js.map +1 -0
- package/dist/tools/types.js +2 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/tools/untrusted.js +46 -0
- package/dist/tools/untrusted.js.map +1 -0
- package/dist/tools/useSkill.js +62 -0
- package/dist/tools/useSkill.js.map +1 -0
- package/dist/tools/walk.js +152 -0
- package/dist/tools/walk.js.map +1 -0
- package/dist/tools/web.js +61 -0
- package/dist/tools/web.js.map +1 -0
- package/dist/tools/webFetch.js +444 -0
- package/dist/tools/webFetch.js.map +1 -0
- package/dist/tools/webSearch.js +130 -0
- package/dist/tools/webSearch.js.map +1 -0
- package/dist/tools/workspace.js +212 -0
- package/dist/tools/workspace.js.map +1 -0
- package/dist/tools/workspaceDiscover.js +216 -0
- package/dist/tools/workspaceDiscover.js.map +1 -0
- package/dist/tools/writeFile.js +162 -0
- package/dist/tools/writeFile.js.map +1 -0
- package/package.json +74 -28
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/cli/App.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAmB,MAAM,KAAK,CAAC;AAC9F,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAoB,MAAM,oBAAoB,CAAC;AACzN,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC7G,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAiD,MAAM,iBAAiB,CAAC;AACrH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAc,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,IAAI,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,YAAY,EAAkB,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAmB,MAAM,wBAAwB,CAAC;AAIxG,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC1H,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAe,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAEnD;;mEAEmE;AACnE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,WAAW;IACX,MAAM;IACN,MAAM;IACN,QAAQ;IACR,WAAW;IACX,SAAS;IACT,QAAQ;CACT,CAAC,CAAC;AAiBH;;;;GAIG;AACH,SAAS,aAAa,CAAC,KAAa;IAClC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/C,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;AAC1F,CAAC;AAwBD,sEAAsE;AACtE,MAAM,YAAY,GAAG;IACnB,EAAE,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,4FAA4F,EAAE;IAC1I,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,wCAAwC,EAAE;IAClF,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,qDAAqD,EAAE;CAC7F,CAAC;AAEF,MAAM,UAAU,GAAG;IACjB,gFAAgF;IAChF,iFAAiF;IACjF,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,MAAM,CAAkB,YAAY,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,EAAE;QAClC,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpD,MAAM,EAAE,CAAC;IACX,CAAC,CAAC;IACF,+EAA+E;IAC/E,6EAA6E;IAC7E,iFAAiF;IACjF,iFAAiF;IACjF,2BAA2B;IAC3B,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE;QACrC,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC,CAAC;IACF,iFAAiF;IACjF,kFAAkF;IAClF,mFAAmF;IACnF,+EAA+E;IAC/E,0DAA0D;IAC1D,MAAM,UAAU,GAAG,CAAC,OAAiB,EAAE,EAAE;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC;;gBAC/C,WAAW,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC;QAChC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1C,2EAA2E;IAC3E,2EAA2E;IAC3E,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAS,YAAY,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,MAAM,CAAS,YAAY,CAAC,CAAC;IAC7C,qFAAqF;IACrF,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC5E,gFAAgF;IAChF,2EAA2E;IAC3E,2CAA2C;IAC3C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5C,gFAAgF;IAChF,MAAM,UAAU,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IACnD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtD;0FACsF;IACtF,MAAM,UAAU,GAAG,MAAM,CAAiD,IAAI,CAAC,CAAC;IAChF,+EAA+E;IAC/E,wEAAwE;IACxE,gFAAgF;IAChF,4BAA4B;IAC5B,EAAE;IACF,8EAA8E;IAC9E,kFAAkF;IAClF,oFAAoF;IACpF,qFAAqF;IACrF,qFAAqF;IACrF,qFAAqF;IACrF,sEAAsE;IACtE,MAAM,YAAY,GAAG,MAAM,CAAyB,IAAI,OAAO,EAAE,CAAC,CAAC;IACnE,kFAAkF;IAClF,MAAM,SAAS,GAAG,MAAM,CAAyB,IAAI,GAAG,EAAE,CAAC,CAAC;IAC5D,iFAAiF;IACjF,oEAAoE;IACpE,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/B,gFAAgF;IAChF,oBAAoB;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpC,+EAA+E;IAC/E,2EAA2E;IAC3E,6EAA6E;IAC7E,0EAA0E;IAC1E,6EAA6E;IAC7E,2EAA2E;IAC3E,2DAA2D;IAC3D,MAAM,SAAS,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAClD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpD,0EAA0E;IAC1E,+EAA+E;IAC/E,oCAAoC;IACpC,MAAM,OAAO,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAChD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChD,+EAA+E;IAC/E,wEAAwE;IACxE,+EAA+E;IAC/E,4EAA4E;IAC5E,uEAAuE;IACvE,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrE,+EAA+E;IAC/E,gFAAgF;IAChF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC1D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAmB,IAAI,CAAC,CAAC;IACnE,MAAM,SAAS,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAC9C,iFAAiF;IACjF,8EAA8E;IAC9E,iFAAiF;IACjF,+EAA+E;IAC/E,2EAA2E;IAC3E,qDAAqD;IACrD,MAAM,YAAY,GAAG,MAAM,CAAU,EAAE,CAAC,CAAC;IACzC,sFAAsF;IACtF,mFAAmF;IACnF,0EAA0E;IAC1E,sFAAsF;IACtF,mFAAmF;IACnF,oFAAoF;IACpF,iCAAiC;IACjC,MAAM,KAAK,GAAG,MAAM,CAAa,UAAU,EAAE,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IACpE,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,gFAAgF;IAChF,MAAM,QAAQ,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;IACtD,0EAA0E;IAC1E,+EAA+E;IAC/E,gFAAgF;IAChF,0BAA0B;IAC1B,sFAAsF;IACtF,sFAAsF;IACtF,qFAAqF;IACrF,qFAAqF;IACrF,gFAAgF;IAChF,sEAAsE;IACtE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IACvG,uFAAuF;IACvF,kFAAkF;IAClF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACrE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1H,iEAAiE;IACjE,MAAM,CAAC,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACrC,yFAAyF;IACzF,+EAA+E;IAC/E,qFAAqF;IACrF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5C,qFAAqF;IACrF,oFAAoF;IACpF,gDAAgD;IAChD,MAAM,aAAa,GAAG,MAAM,CAA6D,IAAI,CAAC,CAAC;IAC/F,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,SAAS,IAAI,QAAQ,CAAC;IACvC,qEAAqE;IACrE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IACrD,kFAAkF;IAClF,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,MAAM,CAAW,EAAE,CAAC,CAAC;IACtC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IACnD,8EAA8E;IAC9E,uEAAuE;IACvE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAiB,IAAI,CAAC,CAAC;IAE7D,sFAAsF;IACtF,kFAAkF;IAClF,6CAA6C;IAC7C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9C,gFAAgF;IAChF,mFAAmF;IACnF,kFAAkF;IAClF,gEAAgE;IAChE,EAAE;IACF,mFAAmF;IACnF,kFAAkF;IAClF,8EAA8E;IAC9E,kFAAkF;IAClF,kFAAkF;IAClF,qFAAqF;IACrF,oFAAoF;IACpF,oFAAoF;IACpF,2EAA2E;IAC3E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,eAAe,EAAW,CAAC,CAAC;IACzD,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,EAAE;QACnC,UAAU,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC,CACzB,QAAgB,EAChB,OAAiB,EACjB,MAAe,EACf,WAAoB,EACpB,QAAiD,EACjD,EAAE;QACF,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC;QAC5B,IAAI,IAAI,EAAE,CAAC;YACT,6EAA6E;YAC7E,kFAAkF;YAClF,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrG,CAAC;QACD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC;YACnC,IAAI,EAAE,UAAU;YAChB,QAAQ;YACR,OAAO;YACP,8EAA8E;YAC9E,yDAAyD;YACzD,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;YACjB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvB,CAAC,CAAC;QACd,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,kFAAkF;IAClF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxC,kFAAkF;IAClF,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAElC,+EAA+E;IAC/E,6EAA6E;IAC7E,yEAAyE;IACzE,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,IAA6C,EAAE,EAAE,CAC3E,QAAQ,CACN,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAC3G,CAAC;IACJ,8EAA8E;IAC9E,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/G,2DAA2D;IAC3D,MAAM,OAAO,GAAG,IAAI,CAAC;IAErB,kFAAkF;IAClF,8EAA8E;IAC9E,+EAA+E;IAC/E,iFAAiF;IACjF,kFAAkF;IAClF,+EAA+E;IAC/E,SAAS,WAAW,CAAC,UAAmB;QACtC,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACtB,gFAAgF;gBAChF,8EAA8E;gBAC9E,2EAA2E;gBAC3E,6CAA6C;gBAC7C,IAAI,CAAC,CAAC,CAAC,SAAS;oBAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAClF,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yCAAyC,EAAE,CAAC,CAAC;YAC9E,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAClC,2EAA2E;gBAC3E,4DAA4D;gBAC5D,0EAA0E;gBAC1E,0EAA0E;gBAC1E,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;oBACrB,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBACpD,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gBACvF,CAAC;gBACD,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;oBACrC,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;oBAChE,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC5H,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,yEAAyE;gBACzE,QAAQ,CAAC;oBACP,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,CAAC,CAAC,UAAU;oBACpB,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;oBAC1E,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,MAAM,EAAE,CAAC,CAAC,MAAM;iBACjB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,8EAA8E;QAC9E,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;QACpC,6EAA6E;QAC7E,iFAAiF;QACjF,2EAA2E;QAC3E,yCAAyC;QACzC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,6EAA6E;IAC7E,SAAS,aAAa,CAAC,GAAW;QAChC,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,mFAAmF;IACnF,qDAAqD;IACrD,SAAS,cAAc;QACrB,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxB,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC;QAC1D,KAAK,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,CAAC;YAC3D,iFAAiF;YACjF,+EAA+E;YAC/E,8EAA8E;YAC9E,2EAA2E;YAC3E,IAAI,IAAI,KAAK,OAAO;gBAAE,SAAS;YAC/B,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,SAAS,KAAK,MAAM;gBAAE,SAAS;YAChE,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,QAAQ,EAAE,CAAC;YAClF,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC,CAAC;QACtH,CAAC;IACH,CAAC;IAED,mFAAmF;IACnF,oFAAoF;IACpF,gEAAgE;IAChE,SAAS,eAAe;QACtB,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxB,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE;YAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3F,CAAC;IAED,SAAS,cAAc,CAAC,CAAU;QAChC,CAAC,CAAC,WAAW,CAAC,eAAe,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAClG,CAAC,CAAC,WAAW,CAAC,gBAAgB,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC;QAC5D,oFAAoF;QACpF,kFAAkF;QAClF,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;QAChD,8DAA8D;QAC9D,MAAM,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC,CAAC,WAAW,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;QACpC,CAAC,CAAC,WAAW,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;QAClC,CAAC,CAAC,WAAW,CAAC,YAAY,GAAG,SAAS,CAAC;QACvC,+EAA+E;QAC/E,+EAA+E;QAC/E,+EAA+E;QAC/E,8EAA8E;QAC9E,CAAC,CAAC,WAAW,CAAC,YAAY,GAAG,GAAG,EAAE;YAChC,MAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACxC,2EAA2E;YAC3E,8EAA8E;YAC9E,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;YACrB,OAAO,CAAC,EAAE,CAAC,CAAC;QACd,CAAC,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,8EAA8E;IAC9E,SAAS,SAAS,CAAC,EAAU;QAC3B,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;QACrB,OAAO,CAAC,EAAE,CAAC,CAAC;QACZ,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;QACvB,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,EAAE,CAAC;YACN,CAAC,CAAC,WAAW,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;YACpC,CAAC,CAAC,WAAW,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;YAClC,2EAA2E;YAC3E,IAAI,CAAC,CAAC,OAAO;gBAAE,CAAC,CAAC,WAAW,CAAC,YAAY,GAAG,SAAS,CAAC;QACxD,CAAC;QACD,iFAAiF;QACjF,kFAAkF;IACpF,CAAC;IAED,gFAAgF;IAChF,+EAA+E;IAC/E,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,GAAG,EAAkB,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3B,SAAS,aAAa,CAAC,OAAe;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QACzC,qFAAqF;QACrF,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,QAAQ,CAAC;QACxE,MAAM,IAAI,GAAG,iBAAiB,EAAE,QAAQ,CAAC,OAAO,IAAI,IAAI,GAAG,CAAC;QAC5D,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,SAAS,YAAY,CAAC,IAAY;QAChC,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACjD,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,yEAAyE;IACzE,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,MAAc,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAW,EAAE,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,2DAA2D;IAC3D,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,eAAe,EAAE,CAAC;IACnD,8EAA8E;IAC9E,8EAA8E;IAC9E,0EAA0E;IAC1E,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;IAE/B,4EAA4E;IAC5E,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE7C,SAAS,CAAC,GAAG,EAAE;QACb,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACzB,cAAc,CAAC,CAAC,CAAC,CAAC;YAClB,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,wEAAwE;YACxE,iEAAiE;YACjE,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAClD,IAAI,CAAC,IAAI;gBAAE,OAAO;YAClB,2EAA2E;YAC3E,+EAA+E;YAC/E,kEAAkE;YAClE,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAClE,IAAI,QAAQ,EAAE,CAAC;gBACb,KAAK,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAC5D,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,oBAAoB,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,gCAAgC,CAAC,CACrG,CAAC;gBACF,OAAO;YACT,CAAC;YACD,4EAA4E;YAC5E,KAAK,IAAI,CAAC;YACV,YAAY,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,wFAAwF;IACxF,qFAAqF;IACrF,qFAAqF;IACrF,wCAAwC;IACxC,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACpC,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,IAAI,CAAC,sBAAsB,UAAU,EAAE,OAAO,MAAM,6BAA6B,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,qFAAqF;IACrF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,QAAQ,IAAI,WAAW,CAAC,OAAO;YAAE,OAAO;QAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC;QAC1D,IAAI,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC;YAAE,KAAK,iBAAiB,EAAE,CAAC;IAC9D,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEpC,mFAAmF;IACnF,mFAAmF;IACnF,yDAAyD;IACzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,IAAI,OAAO;YAAE,OAAO;QAClD,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;QAC7B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,KAAK,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAErC,mFAAmF;IACnF,mFAAmF;IACnF,8EAA8E;IAC9E,EAAE;IACF,qFAAqF;IACrF,oFAAoF;IACpF,+EAA+E;IAC/E,sEAAsE;IACtE,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,KAAa,EAAE,MAAc,EAAE,GAAoB,EAAE,EAAE;QACtD,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QAC/C,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9B,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;QACtB,SAAS,CAAC,EAAE,CAAC,CAAC;QACd,OAAO,MAAM,CAAC;IAChB,CAAC,EACD,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,iEAAiE;IACjE,SAAS,SAAS;QAChB,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,YAAY,CAAC,OAAO,GAAG,EAAE,CAAC;QAC1B,KAAK,CAAC,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,wDAAwD;QAC5E,QAAQ,CAAC,OAAO,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,gFAAgF;IAChF,8EAA8E;IAC9E,+EAA+E;IAC/E,iFAAiF;IACjF,gEAAgE;IAChE,QAAQ,CACN,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACd,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YAC1B,gFAAgF;YAChF,iFAAiF;YACjF,0EAA0E;YAC1E,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;YACrD,iFAAiF;YACjF,oFAAoF;YACpF,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC;YAC1D,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE;gBAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAChE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,0CAA0C;YAChE,sEAAsE;YACtE,sEAAsE;YACtE,sEAAsE;YACtE,mEAAmE;YACnE,qEAAqE;YACrE,qEAAqE;YACrE,IAAI,EAAE,CAAC;YACP,4EAA4E;YAC5E,6EAA6E;YAC7E,6CAA6C;QAC/C,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,IAAI,OAAO,KAAK,IAAI,EAAE,CACvC,CAAC;IAEF,iFAAiF;IACjF,6EAA6E;IAC7E,QAAQ,CACN,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACd,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK;YAAE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACjE,CAAC,EACD,EAAE,QAAQ,EAAE,KAAK,IAAI,OAAO,KAAK,IAAI,EAAE,CACxC,CAAC;IAEF,4EAA4E;IAC5E,6EAA6E;IAC7E,uEAAuE;IACvE,uEAAuE;IACvE,8EAA8E;IAC9E,2EAA2E;IAC3E,EAAE;IACF,oFAAoF;IACpF,kFAAkF;IAClF,oFAAoF;IACpF,+DAA+D;IAC/D,EAAE;IACF,+EAA+E;IAC/E,qFAAqF;IACrF,iFAAiF;IACjF,qFAAqF;IACrF,qFAAqF;IACrF,oDAAoD;IACpD,+EAA+E;IAC/E,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,EAAE;QAC7C,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,QAAQ,CACN,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACd,0EAA0E;QAC1E,+EAA+E;QAC/E,IAAI,GAAG,CAAC,MAAM;YAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;aAChC,IAAI,GAAG,CAAC,QAAQ;YAAE,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC;aACxC,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,KAAK;YAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;aAC1C,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,KAAK;YAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC,EACD,EAAE,QAAQ,EAAE,KAAK,IAAI,OAAO,KAAK,IAAI,EAAE,CACxC,CAAC;IAEF,iFAAiF;IACjF,+EAA+E;IAC/E,+EAA+E;IAC/E,2EAA2E;IAC3E,uBAAuB;IACvB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU,CAAC,OAAO;YAAE,OAAO;QAChC,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACtD,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,mFAAmF;QACnF,iFAAiF;QACjF,kFAAkF;QAClF,+CAA+C;QAC/C,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC;QAChC,IAAI,IAAI,EAAE,CAAC;YACT,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;YAC1B,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC;YACzF,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,+EAA+E;IAC/E,yEAAyE;IACzE,EAAE;IACF,mFAAmF;IACnF,+EAA+E;IAC/E,+EAA+E;IAC/E,kDAAkD;IAClD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QACzC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YAC9C,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,SAAS;YAC9C,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACxC,+EAA+E;YAC/E,+EAA+E;YAC/E,kFAAkF;YAClF,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACf,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACxC,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;QACH,CAAC;QACD,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,OAAO;YAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,6DAA6D;IAC7D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,OAAO;QAC/B,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrD,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,+EAA+E;IAC/E,4EAA4E;IAC5E,iDAAiD;IACjD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,OAAO;QAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnD,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,4EAA4E;IAC5E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,MAAM,MAAM,GAAG,CAAC,KAAsB,EAAE,EAAE;YACxC,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACpD,QAAQ,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACtD,CAAC;QACH,CAAC,CAAC;QACF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzB,OAAO,GAAG,EAAE;YACV,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC1B,GAAG,EAAE,CAAC;QACR,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEtB,SAAS,OAAO;QACd,IAAI,SAAS,CAAC,OAAO,IAAI,IAAI;YAAE,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACzE,gFAAgF;QAChF,+EAA+E;QAC/E,qDAAqD;QACrD,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,UAAU,gBAAgB,CAAC,GAAW;QACzC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAE1B,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,MAAM;gBAAE,OAAO,GAAG,CAAC,2BAA2B,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC;YACrB,MAAM,IAAI,GACR,CAAC,MAAM,sBAAsB,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;gBACtE,CAAC,MAAM,sBAAsB,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YACxE,GAAG,CACD,IAAI;gBACF,CAAC,CAAC,YAAY,MAAM,gEAAgE;gBACpF,CAAC,CAAC,qBAAqB,MAAM,kBAAkB,CAClD,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEzC,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3D,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,IAAI,gBAAgB,CAAC,CAAC;YAClG,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxE,IAAI,MAAM,EAAE,KAAK,KAAK,WAAW,EAAE,CAAC;gBAClC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,MAAM,CAAC,SAAS,QAAQ,MAAM,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,cAAc,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC;YACrI,CAAC;iBAAM,IAAI,MAAM,EAAE,CAAC;gBAClB,8EAA8E;gBAC9E,oEAAoE;gBACpE,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,iDAAiD,CAAC,CAAC;YACxI,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,kBAAkB,IAAI,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,kFAAkF;IAClF,mFAAmF;IACnF,gEAAgE;IAChE,KAAK,UAAU,SAAS,CAAC,IAAY;QACnC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC;QAC7C,IAAI,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5F,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,2CAA2C,CAAC,CAAC,CAAC,GAAG,IAAI,uBAAuB,CAAC,CAAC;YACpG,OAAO;QACT,CAAC;QACD,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,kFAAkF;IAClF,gFAAgF;IAChF,KAAK,UAAU,YAAY,CAAC,IAAY;QACtC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC;QAC7C,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,CAAC,gBAAgB,IAAI,GAAG,CAAC,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;YACjC,IAAI,CAAC,GAAG,IAAI,gBAAgB,MAAM,CAAC,SAAS,QAAQ,MAAM,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3F,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,IAAI,OAAO,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,2BAA2B;IAC3B,KAAK,UAAU,gBAAgB;QAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC;QACzC,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,GAAG,CAAC,gBAAgB,EAAE,OAAO,EAAE,CAAC;QAChC,kFAAkF;QAClF,mFAAmF;QACnF,wDAAwD;QACxD,MAAM,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;QACzB,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACnF,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,kFAAkF;IAClF,kFAAkF;IAClF,iFAAiF;IACjF,kFAAkF;IAClF,0EAA0E;IAC1E,kFAAkF;IAClF,2BAA2B;IAC3B,EAAE;IACF,kFAAkF;IAClF,4EAA4E;IAC5E,wEAAwE;IACxE,gCAAgC;IAChC,MAAM,OAAO,GAAG,MAAM,CAAW,EAAE,CAAC,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAC;IACrE,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,sCAAsC;IACnE,2EAA2E;IAC3E,8EAA8E;IAC9E,8EAA8E;IAC9E,iDAAiD;IACjD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAEhC,iFAAiF;IACjF,6EAA6E;IAC7E,6DAA6D;IAC7D,EAAE;IACF,6EAA6E;IAC7E,mFAAmF;IACnF,2EAA2E;IAC3E,gFAAgF;IAChF,kFAAkF;IAClF,kFAAkF;IAClF,gFAAgF;IAChF,gBAAgB;IAChB,MAAM,OAAO,GAAG,CAAC,CAAS,EAAE,EAAE;QAC5B,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,OAAO,CACL,CAAC,CAAC,IAAI,KAAK,OAAO;YAClB,CAAC,CAAC,IAAI,KAAK,SAAS;YACpB,CAAC,CAAC,IAAI,KAAK,cAAc;YACzB,CAAC,CAAC,IAAI,KAAK,YAAY;YACvB,CAAC,CAAC,IAAI,KAAK,aAAa,CACzB,CAAC;IACJ,CAAC,CAAC;IAEF,SAAS,aAAa,CAAC,CAAS;QAC9B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,IAAI,EAAE,CAAC;IACjC,CAAC;IAED,mFAAmF;IACnF,iFAAiF;IACjF,mEAAmE;IACnE,SAAS,aAAa,CAAC,MAAkB;QACvC,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,YAAY,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACvG,SAAS,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAClC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,MAAM,EAAE,CAAC;YACT,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAClC,IAAI,EAAE,CAAC;QACT,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAED,SAAS,IAAI;QACX,2EAA2E;QAC3E,gEAAgE;QAChE,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;YACnE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAG,CAAC;YACnC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;gBAAE,WAAW,CAAC,CAAC,CAAC,CAAC;;gBAClC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACjB,mEAAmE;YACnE,wEAAwE;YACxE,6EAA6E;YAC7E,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,KAAK;gBAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;iBAC3D,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;gBAAE,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3D,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC3B,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC;QAElC,iFAAiF;QACjF,gFAAgF;QAChF,8EAA8E;QAC9E,gFAAgF;QAChF,8EAA8E;QAC9E,+EAA+E;QAC/E,+EAA+E;QAC/E,4EAA4E;QAC5E,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACrE,aAAa,CAAC,GAAG,EAAE;gBACjB,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;gBACpC,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;YAC5B,CAAC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,iFAAiF;QACjF,+EAA+E;QAC/E,8EAA8E;QAC9E,gFAAgF;QAChF,0EAA0E;QAC1E,gFAAgF;QAChF,8EAA8E;QAC9E,8EAA8E;QAC9E,6EAA6E;QAC7E,iDAAiD;QACjD,EAAE;QACF,4EAA4E;QAC5E,6EAA6E;QAC7E,+EAA+E;QAC/E,6EAA6E;QAC7E,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YACrD,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,MAAM;oBAAE,OAAO;YAChG,CAAC;iBAAM,IAAI,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjG,OAAO;YACT,CAAC;YACD,aAAa,CAAC,GAAG,EAAE;gBACjB,0EAA0E;gBAC1E,6EAA6E;gBAC7E,2EAA2E;gBAC3E,yCAAyC;gBACzC,IAAI,IAAY,CAAC;gBACjB,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,GAAG,CAAC,CAAC;oBACT,OAAO,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAE,CAAC;wBAAE,IAAI,EAAE,CAAC;gBACxF,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;oBAChG,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;gBAClC,CAAC;gBACD,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC5C,uEAAuE;gBACvE,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;YAC5B,CAAC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,iFAAiF;QACjF,oBAAoB;QACpB,aAAa,CAAC,GAAG,EAAE;YACjB,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAClC,IAAI,CAAC,EAAE,CAAC;gBACN,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACZ,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;oBAAE,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACpF,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,UAAU,aAAa,CAAC,CAAU;QACrC,SAAS,EAAE,CAAC;QACZ,oFAAoF;QACpF,oFAAoF;QACpF,qFAAqF;QACrF,uEAAuE;QACvE,MAAM,mBAAmB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;QACrB,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,wCAAwC;QAClE,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3B,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,CAAC,EAAE;gBACf,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CACzB,aAAa,CACX,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAC7H;gBACH,+EAA+E;gBAC/E,6EAA6E;gBAC7E,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;gBACvE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;oBACb,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACtB,KAAK,CAAC,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBAC1D,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;oBACnD,CAAC;yBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;wBAClC,0EAA0E;wBAC1E,4EAA4E;wBAC5E,KAAK,CAAC,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC5D,CAAC;yBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;wBACnC,aAAa,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;oBACxC,CAAC;yBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;wBACpD,2EAA2E;wBAC3E,IAAI,CAAC,CAAC,IAAI,KAAK,gBAAgB;4BAAE,OAAO;wBACxC,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;wBACtC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;4BACZ,wEAAwE;4BACxE,aAAa,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;wBACpH,CAAC;6BAAM,CAAC;4BACN,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACzI,CAAC;oBACH,CAAC;yBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;wBAClD,IAAI,CAAC,CAAC,IAAI,KAAK,gBAAgB;4BAAE,OAAO;wBACxC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;4BACZ,aAAa,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC1G,CAAC;6BAAM,CAAC;4BACN,aAAa,CAAC;gCACZ,IAAI,EAAE,SAAS;gCACf,MAAM,EAAE,CAAC,CAAC,EAAE;gCACZ,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK;gCACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gCAClB,MAAM,EAAE,CAAC,CAAC,MAAM;gCAChB,UAAU,EAAE,CAAC,CAAC,UAAU;gCACxB,KAAK,EAAE,CAAC,CAAC,KAAK;gCACd,MAAM,EAAE,CAAC,CAAC,WAAW;gCACrB,IAAI,EAAE,CAAC,CAAC,WAAW;6BACpB,CAAC,CAAC;wBACL,CAAC;wBACD,wEAAwE;wBACxE,wEAAwE;wBACxE,sEAAsE;wBACtE,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC;wBACpD,KAAK,MAAM,MAAM,IAAI,GAAG,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;4BACxC,MAAM,KAAK,GAAG,YAAY,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;4BAChD,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;4BAC1F,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;wBAC/E,CAAC;wBACD,IAAI,GAAG;4BAAE,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;oBAC5B,CAAC;yBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;wBACxD,aAAa,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAC9F,CAAC;yBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;wBACtD,aAAa,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC1F,CAAC;yBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC9B,wEAAwE;wBACxE,+DAA+D;wBAC/D,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC;4BACxB,YAAY,EAAE,CAAC,CAAC,YAAY;4BAC5B,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;4BACpC,WAAW,EAAE,CAAC,CAAC,WAAW;4BAC1B,cAAc,EAAE,CAAC,CAAC,cAAc;4BAChC,eAAe,EAAE,CAAC,CAAC,eAAe;4BAClC,yEAAyE;4BACzE,uEAAuE;4BACvE,kEAAkE;4BAClE,GAAG,CAAC,CAAC,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBACtF,CAAC,CAAC;wBACH,YAAY,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;oBACzE,CAAC;gBACH,CAAC;gBACD,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM;gBAChC,2EAA2E;gBAC3E,2EAA2E;gBAC3E,uCAAuC;gBACvC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;aAC9B,CAAC,CAAC;YACH,aAAa,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,aAAa,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;YACvC,4EAA4E;YAC5E,8EAA8E;YAC9E,6EAA6E;YAC7E,4EAA4E;YAC5E,yEAAyE;YACzE,0CAA0C;YAC1C,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YACtH,IAAI,OAAO;gBAAE,aAAa,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;;gBACpF,aAAa,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACrE,CAAC;gBAAS,CAAC;YACT,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;YACrB,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC,OAAO;gBAAE,IAAI,EAAE,CAAC,CAAC,8CAA8C;QAChF,CAAC;IACH,CAAC;IAED,qFAAqF;IACrF,2EAA2E;IAC3E,2DAA2D;IAC3D,KAAK,UAAU,iBAAiB;QAC9B,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;gBAAS,CAAC;YACT,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,iFAAiF;IACjF,gFAAgF;IAChF,KAAK,UAAU,YAAY,CAAC,IAAiB,EAAE,YAAqB;QAClE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,GAAG,CAAC,6BAA6B,CAAC,CAAC;YACnC,OAAO;QACT,CAAC;QACD,MAAM,gBAAgB,EAAE,CAAC;QACzB,cAAc,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAE1B,IAAI,YAAY,EAAE,CAAC;YACjB,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,6CAA6C,CAAC,CAAC;YACpD,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,OAAO,EAAE;oBACxB,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC5C,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;iBACnE,CAAC,CAAC;gBACH,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7B,CAAC;oBAAS,CAAC;gBACT,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,eAAe,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnF,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,KAAK,UAAU,UAAU,CAAC,UAAU,GAAG,KAAK;QAC1C,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,kFAAkF;QAClF,yBAAyB;QACzB,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,gBAAgB,EAAE,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC;QACrE,mFAAmF;QACnF,kFAAkF;QAClF,4EAA4E;QAC5E,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACvC,MAAM,gBAAgB,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAClD,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,kFAAkF;QAClF,4CAA4C;QAC5C,uBAAuB,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;QACxB,IAAI,UAAU,EAAE,CAAC;YACf,gFAAgF;YAChF,6BAA6B;YAC7B,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC3B,WAAW,CAAC,CAAC,CAAC,CAAC;YACf,iFAAiF;YACjF,iFAAiF;YACjF,wCAAwC;YACxC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;YACrB,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;YACzB,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC;YAC3B,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,gFAAgF;YAChF,uCAAuC;YACvC,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,CACF,MAAM,GAAG,CAAC;YACR,CAAC,CAAC,sCAAsC,MAAM,sBAAsB,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK;YAChG,CAAC,CAAC,6BAA6B,CAClC,CAAC;IACJ,CAAC;IAED,uFAAuF;IACvF,KAAK,UAAU,WAAW,CAAC,IAAiB,EAAE,IAAY;QACxD,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,UAAU,EAAE,CAAC;QACpC,OAAO,YAAY,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,mFAAmF;IACnF,4CAA4C;IAC5C,KAAK,UAAU,UAAU,CAAC,KAAa;QACrC,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,gFAAgF;QAChF,kFAAkF;QAClF,4EAA4E;QAC5E,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QAC1B,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACpD,MAAM,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,WAAW,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACpF,CAAC;IAED;;;;;OAKG;IACH,KAAK,UAAU,aAAa,CAAC,KAAa;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC5B,IAAI,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC,cAAc,QAAQ,CAAC,KAAK,MAAM,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC1E,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,mFAAmF;QACnF,8EAA8E;QAC9E,iFAAiF;QACjF,4CAA4C;QAC5C,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7B,kFAAkF;YAClF,uCAAuC;YACvC,aAAa,CAAC,OAAO,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;YACtH,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,uDAAuD,CAAC,CAAC;YAC/E,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,uFAAuF;IACvF,KAAK,UAAU,QAAQ,CAAC,KAAa,EAAE,aAAqB;QAC1D,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAChD,MAAM,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,aAAa,cAAc,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAClH,CAAC;IAED,sFAAsF;IACtF,KAAK,UAAU,UAAU,CAAC,KAAa;QACrC,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,CAAC,CAAC,WAAW,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;QACrF,MAAM,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,iFAAiF;IACjF,4DAA4D;IAC5D,SAAS,eAAe,CAAC,KAAa;QACpC,MAAM,CAAC,GAAG,OAAO,CAAC;QAClB,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC1B,UAAU,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAE,EAAE,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY;YAAE,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACxD,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU;YAAE,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC;aACrD,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;YAAE,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC;aAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;YAAE,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC;aAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;gBACxG,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU;gBAAE,KAAK,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzE,CAAC;aAAM,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACjC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC;YAC5D,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,0FAA0F;IAC1F,SAAS,mBAAmB,CAAC,IAAY;QACvC,MAAM,CAAC,GAAG,OAAO,CAAC;QAClB,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,CAAC,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;YAC3B,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;YAC/C,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,SAAS,eAAe;QACtB,MAAM,CAAC,GAAG,OAAO,CAAC;QAClB,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,2EAA2E;QAC3E,IAAI,CAAC,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;YAC3B,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAC7C,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,kFAAkF;IAClF,4EAA4E;IAC5E,wEAAwE;IACxE,KAAK,UAAU,YAAY,CAAC,WAAmB,EAAE,QAAgB;QAC/D,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,IAAI,CAAC,QAAQ,CAAC,CAAC;QACf,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;QAC1D,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,UAAU,aAAa,CAAC,GAAW;QACtC,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,gFAAgF;QAChF,mFAAmF;QACnF,mFAAmF;QACnF,2CAA2C;QAC3C,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,EAAE;YAC9B,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC1C,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE;SAClC,CAAC,CAAC;QACH,iFAAiF;QACjF,mFAAmF;QACnF,iCAAiC;QACjC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAE5C,8EAA8E;QAC9E,2DAA2D;QAC3D,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YAC5D,GAAG,CACD,UAAU,CAAC;gBACT,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE;gBAC9C;oBACE,KAAK,EAAE,gBAAgB;oBACvB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,eAAe,EAAE,CAAC,CAAC;iBACrG;gBACD;oBACE,KAAK,EAAE,aAAa;oBACpB,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC/B,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;wBACtB,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,eAAe,CAAC,CAAC,MAAM,EAAE;qBACxD,CAAC,CAAC;iBACJ;aACF,CAAC,CACH,CAAC;YACF,OAAO;QACT,CAAC;QAED,+EAA+E;QAC/E,kFAAkF;QAClF,0EAA0E;QAC1E,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QAED,8EAA8E;QAC9E,gFAAgF;QAChF,kFAAkF;QAClF,mFAAmF;QACnF,qCAAqC;QACrC,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,YAAY,CAChB,iFAAiF;gBAC/E,8EAA8E;gBAC9E,0EAA0E;gBAC1E,6EAA6E;gBAC7E,6EAA6E;gBAC7E,2EAA2E;gBAC3E,gFAAgF;gBAChF,4EAA4E;gBAC5E,yEAAyE;gBACzE,iFAAiF;gBACjF,+EAA+E;gBAC/E,iFAAiF;gBACjF,iEAAiE;gBACjE,mEAAmE,EACrE,uBAAuB,CACxB,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,2EAA2E;gBAC3E,2EAA2E;gBAC3E,iDAAiD;gBACjD,MAAM,UAAU,CAAC,CAAC,EAAE;oBAClB,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC5C,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;oBAClE,0EAA0E;oBAC1E,4EAA4E;oBAC5E,oEAAoE;oBACpE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACtC,CAAC,CAAC;gBACH,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC7B,CAAC;oBAAS,CAAC;gBACT,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,CAAC,CAAC,cAAc,IAAI,qDAAqD,CAAC;YACvF,IAAI,CAAC,mDAAmD,CAAC,CAAC;YAC1D,GAAG,CAAC,IAAI,CAAC,CAAC;YACV,OAAO;QACT,CAAC;QAED,iFAAiF;QACjF,+DAA+D;QAC/D,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;YACrC,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;gBACzB,4EAA4E;gBAC5E,0CAA0C;gBAC1C,GAAG,CACD,EAAE,EAAE,UAAU,EAAE;oBACd,CAAC,CAAC,oHAAoH;oBACtH,CAAC,CAAC,oEAAoE,CACzE,CAAC;gBACF,OAAO;YACT,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBAClC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;oBAC5D,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC;wBAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC;oBACvD,IAAI,CAAC,CAAC,QAAQ;wBAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACvC,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC1E,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,QAAQ,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,oCAAoC,CAAC,CAAC;gBAC7F,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,sCAAsC,CAAC,CAAC;gBACxG,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACjD,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACxD,MAAM,IAAI,GAAG,CAAC,EAAY,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAExD,IAAI,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9E,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBAChC,OAAO;YACT,CAAC;YAED,6EAA6E;YAC7E,8EAA8E;YAC9E,iEAAiE;YACjE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,8EAA8E;gBAC9E,kEAAkE;gBAClE,KAAK,MAAM,CAAC,IAAI,QAAQ;oBAAE,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1D,CAAC;YACD,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,QAAQ,CAAC;gBACzF,WAAW,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,MAAM,QAAQ,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,IAAI,GAAG,CAAC,CAAC;gBACtG,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1D,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC;YAClD,CAAC;YACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,WAAW,CAAC,IAAI,CAAC,sCAAsC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;gBAClG,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC3D,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,YAAY,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC5C,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,mDAAmD,CAAC;gBACxD,WAAW,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,GAAG,KAAK,GAAG,CAAC,CAAC;gBACjG,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACxD,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC;YAC9C,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,WAAW,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;gBAClF,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzD,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC;YAChD,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpC,WAAW,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;YACvF,CAAC;YACD,MAAM,UAAU,GAAG,QAAQ,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;YACjD,QAAQ,CAAC;gBACP,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE,MAAM;gBACZ,GAAG,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,QAAQ;gBACzE,MAAM,EAAE,YAAY;aACrB,CAAC,CAAC;YACH,QAAQ,CAAC;gBACP,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,UAAU;gBAClB,EAAE,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;gBACvB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;gBAChC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;aAC/B,CAAC,CAAC;YAEH,gFAAgF;YAChF,yEAAyE;YACzE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YACvE,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,sEAAsE;QACtE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAC5D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,GAAG,CAAC,oGAAoG,CAAC,CAAC;gBAC1G,OAAO;YACT,CAAC;YACD,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,8DAA8D;QAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,qDAAqD;QACrD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC;YAC9B,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC;gBACvB,GAAG,CACD,+EAA+E;oBAC7E,sEAAsE,CACzE,CAAC;gBACF,OAAO;YACT,CAAC;YACD,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACnD,OAAO;QACT,CAAC;QAED,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YAC1E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,GAAG,CAAC,yCAAyC,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YACD,UAAU,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QAED,+EAA+E;QAC/E,gFAAgF;QAChF,6EAA6E;QAC7E,wEAAwE;QACxE,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,MAAM,aAAa,EAAE,CAAC;YACtB,UAAU,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QACD,qFAAqF;QACrF,2EAA2E;QAC3E,kFAAkF;QAClF,oEAAoE;QACpE,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QAED,iFAAiF;QACjF,kFAAkF;QAClF,sEAAsE;QACtE,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,MAAM,aAAa,EAAE,CAAC;YACtB,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;gBAClF,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO;oBAAE,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACxD,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC/B,OAAO;YACT,CAAC;YACD,UAAU,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC,CAAC;gBACvF,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO;oBAAE,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACxD,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC/B,OAAO;YACT,CAAC;YACD,UAAU,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,+EAA+E;QAC/E,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;gBACrC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACtG,IAAI,CAAC,kDAAkD,CAAC,CAAC;gBACzD,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtB,OAAO;YACT,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBAC3D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;gBACjD,IAAI,MAAM,CAAC,KAAK;oBAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;qBACzE,IAAI,MAAM,CAAC,OAAO;oBAAE,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,gCAAgC,CAAC,CAAC;;oBAC3E,IAAI,CAAC,aAAa,MAAM,CAAC,KAAK,OAAO,GAAG,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,4EAA4E;QAC5E,yEAAyE;QACzE,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC,sCAAsC,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACrC,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,KAAK,CAAC,CAAC;YAC7D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,GAAG,CAAC,oFAAoF,CAAC,CAAC;gBAC1F,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC1D,IAAI,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO;oBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAC1E,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,GAAG,CAAC,6CAA6C,CAAC,CAAC;iBACtE,CAAC;gBACJ,IAAI,CAAC,UAAU,KAAK,CAAC,MAAM,UAAU,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,4CAA4C,CAAC,CAAC;gBAChH,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC3C,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YACD,OAAO;QACT,CAAC;QAED,uEAAuE;QACvE,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,GAAG,CAAC,qFAAqF,CAAC,CAAC;gBAC3F,OAAO;YACT,CAAC;YACD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACrD,IAAI,MAAM,CAAC,KAAK;gBAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;iBAC/B,CAAC;gBACJ,IAAI,CAAC,aAAa,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;gBACzD,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YACD,OAAO;QACT,CAAC;QAED,mFAAmF;QACnF,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;gBACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,GAAG,CAAC,gFAAgF,CAAC,CAAC;oBACtF,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC5B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvF,OAAO,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC;gBAC/B,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,kCAAkC,CAAC,CAAC;gBACzC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACtB,OAAO;YACT,CAAC;YACD,MAAM,YAAY,CAChB,wFAAwF;gBACtF,uFAAuF;gBACvF,6EAA6E,GAAG,GAAG,EACrF,gBAAgB,CACjB,CAAC;YACF,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,GAAG,CAAC,oGAAoG,CAAC,CAAC;oBAC1G,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,0DAA0D,CAAC,CAAC;gBACjE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9C,OAAO;YACT,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACvE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,GAAG,CAAC,8DAA8D,CAAC,CAAC;gBACpE,OAAO;YACT,CAAC;YACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,CAAC,CAAC,UAAU,CAAC,SAAS,GAAG;oBACvB,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS;oBACzB,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC;iBAC/D,CAAC;gBACF,IAAI,CAAC,YAAY,MAAM,CAAC,OAAO,sCAAsC,CAAC,CAAC;YACzE,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAC;YACpD,CAAC;YACD,OAAO;QACT,CAAC;QAED,+EAA+E;QAC/E,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;YAC/B,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACvD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,GAAG,CAAC,6GAA6G,CAAC,CAAC;oBACnH,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,yFAAyF,CAAC,CAAC;gBAChG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9C,OAAO;YACT,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC9E,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,GAAG,CAAC,6CAA6C,CAAC,CAAC;gBACnD,OAAO;YACT,CAAC;YACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,CAAC,CAAC,UAAU,CAAC,SAAS,GAAG;oBACvB,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS;oBACzB,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;iBACvE,CAAC;gBACF,IAAI,CAAC,wBAAwB,MAAM,CAAC,OAAO,oCAAoC,CAAC,CAAC;YACnF,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,0BAA0B,CAAC,CAAC;YACpD,CAAC;YACD,OAAO;QACT,CAAC;QAED,iFAAiF;QACjF,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,YAAY,CAChB,0DAA0D,GAAG,2BAA2B;oBACtF,yFAAyF;oBACzF,0FAA0F,EAC5F,mBAAmB,CACpB,CAAC;gBACF,OAAO;YACT,CAAC;YACD,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;YACnC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,GAAG,CAAC,uFAAuF,CAAC,CAAC;gBAC7F,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC9B,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1F,OAAO,IAAI,EAAE,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;YAC7C,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,qDAAqD,CAAC,CAAC;YAC5D,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACtB,OAAO;QACT,CAAC;QAED,4EAA4E;QAC5E,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC;YACvB,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,4BAA4B,CAAC,CAAC;gBACrD,OAAO;YACT,CAAC;YACD,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;YACrC,MAAM,IAAI,GAAG,YAAY,KAAK,CAAC,IAAI,mCAAmC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;YACxG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YACnD,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QAED,iFAAiF;QACjF,4EAA4E;QAC5E,wBAAwB;QACxB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;YAC/D,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/E,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,GAAG,CAAC,iBAAiB,IAAI,gDAAgD,CAAC,CAAC;gBAC3E,OAAO;YACT,CAAC;YACD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC;YACvB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACtF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,GAAG,CAAC,GAAG,IAAI,UAAU,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACpE,OAAO;YACT,CAAC;YACD,IAAI,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC;YACzB,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,WAAW,CAAC,GAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACjG,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACnB,GAAG,CAAC,GAAG,IAAI,YAAY,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;gBACzC,OAAO;YACT,CAAC;YACD,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5D,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QAGD,GAAG,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IAEnC,CAAC;IAED,KAAK,UAAU,YAAY,CAAC,KAAa;QACvC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO;QAEnD,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,sFAAsF;YACtF,mFAAmF;YACnF,iFAAiF;YACjF,kFAAkF;YAClF,kFAAkF;YAClF,mFAAmF;YACnF,iCAAiC;YACjC,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,KAAK;gBAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;oBAAS,CAAC;gBACT,IAAI,KAAK;oBAAE,UAAU,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO;QAEf,8EAA8E;QAC9E,6EAA6E;QAC7E,4EAA4E;QAC5E,kDAAkD;QAClD,kFAAkF;QAClF,iFAAiF;QACjF,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;QAC5E,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QACzG,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,kFAAkF;QAClF,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC;YAChC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzC,CAAC,CAAC;QACH,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,4EAA4E;IAC5E,6CAA6C;IAC7C,uFAAuF;IACvF,sFAAsF;IACtF,gCAAgC;IAChC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,KAAC,SAAS,IACR,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,QAAQ,CAAC,OAAO,EACrB,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,cAAc,CAAC,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,EACvD,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,EACrC,OAAO,EAAE,YAAY,EAAE,EACvB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,GAAG,EAAE;gBACZ,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC;gBAC1D,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC,EACD,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,GACpB,CACH,CAAC;IACJ,CAAC;IAED,oFAAoF;IACpF,kFAAkF;IAClF,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,KAAC,QAAQ,IACP,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,EAC1B,OAAO,EAAE,YAAY,EAAE,EACvB,OAAO,EAAE,aAAa,EAAE,EACxB,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACtB,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC5B,mEAAmE;gBACnE,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBACpD,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7B,CAAC,EACD,UAAU,EAAE,GAAG,EAAE;gBACf,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;gBAC1B,IAAI,CAAC,CAAC;oBAAE,OAAO;gBACf,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACxC,IAAI,CAAC,kCAAkC,CAAC,CAAC;oBACzC,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBAChE,IAAI,QAAQ;oBAAE,KAAK,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;;oBAC7D,IAAI,CAAC,kCAAkC,CAAC,CAAC;YAChD,CAAC,GACD,CACH,CAAC;IACJ,CAAC;IAGD,+EAA+E;IAC/E,mFAAmF;IACnF,SAAS,MAAM,CAAC,IAAY;QAC1B,0EAA0E;QAC1E,wEAAwE;QACxE,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,IAAI,EAAE,CAAC;YACT,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,SAAS,CAAC,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QACD,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,oFAAoF;IACpF,wFAAwF;IACxF,qFAAqF;IACrF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC;IACxD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC3E,MAAM,WAAW,GAAG;QAClB,GAAG,aAAa;QAChB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,eAAe,EAAE,CAAC,CAAC;QAC7F,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,eAAe,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;KAChH,CAAC;IAEF,oFAAoF;IACpF,iFAAiF;IACjF,wDAAwD;IACxD,SAAS,gBAAgB,CAAC,OAAe;QACvC,kFAAkF;QAClF,gFAAgF;QAChF,oEAAoE;QACpE,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,CACL,KAAC,UAAU,IAET,SAAS,EAAE,YAAY,EAAE,EACzB,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAC5B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAC/B,aAAa,EACX,aAAa,CAAC,OAAO;oBACnB,CAAC,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,aAAa,CAAC,OAAQ,CAAC,SAAS,CAAC,IAAI,IAAI;oBACtF,CAAC,CAAC,IAAI,EAEV,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE,EACrF,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;oBAClB,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;oBACnC,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,QAAQ,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,yBAAyB,CAAC,CAAC;oBACxE,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5B,CAAC,EACD,MAAM,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;oBAC9B,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;oBAC1C,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC1B,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC;oBACnC,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;wBAClD,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;wBAC7B,WAAW,CAAC,KAAK,CAAC,CAAC;wBACnB,KAAK,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;oBACxC,CAAC;gBACH,CAAC,EACD,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;oBAChB,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;oBACtC,IAAI,CAAC,WAAW,GAAG,CAAC,KAAK,QAAQ,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;oBAC1D,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5B,CAAC,EACD,OAAO,EAAE,GAAG,EAAE;oBACZ,4EAA4E;oBAC5E,iEAAiE;oBACjE,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC7B,WAAW,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC,IArCI,QAAQ,CAsCb,CACH,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;QAC5B,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;gBACtB,WAAW,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,UAAU,OAAO,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;aAC7F,CAAC,CAAC,CAAC;YACJ,OAAO,CACL,KAAC,MAAM,IAAC,KAAK,EAAC,yBAAyB,EAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,GAAI,CAC/I,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAClC,OAAO,CACL,KAAC,MAAM,IACL,KAAK,EAAE,aAAa,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EACxD,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,eAAe,GACzB,CACH,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACvC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;gBACzC,WAAW,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,YAAY,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE;aACnJ,CAAC,CAAC,CAAC;YACJ,OAAO,CACL,KAAC,MAAM,IAAC,KAAK,EAAC,mBAAmB,EAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,GAAI,CACzI,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC;YACjC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACxC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC;gBACpB,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACjE,CAAC,CAAC,CAAC;YACJ,OAAO,KAAC,MAAM,IAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,GAAI,CAAC;QAC5I,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAChC,MAAM,WAAW,GAAG,GAAG,EAAE,WAAW,CAAC,KAAK,IAAI,oBAAoB,CAAC,KAAK,CAAC;YACzE,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YAC1C,mFAAmF;YACnF,qFAAqF;YACrF,4EAA4E;YAC5E,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;YAC5C,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAChC,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;gBACjD,yEAAyE;gBACzE,0CAA0C;gBAC1C,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;gBACxE,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3D,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,GAAG,GAAG,IAAI,EAAE,EAAE,CAAC;YACvG,CAAC,CAAC,CAAC;YACH,OAAO,CACL,KAAC,MAAM,IACL,KAAK,EAAC,mBAAmB,EACzB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,EACtE,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,eAAe,GACzB,CACH,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,EAAE,GAAG,GAAG,EAAE,WAAW,CAAC,KAAK,IAAI,oBAAoB,CAAC,KAAK,CAAC;YAChE,6EAA6E;YAC7E,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACpC,oFAAoF;YACpF,qFAAqF;YACrF,oFAAoF;YACpF,yEAAyE;YACzE,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC7B,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;gBACjE,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC;gBACrE,MAAM,KAAK,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBACtD,OAAO;oBACL,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3C,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK;iBACnE,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,OAAO,CACL,KAAC,MAAM,IACL,KAAK,EAAE,YAAY,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,QAAQ,EAC/C,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAC/D,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,eAAe,GACzB,CACH,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,GAAG,EAAE,WAAW,CAAC,KAAK,IAAI,oBAAoB,CAAC,KAAK,CAAC;YACnE,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACxH,OAAO,CACL,KAAC,MAAM,IACL,KAAK,EAAE,iBAAiB,UAAU,CAAC,KAAK,CAAC,EAAE,EAC3C,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,EACxE,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,eAAe,GACzB,CACH,CAAC;QACJ,CAAC;QACD,wFAAwF;QACxF,sFAAsF;QACtF,0EAA0E;QAC1E,OAAO,CACL,KAAC,WAAW,IACV,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAC1B,OAAO,EAAE,OAAO,CAAC,OAAO,EACxB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,eAAe,KACrB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC5D,YAAY,EAAE,mBAAmB,GACjC,CACH,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,EAAE;IACF,oFAAoF;IACpF,EAAE;IACF,gFAAgF;IAChF,wEAAwE;IACxE,qEAAqE;IACrE,gFAAgF;IAChF,gFAAgF;IAChF,gFAAgF;IAChF,yEAAyE;IACzE,8EAA8E;IAC9E,6EAA6E;IAC7E,0BAA0B;IAC1B,EAAE;IACF,8EAA8E;IAC9E,4EAA4E;IAC5E,+EAA+E;IAC/E,mEAAmE;IACnE,EAAE;IACF,+EAA+E;IAC/E,+EAA+E;IAC/E,6EAA6E;IAC7E,6EAA6E;IAC7E,0CAA0C;IAC1C,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;IAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;IACnC,MAAM,SAAS,GAAY,CAAC,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;IAEnD,6EAA6E;IAC7E,yEAAyE;IACzE,6EAA6E;IAC7E,yCAAyC;IACzC,MAAM,QAAQ,GAAG,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC;IACtC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9D,+EAA+E;IAC/E,4EAA4E;IAC5E,qDAAqD;IACrD,EAAE;IACF,gFAAgF;IAChF,gFAAgF;IAChF,+EAA+E;IAC/E,2EAA2E;IAC3E,2EAA2E;IAC3E,gFAAgF;IAChF,8EAA8E;IAC9E,2EAA2E;IAC3E,EAAE;IACF,0EAA0E;IAC1E,+EAA+E;IAC/E,+DAA+D;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,IAAI,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC,CAAC;IACrF,4EAA4E;IAC5E,6EAA6E;IAC7E,6EAA6E;IAC7E,wEAAwE;IACxE,wEAAwE;IACxE,uEAAuE;IACvE,MAAM,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,aAAa,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;IACnG,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;IAC3D,wFAAwF;IACxF,oFAAoF;IACpF,wFAAwF;IACxF,qFAAqF;IACrF,kFAAkF;IAClF,MAAM,WAAW,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrF,uFAAuF;IACvF,sFAAsF;IACtF,iFAAiF;IACjF,wFAAwF;IACxF,qBAAqB;IACrB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1B,IAAI,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QACpB,MAAM,CAAC,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC/D,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3B,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACvH,kFAAkF;IAClF,kFAAkF;IAClF,6EAA6E;IAC7E,iFAAiF;IACjF,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,UAAU,CAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/F,4EAA4E;IAC5E,6EAA6E;IAC7E,uEAAuE;IACvE,kEAAkE;IAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxG,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAElD,kFAAkF;IAClF,qFAAqF;IACrF,gFAAgF;IAChF,sDAAsD;IACtD,IAAI,YAAY,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACnC,kFAAkF;QAClF,mEAAmE;QACnE,YAAY,CAAC,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QACrC,YAAY,CAAC,OAAO,GAAG,KAAK,CAAC;QAC7B,iFAAiF;QACjF,mFAAmF;QACnF,gFAAgF;QAChF,kFAAkF;QAClF,yEAAyE;QACzE,UAAU,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,GAAG,QAAQ,CAAC,EAAE,CAAC;IAChG,CAAC;IACD,oFAAoF;IACpF,iFAAiF;IACjF,mFAAmF;IACnF,+EAA+E;IAC/E,+EAA+E;IAC/E,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,OAAO,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAE,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,SAAS;YAAE,MAAM;QAC3B,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,EAAE,CAAC;IACV,CAAC;IACD,MAAM,GAAG,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC/D,IAAI,WAAW,EAAE,EAAE,CAAC;QAClB,iFAAiF;QACjF,6EAA6E;QAC7E,iFAAiF;QACjF,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;QAC7D,IAAI,CACF,gBAAgB,QAAQ,CAAC,MAAM,UAAU,KAAK,SAAS,IAAI,GAAG;YAC5D,QAAQ,QAAQ,UAAU,CAAC,UAAU,YAAY,aAAa,EAAE,CACnE,CAAC;IACJ,CAAC;IACD,mFAAmF;IACnF,gFAAgF;IAChF,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IAEhC,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAC,QAAQ,aAYhE,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,KAAC,MAAM,IAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,GAAI,GACvF,EAKN,MAAC,GAAG,IAAC,GAAG,EAAE,OAAO,EAAE,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAC,QAAQ,aAWlG,aAAa,CAAC,CAAC,CAAC,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,GAAI,CAAC,CAAC,CAAC,IAAI,EAC3D,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,YAG9D,MAAC,GAAG,IAAC,GAAG,EAAE,UAAU,EAAE,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,aAEvD,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,GAAI,CAAC,CAAC,CAAC,IAAI,EAClE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oCAC/C,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;oCAC1B,OAAO;oCACL,+DAA+D;oCAC/D,6DAA6D;oCAC7D,KAAC,GAAG,IAEF,GAAG,EAAE,CAAC,IAAuB,EAAE,EAAE;4CAC/B,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gDAAE,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;wCAC3E,CAAC,EACD,UAAU,EAAE,CAAC,EACb,aAAa,EAAC,QAAQ,YAEtB,KAAC,SAAS,IAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,GAAI,IAP9E,CAAC,CAAC,EAAE,CAQL,CACP,CAAC;gCACJ,CAAC,CAAC,EAED,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,GAAI,CAAC,CAAC,CAAC,IAAI,EAIhE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oCAClC,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC;oCACtB,OAAO,CACL,KAAC,GAAG,IAEF,GAAG,EAAE,CAAC,IAAuB,EAAE,EAAE;4CAC/B,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gDAAE,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;wCAC3E,CAAC,EACD,UAAU,EAAE,CAAC,EACb,aAAa,EAAC,QAAQ,YAEtB,KAAC,SAAS,IAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,GAAI,IAP9E,CAAC,CAAC,EAAE,CAQL,CACP,CAAC;gCACJ,CAAC,CAAC,IACE,GACF,IACF,EAKN,MAAC,GAAG,IAAC,GAAG,EAAE,SAAS,EAAE,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,aAQvD,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAAE,KAAC,IAAI,oBAAS,GAAM,EAQxC,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,GAAI,GACpI,EAGN,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,GAAI,GACzB,EAKN,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,YACvC,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,WAAW,IACV,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,KAAK,EACf,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,gBAAgB,EACjE,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,CAAC,OAAO,EAClC,YAAY,EAAE,aAAa,EAC3B,WAAW,EAAE,YAAY,EACzB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,QAAQ,EACpB,OAAO,EAAE,WAAW,GACpB,CACH,CAAC,CAAC,CAAC,CACF,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,KAAC,IAAI,IAAC,QAAQ,qCAAiB,GAC3B,CACP,GACG,EAML,OAAO,CAAC,CAAC,CAAC;oBACT,iFAAiF;oBACjF,mFAAmF;oBACnF,oFAAoF;oBACpF,+DAA+D;oBAC/D,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YACf,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,CAC1B,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,YAAE,2CAA2C,GAAQ,CAC1E,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,OAAO,CAAC,WAAW,sBAAsB,GAAQ,CACvE,GACG,CACP,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC7C,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,KAAC,aAAa,IAAC,MAAM,EAAE,aAAa,GAAI,GACpC,CACP,CAAC,CAAC,CAAC,CACF,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,MAAC,IAAI,IAAC,QAAQ,mBAAE,SAAS,EAAE,GAAG,IAAQ,GAClC,CACP,IACG,IACF,CACP,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,2EAA2E;AAC3E,6CAA6C;AAC7C,MAAM,WAAW,GAAG,CAAC,CAAC;AACtB,uFAAuF;AACvF,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB;6DAC6D;AAC7D,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,oFAAoF;AACpF,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B;;kFAEkF;AAClF,SAAS,OAAO,CAAC,GAAqB,EAAE,CAAS;IAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5C,OAAO,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;AAC5E,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB;qEACqE;AACrE,MAAM,WAAW,GAAG,CAAC,CAAC;AACtB;gFACgF;AAChF,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,6EAA6E;AAC7E,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB;sDACsD;AACtD,MAAM,UAAU,GAAG,EAAE,CAAC;AAEtB,SAAS,OAAO,CAAC,EAAE,IAAI,EAAqB;IAC1C,MAAM,KAAK,GAAG,aAAa,GAAG,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC;IACnD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QACpF,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAElB,IAAI,CAAC,IAAI;QAAE,OAAO,KAAC,IAAI,IAAC,QAAQ,kBAAE,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,GAAQ,CAAC;IAEpE,8EAA8E;IAC9E,MAAM,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACvD,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,YAAY,CAAC;QAC9D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,YAAY,CAAC;QACvE,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAChE,CAAC;IACD,OAAO,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,YAAE,KAAK,GAAQ,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAA6E;IAClI,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,IAAI,GAAG,YAAY,UAAU,EAAE,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACnE,oFAAoF;IACpF,qFAAqF;IACrF,qFAAqF;IACrF,qFAAqF;IACrF,kFAAkF;IAClF,qEAAqE;IACrE,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;IACnD,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,QAAQ,MAAM,SAAS,MAAM,UAAU,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpF,0EAA0E;IAC1E,sEAAsE;IACtE,wEAAwE;IACxE,0EAA0E;IAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IACrF,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aACzC,MAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,aACd,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,QAAQ,YAAE,IAAI,GAAQ,EACvC,KAAC,IAAI,cAAE,GAAG,GAAQ,EAClB,KAAC,OAAO,IAAC,IAAI,EAAE,IAAI,GAAI,EACvB,KAAC,IAAI,cAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAQ,EAC9B,KAAC,IAAI,IAAC,QAAQ,QAAC,KAAK,EAAE,CAAC,CAAC,KAAK,YAAG,QAAQ,GAAQ,EAC/C,WAAW,CAAC,CAAC,CAAC,CACb,8BACE,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,GAAQ,EAC7B,KAAC,IAAI,IAAC,KAAK,EAAE,UAAU,CAAC,SAAS,YAAG,SAAS,GAAQ,EACrD,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,GAAQ,EAC7B,KAAC,IAAI,cAAE,UAAU,GAAQ,IACxB,CACJ,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,KAAC,IAAI,IAAC,QAAQ,kBAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAQ,IACrC,CACP,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,eAAe;IACtB,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;IAC/B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;IAC/F,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAClC,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;YACxE,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,6EAA6E;QAC7E,gFAAgF;QAChF,+EAA+E;QAC/E,gFAAgF;QAChF,gFAAgF;QAChF,+EAA+E;QAC/E,wEAAwE;QACxE,kEAAkE;QAClE,IAAI,QAAuC,CAAC;QAC5C,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvB,QAAQ,GAAG,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACnC,CAAC,CAAC;QACF,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEpC,4EAA4E;QAC5E,6EAA6E;QAC7E,+EAA+E;QAC/E,0EAA0E;QAC1E,4EAA4E;QAC5E,+BAA+B;QAC/B,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpC,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvB,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,aAAa,CAAC,IAAI,CAAC,CAAC;YACpB,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kFAAkF;AAClF,qDAAqD;AACrD,MAAM,aAAa,GAAG;IACpB,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE;IAChD,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,2EAA2E,EAAE;IAC3G,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,2CAA2C,EAAE;IAC/E,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,2BAA2B,EAAE;IAC1D,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uDAAuD,EAAE;IACxF,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE;IACxE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;IAC7E,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,iDAAiD,EAAE;IACnF,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,iDAAiD,EAAE;IACtF,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,4DAA4D,EAAE;IACtG,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,4DAA4D,EAAE;IAC5F,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,gDAAgD,EAAE;IACnF,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,0CAA0C,EAAE;IAC7E,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,mDAAmD,EAAE;IACrF,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,gEAAgE,EAAE;IAC/F,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,6CAA6C,EAAE;IAChF,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,sDAAsD,EAAE;IACtF,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,+CAA+C,EAAE;IAClF,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;IAC7E,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,+BAA+B,EAAE;CACpE,CAAC;AAEF,qFAAqF;AACrF,SAAS,UAAU,CAAC,GAAW;IAC7B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,EAAE,GAAG,4BAA4B,CAAC;IACxC,IAAI,CAAyB,CAAC;IAC9B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI;QAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;IACtE,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iFAAiF;AACjF,SAAS,YAAY,CAAC,IAAiB;IACrC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7D,IAAI,CAAC,CAAC;QAAE,OAAO,oBAAoB,CAAC;IACpC,OAAO,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC;AACnD,CAAC;AAED,gFAAgF;AAChF,SAAS,OAAO,CAAC,EAAU;IACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAC5D,IAAI,CAAC,GAAG,EAAE;QAAE,OAAO,UAAU,CAAC;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAChC,IAAI,IAAI,GAAG,EAAE;QAAE,OAAO,GAAG,IAAI,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;IACnE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IAClC,IAAI,GAAG,GAAG,EAAE;QAAE,OAAO,GAAG,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;IAClC,OAAO,GAAG,IAAI,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;AACnD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,UAAU,CAAC,EAClB,IAAI,EACJ,SAAS,EACT,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAO,GAiBR;IACC,uFAAuF;IACvF,uFAAuF;IACvF,sFAAsF;IACtF,+EAA+E;IAC/E,oFAAoF;IACpF,2BAA2B;IAC3B,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC7B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE;YAC1B,OAAO,EAAE,CAAC;YACV,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrB,CAAC,EAAE,YAAY,CAAC,CAAC;QACjB,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAEpB,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QAC9B,oFAAoF;QACpF,gFAAgF;QAChF,iFAAiF;QACjF,gCAAgC;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;QACzD,uFAAuF;QACvF,uFAAuF;QACvF,mFAAmF;QACnF,iBAAiB;QACjB,yFAAyF;QACzF,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC;QACvB,KAAK,GAAG,CACN,MAAC,IAAI,eACF,GAAG,EACH,WAAW,CAAC,SAAS,CAAC,YAAG,IAAI,EAC9B,MAAC,IAAI,IAAC,QAAQ,mBAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAQ,IAClG,CACR,CAAC;IACJ,CAAC;SAAM,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QAC1B,+EAA+E;QAC/E,eAAe;QACf,EAAE;QACF,sFAAsF;QACtF,qFAAqF;QACrF,wFAAwF;QACxF,qFAAqF;QACrF,uFAAuF;QACvF,mFAAmF;QACnF,mFAAmF;QACnF,mBAAmB;QACnB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,KAAK,GAAG,MAAC,IAAI,IAAC,IAAI,mCAAc,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,IAAQ,CAAC;IACvF,CAAC;IAED,4EAA4E;IAC5E,wEAAwE;IACxE,IAAI,CAAC,IAAI,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAEzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,uBAAS,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,QAAQ,6BAAS,CAAC;IAEzE,mFAAmF;IACnF,gEAAgE;IAChE,OAAO,CACL,MAAC,GAAG,IAAC,YAAY,EAAE,CAAC,aACjB,GAAG,EACH,KAAK,IACF,CACP,CAAC;AACJ,CAAC;AAED,8DAA8D;AAC9D,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC;AAChE,CAAC;AAED,+CAA+C;AAC/C,SAAS,OAAO,CAAC,OAAe,EAAE,GAAG,GAAG,EAAE;IACxC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,OAAO,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;AAClE,CAAC;AAED,SAAS,YAAY,CAAC,EAAa;IACjC,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,MAAM,GACV,MAAM,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAClH,OAAO,GAAG,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,SAAS,CAAC,MAAiB,EAAE,OAAO,GAAG,CAAC;IACtD,kFAAkF;IAClF,oDAAoD;IACpD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,GAAG,OAAO,QAAQ,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,kDAAkD,CAAC;IACtG,CAAC;IACD,QAAQ,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,gFAAgF;YAChF,gFAAgF;YAChF,eAAe;YACf,MAAM,MAAM,GAAG;gBACb,GAAG,MAAM,CAAC,SAAS,QAAQ,MAAM,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;gBAC9D,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,UAAU,MAAM,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrG,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACjD,CAAC;YACF,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChC,8EAA8E;YAC9E,uDAAuD;YACvD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,OAAO,GAAG,KAAK,GAAG,KAAK,uBAAuB,CAAC;QACjD,CAAC;QACD,KAAK,SAAS;YACZ,OAAO,aAAa,CAAC;QACvB,KAAK,YAAY;YACf,OAAO,uCAAuC,CAAC;QACjD,KAAK,UAAU;YACb,OAAO,sBAAsB,CAAC;QAChC;YACE,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,QAAQ,mBAAmB,CAAC;IAC1D,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH;;;sEAGsE;AACtE,SAAS,aAAa,CAAC,EAAE,MAAM,EAA2B;IACxD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrG,OAAO,CACL,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,YAAE,OAAO,GAAQ,EACrC,KAAC,IAAI,IAAC,QAAQ,QAAC,IAAI,EAAC,cAAc,YAAE,GAAG,MAAM,CAAC,MAAM,aAAa,IAAI,EAAE,GAAQ,IAC3E,CACP,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,yEAAyE;AACzE,2EAA2E;AAC3E,4EAA4E;AAC5E,6BAA6B;AAC7B,MAAM,IAAI,GAAG;IACX,mDAAmD;IACnD,2BAA2B;IAC3B,sEAAsE;IACtE,gCAAgC;IAChC,+BAA+B;IAC/B,oCAAoC;CACrC,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,SAAS,SAAS,CAAC,EAAE,MAAM,EAAwB;IACjD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACxB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAClB,MAAC,IAAI,IAAS,QAAQ,QAAC,IAAI,EAAC,cAAc,aAAE,YAAY,EAAE,CAAC,KAAhD,CAAC,CAAuD,CACpE,CAAC,EACD,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACZ,KAAC,IAAI,IAAC,QAAQ,kBAAE,UAAU,MAAM,OAAO,GAAQ,CAChD,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,IAAI,IAAC,QAAQ,kBAAE,eAAe,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,GAAQ,IACxE,CACP,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,YAAoB;IAC/C,MAAM,OAAO,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;IAClD,OAAO,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,OAAO,CAAC,KAAc;IAC7B,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* altScreen.ts — enter/exit the terminal's alternate screen buffer by hand.
|
|
3
|
+
*
|
|
4
|
+
* Ink has an `alternateScreen` render option, but the sequences are owned here instead:
|
|
5
|
+
* they have to be paired with the wheel-reporting teardown and written from signal
|
|
6
|
+
* handlers Ink knows nothing about, so a second owner of the same modes would only
|
|
7
|
+
* create a way for the two to disagree. They are three lines and stable across every
|
|
8
|
+
* VT100-descended terminal.
|
|
9
|
+
*
|
|
10
|
+
* Must always be paired with `exitAltScreen()` before the process actually dies, or the
|
|
11
|
+
* user's shell is left showing a blank alternate-screen buffer. Covers the ways this
|
|
12
|
+
* process ends that still run code: a clean exit, a signal (Ctrl+C, kill, or the
|
|
13
|
+
* terminal window closing), and an uncaught exception — each calls the same idempotent
|
|
14
|
+
* restore.
|
|
15
|
+
*
|
|
16
|
+
* The ways it ends that do NOT run code — a V8 fatal out-of-memory, SIGKILL, a
|
|
17
|
+
* force-quit — cannot be covered from in here at all. That is what
|
|
18
|
+
* `mindweave --reset-terminal` is for; see `terminalRestore.ts`.
|
|
19
|
+
*/
|
|
20
|
+
import { TERMINAL_RESTORE } from "./terminalRestore.js";
|
|
21
|
+
const ENTER = "\x1b[?1049h";
|
|
22
|
+
const HIDE_CURSOR = "\x1b[?25l";
|
|
23
|
+
let active = false;
|
|
24
|
+
/** Switches to the alternate screen and registers the restore-on-exit hooks.
|
|
25
|
+
* No-op outside a real TTY (piped output, CI) — same rule Ink itself uses
|
|
26
|
+
* for every terminal-control feature. */
|
|
27
|
+
export function enterAltScreen() {
|
|
28
|
+
if (active || !process.stdout.isTTY)
|
|
29
|
+
return;
|
|
30
|
+
active = true;
|
|
31
|
+
process.stdout.write(ENTER + HIDE_CURSOR);
|
|
32
|
+
process.on("exit", exitAltScreen);
|
|
33
|
+
process.on("SIGINT", () => {
|
|
34
|
+
exitAltScreen();
|
|
35
|
+
process.exit(130);
|
|
36
|
+
});
|
|
37
|
+
process.on("SIGTERM", () => {
|
|
38
|
+
exitAltScreen();
|
|
39
|
+
process.exit(143);
|
|
40
|
+
});
|
|
41
|
+
// The terminal window being closed. Node raises this on Windows too, and without a
|
|
42
|
+
// listener the default action kills the process outright, skipping the restore — which
|
|
43
|
+
// matters because the same terminal program is usually reopened onto the same profile.
|
|
44
|
+
process.on("SIGHUP", () => {
|
|
45
|
+
exitAltScreen();
|
|
46
|
+
process.exit(129);
|
|
47
|
+
});
|
|
48
|
+
process.on("uncaughtException", (err) => {
|
|
49
|
+
exitAltScreen();
|
|
50
|
+
// eslint-disable-next-line no-console
|
|
51
|
+
console.error(err);
|
|
52
|
+
process.exit(1);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/** Restores the primary screen buffer, the cursor, and wheel reporting. Idempotent —
|
|
56
|
+
* safe to call from multiple exit paths without double-writing escape codes.
|
|
57
|
+
*
|
|
58
|
+
* Wheel reporting is turned on separately (see mouse.ts) and has its own cleanup on
|
|
59
|
+
* unmount, but a signal or a crash skips React entirely, so it is turned off here
|
|
60
|
+
* unconditionally rather than being left to a component that may never unmount. */
|
|
61
|
+
export function exitAltScreen() {
|
|
62
|
+
if (!active)
|
|
63
|
+
return;
|
|
64
|
+
active = false;
|
|
65
|
+
process.stdout.write(TERMINAL_RESTORE);
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=altScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"altScreen.js","sourceRoot":"","sources":["../../src/cli/altScreen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,KAAK,GAAG,aAAa,CAAC;AAC5B,MAAM,WAAW,GAAG,WAAW,CAAC;AAEhC,IAAI,MAAM,GAAG,KAAK,CAAC;AAEnB;;0CAE0C;AAC1C,MAAM,UAAU,cAAc;IAC5B,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO;IAC5C,MAAM,GAAG,IAAI,CAAC;IACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IACH,mFAAmF;IACnF,uFAAuF;IACvF,uFAAuF;IACvF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;QACtC,aAAa,EAAE,CAAC;QAChB,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;oFAKoF;AACpF,MAAM,UAAU,aAAa;IAC3B,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,MAAM,GAAG,KAAK,CAAC;IACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* approvalChannel.ts — the settlement rules for asking the user something.
|
|
3
|
+
*
|
|
4
|
+
* The overlay is a single slot, and approvals arrive from more than one place: a tool
|
|
5
|
+
* mid-turn, the Sentinel gate, MCP trust verification kicked off from a floating promise
|
|
6
|
+
* at session start. A second request used to overwrite the first and drop its resolver,
|
|
7
|
+
* so the tool awaiting it waited for the rest of the session with nothing on screen to
|
|
8
|
+
* explain why — and in the worse ordering, the answer to the second question was handed
|
|
9
|
+
* to the first tool.
|
|
10
|
+
*
|
|
11
|
+
* So the queue lives here, out of the component, where it can be driven directly by a
|
|
12
|
+
* test. A permission request is state, not decoration, and state that only exists
|
|
13
|
+
* inside a rendered component cannot be verified without rendering it.
|
|
14
|
+
*
|
|
15
|
+
* Three rules, and all three are the point:
|
|
16
|
+
* - ONE AT A TIME. A request waits rather than replacing what is on screen.
|
|
17
|
+
* - EXACTLY ONCE. Whoever settles it first wins; later answers are ignored rather
|
|
18
|
+
* than attributed to whatever asked next.
|
|
19
|
+
* - NOTHING HANGS. An interrupt answers everything not yet shown, because a queued
|
|
20
|
+
* request has no overlay to press Esc on and nothing else could ever settle it.
|
|
21
|
+
*/
|
|
22
|
+
export class ApprovalChannel {
|
|
23
|
+
shown = null;
|
|
24
|
+
queued = [];
|
|
25
|
+
/** What should be on screen right now, or null when nothing is being asked. */
|
|
26
|
+
get current() {
|
|
27
|
+
return this.shown?.item ?? null;
|
|
28
|
+
}
|
|
29
|
+
/** How many requests are waiting behind the one on screen. */
|
|
30
|
+
get waiting() {
|
|
31
|
+
return this.queued.length;
|
|
32
|
+
}
|
|
33
|
+
/** Ask, resolving when this particular request is answered. */
|
|
34
|
+
ask(item) {
|
|
35
|
+
return new Promise((resolve) => {
|
|
36
|
+
let settled = false;
|
|
37
|
+
this.queued.push({
|
|
38
|
+
item,
|
|
39
|
+
settle: (choice) => {
|
|
40
|
+
if (settled)
|
|
41
|
+
return;
|
|
42
|
+
settled = true;
|
|
43
|
+
resolve(choice);
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
this.pump();
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/** Answer the request currently on screen and bring the next one forward. */
|
|
50
|
+
answer(choice) {
|
|
51
|
+
const done = this.shown;
|
|
52
|
+
this.shown = null;
|
|
53
|
+
done?.settle(choice);
|
|
54
|
+
this.pump();
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Answer everything NOT yet shown, as the user declining.
|
|
58
|
+
*
|
|
59
|
+
* The displayed one is deliberately left alone: it is on screen and Esc owns it, so
|
|
60
|
+
* settling it here would answer a question the user is still looking at.
|
|
61
|
+
*/
|
|
62
|
+
dismissWaiting(dismissed) {
|
|
63
|
+
const rest = this.queued.splice(0, this.queued.length);
|
|
64
|
+
for (const o of rest)
|
|
65
|
+
o.settle(dismissed);
|
|
66
|
+
}
|
|
67
|
+
pump() {
|
|
68
|
+
if (!this.shown)
|
|
69
|
+
this.shown = this.queued.shift() ?? null;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=approvalChannel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"approvalChannel.js","sourceRoot":"","sources":["../../src/cli/approvalChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AASH,MAAM,OAAO,eAAe;IAClB,KAAK,GAA8B,IAAI,CAAC;IAC/B,MAAM,GAAyB,EAAE,CAAC;IAEnD,+EAA+E;IAC/E,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC;IAClC,CAAC;IAED,8DAA8D;IAC9D,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,+DAA+D;IAC/D,GAAG,CAAC,IAAO;QACT,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;YACrC,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI;gBACJ,MAAM,EAAE,CAAC,MAAc,EAAE,EAAE;oBACzB,IAAI,OAAO;wBAAE,OAAO;oBACpB,OAAO,GAAG,IAAI,CAAC;oBACf,OAAO,CAAC,MAAM,CAAC,CAAC;gBAClB,CAAC;aACF,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6EAA6E;IAC7E,MAAM,CAAC,MAAc;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,SAAiB;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvD,KAAK,MAAM,CAAC,IAAI,IAAI;YAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAEO,IAAI;QACV,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC;IAC5D,CAAC;CACF"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* attachments.ts — share a file into a message, two ways:
|
|
3
|
+
*
|
|
4
|
+
* 1. `@path` — type a mention (e.g. `look at @src/foo.ts`).
|
|
5
|
+
* 2. drag & drop — drag a file from the OS file manager onto the terminal (or
|
|
6
|
+
* paste its path). Terminals turn a dropped file into its
|
|
7
|
+
* path text — quoted when it has spaces, e.g.
|
|
8
|
+
* `"D:\my project\foo.ts"` — which lands in the input buffer.
|
|
9
|
+
*
|
|
10
|
+
* Either way, Mindweave reads the file and hands its FULL contents to the model, while
|
|
11
|
+
* the chat never shows the dump. The model receives an `<attached_file>` block; the
|
|
12
|
+
* human sees a compact chip — a dropped path collapses to just the file name, and
|
|
13
|
+
* one activity note records the line count, e.g. `attached foo.ts (+350 lines)`.
|
|
14
|
+
* The split: the model sees the bytes, the human sees a chip.
|
|
15
|
+
*
|
|
16
|
+
* The split is enforced in two places:
|
|
17
|
+
* - on send, `resolveAttachments` returns the model text (clean line + file
|
|
18
|
+
* blocks), the display text (paths collapsed to file names), and the notes;
|
|
19
|
+
* - on resume, `stripAttachments` hides the file blocks so a reloaded transcript
|
|
20
|
+
* shows the chip, not the payload.
|
|
21
|
+
*
|
|
22
|
+
* Caps mirror read_file (256 KB / binary refusal): an attachment is a convenience,
|
|
23
|
+
* not a way past the read tool's guards. Non-image binaries are skipped — the model
|
|
24
|
+
* can't use them.
|
|
25
|
+
*
|
|
26
|
+
* IMAGES are the one attachment that doesn't become text. When the running model can
|
|
27
|
+
* see (core asks the driver; it never asks which provider), the image is attached as
|
|
28
|
+
* a reference and its bytes go on the wire at request time. When it can't — which is
|
|
29
|
+
* the common case, since not every provider ships vision — the file is still named
|
|
30
|
+
* for the model, and the note says plainly that this model can't see it. The same
|
|
31
|
+
* message, sent on two different models, degrades rather than failing.
|
|
32
|
+
*/
|
|
33
|
+
import { promises as fs } from "node:fs";
|
|
34
|
+
import { basename, isAbsolute, relative, resolve } from "node:path";
|
|
35
|
+
import { describeImage, isImage, isRejection } from "../memory/images.js";
|
|
36
|
+
// Same ceiling as read_file's whole-file read — keep one consistent "too big" line.
|
|
37
|
+
const MAX_BYTES = 256 * 1024;
|
|
38
|
+
// `@token` at a word boundary: `@` after start-or-whitespace, then a path-ish run.
|
|
39
|
+
const MENTION_RE = /(^|\s)@([^\s@]+)/g;
|
|
40
|
+
// A quoted path — how terminals deliver a dragged file whose path has spaces.
|
|
41
|
+
const QUOTED_RE = /'([^']+)'|"([^"]+)"/g;
|
|
42
|
+
// A bare absolute path dropped without quotes: Windows drive (`D:\…`), UNC
|
|
43
|
+
// (`\\host\…`), or POSIX (`/…`). Must start at a word boundary; stops at
|
|
44
|
+
// whitespace or a quote. Real-file gating (below) keeps stray matches harmless.
|
|
45
|
+
const BARE_ABS_RE = /(^|\s)((?:[A-Za-z]:[\\/]|\\\\|\/)[^\s"']+)/g;
|
|
46
|
+
/**
|
|
47
|
+
* Resolve every file reference in `text` (an `@mention`, a quoted path, or a bare
|
|
48
|
+
* absolute path from a drag-and-drop) against `cwd`. A reference that points at a
|
|
49
|
+
* readable text file is attached (full content) and noted with its line count;
|
|
50
|
+
* anything that doesn't resolve to a file is left untouched (so a stray `@`, a
|
|
51
|
+
* quoted phrase, or a `/` in prose never breaks a message). When nothing attaches,
|
|
52
|
+
* `modelText`/`displayText` are the original text unchanged.
|
|
53
|
+
*/
|
|
54
|
+
export async function resolveAttachments(text, cwd, canSeeImages = false) {
|
|
55
|
+
const candidates = findCandidates(text);
|
|
56
|
+
const seen = new Set();
|
|
57
|
+
const blocks = [];
|
|
58
|
+
const notes = [];
|
|
59
|
+
const images = [];
|
|
60
|
+
// Spans to collapse in the display line (dropped paths only), applied right-to-left.
|
|
61
|
+
const collapses = [];
|
|
62
|
+
for (const c of candidates) {
|
|
63
|
+
if (!c.raw)
|
|
64
|
+
continue;
|
|
65
|
+
const abs = isAbsolute(c.raw) ? resolve(c.raw) : resolve(cwd, c.raw);
|
|
66
|
+
if (seen.has(abs))
|
|
67
|
+
continue;
|
|
68
|
+
let stat;
|
|
69
|
+
try {
|
|
70
|
+
stat = await fs.stat(abs);
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
continue; // not a path on disk — leave the text exactly as the user typed it
|
|
74
|
+
}
|
|
75
|
+
if (stat.isDirectory())
|
|
76
|
+
continue; // directories aren't attachable (yet)
|
|
77
|
+
seen.add(abs);
|
|
78
|
+
const shown = displayPath(cwd, abs);
|
|
79
|
+
// Images take the vision path when the running model has eyes, and degrade to a
|
|
80
|
+
// named-but-unseen note when it doesn't. Either way the file name reaches the
|
|
81
|
+
// model, so it can ask about it rather than being unaware anything was shared.
|
|
82
|
+
if (isImage(abs)) {
|
|
83
|
+
if (c.kind === "path")
|
|
84
|
+
collapses.push({ start: c.start, end: c.end, label: basename(abs) });
|
|
85
|
+
if (!canSeeImages) {
|
|
86
|
+
notes.push(`attached image ${shown} (this model can't see images — describe it, or switch with /provider)`);
|
|
87
|
+
blocks.push(`[The user shared an image file: ${shown}. The model you are running can't see images, so its ` +
|
|
88
|
+
`contents aren't available to you — ask them to describe it if you need details.]`);
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
const verdict = await describeImage(abs, stat.size);
|
|
92
|
+
if (isRejection(verdict)) {
|
|
93
|
+
notes.push(`skipped ${shown} (${verdict.reason})`);
|
|
94
|
+
blocks.push(`[The user tried to share ${shown}, but it couldn't be sent: ${verdict.reason}.]`);
|
|
95
|
+
continue;
|
|
96
|
+
}
|
|
97
|
+
images.push(verdict);
|
|
98
|
+
const size = verdict.width && verdict.height ? `${verdict.width}x${verdict.height}` : "attached";
|
|
99
|
+
notes.push(`attached image ${shown} (${size})`);
|
|
100
|
+
continue;
|
|
101
|
+
}
|
|
102
|
+
if (stat.size > MAX_BYTES) {
|
|
103
|
+
notes.push(`skipped ${shown} (${formatBytes(stat.size)} — too large to attach; ask me to read a range)`);
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
const buf = await fs.readFile(abs);
|
|
107
|
+
if (looksBinary(buf)) {
|
|
108
|
+
// Non-image binaries can't be used by a text model — say so plainly.
|
|
109
|
+
notes.push(`skipped ${basename(abs)} (binary file — the model can't read it)`);
|
|
110
|
+
continue;
|
|
111
|
+
}
|
|
112
|
+
const content = buf.toString("utf8");
|
|
113
|
+
const lineCount = content.split("\n").length;
|
|
114
|
+
blocks.push(`<attached_file path="${shown}">\n${content}\n</attached_file>`);
|
|
115
|
+
notes.push(`attached ${shown} (+${lineCount} lines)`);
|
|
116
|
+
// A dropped/quoted path is long and ugly in the chat — collapse it to the file
|
|
117
|
+
// name. An `@mention` is already short, so leave it visible as typed.
|
|
118
|
+
if (c.kind === "path")
|
|
119
|
+
collapses.push({ start: c.start, end: c.end, label: basename(abs) });
|
|
120
|
+
}
|
|
121
|
+
const displayText = applyCollapses(text, collapses);
|
|
122
|
+
if (blocks.length === 0)
|
|
123
|
+
return { modelText: displayText, displayText, notes, images };
|
|
124
|
+
return { modelText: `${displayText}\n\n${blocks.join("\n\n")}`, displayText, notes, images };
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Hide attached-file payloads for display. Used when rebuilding the chat from a
|
|
128
|
+
* stored transcript so a resumed session shows the typed line (paths already
|
|
129
|
+
* collapsed), never the re-dumped file body.
|
|
130
|
+
*/
|
|
131
|
+
export function stripAttachments(content) {
|
|
132
|
+
return content
|
|
133
|
+
.replace(/\n*<attached_file path="[^"]*">\n[\s\S]*?\n<\/attached_file>/g, "")
|
|
134
|
+
.trimEnd();
|
|
135
|
+
}
|
|
136
|
+
/** Gather every file-reference token (mentions, quoted paths, bare absolute paths),
|
|
137
|
+
* sorted by position; quoted/bare ranges never overlap (a quote isn't a path char
|
|
138
|
+
* and bare paths require a leading word boundary). */
|
|
139
|
+
function findCandidates(text) {
|
|
140
|
+
const out = [];
|
|
141
|
+
for (const m of text.matchAll(MENTION_RE)) {
|
|
142
|
+
const start = m.index + m[1].length;
|
|
143
|
+
out.push({ start, end: start + 1 + m[2].length, raw: trimEnds(m[2]), kind: "mention" });
|
|
144
|
+
}
|
|
145
|
+
for (const m of text.matchAll(QUOTED_RE)) {
|
|
146
|
+
out.push({ start: m.index, end: m.index + m[0].length, raw: (m[1] ?? m[2]), kind: "path" });
|
|
147
|
+
}
|
|
148
|
+
for (const m of text.matchAll(BARE_ABS_RE)) {
|
|
149
|
+
const start = m.index + m[1].length;
|
|
150
|
+
out.push({ start, end: start + m[2].length, raw: trimEnds(m[2]), kind: "path" });
|
|
151
|
+
}
|
|
152
|
+
return out.sort((a, b) => a.start - b.start);
|
|
153
|
+
}
|
|
154
|
+
/** Splice collapse-spans into shorter labels, right-to-left so earlier indices hold. */
|
|
155
|
+
function applyCollapses(text, spans) {
|
|
156
|
+
let out = text;
|
|
157
|
+
for (const s of [...spans].sort((a, b) => b.start - a.start)) {
|
|
158
|
+
out = out.slice(0, s.start) + s.label + out.slice(s.end);
|
|
159
|
+
}
|
|
160
|
+
return out;
|
|
161
|
+
}
|
|
162
|
+
/** Trim sentence punctuation a path token shouldn't end with: `foo.ts,` → `foo.ts`. */
|
|
163
|
+
function trimEnds(s) {
|
|
164
|
+
return s.replace(/[.,;:!?)\]}'"]+$/, "");
|
|
165
|
+
}
|
|
166
|
+
/** Path relative to cwd when it sits beneath it (reads naturally), else absolute. */
|
|
167
|
+
function displayPath(cwd, abs) {
|
|
168
|
+
const rel = relative(cwd, abs);
|
|
169
|
+
if (rel === "" || rel.startsWith(".."))
|
|
170
|
+
return abs;
|
|
171
|
+
return rel.split("\\").join("/");
|
|
172
|
+
}
|
|
173
|
+
/** A NUL byte in the first chunk is a cheap, reliable "not text" signal. */
|
|
174
|
+
function looksBinary(buf) {
|
|
175
|
+
const n = Math.min(buf.length, 8192);
|
|
176
|
+
for (let i = 0; i < n; i++)
|
|
177
|
+
if (buf[i] === 0)
|
|
178
|
+
return true;
|
|
179
|
+
return false;
|
|
180
|
+
}
|
|
181
|
+
function formatBytes(n) {
|
|
182
|
+
if (n < 1024)
|
|
183
|
+
return `${n} B`;
|
|
184
|
+
if (n < 1024 * 1024)
|
|
185
|
+
return `${Math.round(n / 1024)} KB`;
|
|
186
|
+
return `${(n / 1024 / 1024).toFixed(1)} MB`;
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=attachments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../src/cli/attachments.ts"],"names":[],"mappings":"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"}
|