effect 4.0.3 → 4.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +24 -0
- package/CLAUDE.md +24 -0
- package/ai-docs/package.json +2 -2
- package/ai-docs/src/52_graphql/10_basics.ts +117 -0
- package/ai-docs/src/52_graphql/20_testing.ts +45 -0
- package/ai-docs/src/52_graphql/30_batching.ts +118 -0
- package/ai-docs/src/52_graphql/40_aliased-batching.ts +124 -0
- package/ai-docs/src/52_graphql/50_errors-and-retries.ts +74 -0
- package/ai-docs/src/52_graphql/index.md +6 -0
- package/dist/Array.d.ts +90 -6
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +4 -2
- package/dist/Array.js.map +1 -1
- package/dist/Channel.d.ts +6 -1
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +17 -3
- package/dist/Channel.js.map +1 -1
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +33 -32
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +9 -0
- package/dist/Context.js.map +1 -1
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +2 -5
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +61 -19
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +58 -39
- package/dist/Effect.js.map +1 -1
- package/dist/FileSystem.d.ts +23 -9
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js.map +1 -1
- package/dist/Match.d.ts +20 -6
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +2 -2
- package/dist/Match.js.map +1 -1
- package/dist/Path.d.ts +37 -5
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +36 -5
- package/dist/Path.js.map +1 -1
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +4 -10
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Scheduler.d.ts +9 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +9 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +15 -2
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +16 -2
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaGetter.d.ts +4 -0
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +52 -33
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +38 -17
- package/dist/Sink.js.map +1 -1
- package/dist/Stream.d.ts +11 -0
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +16 -1
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +12 -0
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +17 -4
- package/dist/String.js.map +1 -1
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +3 -2
- package/dist/TxRef.js.map +1 -1
- package/dist/Utils.js +8 -3
- package/dist/Utils.js.map +1 -1
- package/dist/ai/AiError.d.ts +10 -10
- package/dist/ai/AiError.d.ts.map +1 -1
- package/dist/ai/AiError.js +1 -1
- package/dist/ai/AiError.js.map +1 -1
- package/dist/ai/AnthropicStructuredOutput.js +0 -2
- package/dist/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/ai/Chat.d.ts +2 -2
- package/dist/ai/Chat.d.ts.map +1 -1
- package/dist/ai/Decision.d.ts +70 -19
- package/dist/ai/Decision.d.ts.map +1 -1
- package/dist/ai/Decision.js +37 -3
- package/dist/ai/Decision.js.map +1 -1
- package/dist/ai/DecisionModel.js +1 -1
- package/dist/ai/DecisionModel.js.map +1 -1
- package/dist/ai/LanguageModel.d.ts +38 -7
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +70 -40
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpServer.d.ts +61 -52
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +134 -50
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Prompt.d.ts.map +1 -1
- package/dist/ai/Prompt.js +28 -5
- package/dist/ai/Prompt.js.map +1 -1
- package/dist/ai/Response.d.ts +5 -4
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js.map +1 -1
- package/dist/cli/Completions.d.ts +5 -0
- package/dist/cli/Completions.d.ts.map +1 -1
- package/dist/cli/Completions.js.map +1 -1
- package/dist/cli/Flag.d.ts +100 -0
- package/dist/cli/Flag.d.ts.map +1 -1
- package/dist/cli/Flag.js +33 -0
- package/dist/cli/Flag.js.map +1 -1
- package/dist/cli/Param.d.ts +87 -0
- package/dist/cli/Param.d.ts.map +1 -1
- package/dist/cli/Param.js +30 -0
- package/dist/cli/Param.js.map +1 -1
- package/dist/cli/internal/command.d.ts.map +1 -1
- package/dist/cli/internal/command.js +2 -1
- package/dist/cli/internal/command.js.map +1 -1
- package/dist/cli/internal/completions/bash.js +4 -3
- package/dist/cli/internal/completions/bash.js.map +1 -1
- package/dist/cli/internal/completions/descriptor.js +8 -1
- package/dist/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/cli/internal/completions/fish.js +4 -4
- package/dist/cli/internal/completions/fish.js.map +1 -1
- package/dist/cli/internal/completions/powershell.js +3 -2
- package/dist/cli/internal/completions/powershell.js.map +1 -1
- package/dist/cli/internal/completions/zsh.js +7 -3
- package/dist/cli/internal/completions/zsh.js.map +1 -1
- package/dist/cli/internal/parser.js +11 -3
- package/dist/cli/internal/parser.js.map +1 -1
- package/dist/cli/internal/wizard.d.ts.map +1 -1
- package/dist/cli/internal/wizard.js +2 -1
- package/dist/cli/internal/wizard.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts +1 -0
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +113 -21
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/cluster/MessageStorage.js +20 -12
- package/dist/cluster/MessageStorage.js.map +1 -1
- package/dist/cluster/Runners.d.ts.map +1 -1
- package/dist/cluster/Runners.js +54 -34
- package/dist/cluster/Runners.js.map +1 -1
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +6 -4
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +1 -1
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/encoding/Sse.d.ts +6 -0
- package/dist/encoding/Sse.d.ts.map +1 -1
- package/dist/encoding/Sse.js +63 -71
- package/dist/encoding/Sse.js.map +1 -1
- package/dist/graphql/GraphQL.d.ts +349 -0
- package/dist/graphql/GraphQL.d.ts.map +1 -0
- package/dist/graphql/GraphQL.js +207 -0
- package/dist/graphql/GraphQL.js.map +1 -0
- package/dist/graphql/GraphQLClient.d.ts +562 -0
- package/dist/graphql/GraphQLClient.d.ts.map +1 -0
- package/dist/graphql/GraphQLClient.js +505 -0
- package/dist/graphql/GraphQLClient.js.map +1 -0
- package/dist/graphql/GraphQLClientError.d.ts +445 -0
- package/dist/graphql/GraphQLClientError.d.ts.map +1 -0
- package/dist/graphql/GraphQLClientError.js +479 -0
- package/dist/graphql/GraphQLClientError.js.map +1 -0
- package/dist/graphql/GraphQLGroup.d.ts +118 -0
- package/dist/graphql/GraphQLGroup.d.ts.map +1 -0
- package/dist/graphql/GraphQLGroup.js +109 -0
- package/dist/graphql/GraphQLGroup.js.map +1 -0
- package/dist/graphql/GraphQLMiddleware.d.ts +249 -0
- package/dist/graphql/GraphQLMiddleware.d.ts.map +1 -0
- package/dist/graphql/GraphQLMiddleware.js +130 -0
- package/dist/graphql/GraphQLMiddleware.js.map +1 -0
- package/dist/graphql/GraphQLProtocol.d.ts +969 -0
- package/dist/graphql/GraphQLProtocol.d.ts.map +1 -0
- package/dist/graphql/GraphQLProtocol.js +809 -0
- package/dist/graphql/GraphQLProtocol.js.map +1 -0
- package/dist/graphql/GraphQLResolver.d.ts +453 -0
- package/dist/graphql/GraphQLResolver.d.ts.map +1 -0
- package/dist/graphql/GraphQLResolver.js +582 -0
- package/dist/graphql/GraphQLResolver.js.map +1 -0
- package/dist/graphql/index.d.ts +40 -0
- package/dist/graphql/index.d.ts.map +1 -0
- package/dist/graphql/index.js +41 -0
- package/dist/graphql/index.js.map +1 -0
- package/dist/http/FetchHttpClient.d.ts +6 -3
- package/dist/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/http/FetchHttpClient.js +6 -3
- package/dist/http/FetchHttpClient.js.map +1 -1
- package/dist/http/FindMyWay/internal/router.js +2 -1
- package/dist/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/http/Headers.d.ts +3 -3
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +6 -5
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +27 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +38 -11
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientError.d.ts.map +1 -1
- package/dist/http/HttpClientError.js +8 -6
- package/dist/http/HttpClientError.js.map +1 -1
- package/dist/http/HttpClientRequest.d.ts +147 -4
- package/dist/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/http/HttpClientRequest.js +47 -1
- package/dist/http/HttpClientRequest.js.map +1 -1
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +14 -7
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts +60 -0
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +93 -32
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpRouter.d.ts +35 -0
- package/dist/http/HttpRouter.d.ts.map +1 -1
- package/dist/http/HttpRouter.js +87 -13
- package/dist/http/HttpRouter.js.map +1 -1
- package/dist/http/HttpServerError.d.ts.map +1 -1
- package/dist/http/HttpServerError.js +6 -4
- package/dist/http/HttpServerError.js.map +1 -1
- package/dist/http/HttpServerRequest.js +2 -2
- package/dist/http/HttpServerRequest.js.map +1 -1
- package/dist/http/HttpServerResponse.d.ts +8 -6
- package/dist/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/http/HttpServerResponse.js +27 -16
- package/dist/http/HttpServerResponse.js.map +1 -1
- package/dist/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/http/HttpStaticServer.js +4 -10
- package/dist/http/HttpStaticServer.js.map +1 -1
- package/dist/http/HttpTraceContext.js +1 -1
- package/dist/http/HttpTraceContext.js.map +1 -1
- package/dist/http/Multipart.d.ts.map +1 -1
- package/dist/http/Multipart.js +15 -1
- package/dist/http/Multipart.js.map +1 -1
- package/dist/http/Url.d.ts.map +1 -1
- package/dist/http/Url.js +2 -1
- package/dist/http/Url.js.map +1 -1
- package/dist/http/UrlParams.d.ts +112 -8
- package/dist/http/UrlParams.d.ts.map +1 -1
- package/dist/http/UrlParams.js +141 -14
- package/dist/http/UrlParams.js.map +1 -1
- package/dist/http/internal/compression.d.ts +1 -1
- package/dist/http/internal/compression.d.ts.map +1 -1
- package/dist/http/internal/compression.js +2 -10
- package/dist/http/internal/compression.js.map +1 -1
- package/dist/http/internal/compressionBody.d.ts +2 -0
- package/dist/http/internal/compressionBody.d.ts.map +1 -0
- package/dist/http/internal/compressionBody.js +36 -0
- package/dist/http/internal/compressionBody.js.map +1 -0
- package/dist/http/internal/decompression.d.ts +2 -0
- package/dist/http/internal/decompression.d.ts.map +1 -0
- package/dist/http/internal/decompression.js +162 -0
- package/dist/http/internal/decompression.js.map +1 -0
- package/dist/http/internal/tracing.js +14 -4
- package/dist/http/internal/tracing.js.map +1 -1
- package/dist/http/internal/urlParams.d.ts +2 -0
- package/dist/http/internal/urlParams.d.ts.map +1 -0
- package/dist/http/internal/urlParams.js +4 -0
- package/dist/http/internal/urlParams.js.map +1 -0
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js +2 -1
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiScalar.d.ts +5 -0
- package/dist/http-api/HttpApiScalar.d.ts.map +1 -1
- package/dist/http-api/HttpApiScalar.js.map +1 -1
- package/dist/internal/core.js +17 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +40 -35
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +13 -6
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/graphql.d.ts +2 -0
- package/dist/internal/graphql.d.ts.map +1 -0
- package/dist/internal/graphql.js +205 -0
- package/dist/internal/graphql.js.map +1 -0
- package/dist/internal/graphqlHeaders.d.ts +4 -0
- package/dist/internal/graphqlHeaders.d.ts.map +1 -0
- package/dist/internal/graphqlHeaders.js +11 -0
- package/dist/internal/graphqlHeaders.js.map +1 -0
- package/dist/internal/request.js +20 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js +4 -1
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +29 -5
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/version.js +1 -1
- package/dist/net/Host.d.ts +49 -0
- package/dist/net/Host.d.ts.map +1 -1
- package/dist/net/Host.js +55 -0
- package/dist/net/Host.js.map +1 -1
- package/dist/net/NetAddress.d.ts +8 -0
- package/dist/net/NetAddress.d.ts.map +1 -1
- package/dist/net/NetAddress.js +8 -0
- package/dist/net/NetAddress.js.map +1 -1
- package/dist/observability/Otlp.d.ts +15 -0
- package/dist/observability/Otlp.d.ts.map +1 -1
- package/dist/observability/Otlp.js +3 -0
- package/dist/observability/Otlp.js.map +1 -1
- package/dist/observability/OtlpExporter.d.ts +8 -0
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +10 -1
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpLogger.d.ts +17 -0
- package/dist/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/observability/OtlpLogger.js +14 -1
- package/dist/observability/OtlpLogger.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts +17 -0
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +13 -0
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/OtlpTracer.d.ts +17 -0
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +15 -2
- package/dist/observability/OtlpTracer.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +6 -0
- package/dist/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/reactivity/AsyncResult.js +27 -0
- package/dist/reactivity/AsyncResult.js.map +1 -1
- package/dist/reactivity/AtomRegistry.js +3 -1
- package/dist/reactivity/AtomRegistry.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +6 -1
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +36 -9
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/socket/Socket.d.ts +6 -0
- package/dist/socket/Socket.d.ts.map +1 -1
- package/dist/socket/Socket.js.map +1 -1
- package/dist/sql/SqlClient.d.ts +8 -7
- package/dist/sql/SqlClient.d.ts.map +1 -1
- package/dist/sql/SqlClient.js +8 -7
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/testing/TestClock.d.ts +16 -3
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +112 -22
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/workflow/Activity.js +1 -0
- package/dist/workflow/Activity.js.map +1 -1
- package/dist/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/workflow/DurableDeferred.js +32 -3
- package/dist/workflow/DurableDeferred.js.map +1 -1
- package/dist/workflow/Workflow.d.ts +22 -0
- package/dist/workflow/Workflow.d.ts.map +1 -1
- package/dist/workflow/Workflow.js +15 -3
- package/dist/workflow/Workflow.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts +44 -3
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +45 -22
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +6 -3
- package/src/Array.ts +95 -6
- package/src/Channel.ts +24 -3
- package/src/ConfigProvider.ts +40 -44
- package/src/Context.ts +9 -0
- package/src/Duration.ts +4 -5
- package/src/Effect.ts +140 -53
- package/src/FileSystem.ts +23 -9
- package/src/Match.ts +65 -12
- package/src/Path.ts +52 -7
- package/src/RequestResolver.ts +4 -10
- package/src/Scheduler.ts +9 -0
- package/src/Schema.ts +25 -4
- package/src/SchemaGetter.ts +47 -35
- package/src/Sink.ts +45 -18
- package/src/Stream.ts +33 -4
- package/src/String.ts +17 -4
- package/src/TxRef.ts +4 -2
- package/src/Utils.ts +8 -5
- package/src/ai/AiError.ts +3 -1
- package/src/ai/AnthropicStructuredOutput.ts +2 -2
- package/src/ai/Chat.ts +2 -2
- package/src/ai/Decision.ts +70 -21
- package/src/ai/DecisionModel.ts +1 -1
- package/src/ai/LanguageModel.ts +141 -63
- package/src/ai/McpServer.ts +259 -145
- package/src/ai/Prompt.ts +24 -10
- package/src/ai/Response.ts +6 -3
- package/src/cli/Completions.ts +5 -0
- package/src/cli/Flag.ts +101 -0
- package/src/cli/Param.ts +96 -0
- package/src/cli/internal/command.ts +2 -1
- package/src/cli/internal/completions/bash.ts +4 -3
- package/src/cli/internal/completions/descriptor.ts +10 -1
- package/src/cli/internal/completions/fish.ts +4 -4
- package/src/cli/internal/completions/powershell.ts +5 -2
- package/src/cli/internal/completions/zsh.ts +7 -3
- package/src/cli/internal/parser.ts +12 -3
- package/src/cli/internal/wizard.ts +2 -1
- package/src/cluster/ClusterWorkflowEngine.ts +143 -36
- package/src/cluster/MessageStorage.ts +14 -3
- package/src/cluster/Runners.ts +88 -66
- package/src/cluster/Sharding.ts +12 -9
- package/src/cluster/internal/entityManager.ts +1 -1
- package/src/encoding/Sse.ts +70 -80
- package/src/graphql/GraphQL.ts +494 -0
- package/src/graphql/GraphQLClient.ts +924 -0
- package/src/graphql/GraphQLClientError.ts +542 -0
- package/src/graphql/GraphQLGroup.ts +167 -0
- package/src/graphql/GraphQLMiddleware.ts +253 -0
- package/src/graphql/GraphQLProtocol.ts +1540 -0
- package/src/graphql/GraphQLResolver.ts +1038 -0
- package/src/graphql/index.ts +48 -0
- package/src/http/FetchHttpClient.ts +6 -3
- package/src/http/FindMyWay/internal/router.ts +2 -1
- package/src/http/Headers.ts +6 -9
- package/src/http/HttpClient.ts +72 -11
- package/src/http/HttpClientError.ts +10 -6
- package/src/http/HttpClientRequest.ts +173 -7
- package/src/http/HttpEffect.ts +11 -5
- package/src/http/HttpMiddleware.ts +113 -34
- package/src/http/HttpRouter.ts +95 -13
- package/src/http/HttpServerError.ts +8 -4
- package/src/http/HttpServerRequest.ts +2 -2
- package/src/http/HttpServerResponse.ts +28 -16
- package/src/http/HttpStaticServer.ts +4 -10
- package/src/http/HttpTraceContext.ts +1 -1
- package/src/http/Multipart.ts +17 -1
- package/src/http/Url.ts +2 -1
- package/src/http/UrlParams.ts +225 -26
- package/src/http/internal/compression.ts +3 -17
- package/src/http/internal/compressionBody.ts +56 -0
- package/src/http/internal/decompression.ts +226 -0
- package/src/http/internal/tracing.ts +21 -4
- package/src/http/internal/urlParams.ts +5 -0
- package/src/http-api/HttpApiClient.ts +2 -1
- package/src/http-api/HttpApiScalar.ts +5 -0
- package/src/internal/core.ts +21 -1
- package/src/internal/dateTime.ts +13 -10
- package/src/internal/effect.ts +13 -7
- package/src/internal/graphql.ts +286 -0
- package/src/internal/graphqlHeaders.ts +11 -0
- package/src/internal/request.ts +31 -3
- package/src/internal/schema/toCodeDocument.ts +7 -1
- package/src/internal/schema/toJsonSchemaDocument.ts +34 -2
- package/src/internal/version.ts +1 -1
- package/src/net/Host.ts +72 -0
- package/src/net/NetAddress.ts +9 -0
- package/src/observability/Otlp.ts +18 -0
- package/src/observability/OtlpExporter.ts +14 -3
- package/src/observability/OtlpLogger.ts +31 -2
- package/src/observability/OtlpMetrics.ts +30 -1
- package/src/observability/OtlpTracer.ts +32 -3
- package/src/reactivity/AsyncResult.ts +31 -0
- package/src/reactivity/AtomRegistry.ts +3 -1
- package/src/rpc/RpcClient.ts +6 -1
- package/src/rpc/RpcServer.ts +55 -15
- package/src/socket/Socket.ts +6 -0
- package/src/sql/SqlClient.ts +9 -7
- package/src/testing/TestClock.ts +144 -29
- package/src/workflow/Activity.ts +1 -0
- package/src/workflow/DurableDeferred.ts +43 -5
- package/src/workflow/Workflow.ts +31 -5
- package/src/workflow/WorkflowEngine.ts +107 -25
package/dist/ai/LanguageModel.js
CHANGED
|
@@ -251,6 +251,8 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
251
251
|
const parentSpanTransformer = yield* Effect.serviceOption(CurrentSpanTransformer);
|
|
252
252
|
const getSpanTransformer = Effect.serviceOption(CurrentSpanTransformer).pipe(Effect.map(Option.orElse(() => parentSpanTransformer)));
|
|
253
253
|
const idGenerator = yield* Effect.serviceOption(IdGenerator).pipe(Effect.map(Option.getOrElse(() => defaultIdGenerator)));
|
|
254
|
+
const contentDecoderFor = makeResponseDecoder((toolkit, deferred) => Schema.decodeEffect(Schema.mutable(Schema.Array(withUndeclaredToolCalls(Response.Part(toolkit), deferred)))));
|
|
255
|
+
const streamDecoderFor = makeResponseDecoder((toolkit, deferred) => Schema.decodeEffect(Schema.NonEmptyArray(withUndeclaredToolCalls(Response.StreamPart(toolkit), deferred))));
|
|
254
256
|
const generateText = options => Effect.useSpan("LanguageModel.generateText", {
|
|
255
257
|
kind: "client"
|
|
256
258
|
}, Effect.fnUntraced(function* (span) {
|
|
@@ -366,6 +368,10 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
366
368
|
const toolChoice = options.toolChoice ?? "auto";
|
|
367
369
|
const concurrency = options.concurrency ?? "unbounded";
|
|
368
370
|
annotateRequestOptions(providerOptions, toolChoice, concurrency);
|
|
371
|
+
const deferToolCallValidation = isToolCallValidationDeferred(options);
|
|
372
|
+
if (deferToolCallValidation) {
|
|
373
|
+
providerOptions.toolCallValidation = "deferred";
|
|
374
|
+
}
|
|
369
375
|
const generateWithNonIncrementalFallback = () => {
|
|
370
376
|
const requestOptions = {
|
|
371
377
|
...providerOptions
|
|
@@ -382,11 +388,11 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
382
388
|
};
|
|
383
389
|
// Check for pending approvals that need resolution
|
|
384
390
|
const {
|
|
385
|
-
approved,
|
|
386
|
-
denied
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
});
|
|
391
|
+
approved: allResolved,
|
|
392
|
+
denied: allDenied,
|
|
393
|
+
pendingApproved: approved,
|
|
394
|
+
pendingDenied: denied
|
|
395
|
+
} = collectToolApprovals(providerOptions.prompt.content);
|
|
390
396
|
const hasPendingApprovals = approved.length > 0 || denied.length > 0;
|
|
391
397
|
// If there is no toolkit, the generated content can be returned immediately
|
|
392
398
|
if (Predicate.isUndefined(options.toolkit)) {
|
|
@@ -407,7 +413,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
407
413
|
providerOptions.incrementalPrompt = prepared.value.prompt;
|
|
408
414
|
}
|
|
409
415
|
}
|
|
410
|
-
const ResponseSchema = Schema.mutable(Schema.Array(Response.Part(Toolkit.empty)));
|
|
416
|
+
const ResponseSchema = Schema.mutable(Schema.Array(withUndeclaredToolCalls(Response.Part(Toolkit.empty), deferToolCallValidation)));
|
|
411
417
|
const rawContent = yield* generateWithNonIncrementalFallback();
|
|
412
418
|
const content = yield* Schema.decodeEffect(ResponseSchema)(rawContent);
|
|
413
419
|
if (tracker) {
|
|
@@ -439,7 +445,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
439
445
|
providerOptions.incrementalPrompt = prepared.value.prompt;
|
|
440
446
|
}
|
|
441
447
|
}
|
|
442
|
-
const ResponseSchema = Schema.mutable(Schema.Array(Response.Part(Toolkit.empty)));
|
|
448
|
+
const ResponseSchema = Schema.mutable(Schema.Array(withUndeclaredToolCalls(Response.Part(Toolkit.empty), deferToolCallValidation)));
|
|
443
449
|
const rawContent = yield* generateWithNonIncrementalFallback();
|
|
444
450
|
const content = yield* Schema.decodeEffect(ResponseSchema)(rawContent);
|
|
445
451
|
if (tracker) {
|
|
@@ -474,14 +480,8 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
474
480
|
}
|
|
475
481
|
// Strip all resolved approval artifacts (both current and from previous
|
|
476
482
|
// rounds) in a single pass before sending to the provider.
|
|
477
|
-
{
|
|
478
|
-
|
|
479
|
-
approved: allResolved,
|
|
480
|
-
denied: allDenied
|
|
481
|
-
} = collectToolApprovals(providerOptions.prompt.content);
|
|
482
|
-
if (allResolved.length > 0 || allDenied.length > 0) {
|
|
483
|
-
providerOptions.prompt = stripResolvedApprovals(providerOptions.prompt, allResolved, allDenied);
|
|
484
|
-
}
|
|
483
|
+
if (allResolved.length > 0 || allDenied.length > 0) {
|
|
484
|
+
providerOptions.prompt = stripResolvedApprovals(providerOptions.prompt, allResolved, allDenied);
|
|
485
485
|
}
|
|
486
486
|
const tools = typeof toolChoice === "object" && "oneOf" in toolChoice ? Object.values(toolkit.tools).filter(tool => toolChoice.oneOf.includes(tool.name)) : Object.values(toolkit.tools);
|
|
487
487
|
providerOptions.tools = tools;
|
|
@@ -493,12 +493,15 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
493
493
|
providerOptions.incrementalPrompt = prepared.value.prompt;
|
|
494
494
|
}
|
|
495
495
|
}
|
|
496
|
-
const
|
|
496
|
+
const decodeContent = contentDecoderFor(toolkit, options.disableToolCallResolution === true && !deferToolCallValidation, deferToolCallValidation);
|
|
497
497
|
// If tool call resolution is disabled, return the response without
|
|
498
498
|
// resolving the tool calls that were generated
|
|
499
499
|
if (options.disableToolCallResolution === true) {
|
|
500
500
|
const rawContent = yield* generateWithNonIncrementalFallback();
|
|
501
|
-
const content = yield*
|
|
501
|
+
const content = yield* decodeContent(rawContent);
|
|
502
|
+
if (deferToolCallValidation) {
|
|
503
|
+
yield* validateProviderExecutedToolCalls(makeToolkitWithEncodedParameters(toolkit), rawContent);
|
|
504
|
+
}
|
|
502
505
|
if (tracker) {
|
|
503
506
|
const responseMetadata = content.find(part => part.type === "response-metadata");
|
|
504
507
|
if (Predicate.isNotUndefined(responseMetadata) && Predicate.isNotUndefined(responseMetadata.id)) {
|
|
@@ -509,7 +512,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
509
512
|
}
|
|
510
513
|
const rawContent = yield* generateWithNonIncrementalFallback();
|
|
511
514
|
// Validate before running tool handlers.
|
|
512
|
-
const content = yield*
|
|
515
|
+
const content = yield* decodeContent(rawContent);
|
|
513
516
|
yield* validateProviderExecutedToolCalls(toolkit, rawContent);
|
|
514
517
|
// Resolve the generated tool calls. When the finish reason indicates an
|
|
515
518
|
// incomplete response, handlers do not run and every executable tool call
|
|
@@ -530,6 +533,10 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
530
533
|
const toolChoice = options.toolChoice ?? "auto";
|
|
531
534
|
const concurrency = options.concurrency ?? "unbounded";
|
|
532
535
|
annotateRequestOptions(providerOptions, toolChoice, concurrency);
|
|
536
|
+
const deferToolCallValidation = isToolCallValidationDeferred(options);
|
|
537
|
+
if (deferToolCallValidation) {
|
|
538
|
+
providerOptions.toolCallValidation = "deferred";
|
|
539
|
+
}
|
|
533
540
|
const streamWithNonIncrementalFallback = () => {
|
|
534
541
|
const requestOptions = {
|
|
535
542
|
...providerOptions
|
|
@@ -551,11 +558,11 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
551
558
|
};
|
|
552
559
|
// Check for pending approvals that need resolution
|
|
553
560
|
const {
|
|
554
|
-
approved:
|
|
555
|
-
denied:
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
});
|
|
561
|
+
approved: allResolved,
|
|
562
|
+
denied: allDenied,
|
|
563
|
+
pendingApproved,
|
|
564
|
+
pendingDenied
|
|
565
|
+
} = collectToolApprovals(providerOptions.prompt.content);
|
|
559
566
|
const hasPendingApprovals = pendingApproved.length > 0 || pendingDenied.length > 0;
|
|
560
567
|
// If there is no toolkit, return immediately
|
|
561
568
|
if (Predicate.isUndefined(options.toolkit)) {
|
|
@@ -576,7 +583,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
576
583
|
providerOptions.incrementalPrompt = prepared.value.prompt;
|
|
577
584
|
}
|
|
578
585
|
}
|
|
579
|
-
const schema = Schema.NonEmptyArray(Response.StreamPart(Toolkit.empty));
|
|
586
|
+
const schema = Schema.NonEmptyArray(withUndeclaredToolCalls(Response.StreamPart(Toolkit.empty), deferToolCallValidation));
|
|
580
587
|
const decodeParts = Schema.decodeEffect(schema);
|
|
581
588
|
return pipe(streamWithNonIncrementalFallback(), Stream.mapArrayEffect(parts => decodeParts(parts).pipe(tracker ? Effect.tap(decodedParts => {
|
|
582
589
|
for (const part of decodedParts) {
|
|
@@ -608,7 +615,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
608
615
|
providerOptions.incrementalPrompt = prepared.value.prompt;
|
|
609
616
|
}
|
|
610
617
|
}
|
|
611
|
-
const schema = Schema.NonEmptyArray(Response.StreamPart(Toolkit.empty));
|
|
618
|
+
const schema = Schema.NonEmptyArray(withUndeclaredToolCalls(Response.StreamPart(Toolkit.empty), deferToolCallValidation));
|
|
612
619
|
const decodeParts = Schema.decodeEffect(schema);
|
|
613
620
|
return pipe(streamWithNonIncrementalFallback(), Stream.mapArrayEffect(parts => decodeParts(parts).pipe(tracker ? Effect.tap(decodedParts => {
|
|
614
621
|
for (const part of decodedParts) {
|
|
@@ -658,10 +665,6 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
658
665
|
}
|
|
659
666
|
// Strip all resolved approval artifacts (both current and from previous
|
|
660
667
|
// rounds) in a single pass before sending to the provider.
|
|
661
|
-
const {
|
|
662
|
-
approved: allResolved,
|
|
663
|
-
denied: allDenied
|
|
664
|
-
} = collectToolApprovals(providerOptions.prompt.content);
|
|
665
668
|
if (allResolved.length > 0 || allDenied.length > 0) {
|
|
666
669
|
providerOptions.prompt = stripResolvedApprovals(providerOptions.prompt, allResolved, allDenied);
|
|
667
670
|
}
|
|
@@ -675,12 +678,12 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
675
678
|
providerOptions.incrementalPrompt = prepared.value.prompt;
|
|
676
679
|
}
|
|
677
680
|
}
|
|
678
|
-
const
|
|
679
|
-
const decodeParts = Schema.decodeEffect(ResponseSchema);
|
|
681
|
+
const decodeParts = streamDecoderFor(toolkit, options.disableToolCallResolution === true && !deferToolCallValidation, deferToolCallValidation);
|
|
680
682
|
// If tool call resolution is disabled, return the response without
|
|
681
683
|
// resolving the tool calls that were generated
|
|
682
684
|
if (options.disableToolCallResolution === true) {
|
|
683
|
-
|
|
685
|
+
const encodedToolkit = deferToolCallValidation ? makeToolkitWithEncodedParameters(toolkit) : undefined;
|
|
686
|
+
return streamWithNonIncrementalFallback().pipe(Stream.mapArrayEffect(parts => decodeParts(parts).pipe(encodedToolkit ? Effect.tap(() => validateProviderExecutedToolCalls(encodedToolkit, parts)) : identity, tracker ? Effect.tap(decodedParts => {
|
|
684
687
|
for (const part of decodedParts) {
|
|
685
688
|
if (part.type === "response-metadata" && Predicate.isNotUndefined(part.id)) {
|
|
686
689
|
tracker.markParts(providerOptions.prompt.content, part.id);
|
|
@@ -693,8 +696,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (params) {
|
|
|
693
696
|
const queue = yield* Queue.make();
|
|
694
697
|
const deferredFinishParts = [];
|
|
695
698
|
// Emit pre-resolved tool results so Chat.streamText persists them to
|
|
696
|
-
// history
|
|
697
|
-
// find the corresponding tool-results on future rounds.
|
|
699
|
+
// history, where collectToolApprovals finds them on future rounds.
|
|
698
700
|
if (preResolvedStreamParts.length > 0) {
|
|
699
701
|
yield* Queue.offerAll(queue, preResolvedStreamParts);
|
|
700
702
|
}
|
|
@@ -961,7 +963,7 @@ export const generateObject = options => Effect.flatMap(Effect.service(LanguageM
|
|
|
961
963
|
* @since 4.0.0
|
|
962
964
|
*/
|
|
963
965
|
export const streamText = options => Stream.unwrap(Effect.map(Effect.service(LanguageModel), model => model.streamText(options)));
|
|
964
|
-
const collectToolApprovals =
|
|
966
|
+
const collectToolApprovals = messages => {
|
|
965
967
|
const requests = new Map();
|
|
966
968
|
const responses = [];
|
|
967
969
|
const toolCallsById = new Map();
|
|
@@ -998,13 +1000,11 @@ const collectToolApprovals = (messages, options) => {
|
|
|
998
1000
|
}
|
|
999
1001
|
const approved = [];
|
|
1000
1002
|
const denied = [];
|
|
1003
|
+
const pendingApproved = [];
|
|
1004
|
+
const pendingDenied = [];
|
|
1001
1005
|
for (const response of responses) {
|
|
1002
1006
|
const request = requests.get(response.approvalId);
|
|
1003
1007
|
if (Predicate.isNotUndefined(request)) {
|
|
1004
|
-
// Skip if already resolved
|
|
1005
|
-
if (options?.excludeResolved && toolResultIds.has(request.toolCallId)) {
|
|
1006
|
-
continue;
|
|
1007
|
-
}
|
|
1008
1008
|
const result = {
|
|
1009
1009
|
...response,
|
|
1010
1010
|
toolCallId: request.toolCallId,
|
|
@@ -1012,14 +1012,18 @@ const collectToolApprovals = (messages, options) => {
|
|
|
1012
1012
|
};
|
|
1013
1013
|
if (response.approved) {
|
|
1014
1014
|
approved.push(result);
|
|
1015
|
+
if (!toolResultIds.has(request.toolCallId)) pendingApproved.push(result);
|
|
1015
1016
|
} else {
|
|
1016
1017
|
denied.push(result);
|
|
1018
|
+
if (!toolResultIds.has(request.toolCallId)) pendingDenied.push(result);
|
|
1017
1019
|
}
|
|
1018
1020
|
}
|
|
1019
1021
|
}
|
|
1020
1022
|
return {
|
|
1021
1023
|
approved,
|
|
1022
|
-
denied
|
|
1024
|
+
denied,
|
|
1025
|
+
pendingApproved,
|
|
1026
|
+
pendingDenied
|
|
1023
1027
|
};
|
|
1024
1028
|
};
|
|
1025
1029
|
/**
|
|
@@ -1242,6 +1246,26 @@ const resolveToolCalls = (content, toolkit, messages, concurrency) => {
|
|
|
1242
1246
|
// =============================================================================
|
|
1243
1247
|
// Utilities
|
|
1244
1248
|
// =============================================================================
|
|
1249
|
+
// Cache one decoder per model and response kind, keyed by validation mode
|
|
1250
|
+
// and tool names and schema identities in insertion order.
|
|
1251
|
+
const makeResponseDecoder = make => {
|
|
1252
|
+
let cached;
|
|
1253
|
+
return (toolkit, encoded, deferred) => {
|
|
1254
|
+
const key = [encoded, deferred];
|
|
1255
|
+
for (const tool of Object.values(toolkit.tools)) {
|
|
1256
|
+
key.push(tool.name, tool.parametersSchema, tool.successSchema, tool.failureSchema);
|
|
1257
|
+
}
|
|
1258
|
+
if (cached !== undefined && cached.key.length === key.length && cached.key.every((part, i) => part === key[i])) {
|
|
1259
|
+
return cached.decode;
|
|
1260
|
+
}
|
|
1261
|
+
const decode = make(encoded ? makeToolkitWithEncodedParameters(toolkit) : makeToolkitWithOpaqueParameters(toolkit), deferred);
|
|
1262
|
+
cached = {
|
|
1263
|
+
key,
|
|
1264
|
+
decode
|
|
1265
|
+
};
|
|
1266
|
+
return decode;
|
|
1267
|
+
};
|
|
1268
|
+
};
|
|
1245
1269
|
// Stable parameter-mode copies let Response reuse each tool's part schemas.
|
|
1246
1270
|
const parameterModeTools = /*#__PURE__*/new WeakMap();
|
|
1247
1271
|
const withParameterMode = (tool, mode) => {
|
|
@@ -1254,6 +1278,12 @@ const withParameterMode = (tool, mode) => {
|
|
|
1254
1278
|
};
|
|
1255
1279
|
const makeToolkitWithEncodedParameters = toolkit => Toolkit.make(...Object.values(toolkit.tools).map(tool => withParameterMode(tool, "encoded")));
|
|
1256
1280
|
const makeToolkitWithOpaqueParameters = toolkit => Toolkit.make(...Object.values(toolkit.tools).map(tool => withParameterMode(tool, "opaque")));
|
|
1281
|
+
const isToolCallValidationDeferred = options => options.disableToolCallResolution === true && options.toolCallValidation === "deferred";
|
|
1282
|
+
const UndeclaredToolCallPart = /*#__PURE__*/Response.ToolCallPart("", Schema.Unknown).mapFields(fields => ({
|
|
1283
|
+
...fields,
|
|
1284
|
+
name: Schema.String
|
|
1285
|
+
}));
|
|
1286
|
+
const withUndeclaredToolCalls = (partSchema, deferToolCallValidation) => deferToolCallValidation ? Schema.Union([partSchema, UndeclaredToolCallPart]) : partSchema;
|
|
1257
1287
|
// Provider-executed tools bypass Toolkit, so validate their parameters here.
|
|
1258
1288
|
const validateProviderExecutedToolCalls = (toolkit, parts) => Effect.forEach(parts, part => {
|
|
1259
1289
|
if (part.type !== "tool-call" || part.providerExecuted !== true) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LanguageModel.js","names":[],"sources":["../../src/ai/LanguageModel.ts"],"sourcesContent":[null],"mappings":"AAeA,OAAO,KAAK,OAAO,MAAM,eAAe;AACxC,OAAO,KAAK,MAAM,MAAM,cAAc;AACtC,OAAO,KAAK,QAAQ,MAAM,gBAAgB;AAC1C,SAAS,UAAU,EAAE,QAAQ,EAAE,IAAI,QAAQ,gBAAgB;AAE3D,OAAO,KAAK,MAAM,MAAM,cAAc;AACtC,OAAO,KAAK,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAK,KAAK,MAAM,aAAa;AACpC,OAAO,KAAK,MAAM,MAAM,cAAc;AACtC,OAAO,KAAK,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAK,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAK,IAAI,MAAM,YAAY;AAClC,OAAO,KAAK,MAAM,MAAM,cAAc;AAGtC,OAAO,KAAK,OAAO,MAAM,cAAc;AACvC,SAAS,kBAAkB,EAAE,WAAW,QAAQ,kBAAkB;AAClE,OAAO,KAAK,wBAAwB,MAAM,iCAAiC;AAC3E,OAAO,KAAK,MAAM,MAAM,aAAa;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAK,iBAAiB,MAAM,wBAAwB;AAE3D,SAAS,sBAAsB,QAAQ,gBAAgB;AAEvD,OAAO,KAAK,OAAO,MAAM,cAAc;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,OAAO,MAAM,aAAa,gBAAkD,OAAO,CAAC,OAAO,CACzF,yBAAyB,CAC1B;AAWD;;;;;;;AAOA,OAAO,MAAM,MAAM,GAAW,0BAA0B;AA4IxD;;;;;;;;;;;;;;;;;;;;;;AAsBA,OAAO,MAAM,uBAAuB,GAAqB,wBAAwB,CAAC,uBAAuB;AAmHzG;;;;;;;;;;;;;;;;;;;AAmBA,OAAM,MAAO,oBAAoB;EAItB,OAAO;EAEhB,YAAY,OAAoD;IAC9D,IAAI,CAAC,OAAO,GAAG,OAAO;EACxB;EAEA;;;EAGA,IAAI,IAAI;IACN,MAAM,IAAI,GAAkB,EAAE;IAC9B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;MAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;MACtB;IACF;IACA,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;EACtB;EAEA;;;EAGA,IAAI,SAAS;IACX,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC;EACjE;EAEA;;;EAGA,IAAI,aAAa;IACf,MAAM,IAAI,GAAkB,EAAE;IAC9B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;MAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;QAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;MACtB;IACF;IACA,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;EACtD;EAEA;;;EAGA,IAAI,SAAS;IACX,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC;EACjE;EAEA;;;EAGA,IAAI,WAAW;IACb,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC;EACnE;EAEA;;;EAGA,IAAI,YAAY;IACd,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;IACtE,OAAO,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,UAAU,CAAC,MAAM;EAC1E;EAEA;;;EAGA,IAAI,KAAK;IACP,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;IACtE,IAAI,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;MACrC,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC;QACxB,WAAW,EAAE;UACX,QAAQ,EAAE,SAAS;UACnB,KAAK,EAAE,SAAS;UAChB,SAAS,EAAE,SAAS;UACpB,UAAU,EAAE;SACb;QACD,YAAY,EAAE;UACZ,KAAK,EAAE,SAAS;UAChB,IAAI,EAAE,SAAS;UACf,SAAS,EAAE;;OAEd,CAAC;IACJ;IACA,OAAO,UAAU,CAAC,KAAK;EACzB;;AAGF;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAM,MAAO,sBAIX,SAAQ,oBAA2C;EACnD;;;EAGS,KAAK;EAEd,YAAY,KAAQ,EAAE,OAAoD;IACxE,KAAK,CAAC,OAAO,CAAC;IACd,IAAI,CAAC,KAAK,GAAG,KAAK;EACpB;;AAiRF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,OAAO,MAAM,IAAI,gBAuBoB,MAAM,CAAC,UAAU,CAAC,WAAU,MAAM;EACrE,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,IAAI,uBAAuB;EAE3E,MAAM,qBAAqB,GAAG,OAAO,MAAM,CAAC,aAAa,CACvD,sBAAsB,CACvB;EACD,MAAM,kBAAkB,GAAG,MAAM,CAAC,aAAa,CAC7C,sBAAsB,CACvB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,qBAAqB,CAAC,CAAC,CAAC;EAE9D,MAAM,WAAW,GAAG,OAAO,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,IAAI,CAC/D,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,kBAAkB,CAAC,CAAC,CACvD;EAED,MAAM,YAAY,GAIhB,OAA6C,IAM7C,MAAM,CAAC,OAAO,CACZ,4BAA4B,EAC5B;IAAE,IAAI,EAAE;EAAQ,CAAE,EAClB,MAAM,CAAC,UAAU,CACf,WAAU,IAAI;IACZ,MAAM,eAAe,GAAG,OAAO,kBAAkB;IAEjD,MAAM,eAAe,GAA6B;MAChD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;MACnC,KAAK,EAAE,EAAE;MACT,UAAU,EAAE,MAAM;MAClB,cAAc,EAAE;QAAE,IAAI,EAAE;MAAM,CAAE;MAChC,IAAI;MACJ,kBAAkB,EAAE,SAAS;MAC7B,iBAAiB,EAAE;KACpB;IACD,MAAM,OAAO,GAAG,OAAO,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC;IAEhE,oBAAoB,CAClB,eAAe,EACf,OAAc,EACd,eAAe,CAChB;IAED,OAAO,IAAI,oBAAoB,CAAC,OAAO,CAAC;EAC1C,CAAC,EACD,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAG,KAAK,IACnC,MAAM,CAAC,IAAI,CACT,OAAO,CAAC,IAAI,CAAC;IACX,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAK;GACzD,CAAC,CACH,CAAC,EACJ,CAAC,MAAM,EAAE,IAAI,KAAK,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE;IAAE,iBAAiB,EAAE;EAAK,CAAE,CAAC,EACnF,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAChD,CACK;EAEV,MAAM,cAAc,GASlB,OAAuE,IAKrE;IACF,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC;IACpE,OAAO,MAAM,CAAC,OAAO,CACnB,8BAA8B,EAC9B;MACE,IAAI,EAAE,QAAQ;MACd,UAAU,EAAE;QAAE,uBAAuB,EAAE;MAAU;KAClD,EACD,MAAM,CAAC,UAAU,CACf,WAAU,IAAI;MACZ,MAAM,eAAe,GAAG,OAAO,kBAAkB;MAEjD,MAAM,eAAe,GAA6B;QAChD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACnC,KAAK,EAAE,EAAE;QACT,UAAU,EAAE,MAAM;QAClB,cAAc,EAAE;UACd,IAAI,EAAE,MAAM;UACZ,UAAU;UACV,MAAM,EAAE,OAAO,CAAC;SACjB;QACD,IAAI;QACJ,kBAAkB,EAAE,SAAS;QAC7B,iBAAiB,EAAE;OACpB;MAED,MAAM,OAAO,GAAG,OAAO,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC;MAEhE,oBAAoB,CAClB,eAAe,EACf,OAAc,EACd,eAAe,CAChB;MAED,MAAM;QAAE;MAAK,CAAE,GAAG,OAAO,MAAM,CAAC,GAAG,CAAC;QAClC,GAAG,EAAE,MAAM,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC;QAC3C,KAAK,EAAG,KAAK,IACX,OAAO,CAAC,IAAI,CAAC;UACX,MAAM,EAAE,eAAe;UACvB,MAAM,EAAE,gBAAgB;UACxB,MAAM,EAAE,IAAI,OAAO,CAAC,sBAAsB,CAAC;YACzC,WAAW,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK;WACnE;SACF;OACJ,CAAC;MAEF,MAAM,KAAK,GAAG,OAAO,uBAAuB,CAAC,OAAc,EAAE,KAAK,CAAC;MAEnE,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC;IACnD,CAAC,EACD,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAG,KAAK,IACnC,MAAM,CAAC,IAAI,CACT,OAAO,CAAC,IAAI,CAAC;MACX,MAAM,EAAE,eAAe;MACvB,MAAM,EAAE,gBAAgB;MACxB,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAK;KACzD,CAAC,CACH,CAAC,EACJ,CAAC,MAAM,EAAE,IAAI,KAAK,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE;MAAE,iBAAiB,EAAE;IAAK,CAAE,CAAC,EACnF,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAChD,CACK;EACV,CAAC;EAED,MAAM,UAAU,GASZ,MAAM,CAAC,UAAU,CACnB,WAGE,OAA6C;IAC7C,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,cAAc,CAAC,0BAA0B,EAAE;MAAE,IAAI,EAAE;IAAQ,CAAE,CAAC;IAEzF,MAAM,eAAe,GAA6B;MAChD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;MACnC,KAAK,EAAE,EAAE;MACT,UAAU,EAAE,MAAM;MAClB,cAAc,EAAE;QAAE,IAAI,EAAE;MAAM,CAAE;MAChC,IAAI;MACJ,kBAAkB,EAAE,SAAS;MAC7B,iBAAiB,EAAE;KACpB;IAED;IACA,MAAM,MAAM,GAAG,OAAO,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC;IAE7D;IACA,MAAM,eAAe,GAAG,OAAO,kBAAkB;IACjD,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;MAClC,OAAO,MAAM;IACf;IAEA;IACA;IACA,MAAM,OAAO,GAAsC,EAAE;IACrD,OAAO,MAAM,CAAC,IAAI,CAChB,MAAM,CAAC,QAAQ,CAAE,KAAK,IAAI;MACxB,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;MACtB,OAAO,KAAK;IACd,CAAC,CAAC,EACF,MAAM,CAAC,QAAQ,CACb,MAAM,CAAC,IAAI,CAAC,MAAK;MACf,eAAe,CAAC,KAAK,CAAC;QACpB,GAAG,eAAe;QAClB,QAAQ,EAAE;OACX,CAAC;IACJ,CAAC,CAAC,CACH,CACF;EACH,CAAC,EACD,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,CAAE,KAAK,IACpB,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GACvB,OAAO,CAAC,IAAI,CAAC;IACb,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAK;GACzD,CAAC,GACA,KAAK,CACV,EACD,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CACzC;EAER,MAAM,eAAe,GAUjB,MAAM,CAAC,UAAU,CAAC,WAIpB,OAA6C,EAC7C,eAAyC;IAEzC,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,aAAa,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACvG,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,MAAM;IAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,WAAW;IACtD,sBAAsB,CAAC,eAAe,EAAE,UAAU,EAAE,WAAW,CAAC;IAEhE,MAAM,kCAAkC,GAAG,MAAK;MAC9C,MAAM,cAAc,GAAoB;QACtC,GAAG;OACJ;MACD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM;MAC5C,MAAM,eAAe,GAAoB;QACvC,GAAG,cAAc;QACjB,MAAM,EAAE,cAAc;QACtB,iBAAiB,EAAE,SAAS;QAC5B,kBAAkB,EAAE,SAAS;QAC7B,mBAAmB,EAAE;OACtB;MACD,OAAO,cAAc,CAAC,iBAAiB,GACnC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,IAAI,CACxC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,qBAAqB,EAAG,CAAC,IAAK,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAClG,GACC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC;IACzC,CAAC;IAED;IACA,MAAM;MAAE,QAAQ;MAAE;IAAM,CAAE,GAAG,oBAAoB,CAC/C,eAAe,CAAC,MAAM,CAAC,OAAO,EAC9B;MAAE,eAAe,EAAE;IAAI,CAAE,CAC1B;IACD,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;IAEpE;IACA,IAAI,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;MAC1C;MACA,IAAI,mBAAmB,EAAE;QACvB,OAAO,OAAO,OAAO,CAAC,IAAI,CAAC;UACzB,MAAM,EAAE,eAAe;UACvB,MAAM,EAAE,cAAc;UACtB,MAAM,EAAE,IAAI,OAAO,CAAC,oBAAoB,CAAC;YACvC,gBAAgB,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC,CACvC,GAAG,CAAE,MAAM,IAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CACtC,MAAM,CAAC,SAAS,CAAC,cAAc;WACnC;SACF,CAAC;MACJ;MACA,IAAI,OAAO,EAAE;QACX,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;UAC3B,eAAe,CAAC,kBAAkB,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB;UACtE,eAAe,CAAC,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM;QAC3D;MACF;MACA,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CACnC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAC3C;MACD,MAAM,UAAU,GAAG,OAAO,kCAAkC,EAAE;MAC9D,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC;MACtE,IAAI,OAAO,EAAE;QACX,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,mBAAmB,CAAC;QAClF,IAAI,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE;UAC/F,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC;QACxE;MACF;MACA,OAAO,OAAsC;IAC/C;IAEA;IACA,MAAM,OAAO,GAAG,OAAO,cAAc,CAAkB,OAAO,CAAC,OAAO,CAAC;IAEvE;IACA,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;MAC7C;MACA,IAAI,mBAAmB,EAAE;QACvB,OAAO,OAAO,OAAO,CAAC,IAAI,CAAC;UACzB,MAAM,EAAE,eAAe;UACvB,MAAM,EAAE,cAAc;UACtB,MAAM,EAAE,IAAI,OAAO,CAAC,oBAAoB,CAAC;YACvC,gBAAgB,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC,CACvC,GAAG,CAAE,MAAM,IAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CACtC,MAAM,CAAC,SAAS,CAAC,cAAc;WACnC;SACF,CAAC;MACJ;MACA,IAAI,OAAO,EAAE;QACX,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;UAC3B,eAAe,CAAC,kBAAkB,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB;UACtE,eAAe,CAAC,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM;QAC3D;MACF;MACA,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CACnC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAC3C;MACD,MAAM,UAAU,GAAG,OAAO,kCAAkC,EAAE;MAC9D,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC;MACtE,IAAI,OAAO,EAAE;QACX,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,mBAAmB,CAAC;QAClF,IAAI,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE;UAC/F,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC;QACxE;MACF;MACA,OAAO,OAAsC;IAC/C;IAEA;IACA,IAAI,kBAAkB,GAA6D,EAAE;IACrF,IAAI,mBAAmB,EAAE;MACvB,KAAK,MAAM,QAAQ,IAAI,QAAQ,EAAE;QAC/B,IAAI,QAAQ,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;UAC/D,OAAO,OAAO,OAAO,CAAC,IAAI,CAAC;YACzB,MAAM,EAAE,eAAe;YACvB,MAAM,EAAE,cAAc;YACtB,MAAM,EAAE,IAAI,OAAO,CAAC,iBAAiB,CAAC;cACpC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI;cAChC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;aAC1C;WACF,CAAC;QACJ;MACF;MAEA,MAAM,eAAe,GAAG,OAAO,wBAAwB,CACrD,QAAQ,EACR,OAAO,EACP,WAAW,CACZ;MACD,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC;MACjD,kBAAkB,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,aAAa,CAAC;MAE3D,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;QACjC,eAAe,CAAC,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAC3C,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EACjC,GAAG,MAAM,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,OAAO,CACxD,CAAC;MACJ;IACF;IAEA;IACA;IACA;MACE,MAAM;QAAE,QAAQ,EAAE,WAAW;QAAE,MAAM,EAAE;MAAS,CAAE,GAAG,oBAAoB,CACvE,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B;MACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QAClD,eAAe,CAAC,MAAM,GAAG,sBAAsB,CAC7C,eAAe,CAAC,MAAM,EACtB,WAAW,EACX,SAAS,CACV;MACH;IACF;IAEA,MAAM,KAAK,GAAG,OAAO,UAAU,KAAK,QAAQ,IAAI,OAAO,IAAI,UAAU,GACjE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAE,IAAI,IAAK,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GACnF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;IAChC,eAAe,CAAC,KAAK,GAAG,KAAK;IAC7B,eAAe,CAAC,UAAU,GAAG,UAAU;IAEvC,IAAI,OAAO,EAAE;MACX,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;MAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QAC3B,eAAe,CAAC,kBAAkB,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB;QACtE,eAAe,CAAC,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM;MAC3D;IACF;IAEA,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAC9D,OAAO,CAAC,yBAAyB,KAAK,IAAI,GACtC,gCAAgC,CAAC,OAAO,CAAC,GACzC,+BAA+B,CAAC,OAAO,CAAC,CAC7C,CAAC,CAAC;IAEH;IACA;IACA,IAAI,OAAO,CAAC,yBAAyB,KAAK,IAAI,EAAE;MAC9C,MAAM,UAAU,GAAG,OAAO,kCAAkC,EAAE;MAC9D,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC;MACtE,IAAI,OAAO,EAAE;QACX,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,mBAAmB,CAAC;QAClF,IAAI,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE;UAC/F,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC;QACxE;MACF;MACA,OAAO,CAAC,GAAG,kBAAkB,EAAE,GAAG,OAAO,CAAgC;IAC3E;IAEA,MAAM,UAAU,GAAG,OAAO,kCAAkC,EAAE;IAE9D;IACA,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC;IACtE,OAAO,iCAAiC,CAAC,OAAO,EAAE,UAAU,CAAC;IAE7D;IACA;IACA;IACA,MAAM,sBAAsB,GAAG,0BAA0B,CAAC,UAAU,CAAC;IACrE,MAAM,WAAW,GAAG,sBAAsB,KAAK,SAAS,GACpD,UAAU,CACT,MAAM,CAAE,IAAI,IACX,IAAI,CAAC,IAAI,KAAK,WAAW,IACzB,IAAI,CAAC,gBAAgB,KAAK,IAAI,IAC9B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,SAAS,CACvC,CACA,GAAG,CAAE,IAAI,IAAK,yBAAyB,CAAC,IAAI,EAAE,sBAAsB,CAAgC,CAAC,GACtG,OAAO,gBAAgB,CACvB,UAAU,EACV,OAAO,EACP,eAAe,CAAC,MAAM,CAAC,OAAO,EAC9B,WAAW,CACZ,CAAC,IAAI,CACJ,MAAM,CAAC,MAAM,CACV,MAAM,IACL,MAAM,CAAC,IAAI,KAAK,uBAAuB,IACvC,MAAM,CAAC,WAAW,KAAK,KAAK,CAC/B,EACD,MAAM,CAAC,UAAU,CAClB;IAEH,IAAI,OAAO,EAAE;MACX,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAE,IAAI,IAAK,IAAI,CAAC,IAAI,KAAK,mBAAmB,CAAC;MAClF,IAAI,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE;QAC/F,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC;MACxE;IACF;IAEA;IACA,OAAO,CAAC,GAAG,kBAAkB,EAAE,GAAG,OAAO,EAAE,GAAG,WAAW,CAAgC;EAC3F,CAAC,CAAC;EAEF,MAAM,aAAa,GAkBf,MAAM,CAAC,UAAU,CAAC,WAIpB,OAA6C,EAC7C,eAAyC;IAEzC,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,aAAa,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACvG,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,MAAM;IAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,WAAW;IACtD,sBAAsB,CAAC,eAAe,EAAE,UAAU,EAAE,WAAW,CAAC;IAEhE,MAAM,gCAAgC,GAAG,MAAK;MAC5C,MAAM,cAAc,GAAoB;QACtC,GAAG;OACJ;MACD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM;MAC5C,MAAM,eAAe,GAAoB;QACvC,GAAG,cAAc;QACjB,MAAM,EAAE,cAAc;QACtB,iBAAiB,EAAE,SAAS;QAC5B,kBAAkB,EAAE,SAAS;QAC7B,mBAAmB,EAAE;OACtB;MACD;MACA;MACA,IAAI,OAAO,GAAG,KAAK;MACnB,OAAO,cAAc,CAAC,iBAAiB,GACnC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,IAAI,CACtC,MAAM,CAAC,GAAG,CAAE,IAAI,IACd,MAAM,CAAC,IAAI,CAAC,MAAK;QACf,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,EAAE,OAAO,GAAG,IAAI;MACvD,CAAC,CAAC,CACH,EACD,MAAM,CAAC,WAAW,CAChB,SAAS,EACT,qBAAqB,EACrB,CAAC,CAAC,EAAE,KAAK,KAAK,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,CAChF,CACF,GACC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC;IACvC,CAAC;IAED;IACA,MAAM;MAAE,QAAQ,EAAE,eAAe;MAAE,MAAM,EAAE;IAAa,CAAE,GAAG,oBAAoB,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE;MAChH,eAAe,EAAE;KAClB,CAAC;IACF,MAAM,mBAAmB,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;IAElF;IACA,IAAI,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;MAC1C;MACA,IAAI,mBAAmB,EAAE;QACvB,OAAO,OAAO,OAAO,CAAC,IAAI,CAAC;UACzB,MAAM,EAAE,eAAe;UACvB,MAAM,EAAE,YAAY;UACpB,MAAM,EAAE,IAAI,OAAO,CAAC,oBAAoB,CAAC;YACvC,gBAAgB,EAAE,CAAC,GAAG,eAAe,EAAE,GAAG,aAAa,CAAC,CACrD,GAAG,CAAE,CAAC,IAAK,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAC5B,MAAM,CAAC,SAAS,CAAC,cAAc;WACnC;SACF,CAAC;MACJ;MACA,IAAI,OAAO,EAAE;QACX,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;UAC3B,eAAe,CAAC,kBAAkB,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB;UACtE,eAAe,CAAC,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM;QAC3D;MACF;MACA,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;MACvE,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;MAC/C,OAAO,IAAI,CACT,gCAAgC,EAAE,EAClC,MAAM,CAAC,cAAc,CAAE,KAAK,IAC1B,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CACrB,OAAO,GACL,MAAM,CAAC,GAAG,CAAE,YAAY,IAAI;QAC1B,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;UAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YAC1E,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;UAC5D;QACF;QACA,OAAO,MAAM,CAAC,IAAI;MACpB,CAAC,CAAC,GACF,QAAQ,CACX,CACF,CAKF;IACH;IAEA;IACA,MAAM,OAAO,GAAG,OAAO,cAAc,CAAkB,OAAO,CAAC,OAAO,CAAC;IAEvE;IACA,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;MAC7C;MACA,IAAI,mBAAmB,EAAE;QACvB,OAAO,OAAO,OAAO,CAAC,IAAI,CAAC;UACzB,MAAM,EAAE,eAAe;UACvB,MAAM,EAAE,YAAY;UACpB,MAAM,EAAE,IAAI,OAAO,CAAC,oBAAoB,CAAC;YACvC,gBAAgB,EAAE,CAAC,GAAG,eAAe,EAAE,GAAG,aAAa,CAAC,CACrD,GAAG,CAAE,CAAC,IAAK,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAC5B,MAAM,CAAC,SAAS,CAAC,cAAc;WACnC;SACF,CAAC;MACJ;MACA,IAAI,OAAO,EAAE;QACX,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;UAC3B,eAAe,CAAC,kBAAkB,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB;UACtE,eAAe,CAAC,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM;QAC3D;MACF;MACA,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;MACvE,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;MAC/C,OAAO,IAAI,CACT,gCAAgC,EAAE,EAClC,MAAM,CAAC,cAAc,CAAE,KAAK,IAC1B,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CACrB,OAAO,GACL,MAAM,CAAC,GAAG,CAAE,YAAY,IAAI;QAC1B,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;UAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,IAAI,IAAI,CAAC,EAAE,EAAE;YAChD,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;UAC5D;QACF;QACA,OAAO,MAAM,CAAC,IAAI;MACpB,CAAC,CAAC,GACF,QAAQ,CACX,CACF,CAKF;IACH;IAEA;IACA,IAAI,sBAAsB,GAAsC,EAAE;IAElE,IAAI,mBAAmB,EAAE;MACvB,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE;QACtC,IAAI,QAAQ,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;UAC/D,OAAO,OAAO,OAAO,CAAC,IAAI,CAAC;YACzB,MAAM,EAAE,eAAe;YACvB,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,IAAI,OAAO,CAAC,iBAAiB,CAAC;cACpC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI;cAChC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;aAC1C;WACF,CAAC;QACJ;MACF;MAEA,MAAM,eAAe,GAAG,OAAO,wBAAwB,CACrD,eAAe,EACf,OAAO,EACP,WAAW,CACZ;MACD,MAAM,aAAa,GAAG,mBAAmB,CAAC,aAAa,CAAC;MACxD,MAAM,kBAAkB,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,aAAa,CAAC;MAEjE,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;QACjC,eAAe,CAAC,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAC3C,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EACjC,GAAG,MAAM,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,OAAO,CACxD,CAAC;MACJ;MAEA;MACA;MACA;MACA;MACA,KAAK,MAAM,CAAC,IAAI,kBAAkB,EAAE;QAClC,sBAAsB,CAAC,IAAI,CACzB,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE;UAC/B,EAAE,EAAE,CAAC,CAAC,EAAE;UACR,IAAI,EAAE,CAAC,CAAC,IAAI;UACZ,gBAAgB,EAAE,KAAK;UACvB,WAAW,EAAE,KAAK;UAClB,MAAM,EAAE,CAAC,CAAC,aAAa;UACvB,aAAa,EAAE,CAAC,CAAC,aAAa;UAC9B,SAAS,EAAE,CAAC,CAAC;SACd,CAA+B,CACjC;MACH;IACF;IAEA;IACA;IACA,MAAM;MAAE,QAAQ,EAAE,WAAW;MAAE,MAAM,EAAE;IAAS,CAAE,GAAG,oBAAoB,CACvE,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;MAClD,eAAe,CAAC,MAAM,GAAG,sBAAsB,CAC7C,eAAe,CAAC,MAAM,EACtB,WAAW,EACX,SAAS,CACV;IACH;IAEA,MAAM,KAAK,GAAG,OAAO,UAAU,KAAK,QAAQ,IAAI,OAAO,IAAI,UAAU,GACjE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAE,IAAI,IAAK,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GACnF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;IAChC,eAAe,CAAC,KAAK,GAAG,KAAK;IAC7B,eAAe,CAAC,UAAU,GAAG,UAAU;IAEvC,IAAI,OAAO,EAAE;MACX,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;MAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QAC3B,eAAe,CAAC,kBAAkB,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB;QACtE,eAAe,CAAC,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM;MAC3D;IACF;IAEA,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAC7D,OAAO,CAAC,yBAAyB,KAAK,IAAI,GACtC,gCAAgC,CAAC,OAAO,CAAC,GACzC,+BAA+B,CAAC,OAAO,CAAC,CAC7C,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC;IAEvD;IACA;IACA,IAAI,OAAO,CAAC,yBAAyB,KAAK,IAAI,EAAE;MAC9C,OAAO,gCAAgC,EAAE,CAAC,IAAI,CAC5C,MAAM,CAAC,cAAc,CAAE,KAAK,IAC1B,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CACrB,OAAO,GACL,MAAM,CAAC,GAAG,CAAE,YAAY,IAAI;QAC1B,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;UAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YAC1E,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;UAC5D;QACF;QACA,OAAO,MAAM,CAAC,IAAI;MACpB,CAAC,CAAC,GACF,QAAQ,CACX,CACF,CAKF;IACH;IAEA;IACA,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,EAK5B;IACH,MAAM,mBAAmB,GAAsC,EAAE;IAEjE;IACA;IACA;IACA,IAAI,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE;MACrC,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,sBAAsB,CAAC;IACtD;IAEA;IACA,MAAM,cAAc,GAAG,OAAO,QAAQ,CAAC,IAAI,EAAyB;IACpE,MAAM,iBAAiB,GAAG,WAAW,KAAK,WAAW,GACjD,SAAS,GACT,OAAO,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;IACtC;IACA;IACA,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB;IAClD;IACA;IACA;IACA;IACA;IACA,MAAM,iBAAiB,GAAwC,EAAE;IAEjE;IACA,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,WAAU,IAAkC;MACnF,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;MACrC,IAAI,CAAC,IAAI,EAAE;MAEX,MAAM,aAAa,GAAG,OAAO,gBAAgB,CAC3C,IAAI,EACJ,IAAI,EACJ,eAAe,CAAC,MAAM,CAAC,OAAO,CAC/B;MAED,IAAI,aAAa,EAAE;QACjB,MAAM,KAAK,GAAG,OAAO,WAAW;QAChC,MAAM,UAAU,GAAG,OAAO,KAAK,CAAC,UAAU,EAAE;QAC5C,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,EAAE;UAC9D,UAAU;UACV,UAAU,EAAE,IAAI,CAAC;SAClB,CAA+B;QAChC,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC;QACtC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC;MACF;MAEA,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAa,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAChE,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,UAAU,CAAE,MAAM,IAAI;QAC3B,MAAM,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE;UACtD,EAAE,EAAE,IAAI,CAAC,EAAE;UACX,IAAI,EAAE,IAAI,CAAC,IAAI;UACf,gBAAgB,EAAE,KAAK;UACvB,MAAM,EAAE,MAAM,CAAC,MAAM;UACrB,aAAa,EAAE,MAAM,CAAC,aAAa;UACnC,SAAS,EAAE,MAAM,CAAC,SAAS;UAC3B,WAAW,EAAE,MAAM,CAAC;SACrB,CAA+B;QAChC,OAAO,MAAM,CAAC,IAAI,CAAC,MAAK;UACtB,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC;UACxC,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,EAAE;YAC/B,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;UAClC;QACF,CAAC,CAAC;MACJ,CAAC,CAAC,CACH;IACH,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAK;MAChD,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,OAAO,MAAM,CAAC,IAAI;MACtD,OAAO,MAAM,CAAC,OAAO,CACnB,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAC1B,IAAI,IAAI;QACP,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC;QACnC,OAAO,QAAQ,CAAC,GAAG,CACjB,cAAc,EACd,iBAAiB,GAAG,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,MAAM,CAClE;MACH,CAAC,EACD;QAAE,OAAO,EAAE;MAAI,CAAE,CAClB;IACH,CAAC,CAAC;IAEF,OAAO,gCAAgC,EAAE,CAAC,IAAI,CAC5C,MAAM,CAAC,eAAe,CACpB,MAAM,CAAC,UAAU,CAAC,WAAU,KAAK;MAC/B,MAAM,KAAK,GAAI,OAAO,WAAW,CAAC,KAAK,CAA+C;MACtF,OAAO,iCAAiC,CAAC,OAAO,EAAE,KAAK,CAAC;MACxD,IAAI,OAAO,EAAE;QACX,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;UACxB,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,IAAI,IAAI,CAAC,EAAE,EAAE;YAChD,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;UAC5D;QACF;MACF;MACA;MACA;MACA,MAAM,cAAc,GAAsC,EAAE;MAC5D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;UAC1B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;QAChC,CAAC,MAAM;UACL,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3B;MACF;MACA,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;QAC7B,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;MAC9C;MACA;MACA;MACA;MACA;MACA;MACA,IAAI,0BAA0B,CAAC,mBAAmB,CAAC,KAAK,SAAS,EAAE;QACjE,OAAO,qBAAqB;MAC9B;MACA;MACA;MACA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE;UAC/D,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;YAC1C,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC;UAC1C;UACA,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9B;MACF;IACF,CAAC,CAAC,CACH;IACD;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAM,CAAC,OAAO,CACZ,MAAM,CAAC,OAAO,CAAC,MAAK;MAClB,MAAM,sBAAsB,GAAG,0BAA0B,CAAC,mBAAmB,CAAC;MAC9E,IAAI,sBAAsB,KAAK,SAAS,EAAE;QACxC,OAAO,qBAAqB,CAAC,IAAI,CAC/B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAC7B,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,EAC7B,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,CACpC,CAAC,CACH;MACH;MACA,OAAO,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,CACxC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAC5B,KAAK,CAAC,QAAQ,CACZ,KAAK,EACL,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,KACtC,yBAAyB,CAAC;QAAE,EAAE;QAAE;MAAI,CAAE,EAAE,sBAAsB,CAA+B,CAAC,CACjG,CACF,CAAC,CACH;IACH,CAAC,CAAC,CACH,EACD,MAAM,CAAC,OAAO,CACZ,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAC3C;IACD;IACA,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAChC,MAAM,CAAC,QAAQ,CAAE,KAAK,IAAK,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EACzD,MAAM,CAAC,UAAU,CAClB;IAED,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;EAChC,CAAC,CAAQ;EAET,OAAO,aAAa,CAAC,EAAE,CAAC;IACtB,CAAC,MAAM,GAAG,MAAM;IAChB,+BAA+B,EAAE,MAAM,CAAC,+BAA+B;IACvE,YAAY,EAAE,YAA6C;IAC3D,cAAc,EAAE,cAAiD;IACjE,UAAU,EAAE;GACb,CAAC;AACJ,CAAC,CAAC;AAEF;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,OAAO,MAAM,YAAY,GAkCpB,OAAiC,IAKpC,MAAM,CAAC,OAAO,CACZ,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAC5B,KAAK,IAAK,KAAK,CAAC,YAAY,CAAC,OAAc,CAAC,CAC9C;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CA,OAAO,MAAM,cAAc,GAQzB,OAAuF,IAUvF,MAAM,CAAC,OAAO,CACZ,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAC5B,KAAK,IAAK,KAAK,CAAC,cAAc,CAAC,OAAc,CAAC,CACzC;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,OAAO,MAAM,UAAU,GAkClB,OAAiC,IAKpC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CACtB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAC5B,KAAK,IAAK,KAAK,CAAC,UAAU,CAAC,OAAc,CAAC,CAC5C,CAAQ;AAkBX,MAAM,oBAAoB,GAAG,CAC3B,QAAuC,EACvC,OAAqC,KAInC;EACF,MAAM,QAAQ,GAAG,IAAI,GAAG,EAGrB;EACH,MAAM,SAAS,GAA2D,EAAE;EAC5E,MAAM,aAAa,GAAG,IAAI,GAAG,EAA+B;EAC5D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU;EAEvC;EACA,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;IAC9B,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE;MAChC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE;QAClC,IAAI,IAAI,CAAC,IAAI,KAAK,uBAAuB,EAAE;UACzC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE;YAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC;WAClB,CAAC;QACJ;QACA,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;UAC7B,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;QAClC;MACF;IACF;IACA,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;MAC3B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE;QAClC,IAAI,IAAI,CAAC,IAAI,KAAK,wBAAwB,EAAE;UAC1C,SAAS,CAAC,IAAI,CAAC;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC;WACd,CAAC;QACJ;QACA,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE;UAC/B,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B;MACF;IACF;EACF;EAEA,MAAM,QAAQ,GAA0B,EAAE;EAC1C,MAAM,MAAM,GAA0B,EAAE;EAExC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;IAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;IACjD,IAAI,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;MACrC;MACA,IAAI,OAAO,EAAE,eAAe,IAAI,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QACrE;MACF;MAEA,MAAM,MAAM,GAAmB;QAC7B,GAAG,QAAQ;QACX,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU;OAC/C;MAED,IAAI,QAAQ,CAAC,QAAQ,EAAE;QACrB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;MACvB,CAAC,MAAM;QACL,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;MACrB;IACF;EACF;EAEA,OAAO;IAAE,QAAQ;IAAE;EAAM,CAAE;AAC7B,CAAC;AAED;;;;;;;;;AASA,MAAM,sBAAsB,GAAG,CAC7B,MAAqB,EACrB,QAAuC,EACvC,MAAqC,KACpB;EACjB,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU;EAC7C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC;EAC/D,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC;EAE7D,MAAM,eAAe,GAA0B,EAAE;EAEjD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE;IACpC,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE;MAChC,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAC3C,IAAI,IACH,IAAI,CAAC,IAAI,KAAK,uBAAuB,IACrC,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAC5C;MACD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9B,eAAe,CAAC,IAAI,CAClB,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE;UAC9B,OAAO,EAAE,eAAe;UACxB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC,CACH;MACH;IACF,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;MAClC,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAC3C,IAAI,IACH,IAAI,CAAC,IAAI,KAAK,wBAAwB,IACtC,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAC5C;MACD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9B,eAAe,CAAC,IAAI,CAClB,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE;UACzB,OAAO,EAAE,eAAe;UACxB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC,CACH;MACH;IACF,CAAC,MAAM;MACL,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B;EACF;EAEA,OAAO,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC;AAC7C,CAAC;AAED,MAAM,gBAAgB,gBAAG,MAAM,CAAC,UAAU,CAAC,WACzC,IAAO,EACP,QAAsC,EACtC,QAAuC;EAEvC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;IAC7C,OAAO,KAAK;EACd;EAEA,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,UAAU,EAAE;IAC5C,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CACrE,QAAQ,CAAC,MAAM,CACT;IAER,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;MACxC,UAAU,EAAE,QAAQ,CAAC,EAAE;MACvB;KACD,CAAC;IAEF,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,OAAO,MAAM,GAAG,MAAM;EACzD;EAEA,OAAO,IAAI,CAAC,aAAa;AAC3B,CAAC,eAAE,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AAEpC,MAAM,wBAAwB,GAAG,CAC/B,SAAwC,EACxC,OAAmC,EACnC,WAAwB,KAKtB;EACF,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,WAAU,QAAwB;IACtE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ;IAElC,IAAI,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;MACnC,OAAO,OAAO,MAAM,CAAC,GAAG,CAAC,sCAAsC,CAAC;IAClE;IAEA,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;IAEzC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;MAC/B,OAAO,OAAO,OAAO,CAAC,IAAI,CAAC;QACzB,MAAM,EAAE,eAAe;QACvB,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,IAAI,OAAO,CAAC,iBAAiB,CAAC;UACpC,QAAQ,EAAE,QAAQ,CAAC,IAAI;UACvB,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;SAC1C;OACF,CAAC;IACJ;IAEA,MAAM,YAAY,GAAG,OAAO,OAAO,CAAC,MAAM,CACxC,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,MAAa,EACtB,QAAQ,CAAC,UAAU,CACpB;IAED,MAAM,cAAc,GAAG,OAAO,YAAY,CAAC,IAAI,CAC7C,MAAM,CAAC,MAAM,CAAE,MAAM,IAAK,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC,EACvD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EACvB,MAAM,CAAC,OAAO,CACZ,MAAM,CAAC,KAAK,CAAC;MACX,MAAM,EAAE,MAAM,MAAM,CAAC,GAAG,CAAC,6CAA6C,CAAC;MACvE,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,CACH,CACF;IAED,OAAO,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE;MACtC,EAAE,EAAE,QAAQ,CAAC,UAAU;MACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;MACnB,MAAM,EAAE,cAAc,CAAC,MAAM;MAC7B,aAAa,EAAE,cAAc,CAAC,aAAa;MAC3C,SAAS,EAAE,cAAc,CAAC,SAAS;MACnC,WAAW,EAAE,cAAc,CAAC,WAAW;MACvC,gBAAgB,EAAE;KACnB,CAAC;EACJ,CAAC,CAAC;EAEF,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE;IAC5C;GACD,CAAC;AACJ,CAAC;AAED,MAAM,mBAAmB,GACvB,OAAsC,IAC8B;EACpE,MAAM,OAAO,GAA6D,EAAE;EAC5E,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;IAC5B,IAAI,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;MAC7C,OAAO,CAAC,IAAI,CACV,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE;QAC/B,EAAE,EAAE,MAAM,CAAC,UAAU;QACrB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC1B,SAAS,EAAE,IAAI;QACf,MAAM,EAAE;UAAE,IAAI,EAAE,kBAAkB;UAAE,MAAM,EAAE,MAAM,CAAC;QAAM,CAAE;QAC3D,aAAa,EAAE;UAAE,IAAI,EAAE,kBAAkB;UAAE,MAAM,EAAE,MAAM,CAAC;QAAM,CAAE;QAClE,WAAW,EAAE,KAAK;QAClB,gBAAgB,EAAE;OACnB,CAAC,CACH;IACH;EACF;EACA,OAAO,OAAO;AAChB,CAAC;AAED;AACA;AACA;AAEA;AACA;AACA;AACA,MAAM,qBAAqB,GAAyC,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC;AAEnG,MAAM,0BAA0B,GAC9B,OAA4E,IACtD;EACtB,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;IAC1B,IACE,IAAI,CAAC,IAAI,KAAK,QAAQ,IACtB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAA+B,CAAC,EACrE;MACA,OAAO,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,SAAS;IAClE;EACF;EACA,OAAO,SAAS;AAClB,CAAC;AAED;AACA;AACA;AACA;AACA,MAAM,yBAAyB,GAAG,CAChC,QAAwD,EACxD,YAAoB,KAClB;EACF,MAAM,MAAM,GAAG;IACb,IAAI,EAAE,uBAAuB;IAC7B,MAAM,EAAE,kFAAkF,YAAY;GACvG;EACD,OAAO,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE;IACtC,EAAE,EAAE,QAAQ,CAAC,EAAE;IACf,IAAI,EAAE,QAAQ,CAAC,IAAI;IACnB,gBAAgB,EAAE,KAAK;IACvB,WAAW,EAAE,KAAK;IAClB,MAAM;IACN,aAAa,EAAE,MAAM;IACrB,SAAS,EAAE;GACZ,CAAC;AACJ,CAAC;AAUD,MAAM,gBAAgB,GAAG,CACvB,OAAgD,EAChD,OAAmC,EACnC,QAAuC,EACvC,WAAwB,KAKtB;EACF,MAAM,SAAS,GAAwC,EAAE;EAEzD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE;IAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;MAC7B,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE;QAClC;MACF;MACA,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;IACtB;EACF;EAEA,MAAM;IAAE,QAAQ;IAAE;EAAM,CAAE,GAAG,oBAAoB,CAAC,QAAQ,CAAC;EAC3D,MAAM,mBAAmB,GAAG,IAAI,GAAG,CACjC,QAAQ,CAAC,GAAG,CAAE,QAAQ,IAAK,QAAQ,CAAC,UAAU,CAAC,CAChD;EACD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAChC,MAAM,CAAC,GAAG,CAAE,MAAM,IAAK,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CACpD;EAED,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAE,QAAQ,IACrC,MAAM,CAAC,GAAG,CAAC,aAAS;IAClB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;IACzC,IAAI,CAAC,IAAI,EAAE;MACT,OAAO,MAAM,CAAC,KAAK;IACrB;IAEA,IAAI,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;MACvC,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAE;MACnD,OAAO,MAAM,CAAC,OAAO,CACnB,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE;QAC/B,EAAE,EAAE,QAAQ,CAAC,EAAE;QACf,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,gBAAgB,EAAE,KAAK;QACvB,SAAS,EAAE,IAAI;QACf,MAAM,EAAE;UAAE,IAAI,EAAE,kBAAkB;UAAE,MAAM,EAAE,MAAM,CAAC;QAAM,CAAE;QAC3D,aAAa,EAAE;UAAE,IAAI,EAAE,kBAAkB;UAAE,MAAM,EAAE,MAAM,CAAC;QAAM,CAAE;QAClE,WAAW,EAAE;OACd,CAAgC,CAClC;IACH;IAEA,IAAI,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;MACxC,OAAO,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAC5E,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,GAAG,CACP,MAAM,IACL,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE;QAC/B,EAAE,EAAE,QAAQ,CAAC,EAAE;QACf,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,gBAAgB,EAAE,KAAK;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,WAAW,EAAE,MAAM,CAAC;OACrB,CAAgC,CACpC,CACF;IACH;IAEA,MAAM,aAAa,GAAG,OAAO,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC;IACvE,IAAI,aAAa,EAAE;MACjB,MAAM,SAAS,GAAG,OAAO,WAAW;MACpC,MAAM,UAAU,GAAG,OAAO,SAAS,CAAC,UAAU,EAAE;MAChD,OAAO,MAAM,CAAC,OAAO,CACnB,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,EAAE;QACzC,UAAU;QACV,UAAU,EAAE,QAAQ,CAAC;OACtB,CAAgC,CAClC;IACH;IAEA,OAAO,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAC5E,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,GAAG,CACP,MAAM,IACL,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE;MAC/B,EAAE,EAAE,QAAQ,CAAC,EAAE;MACf,IAAI,EAAE,QAAQ,CAAC,IAAI;MACnB,gBAAgB,EAAE,KAAK;MACvB,MAAM,EAAE,MAAM,CAAC,MAAM;MACrB,aAAa,EAAE,MAAM,CAAC,aAAa;MACnC,SAAS,EAAE,MAAM,CAAC,SAAS;MAC3B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAgC,CACpC,CACF;EACH,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CACvB;EAED,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;IAAE;EAAW,CAAE,CAAC;AAClD,CAAC;AAED;AACA;AACA;AAEA;AACA,MAAM,kBAAkB,gBAAG,IAAI,OAAO,EAAuD;AAE7F,MAAM,iBAAiB,GAAG,CAAC,IAAc,EAAE,IAA0B,KAAc;EACjF,IAAI,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC;EACxC,IAAI,KAAK,KAAK,SAAS,EAAE;IACvB,KAAK,GAAG,EAAE;IACV,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;EACrC;EACA,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,aAAa,CACvC,IAAI,KAAK,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC,OAAO,CAC9E;AACH,CAAC;AAED,MAAM,gCAAgC,GACpC,OAAmC,IAEnC,OAAO,CAAC,IAAI,CACV,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAE,IAAI,IAAK,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAClF;AAEH,MAAM,+BAA+B,GACnC,OAAmC,IAEnC,OAAO,CAAC,IAAI,CACV,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAE,IAAI,IAAK,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CACjF;AAEH;AACA,MAAM,iCAAiC,GAAG,CACxC,OAAmC,EACnC,KAAuE,KAEvE,MAAM,CAAC,OAAO,CACZ,KAAK,EACJ,IAAI,IAAI;EACP,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,EAAE;IAC/D,OAAO,MAAM,CAAC,IAAI;EACpB;EACA,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;EACrC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;IAC1E,OAAO,MAAM,CAAC,IAAI;EACpB;EACA,OAAO,MAAM,CAAC,MAAM,CAClB,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CACpB;AAC9C,CAAC,EACD;EAAE,OAAO,EAAE;AAAI,CAAE,CAClB;AAEH,MAAM,cAAc,GAClB,OAAkC,IAEjC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GACrB,OAAO,GACP,MAAM,CAAC,OAAO,CAAC,OAAgD,CAAS;AAE9E,MAAM,sBAAsB,GAAG,CAC7B;EAAE,cAAc;EAAE;AAAI,CAAmB,EACzC,UAA2B,EAC3B,WAAwB,KAChB;EACR,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,cAAc,CAAC,IAAI,CAAC;EACzD,IAAI,CAAC,SAAS,CAAC,uBAAuB,EAAE,OAAO,UAAU,KAAK,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;EACjH,IAAI,CAAC,SAAS,CAAC,uBAAuB,EAAE,WAAW,CAAC;AACtD,CAAC;AAED;;;AAGA,OAAO,MAAM,aAAa,GAAG,CAC3B,UAA8B,EAC9B,MAA8B,KACpB;EACV,IAAI,SAAS,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE;IACxC,OAAO,UAAU;EACnB;EACA,IAAI,YAAY,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE;IACnE,OAAO,MAAM,CAAC,UAAU;EAC1B;EACA,MAAM,UAAU,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC;EAC1D,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;IAClC,OAAO,UAAU;EACnB;EACA,OAAO,gBAAgB;AACzB,CAAC;AAED,MAAM,uBAAuB,gBAAG,MAAM,CAAC,UAAU,CAAC,WAEhD,QAA+C,EAAE,MAA8B;EAC/E,MAAM,KAAK,GAAkB,EAAE;EAC/B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;IAC3B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;MACxB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACvB;EACF;EAEA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;EAE3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;IACrB,OAAO,OAAO,OAAO,CAAC,IAAI,CAAC;MACzB,MAAM,EAAE,eAAe;MACvB,MAAM,EAAE,gBAAgB;MACxB,MAAM,EAAE,IAAI,OAAO,CAAC,qBAAqB,CAAC;QACxC,WAAW,EAAE,6BAA6B;QAC1C,YAAY,EAAE;OACf;KACF,CAAC;EACJ;EAEA,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;EACjE,OAAO,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAG,KAAK,IAChD,OAAO,CAAC,IAAI,CAAC;IACX,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,OAAO,CAAC,qBAAqB,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI;GAClE,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAC3B,WAA2C,EAC3C,QAA+C,EAC/C,OAAwB,KAChB;EACR,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;IAC9B,WAAW,CAAC,KAAK,CAAC;MAAE,GAAG,OAAO;MAAE,QAAQ,EAAE;IAAe,CAAE,CAAC;EAC9D;AACF,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"LanguageModel.js","names":[],"sources":["../../src/ai/LanguageModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/ai/McpServer.d.ts
CHANGED
|
@@ -289,11 +289,20 @@ export declare const layerStdio: (options: {
|
|
|
289
289
|
* Method not found. Request-scoped progress and logs, legacy protocols, and
|
|
290
290
|
* default subscription behavior are unchanged.
|
|
291
291
|
*
|
|
292
|
+
* The layer runs one long-lived MCP server that every POST shares. For
|
|
293
|
+
* serverless hosts where execution must belong to each request, use
|
|
294
|
+
* `layerHttpRequestScoped` instead.
|
|
295
|
+
*
|
|
292
296
|
* `layerHttp` always implements the single-endpoint Streamable HTTP topology.
|
|
293
297
|
* Using `v2024_11_05` here is a custom compatibility transport for that
|
|
294
298
|
* revision's schema. It does not implement the historical two-endpoint
|
|
295
299
|
* HTTP+SSE transport, GET SSE, event resumption, or session expiry.
|
|
296
300
|
*
|
|
301
|
+
* **Gotchas**
|
|
302
|
+
*
|
|
303
|
+
* This layer starts a scoped server fiber. For sharing it across Cloudflare
|
|
304
|
+
* Workers requests, see `HttpRouter.toWebHandler` for setup and limitations.
|
|
305
|
+
*
|
|
297
306
|
* @see {@link layerStdio} for exposing the server over stdio
|
|
298
307
|
* @see {@link layer} for the base MCP server layer without a transport protocol
|
|
299
308
|
*
|
|
@@ -315,6 +324,52 @@ export declare const layerHttp: (options: {
|
|
|
315
324
|
readonly allowSessionTermination?: boolean | undefined;
|
|
316
325
|
readonly allowSubscriptions?: boolean | undefined;
|
|
317
326
|
}) => Layer.Layer<McpServer | McpServerClient, Cause.IllegalArgumentError, HttpRouter.HttpRouter>;
|
|
327
|
+
/**
|
|
328
|
+
* Registers a request-scoped Streamable HTTP MCP endpoint at `options.path`.
|
|
329
|
+
*
|
|
330
|
+
* **When to use**
|
|
331
|
+
*
|
|
332
|
+
* Use when serving on serverless hosts such as Cloudflare Workers, where execution must
|
|
333
|
+
* belong to the HTTP request rather than a shared long-lived server.
|
|
334
|
+
*
|
|
335
|
+
* **Details**
|
|
336
|
+
*
|
|
337
|
+
* Each POST runs its own server in the request scope, with no background
|
|
338
|
+
* fiber, timer, or queue consumer left after the response body completes.
|
|
339
|
+
* Only sessionless protocols such as `v2026_07_28` are accepted. Tools,
|
|
340
|
+
* resources, prompts, completions, multi round-trip input requests, and the
|
|
341
|
+
* request's own progress and log notifications are supported. Legacy reverse
|
|
342
|
+
* requests through `McpServer.elicit` are not available.
|
|
343
|
+
*
|
|
344
|
+
* Discovery advertises `listChanged: false`, `subscriptions/listen` returns
|
|
345
|
+
* Method not found, and DELETE returns `405`. Request-scoped clients receive
|
|
346
|
+
* no broadcast notifications such as list changes. Those still reach clients
|
|
347
|
+
* of a `layerHttp` endpoint sharing the same `McpServer`, and are dropped when
|
|
348
|
+
* no such endpoint exists. Use `layerHttp` on a long-lived host for sessions,
|
|
349
|
+
* subscriptions, or legacy reverse requests.
|
|
350
|
+
*
|
|
351
|
+
* HTTP admission, origin checks, and JSON-RPC errors follow `layerHttp`.
|
|
352
|
+
* Configuring a sessionful protocol through an untyped caller fails layer
|
|
353
|
+
* construction with `IllegalArgumentError`.
|
|
354
|
+
*
|
|
355
|
+
* @see {@link layerHttp} for the long-lived HTTP transport and HTTP admission policy
|
|
356
|
+
*
|
|
357
|
+
* @stability unstable
|
|
358
|
+
* @category layers
|
|
359
|
+
* @since 4.0.0
|
|
360
|
+
*/
|
|
361
|
+
export declare const layerHttpRequestScoped: (options: {
|
|
362
|
+
readonly name: string;
|
|
363
|
+
readonly version: string;
|
|
364
|
+
readonly instructions?: string | undefined;
|
|
365
|
+
readonly description?: string | undefined;
|
|
366
|
+
readonly websiteUrl?: string | undefined;
|
|
367
|
+
readonly icons?: ReadonlyArray<McpSchema.Icon> | undefined;
|
|
368
|
+
readonly path: HttpRouter.PathInput;
|
|
369
|
+
readonly protocols: Arr.NonEmptyReadonlyArray<McpProtocol.ProtocolAdapter<McpProtocol.ProtocolVersion, McpProtocol.StatelessRuntimeDescriptor>>;
|
|
370
|
+
readonly extensions?: ServerExtensions | undefined;
|
|
371
|
+
readonly allowedOrigins?: ReadonlyArray<string> | undefined;
|
|
372
|
+
}) => Layer.Layer<McpServer | McpServerClient, Cause.IllegalArgumentError, HttpRouter.HttpRouter>;
|
|
318
373
|
/**
|
|
319
374
|
* Registers a `Toolkit` with the `McpServer`.
|
|
320
375
|
*
|
|
@@ -372,12 +427,6 @@ export type ResourceCompletions<Schemas extends ReadonlyArray<Schema.Constraint>
|
|
|
372
427
|
/**
|
|
373
428
|
* Registers an MCP resource or resource template from an Effect program.
|
|
374
429
|
*
|
|
375
|
-
* **When to use**
|
|
376
|
-
*
|
|
377
|
-
* Use when you are already inside an Effect program with an `McpServer`
|
|
378
|
-
* service and need to add a concrete resource or URI-template resource
|
|
379
|
-
* directly.
|
|
380
|
-
*
|
|
381
430
|
* @see {@link resource} for the layer-based resource registration wrapper
|
|
382
431
|
*
|
|
383
432
|
* @stability unstable
|
|
@@ -388,12 +437,6 @@ export declare const registerResource: {
|
|
|
388
437
|
/**
|
|
389
438
|
* Registers an MCP resource or resource template from an Effect program.
|
|
390
439
|
*
|
|
391
|
-
* **When to use**
|
|
392
|
-
*
|
|
393
|
-
* Use when you are already inside an Effect program with an `McpServer`
|
|
394
|
-
* service and need to add a concrete resource or URI-template resource
|
|
395
|
-
* directly.
|
|
396
|
-
*
|
|
397
440
|
* @see {@link resource} for the layer-based resource registration wrapper
|
|
398
441
|
*
|
|
399
442
|
* @stability unstable
|
|
@@ -413,12 +456,6 @@ export declare const registerResource: {
|
|
|
413
456
|
/**
|
|
414
457
|
* Registers an MCP resource or resource template from an Effect program.
|
|
415
458
|
*
|
|
416
|
-
* **When to use**
|
|
417
|
-
*
|
|
418
|
-
* Use when you are already inside an Effect program with an `McpServer`
|
|
419
|
-
* service and need to add a concrete resource or URI-template resource
|
|
420
|
-
* directly.
|
|
421
|
-
*
|
|
422
459
|
* @see {@link resource} for the layer-based resource registration wrapper
|
|
423
460
|
*
|
|
424
461
|
* @stability unstable
|
|
@@ -436,15 +473,11 @@ export declare const registerResource: {
|
|
|
436
473
|
readonly [K in keyof Schemas]: Schemas[K]["Type"];
|
|
437
474
|
}) => Effect.Effect<ReadResourceResult | string | Uint8Array, E, R>;
|
|
438
475
|
readonly annotations?: Context.Context<never> | undefined;
|
|
439
|
-
}) => Effect.Effect<void, never, Exclude<Schemas[number]["DecodingServices"] | Schemas[number]["EncodingServices"] | R |
|
|
476
|
+
}) => Effect.Effect<void, never, Exclude<Schemas[number]["DecodingServices"] | Schemas[number]["EncodingServices"] | R | CompletionServices<Completions>, McpRequestContext> | McpServer>;
|
|
440
477
|
};
|
|
441
478
|
/**
|
|
442
479
|
* Creates a layer that registers an MCP resource or resource template.
|
|
443
480
|
*
|
|
444
|
-
* **When to use**
|
|
445
|
-
*
|
|
446
|
-
* Use to compose resource registration into an MCP server layer.
|
|
447
|
-
*
|
|
448
481
|
* @see {@link registerResource} for the Effect-level resource registration API
|
|
449
482
|
*
|
|
450
483
|
* @stability unstable
|
|
@@ -455,10 +488,6 @@ export declare const resource: {
|
|
|
455
488
|
/**
|
|
456
489
|
* Creates a layer that registers an MCP resource or resource template.
|
|
457
490
|
*
|
|
458
|
-
* **When to use**
|
|
459
|
-
*
|
|
460
|
-
* Use to compose resource registration into an MCP server layer.
|
|
461
|
-
*
|
|
462
491
|
* @see {@link registerResource} for the Effect-level resource registration API
|
|
463
492
|
*
|
|
464
493
|
* @stability unstable
|
|
@@ -477,10 +506,6 @@ export declare const resource: {
|
|
|
477
506
|
/**
|
|
478
507
|
* Creates a layer that registers an MCP resource or resource template.
|
|
479
508
|
*
|
|
480
|
-
* **When to use**
|
|
481
|
-
*
|
|
482
|
-
* Use to compose resource registration into an MCP server layer.
|
|
483
|
-
*
|
|
484
509
|
* @see {@link registerResource} for the Effect-level resource registration API
|
|
485
510
|
*
|
|
486
511
|
* @stability unstable
|
|
@@ -497,21 +522,15 @@ export declare const resource: {
|
|
|
497
522
|
readonly content: (uri: string, ...params: {
|
|
498
523
|
readonly [K in keyof Schemas]: Schemas[K]["Type"];
|
|
499
524
|
}) => Effect.Effect<ReadResourceResult | string | Uint8Array, E, R>;
|
|
500
|
-
}) => Layer.Layer<never, never, Exclude<
|
|
525
|
+
}) => Layer.Layer<never, never, Exclude<Schemas[number]["DecodingServices"] | Schemas[number]["EncodingServices"] | R | CompletionServices<Completions>, McpRequestContext>>;
|
|
501
526
|
};
|
|
502
527
|
/**
|
|
503
528
|
* Registers an MCP prompt from an Effect program.
|
|
504
529
|
*
|
|
505
|
-
* **When to use**
|
|
506
|
-
*
|
|
507
|
-
* Use when you are already inside an Effect program with an `McpServer`
|
|
508
|
-
* service and need to add a prompt handler directly.
|
|
509
|
-
*
|
|
510
530
|
* **Details**
|
|
511
531
|
*
|
|
512
|
-
*
|
|
513
|
-
*
|
|
514
|
-
* text message.
|
|
532
|
+
* Decodes parameters and encodes completion suggestions using their schemas.
|
|
533
|
+
* String content becomes a user text message.
|
|
515
534
|
*
|
|
516
535
|
* @see {@link prompt} for the layer-based prompt registration wrapper
|
|
517
536
|
*
|
|
@@ -527,20 +546,10 @@ export declare const registerPrompt: <E, R, Params extends Schema.Struct.Fields
|
|
|
527
546
|
readonly completion?: ValidateCompletions<Completions, Extract<keyof Params, string>> | undefined;
|
|
528
547
|
readonly content: (params: Schema.Struct.Type<Params>) => Effect.Effect<Array<PromptMessage> | string, E, R>;
|
|
529
548
|
readonly annotations?: Context.Context<never> | undefined;
|
|
530
|
-
}) => Effect.Effect<void, never, Exclude<Schema.Struct.DecodingServices<Params> | R | CompletionServices<Completions>, McpRequestContext> | McpServer>;
|
|
549
|
+
}) => Effect.Effect<void, never, Exclude<Schema.Struct.DecodingServices<Params> | Params[Extract<keyof Completions, keyof Params>]["EncodingServices"] | R | CompletionServices<Completions>, McpRequestContext> | McpServer>;
|
|
531
550
|
/**
|
|
532
551
|
* Creates a layer that registers an MCP prompt.
|
|
533
552
|
*
|
|
534
|
-
* **When to use**
|
|
535
|
-
*
|
|
536
|
-
* Use to compose prompt registration into an MCP server layer.
|
|
537
|
-
*
|
|
538
|
-
* **Details**
|
|
539
|
-
*
|
|
540
|
-
* Parameters are decoded with the supplied schema, completion handlers encode
|
|
541
|
-
* per-parameter suggestions, and string prompt content is converted into a user
|
|
542
|
-
* text message.
|
|
543
|
-
*
|
|
544
553
|
* @see {@link registerPrompt} for the Effect-level prompt registration API
|
|
545
554
|
*
|
|
546
555
|
* @stability unstable
|
|
@@ -555,7 +564,7 @@ export declare const prompt: <E, R, Params extends Schema.Struct.Fields = {}, co
|
|
|
555
564
|
readonly completion?: ValidateCompletions<Completions, Extract<keyof Params, string>> | undefined;
|
|
556
565
|
readonly content: (params: Schema.Struct.Type<Params>) => Effect.Effect<Array<PromptMessage> | string, E, R>;
|
|
557
566
|
readonly annotations?: Context.Context<never> | undefined;
|
|
558
|
-
}) => Layer.Layer<never, never, Exclude<Schema.Struct.DecodingServices<Params> | R | CompletionServices<Completions>, McpRequestContext>>;
|
|
567
|
+
}) => Layer.Layer<never, never, Exclude<Schema.Struct.DecodingServices<Params> | Params[Extract<keyof Completions, keyof Params>]["EncodingServices"] | R | CompletionServices<Completions>, McpRequestContext>>;
|
|
559
568
|
/**
|
|
560
569
|
* Collects structured input from the current MCP client and decodes the
|
|
561
570
|
* accepted response with `schema`.
|