@adcp/sdk 14.0.0-beta.10 → 14.0.0-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/bin/adcp-storyboard-sandbox.js +16 -0
  2. package/bin/adcp.js +28 -30
  3. package/dist/lib/core/AgentClient.d.ts.map +1 -1
  4. package/dist/lib/core/SingleAgentClient.d.mts +2 -1
  5. package/dist/lib/core/SingleAgentClient.d.ts +2 -1
  6. package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
  7. package/dist/lib/core/SingleAgentClient.js +113 -64
  8. package/dist/lib/core/SingleAgentClient.js.map +1 -1
  9. package/dist/lib/core/SingleAgentClient.mjs +113 -64
  10. package/dist/lib/core/SingleAgentClient.mjs.map +1 -1
  11. package/dist/lib/index.d.mts +1 -1
  12. package/dist/lib/index.d.ts +1 -1
  13. package/dist/lib/index.d.ts.map +1 -1
  14. package/dist/lib/index.js.map +1 -1
  15. package/dist/lib/index.mjs.map +1 -1
  16. package/dist/lib/protocols/a2a.d.mts +10 -3
  17. package/dist/lib/protocols/a2a.d.ts +10 -3
  18. package/dist/lib/protocols/a2a.d.ts.map +1 -1
  19. package/dist/lib/protocols/a2a.js +162 -34
  20. package/dist/lib/protocols/a2a.js.map +1 -1
  21. package/dist/lib/protocols/a2a.mjs +166 -34
  22. package/dist/lib/protocols/a2a.mjs.map +1 -1
  23. package/dist/lib/schemas/index.d.mts +385 -1
  24. package/dist/lib/schemas/index.d.ts +385 -1
  25. package/dist/lib/schemas/index.d.ts.map +1 -1
  26. package/dist/lib/schemas/index.js +13 -0
  27. package/dist/lib/schemas/index.js.map +1 -1
  28. package/dist/lib/schemas/index.mjs +11 -0
  29. package/dist/lib/schemas/index.mjs.map +1 -1
  30. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  31. package/dist/lib/server/a2a-adapter.d.mts +59 -33
  32. package/dist/lib/server/a2a-adapter.d.ts +59 -33
  33. package/dist/lib/server/a2a-adapter.d.ts.map +1 -1
  34. package/dist/lib/server/a2a-adapter.js +278 -67
  35. package/dist/lib/server/a2a-adapter.js.map +1 -1
  36. package/dist/lib/server/a2a-adapter.mjs +280 -68
  37. package/dist/lib/server/a2a-adapter.mjs.map +1 -1
  38. package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
  39. package/dist/lib/server/create-adcp-server.js +35 -108
  40. package/dist/lib/server/create-adcp-server.js.map +1 -1
  41. package/dist/lib/server/create-adcp-server.mjs +37 -109
  42. package/dist/lib/server/create-adcp-server.mjs.map +1 -1
  43. package/dist/lib/server/decisioning/index.d.mts +2 -0
  44. package/dist/lib/server/decisioning/index.d.ts +2 -0
  45. package/dist/lib/server/decisioning/index.d.ts.map +1 -1
  46. package/dist/lib/server/decisioning/index.js +5 -2
  47. package/dist/lib/server/decisioning/index.js.map +1 -1
  48. package/dist/lib/server/decisioning/index.mjs +3 -1
  49. package/dist/lib/server/decisioning/index.mjs.map +1 -1
  50. package/dist/lib/server/decisioning/response-summary.d.mts +33 -0
  51. package/dist/lib/server/decisioning/response-summary.d.ts +34 -0
  52. package/dist/lib/server/decisioning/response-summary.d.ts.map +1 -0
  53. package/dist/lib/server/decisioning/response-summary.js +62 -0
  54. package/dist/lib/server/decisioning/response-summary.js.map +1 -0
  55. package/dist/lib/server/decisioning/response-summary.mjs +37 -0
  56. package/dist/lib/server/decisioning/response-summary.mjs.map +1 -0
  57. package/dist/lib/server/decisioning/runtime/from-platform.d.ts.map +1 -1
  58. package/dist/lib/server/decisioning/runtime/from-platform.js +27 -5
  59. package/dist/lib/server/decisioning/runtime/from-platform.js.map +1 -1
  60. package/dist/lib/server/decisioning/runtime/from-platform.mjs +27 -5
  61. package/dist/lib/server/decisioning/runtime/from-platform.mjs.map +1 -1
  62. package/dist/lib/server/decisioning/specialisms/sales.d.mts +7 -1
  63. package/dist/lib/server/decisioning/specialisms/sales.d.ts +7 -1
  64. package/dist/lib/server/decisioning/specialisms/sales.d.ts.map +1 -1
  65. package/dist/lib/server/decisioning/specialisms/sales.js.map +1 -1
  66. package/dist/lib/server/index.d.mts +1 -1
  67. package/dist/lib/server/index.d.ts +1 -1
  68. package/dist/lib/server/index.d.ts.map +1 -1
  69. package/dist/lib/server/index.js.map +1 -1
  70. package/dist/lib/server/index.mjs.map +1 -1
  71. package/dist/lib/server/responses.d.ts.map +1 -1
  72. package/dist/lib/server/responses.js +9 -1
  73. package/dist/lib/server/responses.js.map +1 -1
  74. package/dist/lib/server/responses.mjs +8 -1
  75. package/dist/lib/server/responses.mjs.map +1 -1
  76. package/dist/lib/signing/agent-context.d.mts +1 -0
  77. package/dist/lib/signing/agent-context.d.ts +1 -0
  78. package/dist/lib/signing/agent-context.d.ts.map +1 -1
  79. package/dist/lib/signing/agent-context.js +37 -2
  80. package/dist/lib/signing/agent-context.js.map +1 -1
  81. package/dist/lib/signing/agent-context.mjs +38 -3
  82. package/dist/lib/signing/agent-context.mjs.map +1 -1
  83. package/dist/lib/signing/agent-fetch.d.mts +1 -2
  84. package/dist/lib/signing/agent-fetch.d.ts +1 -2
  85. package/dist/lib/signing/agent-fetch.d.ts.map +1 -1
  86. package/dist/lib/signing/agent-fetch.js +2 -0
  87. package/dist/lib/signing/agent-fetch.js.map +1 -1
  88. package/dist/lib/signing/agent-fetch.mjs +2 -0
  89. package/dist/lib/signing/agent-fetch.mjs.map +1 -1
  90. package/dist/lib/signing/agent-resolver/etld.js.map +1 -1
  91. package/dist/lib/signing/agent-resolver/etld.mjs.map +1 -1
  92. package/dist/lib/testing/client.d.mts +6 -0
  93. package/dist/lib/testing/client.d.ts +6 -0
  94. package/dist/lib/testing/client.d.ts.map +1 -1
  95. package/dist/lib/testing/client.js +76 -4
  96. package/dist/lib/testing/client.js.map +1 -1
  97. package/dist/lib/testing/client.mjs +75 -4
  98. package/dist/lib/testing/client.mjs.map +1 -1
  99. package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
  100. package/dist/lib/testing/compliance/comply.js +6 -0
  101. package/dist/lib/testing/compliance/comply.js.map +1 -1
  102. package/dist/lib/testing/compliance/comply.mjs +7 -1
  103. package/dist/lib/testing/compliance/comply.mjs.map +1 -1
  104. package/dist/lib/testing/storyboard/context.d.ts.map +1 -1
  105. package/dist/lib/testing/storyboard/context.js +9 -4
  106. package/dist/lib/testing/storyboard/context.js.map +1 -1
  107. package/dist/lib/testing/storyboard/context.mjs +9 -4
  108. package/dist/lib/testing/storyboard/context.mjs.map +1 -1
  109. package/dist/lib/testing/storyboard/request-builder.d.ts.map +1 -1
  110. package/dist/lib/testing/storyboard/request-builder.js +28 -4
  111. package/dist/lib/testing/storyboard/request-builder.js.map +1 -1
  112. package/dist/lib/testing/storyboard/request-builder.mjs +28 -4
  113. package/dist/lib/testing/storyboard/request-builder.mjs.map +1 -1
  114. package/dist/lib/testing/storyboard/request-signing/functional-dispatch.d.mts +15 -0
  115. package/dist/lib/testing/storyboard/request-signing/functional-dispatch.d.ts +16 -0
  116. package/dist/lib/testing/storyboard/request-signing/functional-dispatch.d.ts.map +1 -0
  117. package/dist/lib/testing/storyboard/request-signing/functional-dispatch.js +106 -0
  118. package/dist/lib/testing/storyboard/request-signing/functional-dispatch.js.map +1 -0
  119. package/dist/lib/testing/storyboard/request-signing/functional-dispatch.mjs +82 -0
  120. package/dist/lib/testing/storyboard/request-signing/functional-dispatch.mjs.map +1 -0
  121. package/dist/lib/testing/storyboard/request-signing/test-kit.d.mts +15 -0
  122. package/dist/lib/testing/storyboard/request-signing/test-kit.d.ts +15 -0
  123. package/dist/lib/testing/storyboard/request-signing/test-kit.d.ts.map +1 -1
  124. package/dist/lib/testing/storyboard/request-signing/test-kit.js +58 -0
  125. package/dist/lib/testing/storyboard/request-signing/test-kit.js.map +1 -1
  126. package/dist/lib/testing/storyboard/request-signing/test-kit.mjs +58 -0
  127. package/dist/lib/testing/storyboard/request-signing/test-kit.mjs.map +1 -1
  128. package/dist/lib/testing/storyboard/request-signing/vector-loader.d.mts +2 -0
  129. package/dist/lib/testing/storyboard/request-signing/vector-loader.d.ts +2 -0
  130. package/dist/lib/testing/storyboard/request-signing/vector-loader.d.ts.map +1 -1
  131. package/dist/lib/testing/storyboard/request-signing/vector-loader.js +7 -1
  132. package/dist/lib/testing/storyboard/request-signing/vector-loader.js.map +1 -1
  133. package/dist/lib/testing/storyboard/request-signing/vector-loader.mjs +6 -1
  134. package/dist/lib/testing/storyboard/request-signing/vector-loader.mjs.map +1 -1
  135. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
  136. package/dist/lib/testing/storyboard/runner.js +31 -7
  137. package/dist/lib/testing/storyboard/runner.js.map +1 -1
  138. package/dist/lib/testing/storyboard/runner.mjs +31 -7
  139. package/dist/lib/testing/storyboard/runner.mjs.map +1 -1
  140. package/dist/lib/testing/storyboard/validations.d.mts +1 -1
  141. package/dist/lib/testing/storyboard/validations.d.ts +1 -1
  142. package/dist/lib/testing/storyboard/validations.d.ts.map +1 -1
  143. package/dist/lib/testing/storyboard/validations.js +18 -7
  144. package/dist/lib/testing/storyboard/validations.js.map +1 -1
  145. package/dist/lib/testing/storyboard/validations.mjs +18 -7
  146. package/dist/lib/testing/storyboard/validations.mjs.map +1 -1
  147. package/dist/lib/testing/storyboard/webhook-receiver.d.ts.map +1 -1
  148. package/dist/lib/testing/storyboard/webhook-receiver.js +32 -20
  149. package/dist/lib/testing/storyboard/webhook-receiver.js.map +1 -1
  150. package/dist/lib/testing/storyboard/webhook-receiver.mjs +32 -20
  151. package/dist/lib/testing/storyboard/webhook-receiver.mjs.map +1 -1
  152. package/dist/lib/testing/types.d.mts +10 -0
  153. package/dist/lib/testing/types.d.ts +10 -0
  154. package/dist/lib/testing/types.d.ts.map +1 -1
  155. package/dist/lib/testing/types.js.map +1 -1
  156. package/dist/lib/types/comply-test-controller.d.ts +1 -14
  157. package/dist/lib/types/core.generated.d.mts +1 -1
  158. package/dist/lib/types/core.generated.d.ts +1 -1
  159. package/dist/lib/types/core.generated.d.ts.map +1 -1
  160. package/dist/lib/types/core.generated.js.map +1 -1
  161. package/dist/lib/types/get-products.d.ts +1 -14
  162. package/dist/lib/types/schemas.generated.d.ts +519 -571
  163. package/dist/lib/types/schemas.generated.d.ts.map +1 -1
  164. package/dist/lib/types/schemas.generated.js +2 -2
  165. package/dist/lib/types/schemas.generated.js.map +1 -1
  166. package/dist/lib/types/schemas.generated.mjs +2 -2
  167. package/dist/lib/types/schemas.generated.mjs.map +1 -1
  168. package/dist/lib/types/tools.generated.d.mts +1 -1
  169. package/dist/lib/types/tools.generated.d.ts +1 -1
  170. package/dist/lib/types/tools.generated.d.ts.map +1 -1
  171. package/dist/lib/types/tools.generated.js.map +1 -1
  172. package/dist/lib/utils/a2a-artifacts.d.ts.map +1 -1
  173. package/dist/lib/utils/a2a-artifacts.js +2 -2
  174. package/dist/lib/utils/a2a-artifacts.js.map +1 -1
  175. package/dist/lib/utils/a2a-artifacts.mjs +2 -2
  176. package/dist/lib/utils/a2a-artifacts.mjs.map +1 -1
  177. package/dist/lib/utils/a2a-discovery.d.mts +3 -3
  178. package/dist/lib/utils/a2a-discovery.d.ts +3 -3
  179. package/dist/lib/utils/a2a-discovery.js +1 -1
  180. package/dist/lib/utils/a2a-discovery.js.map +1 -1
  181. package/dist/lib/utils/a2a-discovery.mjs +1 -1
  182. package/dist/lib/utils/a2a-discovery.mjs.map +1 -1
  183. package/dist/lib/utils/tool-request-schemas.d.mts +31 -31
  184. package/dist/lib/utils/tool-request-schemas.d.ts +31 -31
  185. package/dist/lib/v2/projection/index.d.mts +2 -0
  186. package/dist/lib/v2/projection/index.d.ts +2 -0
  187. package/dist/lib/v2/projection/index.d.ts.map +1 -1
  188. package/dist/lib/v2/projection/index.js +3 -0
  189. package/dist/lib/v2/projection/index.js.map +1 -1
  190. package/dist/lib/v2/projection/index.mjs +2 -0
  191. package/dist/lib/v2/projection/index.mjs.map +1 -1
  192. package/dist/lib/v2/projection/legacy-normalization.d.mts +24 -0
  193. package/dist/lib/v2/projection/legacy-normalization.d.ts +25 -0
  194. package/dist/lib/v2/projection/legacy-normalization.d.ts.map +1 -0
  195. package/dist/lib/v2/projection/legacy-normalization.js +32 -0
  196. package/dist/lib/v2/projection/legacy-normalization.js.map +1 -0
  197. package/dist/lib/v2/projection/legacy-normalization.mjs +8 -0
  198. package/dist/lib/v2/projection/legacy-normalization.mjs.map +1 -0
  199. package/dist/lib/version.d.mts +3 -3
  200. package/dist/lib/version.d.ts +3 -3
  201. package/dist/lib/version.js +3 -3
  202. package/dist/lib/version.js.map +1 -1
  203. package/dist/lib/version.mjs +3 -3
  204. package/dist/lib/version.mjs.map +1 -1
  205. package/docs/guides/BUILD-AN-AGENT.md +42 -6
  206. package/docs/llms.txt +2 -2
  207. package/docs/migration-13-to-14.md +17 -0
  208. package/package.json +44 -41
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/server/a2a-adapter.ts"],"sourcesContent":["/**\n * A2A transport adapter for `AdcpServer`.\n *\n * Peer of `serve()` / `createExpressAdapter()`: same `AdcpServer` handle,\n * different wire transport. MCP and A2A share the dispatcher, idempotency\n * store, state store, resolveAccount, and governance — everything the\n * framework pipeline owns is transport-agnostic.\n *\n * **Scope (v0)**: `message/send`, `tasks/get`, `tasks/cancel`, and\n * `GET /.well-known/agent-card.json`. Streaming (`message/stream`),\n * push notifications, and mid-flight `input-required` interrupts are\n * explicit \"not yet\" — see `docs/guides/BUILD-AN-AGENT.md`.\n *\n * **Handler-return → A2A `Task.state` mapping:**\n *\n * | Handler returned… | A2A `Task.state` | Artifact payload |\n * |-------------------------------------|-------------------|--------------------------------------------------|\n * | Success arm | `completed` | DataPart with the typed AdCP response |\n * | Submitted arm (`status:'submitted'`)| `completed` [^1] | DataPart with AdCP response + `metadata.adcp_task_id` |\n * | Error arm (`errors:[]`) | `failed` | DataPart with the AdCP Error arm payload |\n * | `adcpError()` envelope | `failed` | DataPart with `adcp_error` |\n *\n * [^1]: A2A `submitted` is the INITIAL lifecycle state (before\n * `working`); A2A `completed` marks the transport call as done.\n * When the AdCP handler returns a Submitted arm the HTTP call itself\n * has completed — the AdCP-level async work is queued and buyers\n * resume it via `adcp_task_id` on `artifact.metadata`. The DataPart's\n * `data` still carries `status: 'submitted'` from the AdCP response,\n * so a buyer reading the artifact payload sees the ad-tech state\n * directly; the A2A Task.state only mirrors whether the transport\n * call itself terminated.\n *\n * **Message shape.** A client addresses a tool by sending a `Message`\n * with a single `DataPart`: `{ kind: 'data', data: { skill, input } }`.\n * `skill` must match a registered AdCP tool name (e.g. `get_products`);\n * `input` becomes the tool arguments before AdCP schema validation\n * runs. The older client convention `{ skill, parameters }` (used by\n * `src/lib/protocols/a2a.ts`) is also accepted — `data.parameters` is\n * treated as an alias for `data.input`; new callers should prefer\n * `input` since A2A `DataPart.data` is free-form and `input` matches\n * the AdCP tool's typed request shape.\n *\n * **Two lifecycles, one response.** A2A's `Task.state` tracks the\n * TRANSPORT call (did the HTTP request complete?). AdCP's `status`\n * inside the artifact tracks the WORK (submitted / completed /\n * failed). Don't conflate them: a `completed` A2A task can carry a\n * `submitted` AdCP response, meaning the call returned successfully\n * but the ad-tech operation itself is still queued. Buyers resume the\n * AdCP work via the `adcp_task_id` on the artifact's `metadata`, not\n * by re-polling the A2A Task.\n *\n * @preview v0 surface — field semantics may shift while the ecosystem\n * converges on AdCP-over-A2A conventions. Pinning a minor version is\n * recommended.\n */\n\nimport {\n type AgentExecutor,\n type ExecutionEventBus,\n type RequestContext,\n type TaskStore,\n type User,\n type UnauthenticatedUser,\n DefaultRequestHandler,\n InMemoryTaskStore as SdkInMemoryTaskStore,\n DefaultExecutionEventBusManager,\n} from '@a2a-js/sdk/server';\nimport { jsonRpcHandler, agentCardHandler } from '@a2a-js/sdk/server/express';\nimport type {\n AgentCard,\n AgentCapabilities,\n AgentProvider,\n AgentSkill,\n Artifact,\n DataPart,\n Message,\n SecurityScheme,\n Task,\n TaskArtifactUpdateEvent,\n TaskStatusUpdateEvent,\n} from '@a2a-js/sdk';\nimport type { Request, RequestHandler } from 'express';\nimport { randomUUID } from 'node:crypto';\nimport { getSdkServer, listRegisteredToolNames, type AdcpAuthInfo, type AdcpServer } from './adcp-server';\nimport type { McpToolResponse } from './responses';\nimport type { AdcpLogger } from './create-adcp-server';\n\n// ---------------------------------------------------------------------------\n// Public types\n// ---------------------------------------------------------------------------\n\n/**\n * Agent-card identity fields the adapter can't derive automatically.\n * Auto-seeded fields (`capabilities`, `skills`, `defaultInputModes`,\n * `defaultOutputModes`, `protocolVersion`, `additionalInterfaces`) may\n * be overridden by passing them here; the merged card is validated\n * against A2A's required-field set at boot.\n */\nexport interface A2AAgentCardOverrides {\n /** Human-readable agent name (required). */\n name: string;\n /** Human-readable description (required). */\n description: string;\n /** Agent URL — the endpoint A2A clients connect to (required). */\n url: string;\n /** Agent version (required). */\n version: string;\n\n provider?: AgentProvider;\n documentationUrl?: string;\n iconUrl?: string;\n securitySchemes?: { [k: string]: SecurityScheme };\n security?: { [k: string]: string[] }[];\n preferredTransport?: string;\n\n /**\n * Override the auto-generated capabilities. The adapter sets\n * `streaming: false` and `pushNotifications: false` by default (v0\n * ships neither). Set `streaming: true` if you wire a downstream\n * extension; the adapter still won't emit `TaskStatusUpdateEvent`s\n * on the stream path in v0.\n */\n capabilities?: AgentCapabilities;\n\n /**\n * Override the auto-generated skills list. When omitted the adapter\n * derives one `AgentSkill` per registered AdCP tool from the server's\n * capability object. Supply this to add descriptions, examples, tags,\n * or per-skill input/output modes the SDK can't infer. Framework-private\n * tools such as `comply_test_controller` are still filtered from the public\n * A2A agent card.\n */\n skills?: AgentSkill[];\n\n defaultInputModes?: string[];\n defaultOutputModes?: string[];\n protocolVersion?: string;\n}\n\n/**\n * Options for {@link createA2AAdapter}.\n *\n * **Auth posture.** `authenticate(req)` runs BEFORE the tool handler\n * sees the request. Return an `AdcpAuthInfo` to let the pipeline\n * proceed with that principal; return `null` (or throw) to reject.\n * A rejection currently surfaces as a generic JSON-RPC `-32000`\n * server error — the `@a2a-js/sdk` doesn't yet expose a typed\n * authentication-failed code for the `UserBuilder` path. Production\n * deployments SHOULD wire upstream middleware (e.g. `express-jwt`) to\n * reject with a proper HTTP 401 / WWW-Authenticate challenge before\n * the request reaches `jsonRpcHandler`. The `authenticate` option\n * here is a last-line-of-defense guard, not the primary auth surface.\n *\n * **Agent-card `securitySchemes`.** The `agentCard.securitySchemes`\n * you provide is served verbatim at `/.well-known/agent-card.json` —\n * only put non-secret discovery data there (token endpoint, scopes,\n * OIDC issuer URL). Never paste client secrets, private JWKS, or\n * internal URLs into the card. The SDK doesn't schema-validate\n * `securitySchemes` at boot (v0 check is required-field presence\n * only), so a hand-crafted malformed entry will ship as-written.\n *\n * Omitting `authenticate` makes the adapter anonymous — handlers see\n * `ctx.authInfo === undefined`, matching `serve({ authenticate: undefined })`.\n */\nexport interface A2AAdapterOptions {\n /** AdCP server whose registered tools this adapter exposes over A2A. */\n server: AdcpServer;\n\n /**\n * Authenticate an inbound A2A request. Transport-level auth runs\n * before `AdcpServer.invoke()` so the framework pipeline sees a\n * verified `authInfo`. Return `null` (or throw) to reject.\n */\n authenticate?: (req: Request) => Promise<AdcpAuthInfo | null>;\n\n /** Seller-supplied agent-card identity fields. Required. */\n agentCard: A2AAgentCardOverrides;\n\n /**\n * A2A task store. Defaults to the SDK's `InMemoryTaskStore`.\n * Persistent deployments should supply a durable implementation\n * (e.g. a Postgres-backed `TaskStore`).\n */\n taskStore?: TaskStore;\n\n /** Optional logger. Falls back to `console`. */\n logger?: AdcpLogger;\n}\n\n/** Minimal Express app surface the adapter's `mount()` helper needs. */\nexport interface ExpressAppLike {\n use(path: string, ...handlers: RequestHandler[]): unknown;\n}\n\n/** Options for {@link A2AAdapter.mount}. */\nexport interface A2AMountOptions {\n /**\n * URL-path prefix for the JSON-RPC endpoint. Defaults to the pathname\n * of the agent card's `url` field (so `url: 'https://host/a2a'` mounts\n * JSON-RPC at `/a2a`). Override to mount under a different path.\n */\n basePath?: string;\n /**\n * When true (default), also mounts the agent card at the origin root\n * (`/.well-known/agent-card.json`) so simple discovery probes targeting\n * the host itself find the card. Some deployments disable this when an\n * upstream proxy owns origin-root routes — set `false` to mount only\n * at `{basePath}/.well-known/agent-card.json`.\n */\n wellKnownAtRoot?: boolean;\n}\n\n/**\n * Value returned by {@link createA2AAdapter}.\n *\n * For almost every seller, `adapter.mount(app)` is the right entry\n * point — it wires all four routes (JSON-RPC at the agent-card's\n * path, the agent card at both `{basePath}/.well-known/agent-card.json`\n * for A2A discovery and `/.well-known/agent-card.json` for origin-root\n * probes) with one call.\n *\n * The `jsonRpcHandler` and `agentCardHandler` fields stay exposed for\n * deployments that need finer control (mounting behind a custom auth\n * layer, serving the card from a CDN, testing).\n */\nexport interface A2AAdapter {\n /** The A2A JSON-RPC middleware (`message/send`, `tasks/get`, `tasks/cancel`). */\n jsonRpcHandler: RequestHandler;\n /** The agent-card discovery GET middleware. */\n agentCardHandler: RequestHandler;\n /** Returns the merged, validated agent card. */\n getAgentCard(): Promise<AgentCard>;\n /**\n * Wire all A2A routes onto an Express-compatible app in one call.\n * Eliminates the \"card mounted at only one location\" footgun: the\n * A2A SDK derives `${agentCard.url}/.well-known/agent-card.json` for\n * discovery, while many clients also probe origin root — this helper\n * satisfies both. See {@link A2AMountOptions} to override paths.\n */\n mount(app: ExpressAppLike, options?: A2AMountOptions): void;\n}\n\n// ---------------------------------------------------------------------------\n// Internals\n// ---------------------------------------------------------------------------\n\n/**\n * Our `User` carries the full AdCP auth payload, not just the two\n * getters A2A's minimal `User` requires. The executor reads this back\n * out of `RequestContext.context.user`.\n */\ninterface A2AAdcpUser extends User {\n readonly adcpAuthInfo?: AdcpAuthInfo;\n}\n\nfunction buildAuthenticatedUser(authInfo: AdcpAuthInfo): A2AAdcpUser {\n const clientId = authInfo.clientId;\n return {\n get isAuthenticated() {\n return true;\n },\n get userName() {\n return clientId;\n },\n adcpAuthInfo: authInfo,\n };\n}\n\nfunction buildAnonymousUser(): UnauthenticatedUser {\n return {\n get isAuthenticated() {\n return false as const;\n },\n get userName() {\n return 'anonymous';\n },\n };\n}\n\nfunction getAdcpAuthInfo(context: RequestContext['context']): AdcpAuthInfo | undefined {\n const user = context?.user as A2AAdcpUser | undefined;\n return user?.adcpAuthInfo;\n}\n\n/**\n * Extract the `{ skill, input }` pair from the inbound Message's parts.\n *\n * Convention: the client sends a single DataPart with\n * `{ skill: '<tool_name>', input: { ...args } }`. Reject anything else\n * — text-only payloads, files, multiple data parts — so buyers get a\n * deterministic error instead of silently-wrong routing.\n */\ninterface ExtractedInvocation {\n skill: string;\n input: Record<string, unknown>;\n}\n\nfunction extractInvocation(message: Message): ExtractedInvocation {\n if (!Array.isArray(message.parts) || message.parts.length === 0) {\n throw new A2AInvocationError('Message must carry at least one part with a `data` kind.');\n }\n const dataParts = message.parts.filter((p): p is DataPart => p?.kind === 'data');\n if (dataParts.length === 0) {\n throw new A2AInvocationError(\n \"Message must include a DataPart with { skill, input } — text-only messages aren't routable to AdCP tools.\"\n );\n }\n if (dataParts.length > 1) {\n throw new A2AInvocationError(\n 'Message must include exactly one DataPart — multi-part invocations are not supported in v0.'\n );\n }\n const firstDataPart = dataParts[0]!;\n const rawData = firstDataPart.data;\n // Guard before destructuring — a client sending `{ kind: 'data', data: null }`\n // or `data: \"string\"` would otherwise TypeError on payload.skill and surface\n // as a generic HANDLER_THREW instead of INVALID_INVOCATION.\n if (rawData == null || typeof rawData !== 'object' || Array.isArray(rawData)) {\n throw new A2AInvocationError('DataPart `data` must be an object containing { skill, input }.');\n }\n const payload = rawData as Record<string, unknown>;\n const skill = payload.skill;\n // Accept `parameters` as an alias for `input` — the in-tree A2A\n // client (`src/lib/protocols/a2a.ts`) shipped first and uses\n // `parameters`, so downstream agents already emit that key. Going\n // forward prefer `input`: A2A `DataPart.data` is free-form JSON and\n // `input` matches the AdCP tool's typed request shape. The alias\n // stays for ecosystem compatibility; no deprecation timer in v0.\n const input = payload.input ?? payload.parameters;\n if (typeof skill !== 'string' || skill.length === 0) {\n throw new A2AInvocationError('DataPart must include a non-empty string `skill` field naming the AdCP tool.');\n }\n if (input != null && (typeof input !== 'object' || Array.isArray(input))) {\n throw new A2AInvocationError('DataPart `input` (or legacy `parameters`) must be an object (or omitted).');\n }\n return { skill, input: (input as Record<string, unknown>) ?? {} };\n}\n\n/** Thrown when an incoming Message doesn't match the AdCP-over-A2A convention. */\nexport class A2AInvocationError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'A2AInvocationError';\n }\n}\n\n// ---------------------------------------------------------------------------\n// Executor — translates A2A execute() into adcpServer.invoke() + events\n// ---------------------------------------------------------------------------\n\n/**\n * Classify a framework-produced `McpToolResponse` so the executor knows\n * what A2A `Task.state` to publish.\n */\ntype ClassifiedResult =\n | { kind: 'success'; data: Record<string, unknown> }\n | { kind: 'submitted'; adcpTaskId: string; data: Record<string, unknown> }\n | { kind: 'paused'; status: 'input-required' | 'auth-required'; data: Record<string, unknown> }\n | { kind: 'error_arm'; data: Record<string, unknown> }\n | { kind: 'adcp_error'; data: Record<string, unknown> };\n\nfunction classifyResponse(res: McpToolResponse): ClassifiedResult {\n const structured = (res.structuredContent ?? {}) as Record<string, unknown>;\n if (res.isError === true) {\n if (structured.adcp_error && typeof structured.adcp_error === 'object') {\n return { kind: 'adcp_error', data: structured };\n }\n return { kind: 'error_arm', data: structured };\n }\n if (structured.status === 'submitted' && typeof structured.task_id === 'string') {\n return { kind: 'submitted', adcpTaskId: structured.task_id, data: structured };\n }\n if (structured.status === 'input-required' || structured.status === 'auth-required') {\n return { kind: 'paused', status: structured.status, data: structured };\n }\n return { kind: 'success', data: structured };\n}\n\nclass AdcpA2AAgentExecutor implements AgentExecutor {\n // Cooperative-cancel flag. `DefaultRequestHandler.cancelTask` only\n // calls our executor's `cancelTask` while an execute() is in-flight\n // (eventBus still open); post-completion cancels are handled by the\n // SDK directly against the task store. So this set only holds\n // taskIds that currently have a pending `cancelTask`, and execute()\n // always clears its entry at the end — no unbounded growth.\n private readonly canceled = new Set<string>();\n\n // A2A `Task.id` → original `contextId`. Populated when execute()\n // starts so `cancelTask` can emit a well-formed status-update event\n // against the same contextId instead of guessing an empty string.\n // Cleared alongside the canceled flag in execute()'s finally block.\n private readonly taskContextIds = new Map<string, string>();\n\n constructor(\n private readonly server: AdcpServer,\n private readonly logger: AdcpLogger\n ) {}\n\n async execute(requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void> {\n const { taskId, contextId, userMessage } = requestContext;\n const authInfo = getAdcpAuthInfo(requestContext.context);\n\n this.taskContextIds.set(taskId, contextId);\n try {\n // Register the task with the ResultManager by publishing a Task\n // event first — subsequent status-update / artifact-update events\n // only resolve if the manager has seen the task. `working` is the\n // initial state; we replace it with completed / submitted / failed\n // once the handler returns.\n this.publishInitialTask(eventBus, taskId, contextId, userMessage);\n\n let invocation: ExtractedInvocation;\n try {\n invocation = extractInvocation(userMessage);\n } catch (err) {\n const message = err instanceof Error ? err.message : 'Invalid A2A invocation';\n this.emitFailure(eventBus, taskId, contextId, {\n reason: 'INVALID_INVOCATION',\n message,\n });\n return;\n }\n\n let response: McpToolResponse | undefined;\n const toolNames = a2aSkillToServerToolNames(invocation.skill);\n let invokedToolName: string | undefined;\n try {\n for (const toolName of toolNames) {\n try {\n invokedToolName = toolName;\n response = await this.server.invoke({\n // Platform servers register `tasks_get`; older/custom A2A\n // fixtures may still register the slash name directly.\n toolName,\n args: invocation.input,\n ...(authInfo && { authInfo }),\n });\n break;\n } catch (err) {\n if (toolName === 'tasks_get' && invocation.skill === 'tasks/get' && isToolNotRegistered(err, toolName)) {\n continue;\n }\n throw err;\n }\n }\n } catch (err) {\n const message = err instanceof Error ? err.message : String(err);\n this.logger.error('A2A adapter: handler invocation threw', {\n toolName: invokedToolName ?? invocation.skill,\n requestedToolName: invocation.skill,\n error: message,\n });\n this.emitFailure(eventBus, taskId, contextId, {\n reason: 'HANDLER_THREW',\n message,\n });\n return;\n }\n if (response === undefined) {\n this.emitFailure(eventBus, taskId, contextId, {\n reason: 'HANDLER_THREW',\n message: `No handler registered for ${invocation.skill}`,\n });\n return;\n }\n\n if (this.canceled.has(taskId)) {\n this.publishStatus(eventBus, taskId, contextId, 'canceled', true);\n return;\n }\n\n const classified = classifyResponse(response);\n this.publishArtifact(eventBus, taskId, contextId, classified);\n // A2A Task.state maps the TRANSPORT call lifecycle, not the AdCP\n // work. A `submitted` AdCP arm means the HTTP call itself\n // completed — the ad-tech work is queued, resumed via\n // `adcp_task_id` on the artifact metadata. Emitting A2A\n // `state: 'submitted'` with `final: true` would be a\n // non-conformant transition per A2A 0.3.0 (`submitted` is the\n // INITIAL state before `working`, never terminal). Buyers read\n // the AdCP-level status from the artifact's `data.status` field.\n // The v0 server adapter does not expose a continuation dispatcher.\n // A handler-returned pause is therefore terminal at the A2A transport\n // layer and rides in the artifact as an explicitly nonresumable AdCP\n // result. Leaving the Task live would invite `{input}` to re-enter the\n // ordinary request/idempotency pipeline as an unsafe fresh mutation.\n this.publishStatus(\n eventBus,\n taskId,\n contextId,\n classified.kind === 'success' || classified.kind === 'submitted' || classified.kind === 'paused'\n ? 'completed'\n : 'failed',\n true\n );\n } finally {\n // Clean up per-task state regardless of path — the executor is\n // long-lived (one per adapter instance), so any leak compounds.\n this.canceled.delete(taskId);\n this.taskContextIds.delete(taskId);\n eventBus.finished();\n }\n }\n\n async cancelTask(taskId: string, eventBus: ExecutionEventBus): Promise<void> {\n this.canceled.add(taskId);\n // `DefaultRequestHandler.cancelTask` only reaches us when execute()\n // is still in-flight (eventBus still open). Publish the canceled\n // status so the SDK's secondary `_processEvents` loop terminates;\n // execute() will ALSO see the flag and short-circuit before\n // publishing a success/failure status. The A2A event bus is\n // idempotent on duplicate status publishes — whichever lands first\n // wins the taskStore write.\n const contextId = this.taskContextIds.get(taskId) ?? '';\n this.publishStatus(eventBus, taskId, contextId, 'canceled', true);\n // Do NOT call eventBus.finished() here — execute()'s finally block\n // owns the finished() signal, and calling it twice risks closing\n // the queue mid-event-flush on the primary processEvents loop.\n }\n\n private publishInitialTask(\n eventBus: ExecutionEventBus,\n taskId: string,\n contextId: string,\n userMessage: Message\n ): void {\n const task: Task = {\n kind: 'task',\n id: taskId,\n contextId,\n status: {\n state: 'working',\n timestamp: new Date().toISOString(),\n },\n history: [userMessage],\n };\n eventBus.publish(task);\n }\n\n private publishStatus(\n eventBus: ExecutionEventBus,\n taskId: string,\n contextId: string,\n state: TaskStatusUpdateEvent['status']['state'],\n final: boolean,\n messageData?: Record<string, unknown>\n ): void {\n const event: TaskStatusUpdateEvent = {\n kind: 'status-update',\n taskId,\n contextId,\n status: {\n state,\n timestamp: new Date().toISOString(),\n ...(messageData && {\n message: {\n kind: 'message',\n messageId: randomUUID(),\n role: 'agent',\n parts: [{ kind: 'data', data: messageData }],\n },\n }),\n },\n final,\n };\n eventBus.publish(event);\n }\n\n private publishArtifact(\n eventBus: ExecutionEventBus,\n taskId: string,\n contextId: string,\n classified: ClassifiedResult\n ): void {\n const artifactName =\n classified.kind === 'success'\n ? 'result'\n : classified.kind === 'submitted'\n ? 'submitted'\n : classified.kind === 'paused'\n ? 'result'\n : 'error';\n // DataPart `data` is the AdCP tool's typed response — no\n // transport-level fields injected here so the payload still\n // validates against the tool's AdCP response schema. AdCP\n // transport metadata (`adcp_task_id` pointing at the async handle)\n // rides on `artifact.metadata` per A2A 0.3.0's extension\n // convention.\n const artifact: Artifact = {\n artifactId: randomUUID(),\n name: artifactName,\n parts: [{ kind: 'data', data: classified.data }],\n metadata: {\n adcp_status:\n classified.kind === 'submitted'\n ? 'submitted'\n : classified.kind === 'paused'\n ? classified.status\n : classified.kind === 'success'\n ? 'completed'\n : 'failed',\n ...(classified.kind === 'submitted' && { adcp_task_id: classified.adcpTaskId }),\n },\n };\n const event: TaskArtifactUpdateEvent = {\n kind: 'artifact-update',\n taskId,\n contextId,\n artifact,\n append: false,\n lastChunk: true,\n };\n eventBus.publish(event);\n }\n\n private emitFailure(\n eventBus: ExecutionEventBus,\n taskId: string,\n contextId: string,\n payload: { reason: string; message: string }\n ): void {\n const artifact: Artifact = {\n artifactId: randomUUID(),\n name: 'error',\n parts: [{ kind: 'data', data: payload }],\n };\n eventBus.publish({\n kind: 'artifact-update',\n taskId,\n contextId,\n artifact,\n append: false,\n lastChunk: true,\n } satisfies TaskArtifactUpdateEvent);\n this.publishStatus(eventBus, taskId, contextId, 'failed', true);\n }\n}\n\nfunction isToolNotRegistered(err: unknown, toolName: string): boolean {\n return err instanceof Error && err.message.includes(`tool \"${toolName}\" is not registered`);\n}\n\nfunction a2aSkillToServerToolNames(skill: string): string[] {\n return skill === 'tasks/get' ? ['tasks_get', 'tasks/get'] : [skill];\n}\n\n// ---------------------------------------------------------------------------\n// Agent card\n// ---------------------------------------------------------------------------\n\nconst DEFAULT_MODES = ['application/json'] as const;\nconst DEFAULT_PROTOCOL_VERSION = '0.3.0';\nconst PUBLIC_AGENT_CARD_EXCLUDED_SKILLS = new Set(['comply_test_controller']);\n\n/**\n * Derive one `AgentSkill` per registered AdCP tool. Skills without\n * seller-supplied descriptions get a generic one pointing at the\n * AdCP tool name — enough to pass A2A registry validation; sellers\n * are expected to enrich via `agentCard.skills` in production.\n */\nfunction deriveSkills(toolNames: string[]): AgentSkill[] {\n const publicNames = new Set(toolNames.map(toA2ASkillName));\n return [...publicNames].map(name => ({\n id: name,\n name,\n description: `AdCP tool: ${name}. Send { skill: \"${name}\", input: { ... } } as a DataPart.`,\n tags: ['adcp'],\n }));\n}\n\nfunction toA2ASkillName(toolName: string): string {\n return toolName === 'tasks_get' ? 'tasks/get' : toolName;\n}\n\nfunction listRegisteredTools(server: AdcpServer): string[] {\n const sdk = getSdkServer(server);\n if (!sdk) return [];\n return listRegisteredToolNames(sdk).filter(name => !PUBLIC_AGENT_CARD_EXCLUDED_SKILLS.has(name));\n}\n\nfunction filterPublicAgentCardSkills(skills: AgentSkill[]): AgentSkill[] {\n return skills.filter(skill => {\n const id = typeof skill.id === 'string' ? skill.id : undefined;\n const name = typeof skill.name === 'string' ? skill.name : undefined;\n return !(\n (id != null && PUBLIC_AGENT_CARD_EXCLUDED_SKILLS.has(id)) ||\n (name != null && PUBLIC_AGENT_CARD_EXCLUDED_SKILLS.has(name))\n );\n });\n}\n\nfunction buildAgentCard(server: AdcpServer, overrides: A2AAgentCardOverrides): AgentCard {\n const tools = listRegisteredTools(server);\n const skills = filterPublicAgentCardSkills(overrides.skills ?? deriveSkills(tools));\n // Capability discovery is an invocable AdCP skill and is required for safe\n // version/lifecycle selection. Keep it visible even when sellers override\n // their business-skill descriptions. Unlike native A2A JSON-RPC methods,\n // every published skill here is callable through message/send.\n if (\n tools.includes('get_adcp_capabilities') &&\n !skills.some(skill => skill.id === 'get_adcp_capabilities' || skill.name === 'get_adcp_capabilities')\n ) {\n skills.push(...deriveSkills(['get_adcp_capabilities']));\n }\n\n const card: AgentCard = {\n name: overrides.name,\n description: overrides.description,\n url: overrides.url,\n version: overrides.version,\n protocolVersion: overrides.protocolVersion ?? DEFAULT_PROTOCOL_VERSION,\n defaultInputModes: overrides.defaultInputModes ?? [...DEFAULT_MODES],\n defaultOutputModes: overrides.defaultOutputModes ?? [...DEFAULT_MODES],\n capabilities: overrides.capabilities ?? {\n streaming: false,\n pushNotifications: false,\n },\n skills,\n ...(overrides.provider && { provider: overrides.provider }),\n ...(overrides.documentationUrl && { documentationUrl: overrides.documentationUrl }),\n ...(overrides.iconUrl && { iconUrl: overrides.iconUrl }),\n ...(overrides.securitySchemes && { securitySchemes: overrides.securitySchemes }),\n ...(overrides.security && { security: overrides.security }),\n ...(overrides.preferredTransport && { preferredTransport: overrides.preferredTransport }),\n };\n\n validateAgentCard(card);\n return card;\n}\n\n/**\n * Fail loud at adapter construction when the merged card misses\n * A2A-required fields. The SDK would reject the discovery response\n * at runtime anyway — better to catch it at boot so the agent never\n * binds a port with an unserviceable card.\n */\nfunction validateAgentCard(card: AgentCard): void {\n const missing: string[] = [];\n if (!card.name) missing.push('name');\n if (!card.description) missing.push('description');\n if (!card.url) missing.push('url');\n if (!card.version) missing.push('version');\n if (!card.protocolVersion) missing.push('protocolVersion');\n if (!card.capabilities) missing.push('capabilities');\n if (!Array.isArray(card.defaultInputModes) || card.defaultInputModes.length === 0) {\n missing.push('defaultInputModes');\n }\n if (!Array.isArray(card.defaultOutputModes) || card.defaultOutputModes.length === 0) {\n missing.push('defaultOutputModes');\n }\n if (!Array.isArray(card.skills)) missing.push('skills');\n if (missing.length > 0) {\n throw new Error(\n `createA2AAdapter: agent card is missing required fields — ${missing.join(', ')}. ` +\n `Supply them via options.agentCard so A2A discovery doesn't fail at runtime.`\n );\n }\n if (Array.isArray(card.skills) && card.skills.length === 0) {\n throw new Error(\n 'createA2AAdapter: agent card has no skills — register AdCP handlers on the server (or supply options.agentCard.skills) before creating the adapter.'\n );\n }\n}\n\n// ---------------------------------------------------------------------------\n// Public entry point\n// ---------------------------------------------------------------------------\n\nconst DEFAULT_LOGGER: AdcpLogger = {\n debug: (m, d) => console.debug(m, d ?? ''),\n info: (m, d) => console.info(m, d ?? ''),\n warn: (m, d) => console.warn(m, d ?? ''),\n error: (m, d) => console.error(m, d ?? ''),\n};\n\n/**\n * Create an A2A transport adapter around an `AdcpServer`.\n *\n * @example\n * ```ts\n * const adcp = createAdcpServer({ mediaBuy: { getProducts: async () => ({ products: [] }) } });\n * const a2a = createA2AAdapter({\n * server: adcp,\n * agentCard: {\n * name: 'Acme SSP',\n * description: 'Guaranteed + non-guaranteed display inventory',\n * url: 'https://ssp.acme.com/a2a',\n * version: '1.0.0',\n * provider: { organization: 'Acme', url: 'https://acme.com' },\n * securitySchemes: { bearer: { type: 'http', scheme: 'bearer' } },\n * },\n * async authenticate(req) {\n * const token = extractBearer(req);\n * return token ? { token, clientId: 'buyer_123', scopes: [] } : null;\n * },\n * });\n *\n * app.use('/a2a', a2a.jsonRpcHandler);\n * app.use('/.well-known/agent-card.json', a2a.agentCardHandler);\n * ```\n *\n * @preview — see the module docstring.\n */\nexport function createA2AAdapter(options: A2AAdapterOptions): A2AAdapter {\n const logger = options.logger ?? DEFAULT_LOGGER;\n const card = buildAgentCard(options.server, options.agentCard);\n const taskStore = options.taskStore ?? new SdkInMemoryTaskStore();\n const executor = new AdcpA2AAgentExecutor(options.server, logger);\n const eventBusManager = new DefaultExecutionEventBusManager();\n const requestHandler = new DefaultRequestHandler(card, taskStore, executor, eventBusManager);\n\n const userBuilder = async (req: Request): Promise<User> => {\n if (!options.authenticate) return buildAnonymousUser();\n const authInfo = await options.authenticate(req);\n if (authInfo == null) {\n // Throwing an A2AError with an authentication code would give the\n // SDK's JSON-RPC envelope the right shape, but the SDK keeps\n // `A2AError` internal — surfacing as a thrown Error yields a\n // generic -32000 server error, which is still closer to the\n // right signal than silently continuing anonymously. Most\n // deployments should reject before the UserBuilder via upstream\n // middleware (e.g. `express-jwt`); auth via the UserBuilder is\n // the fallback path.\n throw new Error('A2A authentication failed');\n }\n return buildAuthenticatedUser(authInfo);\n };\n\n const jsonRpc = jsonRpcHandler({ requestHandler, userBuilder });\n const agentCardMiddleware = agentCardHandler({ agentCardProvider: requestHandler });\n\n // Derive the default basePath from the agent-card URL's pathname so\n // `mount(app)` \"just works\" for the common case where the URL the\n // seller advertised and the URL their app serves are aligned.\n // Falls back to `/a2a` when the URL has no path (empty or `/`).\n const defaultBasePath = (() => {\n try {\n const parsed = new URL(card.url);\n const pathname = parsed.pathname.replace(/\\/+$/, '');\n return pathname.length > 0 ? pathname : '/a2a';\n } catch {\n // `agentCard.url` might be a relative path or otherwise unparseable\n // — fall back to the conventional A2A mount point.\n return '/a2a';\n }\n })();\n\n const mount = (app: ExpressAppLike, mountOptions: A2AMountOptions = {}): void => {\n const basePath = mountOptions.basePath ?? defaultBasePath;\n const wellKnownAtRoot = mountOptions.wellKnownAtRoot ?? true;\n // A2A SDK clients derive `${agentCard.url}/.well-known/agent-card.json`\n // for discovery, so mount there first.\n app.use(`${basePath}/.well-known/agent-card.json`, agentCardMiddleware);\n if (wellKnownAtRoot) {\n // Origin-root is where simple \"what agent lives at this host?\"\n // probes look. Serving both locations matches what deployments\n // already hand-roll; the helper just bakes it in.\n app.use('/.well-known/agent-card.json', agentCardMiddleware);\n }\n app.use(basePath, jsonRpc);\n };\n\n return {\n jsonRpcHandler: jsonRpc,\n agentCardHandler: agentCardMiddleware,\n async getAgentCard() {\n return card;\n },\n mount,\n };\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/lib/server/a2a-adapter.ts"],"sourcesContent":["/**\n * A2A transport adapter for `AdcpServer`.\n *\n * Peer of `serve()` / `createExpressAdapter()`: same `AdcpServer` handle,\n * different wire transport. MCP and A2A share the dispatcher, idempotency\n * store, state store, resolveAccount, and governance — everything the\n * framework pipeline owns is transport-agnostic.\n *\n * **Scope**: A2A 1.0 `SendMessage`, `GetTask`, `CancelTask`, and\n * `GET /.well-known/agent-card.json`. Streaming,\n * push notifications, and mid-flight `input-required` interrupts are\n * explicit \"not yet\" — see `docs/guides/BUILD-AN-AGENT.md`.\n *\n * **Handler-return → A2A `Task.state` mapping:**\n *\n * | Handler returned… | A2A `Task.state` | Artifact payload |\n * |-------------------------------------|-------------------|--------------------------------------------------|\n * | Success arm | `completed` | DataPart with the typed AdCP response |\n * | Submitted arm (`status:'submitted'`)| `completed` [^1] | DataPart with AdCP response + `metadata.adcp_task_id` |\n * | Error arm (`errors:[]`) | `completed` | DataPart with the AdCP Error arm payload |\n * | `adcpError()` envelope | `failed` | DataPart with `adcp_error` |\n *\n * [^1]: A2A `submitted` is the INITIAL lifecycle state (before\n * `working`); A2A `completed` marks the transport call as done.\n * When the AdCP handler returns a Submitted arm the HTTP call itself\n * has completed — the AdCP-level async work is queued and buyers\n * resume it via `task_id` in the typed DataPart response. The DataPart's\n * `data` still carries `status: 'submitted'` from the AdCP response,\n * so a buyer reading the artifact payload sees the ad-tech state\n * directly; the A2A Task.state only mirrors whether the transport\n * call itself terminated.\n *\n * **Message shape.** A client addresses a tool by sending a `Message`\n * with a single structured `DataPart`: `{ skill, input }`.\n * `skill` must match a registered AdCP tool name (e.g. `get_products`);\n * `input` becomes the tool arguments before AdCP schema validation\n * runs. The 0.3 compatibility path accepts the older `{ skill, parameters }`\n * convention, but A2A 1.0 callers must use the AdCP profile's `input` field.\n *\n * **Two lifecycles, one response.** A2A's `Task.state` tracks the\n * TRANSPORT call (did the HTTP request complete?). AdCP's `status`\n * inside the artifact tracks the WORK (submitted / completed /\n * failed). Don't conflate them: a `completed` A2A task can carry a\n * `submitted` AdCP response, meaning the call returned successfully\n * but the ad-tech operation itself is still queued. Buyers resume the\n * AdCP work via the `task_id` in the structured response, not\n * by re-polling the A2A Task.\n *\n * The advertised Agent Card requires the normative AdCP profile extension\n * `https://adcontextprotocol.org/extensions/adcp/v3`.\n */\n\nimport {\n type AgentExecutor,\n type ExecutionEventBus,\n type RequestContext,\n type TaskStore,\n type User,\n type UnauthenticatedUser,\n DefaultRequestHandler,\n InMemoryTaskStore as SdkInMemoryTaskStore,\n DefaultExecutionEventBusManager,\n AgentEvent,\n} from '@a2a-js/sdk/server';\nimport { jsonRpcHandler, agentCardHandler } from '@a2a-js/sdk/server/express';\nimport { AgentCard, Role, TaskState } from '@a2a-js/sdk';\nimport { duplicateInterfacesForLegacy } from '@a2a-js/sdk/compat/v0_3';\nimport type {\n AgentCapabilities,\n AgentProvider,\n AgentSkill,\n Artifact,\n Message,\n Part,\n SecurityScheme,\n Task,\n TaskArtifactUpdateEvent,\n TaskStatusUpdateEvent,\n} from '@a2a-js/sdk';\nimport type { Request, RequestHandler } from 'express';\nimport { randomUUID } from 'node:crypto';\nimport { redactSecrets } from '../utils/redact-secrets';\nimport { getSdkServer, listRegisteredToolNames, type AdcpAuthInfo, type AdcpServer } from './adcp-server';\nimport type { McpToolResponse } from './responses';\nimport type { AdcpLogger } from './create-adcp-server';\n\n// ---------------------------------------------------------------------------\n// Public types\n// ---------------------------------------------------------------------------\n\n/**\n * Agent-card identity fields the adapter can't derive automatically.\n * Auto-seeded fields (`capabilities`, `skills`, `defaultInputModes`,\n * `defaultOutputModes`, `protocolVersion`, `additionalInterfaces`) may\n * be overridden by passing them here; the merged card is validated\n * against A2A's required-field set at boot.\n */\nexport interface A2AAgentCardOverrides {\n /** Human-readable agent name (required). */\n name: string;\n /** Human-readable description (required). */\n description: string;\n /** Agent URL — the endpoint A2A clients connect to (required). */\n url: string;\n /** Agent version (required). */\n version: string;\n\n provider?: AgentProvider;\n documentationUrl?: string;\n iconUrl?: string;\n securitySchemes?: Record<string, SecurityScheme | LegacySecurityScheme>;\n security?: { [k: string]: string[] }[];\n /** @deprecated The adapter exposes JSON-RPC only; this value must be `JSONRPC` when supplied. */\n preferredTransport?: string;\n\n /**\n * Override the auto-generated capabilities. The adapter sets\n * `streaming: false` and `pushNotifications: false` by default (this adapter\n * ships neither). Set `streaming: true` if you wire a downstream\n * extension; the adapter still does not emit streaming updates.\n */\n capabilities?: A2AAgentCapabilitiesOverride;\n\n /**\n * Override the auto-generated skills list. When omitted the adapter\n * derives one `AgentSkill` per registered AdCP tool from the server's\n * capability object. Supply this to add descriptions, examples, tags,\n * or per-skill input/output modes the SDK can't infer. Framework-private\n * tools such as `comply_test_controller` are still filtered from the public\n * A2A agent card.\n */\n skills?: A2AAgentSkillOverride[];\n\n defaultInputModes?: string[];\n defaultOutputModes?: string[];\n /** @deprecated AdCP 3.2 always advertises A2A 1.0 plus the SDK's 0.3 compatibility interface. */\n protocolVersion?: string;\n}\n\nexport interface LegacyHttpSecurityScheme {\n type: 'http';\n scheme: string;\n description?: string;\n bearerFormat?: string;\n}\n\nexport type LegacySecurityScheme =\n | LegacyHttpSecurityScheme\n | { type: 'apiKey'; description?: string; in: 'cookie' | 'header' | 'query'; name: string }\n | {\n type: 'oauth2';\n description?: string;\n oauth2MetadataUrl?: string;\n flows: Partial<\n Record<\n 'authorizationCode' | 'clientCredentials' | 'implicit' | 'password',\n | {\n authorizationUrl?: string;\n tokenUrl?: string;\n refreshUrl?: string;\n scopes: Record<string, string>;\n }\n | undefined\n >\n >;\n }\n | { type: 'openIdConnect'; description?: string; openIdConnectUrl: string }\n | { type: 'mutualTLS'; description?: string };\n\nexport type A2AAgentSkillOverride = Omit<\n AgentSkill,\n 'examples' | 'inputModes' | 'outputModes' | 'securityRequirements'\n> &\n Partial<Pick<AgentSkill, 'examples' | 'inputModes' | 'outputModes' | 'securityRequirements'>>;\n\nexport type A2AAgentCapabilitiesOverride = Omit<AgentCapabilities, 'extensions'> & {\n extensions?: AgentCapabilities['extensions'];\n};\n\n/**\n * Options for {@link createA2AAdapter}.\n *\n * **Auth posture.** `authenticate(req)` runs BEFORE the tool handler\n * sees the request. Return an `AdcpAuthInfo` to let the pipeline\n * proceed with that principal; return `null` (or throw) to reject.\n * A rejection currently surfaces as a generic JSON-RPC `-32000`\n * server error — the `@a2a-js/sdk` doesn't yet expose a typed\n * authentication-failed code for the `UserBuilder` path. Production\n * deployments SHOULD wire upstream middleware (e.g. `express-jwt`) to\n * reject with a proper HTTP 401 / WWW-Authenticate challenge before\n * the request reaches `jsonRpcHandler`. The `authenticate` option\n * here is a last-line-of-defense guard, not the primary auth surface.\n *\n * **Agent-card `securitySchemes`.** Legacy 0.3 OpenAPI-style schemes are\n * converted to the A2A 1.0 union and unsupported shapes fail at startup.\n * Only put non-secret discovery data there (token endpoint, scopes, OIDC\n * issuer URL). Never paste client secrets, private JWKS, or internal URLs\n * into the card.\n *\n * Omitting `authenticate` makes the adapter anonymous — handlers see\n * `ctx.authInfo === undefined`, matching `serve({ authenticate: undefined })`.\n */\nexport interface A2AAdapterOptions {\n /** AdCP server whose registered tools this adapter exposes over A2A. */\n server: AdcpServer;\n\n /**\n * Authenticate an inbound A2A request. Transport-level auth runs\n * before `AdcpServer.invoke()` so the framework pipeline sees a\n * verified `authInfo`. Return `null` (or throw) to reject.\n */\n authenticate?: (req: Request) => Promise<AdcpAuthInfo | null>;\n\n /** Seller-supplied agent-card identity fields. Required. */\n agentCard: A2AAgentCardOverrides;\n\n /**\n * A2A task store. Tests and development default to the SDK's in-memory\n * store. Production must supply a bounded, durable implementation.\n */\n taskStore?: TaskStore;\n\n /** Optional logger. Falls back to `console`. */\n logger?: AdcpLogger;\n}\n\n/** Minimal Express app surface the adapter's `mount()` helper needs. */\nexport interface ExpressAppLike {\n use(path: string, ...handlers: RequestHandler[]): unknown;\n}\n\n/** Options for {@link A2AAdapter.mount}. */\nexport interface A2AMountOptions {\n /**\n * URL-path prefix for the JSON-RPC endpoint. Defaults to the pathname\n * of the agent card's `url` field (so `url: 'https://host/a2a'` mounts\n * JSON-RPC at `/a2a`). Override to mount under a different path.\n */\n basePath?: string;\n /**\n * When true (default), also mounts the agent card at the origin root\n * (`/.well-known/agent-card.json`) so simple discovery probes targeting\n * the host itself find the card. Some deployments disable this when an\n * upstream proxy owns origin-root routes — set `false` to mount only\n * at `{basePath}/.well-known/agent-card.json`.\n */\n wellKnownAtRoot?: boolean;\n}\n\n/**\n * Value returned by {@link createA2AAdapter}.\n *\n * For almost every seller, `adapter.mount(app)` is the right entry\n * point — it wires all four routes (JSON-RPC at the agent-card's\n * path, the agent card at both `{basePath}/.well-known/agent-card.json`\n * for A2A discovery and `/.well-known/agent-card.json` for origin-root\n * probes) with one call.\n *\n * The `jsonRpcHandler` and `agentCardHandler` fields stay exposed for\n * deployments that need finer control (mounting behind a custom auth\n * layer, serving the card from a CDN, testing).\n */\nexport interface A2AAdapter {\n /** The A2A JSON-RPC middleware (`message/send`, `tasks/get`, `tasks/cancel`). */\n jsonRpcHandler: RequestHandler;\n /** The agent-card discovery GET middleware. */\n agentCardHandler: RequestHandler;\n /** Returns the merged, validated agent card. */\n getAgentCard(): Promise<AgentCard>;\n /**\n * Wire all A2A routes onto an Express-compatible app in one call.\n * Eliminates the \"card mounted at only one location\" footgun: the\n * A2A SDK derives `${agentCard.url}/.well-known/agent-card.json` for\n * discovery, while many clients also probe origin root — this helper\n * satisfies both. See {@link A2AMountOptions} to override paths.\n */\n mount(app: ExpressAppLike, options?: A2AMountOptions): void;\n}\n\nclass RedactingA2ATaskStore implements TaskStore {\n constructor(private readonly delegate: TaskStore) {}\n\n save(task: Task, context: Parameters<TaskStore['save']>[1]): Promise<void> {\n return this.delegate.save(redactSecrets(task) as Task, context);\n }\n\n load(taskId: string, context: Parameters<TaskStore['load']>[1]): Promise<Task | undefined> {\n return this.delegate.load(taskId, context);\n }\n\n list(\n params: Parameters<TaskStore['list']>[0],\n context: Parameters<TaskStore['list']>[1]\n ): ReturnType<TaskStore['list']> {\n return this.delegate.list(params, context);\n }\n}\n\n// ---------------------------------------------------------------------------\n// Internals\n// ---------------------------------------------------------------------------\n\n/**\n * Our `User` carries the full AdCP auth payload, not just the two\n * getters A2A's minimal `User` requires. The executor reads this back\n * out of `RequestContext.context.user`.\n */\ninterface A2AAdcpUser extends User {\n readonly adcpAuthInfo?: AdcpAuthInfo;\n}\n\nfunction buildAuthenticatedUser(authInfo: AdcpAuthInfo): A2AAdcpUser {\n const clientId = authInfo.clientId;\n return {\n get isAuthenticated() {\n return true;\n },\n get userName() {\n return clientId;\n },\n adcpAuthInfo: authInfo,\n };\n}\n\nfunction buildAnonymousUser(): UnauthenticatedUser {\n return {\n get isAuthenticated() {\n return false as const;\n },\n get userName() {\n return 'anonymous';\n },\n };\n}\n\nfunction getAdcpAuthInfo(context: RequestContext['context']): AdcpAuthInfo | undefined {\n const user = context?.user as A2AAdcpUser | undefined;\n return user?.adcpAuthInfo;\n}\n\n/**\n * Extract the `{ skill, input }` pair from the inbound Message's parts.\n *\n * Convention: the client sends a single DataPart with\n * `{ skill: '<tool_name>', input: { ...args } }`. Reject anything else\n * — text-only payloads, files, multiple data parts — so buyers get a\n * deterministic error instead of silently-wrong routing.\n */\ninterface ExtractedInvocation {\n skill: string;\n input: Record<string, unknown>;\n}\n\nfunction extractInvocation(message: Message, allowLegacyParameters = false): ExtractedInvocation {\n if (!Array.isArray(message.parts) || message.parts.length === 0) {\n throw new A2AInvocationError('Message must carry at least one part with a `data` kind.');\n }\n const dataParts = message.parts.filter(\n (part): part is Part & { content: { $case: 'data'; value: unknown } } => part.content?.$case === 'data'\n );\n if (dataParts.length === 0) {\n throw new A2AInvocationError(\n \"Message must include a DataPart with { skill, input } — text-only messages aren't routable to AdCP tools.\"\n );\n }\n if (dataParts.length > 1) {\n throw new A2AInvocationError(\n 'Message must include exactly one DataPart — multi-part invocations are not supported.'\n );\n }\n const firstDataPart = dataParts[0]!;\n const rawData = firstDataPart.content.value;\n // Guard before destructuring — a client sending `{ kind: 'data', data: null }`\n // or `data: \"string\"` would otherwise TypeError on payload.skill and surface\n // as a generic HANDLER_THREW instead of INVALID_INVOCATION.\n if (rawData == null || typeof rawData !== 'object' || Array.isArray(rawData)) {\n throw new A2AInvocationError('DataPart `data` must be an object containing { skill, input }.');\n }\n const payload = rawData as Record<string, unknown>;\n const skill = payload.skill;\n const input = payload.input ?? (allowLegacyParameters ? payload.parameters : undefined);\n if (typeof skill !== 'string' || skill.length === 0) {\n throw new A2AInvocationError('DataPart must include a non-empty string `skill` field naming the AdCP tool.');\n }\n if (input != null && (typeof input !== 'object' || Array.isArray(input))) {\n throw new A2AInvocationError('DataPart `input` must be an object.');\n }\n if (input == null) {\n throw new A2AInvocationError('DataPart must include an `input` object.');\n }\n return { skill, input: input as Record<string, unknown> };\n}\n\n/** Thrown when an incoming Message doesn't match the AdCP-over-A2A convention. */\nexport class A2AInvocationError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'A2AInvocationError';\n }\n}\n\n// ---------------------------------------------------------------------------\n// Executor — translates A2A execute() into adcpServer.invoke() + events\n// ---------------------------------------------------------------------------\n\n/**\n * Classify a framework-produced `McpToolResponse` so the executor knows\n * what A2A `Task.state` to publish.\n */\ntype ClassifiedResult =\n | { kind: 'success'; data: Record<string, unknown> }\n | { kind: 'submitted'; adcpTaskId: string; data: Record<string, unknown> }\n | { kind: 'paused'; status: 'input-required' | 'auth-required'; data: Record<string, unknown> }\n | { kind: 'error_arm'; data: Record<string, unknown> }\n | { kind: 'adcp_error'; data: Record<string, unknown> };\n\nfunction classifyResponse(res: McpToolResponse): ClassifiedResult {\n const structured = (res.structuredContent ?? {}) as Record<string, unknown>;\n if (res.isError === true) {\n if (structured.adcp_error && typeof structured.adcp_error === 'object') {\n return { kind: 'adcp_error', data: structured };\n }\n return { kind: 'error_arm', data: structured };\n }\n if (structured.status === 'submitted' && typeof structured.task_id === 'string') {\n return { kind: 'submitted', adcpTaskId: structured.task_id, data: structured };\n }\n if (structured.status === 'input-required' || structured.status === 'auth-required') {\n return { kind: 'paused', status: structured.status, data: structured };\n }\n return { kind: 'success', data: structured };\n}\n\nclass AdcpA2AAgentExecutor implements AgentExecutor {\n // Cooperative-cancel flag. `DefaultRequestHandler.cancelTask` only\n // calls our executor's `cancelTask` while an execute() is in-flight\n // (eventBus still open); post-completion cancels are handled by the\n // SDK directly against the task store. So this set only holds\n // taskIds that currently have a pending `cancelTask`, and execute()\n // always clears its entry at the end — no unbounded growth.\n private readonly canceled = new Set<string>();\n\n // A2A `Task.id` → original `contextId`. Populated when execute()\n // starts so `cancelTask` can emit a well-formed status-update event\n // against the same contextId instead of guessing an empty string.\n // Cleared alongside the canceled flag in execute()'s finally block.\n private readonly taskContextIds = new Map<string, string>();\n\n constructor(\n private readonly server: AdcpServer,\n private readonly logger: AdcpLogger\n ) {}\n\n async execute(requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void> {\n const { taskId, contextId, userMessage } = requestContext;\n const authInfo = getAdcpAuthInfo(requestContext.context);\n const requestedExtensions = requestContext.context.requestedExtensions;\n const requestedAdcpExtension =\n Array.isArray(requestedExtensions) && requestedExtensions.some(extension => extension === ADCP_A2A_EXTENSION);\n const legacyWire = requestContext.context.requestedVersion.startsWith('0.');\n\n this.taskContextIds.set(taskId, contextId);\n try {\n // Register the task with the ResultManager by publishing a Task\n // event first — subsequent status-update / artifact-update events\n // only resolve if the manager has seen the task. `working` is the\n // initial state; we replace it with completed / submitted / failed\n // once the handler returns.\n this.publishInitialTask(eventBus, taskId, contextId, userMessage);\n\n if (!legacyWire) {\n if (!requestedAdcpExtension) {\n this.emitFailure(eventBus, taskId, contextId, {\n reason: 'REQUIRED_EXTENSION_MISSING',\n message: `A2A requests must activate ${ADCP_A2A_EXTENSION}`,\n });\n return;\n }\n requestContext.context.addActivatedExtension(ADCP_A2A_EXTENSION);\n }\n\n let invocation: ExtractedInvocation;\n try {\n invocation = extractInvocation(userMessage, legacyWire);\n } catch (err) {\n const message = err instanceof Error ? err.message : 'Invalid A2A invocation';\n this.emitFailure(eventBus, taskId, contextId, {\n reason: 'INVALID_INVOCATION',\n message,\n });\n return;\n }\n\n let response: McpToolResponse | undefined;\n const toolNames = a2aSkillToServerToolNames(invocation.skill);\n let invokedToolName: string | undefined;\n try {\n for (const toolName of toolNames) {\n try {\n invokedToolName = toolName;\n response = await this.server.invoke({\n // Platform servers register `tasks_get`; older/custom A2A\n // fixtures may still register the slash name directly.\n toolName,\n args: invocation.input,\n ...(authInfo && { authInfo }),\n });\n break;\n } catch (err) {\n if (toolName === 'tasks_get' && invocation.skill === 'tasks/get' && isToolNotRegistered(err, toolName)) {\n continue;\n }\n throw err;\n }\n }\n } catch (err) {\n const message = err instanceof Error ? err.message : String(err);\n this.logger.error('A2A adapter: handler invocation threw', {\n toolName: invokedToolName ?? invocation.skill,\n requestedToolName: invocation.skill,\n error: message,\n });\n this.emitFailure(eventBus, taskId, contextId, {\n reason: 'HANDLER_THREW',\n message: 'The A2A tool invocation failed.',\n });\n return;\n }\n if (response === undefined) {\n this.emitFailure(eventBus, taskId, contextId, {\n reason: 'HANDLER_THREW',\n message: `No handler registered for ${invocation.skill}`,\n });\n return;\n }\n\n if (this.canceled.has(taskId)) {\n this.publishStatus(eventBus, taskId, contextId, TaskState.TASK_STATE_CANCELED);\n return;\n }\n\n const classified = classifyResponse(response);\n this.publishArtifact(eventBus, taskId, contextId, classified, legacyWire);\n // A2A Task.state maps the TRANSPORT call lifecycle, not the AdCP\n // work. A `submitted` AdCP arm means the HTTP call itself\n // completed — the ad-tech work is queued, resumed via\n // `task_id` in the typed DataPart response. Emitting A2A\n // `TASK_STATE_SUBMITTED` as the final transport state would be a\n // non-conformant transition (`submitted` is the initial state before\n // `working`, never terminal). Buyers read\n // the AdCP-level status from the artifact's `data.status` field.\n // This server adapter does not expose a continuation dispatcher.\n // A handler-returned pause is therefore terminal at the A2A transport\n // layer and rides in the artifact as an explicitly nonresumable AdCP\n // result. Leaving the Task live would invite `{input}` to re-enter the\n // ordinary request/idempotency pipeline as an unsafe fresh mutation.\n this.publishStatus(\n eventBus,\n taskId,\n contextId,\n classified.kind === 'success' ||\n classified.kind === 'submitted' ||\n classified.kind === 'paused' ||\n (!legacyWire && classified.kind === 'error_arm')\n ? TaskState.TASK_STATE_COMPLETED\n : TaskState.TASK_STATE_FAILED\n );\n } finally {\n // Clean up per-task state regardless of path — the executor is\n // long-lived (one per adapter instance), so any leak compounds.\n this.canceled.delete(taskId);\n this.taskContextIds.delete(taskId);\n eventBus.finished();\n }\n }\n\n async cancelTask(taskId: string, eventBus: ExecutionEventBus): Promise<void> {\n this.canceled.add(taskId);\n // `DefaultRequestHandler.cancelTask` only reaches us when execute()\n // is still in-flight (eventBus still open). Publish the canceled\n // status so the SDK's secondary `_processEvents` loop terminates;\n // execute() will ALSO see the flag and short-circuit before\n // publishing a success/failure status. The A2A event bus is\n // idempotent on duplicate status publishes — whichever lands first\n // wins the taskStore write.\n const contextId = this.taskContextIds.get(taskId) ?? '';\n this.publishStatus(eventBus, taskId, contextId, TaskState.TASK_STATE_CANCELED);\n // Do NOT call eventBus.finished() here — execute()'s finally block\n // owns the finished() signal, and calling it twice risks closing\n // the queue mid-event-flush on the primary processEvents loop.\n }\n\n private publishInitialTask(\n eventBus: ExecutionEventBus,\n taskId: string,\n contextId: string,\n userMessage: Message\n ): void {\n const task: Task = {\n id: taskId,\n contextId,\n status: {\n state: TaskState.TASK_STATE_WORKING,\n message: undefined,\n timestamp: new Date().toISOString(),\n },\n artifacts: [],\n history: [userMessage],\n metadata: undefined,\n };\n eventBus.publish(AgentEvent.task(task));\n }\n\n private publishStatus(\n eventBus: ExecutionEventBus,\n taskId: string,\n contextId: string,\n state: TaskState,\n messageData?: Record<string, unknown>\n ): void {\n const event: TaskStatusUpdateEvent = {\n taskId,\n contextId,\n status: {\n state,\n timestamp: new Date().toISOString(),\n message: messageData\n ? {\n messageId: randomUUID(),\n contextId,\n taskId,\n role: Role.ROLE_AGENT,\n parts: [dataPart(messageData)],\n metadata: undefined,\n extensions: [],\n referenceTaskIds: [],\n }\n : undefined,\n },\n metadata: undefined,\n };\n eventBus.publish(AgentEvent.statusUpdate(event));\n }\n\n private publishArtifact(\n eventBus: ExecutionEventBus,\n taskId: string,\n contextId: string,\n classified: ClassifiedResult,\n legacyWire: boolean\n ): void {\n const artifactName =\n classified.kind === 'success'\n ? 'result'\n : classified.kind === 'submitted'\n ? 'submitted'\n : classified.kind === 'paused'\n ? 'result'\n : 'error';\n // DataPart `data` is the AdCP tool's typed response — no\n // transport-level fields injected here so the payload still\n // validates against the tool's AdCP response schema. AdCP\n // On A2A 1.0, work identity stays in the typed response. Metadata is\n // populated only for the SDK's 0.3 compatibility wire.\n const artifact: Artifact = {\n artifactId: randomUUID(),\n name: artifactName,\n description: '',\n parts: [dataPart(classified.data)],\n metadata: legacyWire\n ? {\n adcp_status:\n classified.kind === 'submitted'\n ? 'submitted'\n : classified.kind === 'paused'\n ? classified.status\n : classified.kind === 'success'\n ? 'completed'\n : 'failed',\n ...(classified.kind === 'submitted' && { adcp_task_id: classified.adcpTaskId }),\n }\n : undefined,\n extensions: [],\n };\n const event: TaskArtifactUpdateEvent = {\n taskId,\n contextId,\n artifact,\n append: false,\n lastChunk: true,\n metadata: undefined,\n };\n eventBus.publish(AgentEvent.artifactUpdate(event));\n }\n\n private emitFailure(\n eventBus: ExecutionEventBus,\n taskId: string,\n contextId: string,\n payload: { reason: string; message: string }\n ): void {\n const artifact: Artifact = {\n artifactId: randomUUID(),\n name: 'error',\n description: '',\n parts: [dataPart(payload)],\n metadata: undefined,\n extensions: [],\n };\n eventBus.publish(\n AgentEvent.artifactUpdate({\n taskId,\n contextId,\n artifact,\n append: false,\n lastChunk: true,\n metadata: undefined,\n })\n );\n this.publishStatus(eventBus, taskId, contextId, TaskState.TASK_STATE_FAILED);\n }\n}\n\nfunction dataPart(value: unknown): Part {\n return {\n content: { $case: 'data', value },\n metadata: undefined,\n filename: '',\n mediaType: 'application/json',\n };\n}\n\nfunction isToolNotRegistered(err: unknown, toolName: string): boolean {\n return err instanceof Error && err.message.includes(`tool \"${toolName}\" is not registered`);\n}\n\nfunction a2aSkillToServerToolNames(skill: string): string[] {\n return skill === 'tasks/get' ? ['tasks_get', 'tasks/get'] : [skill];\n}\n\n// ---------------------------------------------------------------------------\n// Agent card\n// ---------------------------------------------------------------------------\n\nconst DEFAULT_MODES = ['application/json'] as const;\nconst DEFAULT_PROTOCOL_VERSION = '1.0';\nconst ADCP_A2A_EXTENSION = 'https://adcontextprotocol.org/extensions/adcp/v3';\nconst PUBLIC_AGENT_CARD_EXCLUDED_SKILLS = new Set(['comply_test_controller']);\n\n/**\n * Derive one `AgentSkill` per registered AdCP tool. Skills without\n * seller-supplied descriptions get a generic one pointing at the\n * AdCP tool name — enough to pass A2A registry validation; sellers\n * are expected to enrich via `agentCard.skills` in production.\n */\nfunction deriveSkills(toolNames: string[]): AgentSkill[] {\n const publicNames = new Set(toolNames.map(toA2ASkillName));\n return [...publicNames].map(name => ({\n id: name,\n name,\n description: `AdCP tool: ${name}. Send { skill: \"${name}\", input: { ... } } as a DataPart.`,\n tags: ['adcp'],\n examples: [],\n inputModes: [],\n outputModes: [],\n securityRequirements: [],\n }));\n}\n\nfunction toA2ASkillName(toolName: string): string {\n return toolName === 'tasks_get' ? 'tasks/get' : toolName;\n}\n\nfunction listRegisteredTools(server: AdcpServer): string[] {\n const sdk = getSdkServer(server);\n if (!sdk) return [];\n return listRegisteredToolNames(sdk).filter(name => !PUBLIC_AGENT_CARD_EXCLUDED_SKILLS.has(name));\n}\n\nfunction filterPublicAgentCardSkills(skills: AgentSkill[]): AgentSkill[] {\n return skills.filter(skill => {\n const id = typeof skill.id === 'string' ? skill.id : undefined;\n const name = typeof skill.name === 'string' ? skill.name : undefined;\n return !(\n (id != null && PUBLIC_AGENT_CARD_EXCLUDED_SKILLS.has(id)) ||\n (name != null && PUBLIC_AGENT_CARD_EXCLUDED_SKILLS.has(name))\n );\n });\n}\n\nfunction normalizeAgentCardSkills(skills: A2AAgentSkillOverride[]): AgentSkill[] {\n return skills.map(skill => ({\n ...skill,\n examples: skill.examples ?? [],\n inputModes: skill.inputModes ?? [],\n outputModes: skill.outputModes ?? [],\n securityRequirements: skill.securityRequirements ?? [],\n }));\n}\n\nfunction buildAgentCard(server: AdcpServer, overrides: A2AAgentCardOverrides): AgentCard {\n if (overrides.preferredTransport && overrides.preferredTransport.toUpperCase() !== 'JSONRPC') {\n throw new Error('createA2AAdapter: only the JSONRPC A2A transport is supported');\n }\n const tools = listRegisteredTools(server);\n const skills = filterPublicAgentCardSkills(\n overrides.skills ? normalizeAgentCardSkills(overrides.skills) : deriveSkills(tools)\n );\n // Capability discovery is an invocable AdCP skill and is required for safe\n // version/lifecycle selection. Keep it visible even when sellers override\n // their business-skill descriptions. Unlike native A2A JSON-RPC methods,\n // every published skill here is callable through message/send.\n if (\n tools.includes('get_adcp_capabilities') &&\n !skills.some(skill => skill.id === 'get_adcp_capabilities' || skill.name === 'get_adcp_capabilities')\n ) {\n skills.push(...deriveSkills(['get_adcp_capabilities']));\n }\n\n const card: AgentCard = {\n name: overrides.name,\n description: overrides.description,\n supportedInterfaces: duplicateInterfacesForLegacy(\n [\n {\n url: overrides.url,\n protocolBinding: 'JSONRPC',\n protocolVersion: DEFAULT_PROTOCOL_VERSION,\n tenant: '',\n },\n ],\n ['JSONRPC']\n ),\n version: overrides.version,\n defaultInputModes: overrides.defaultInputModes ?? [...DEFAULT_MODES],\n defaultOutputModes: overrides.defaultOutputModes ?? [...DEFAULT_MODES],\n capabilities: {\n streaming: overrides.capabilities?.streaming ?? false,\n pushNotifications: overrides.capabilities?.pushNotifications ?? false,\n extendedAgentCard: overrides.capabilities?.extendedAgentCard,\n extensions: [\n ...(overrides.capabilities?.extensions ?? []).filter(extension => extension.uri !== ADCP_A2A_EXTENSION),\n {\n uri: ADCP_A2A_EXTENSION,\n description: 'AdCP structured task invocation profile',\n required: true,\n params: undefined,\n },\n ],\n },\n skills,\n provider: overrides.provider,\n securitySchemes: normalizeSecuritySchemes(overrides.securitySchemes),\n securityRequirements: (overrides.security ?? []).map(requirement => ({\n schemes: Object.fromEntries(Object.entries(requirement).map(([name, scopes]) => [name, { list: scopes }])),\n })),\n signatures: [],\n ...(overrides.documentationUrl && { documentationUrl: overrides.documentationUrl }),\n ...(overrides.iconUrl && { iconUrl: overrides.iconUrl }),\n };\n\n // Preserve the adapter's pre-1.0 programmatic read aliases without\n // advertising them on the v1 Agent Card wire shape.\n Object.defineProperties(card, {\n url: { value: overrides.url, enumerable: false },\n protocolVersion: { value: DEFAULT_PROTOCOL_VERSION, enumerable: false },\n // The SDK's Express card middleware currently calls JSON.stringify on the\n // ts-proto in-memory shape. Supply the official JSON projection so v1\n // security-scheme unions serialize as `type`/`scheme`, not `$case`.\n toJSON: { value: () => AgentCard.toJSON(card), enumerable: false },\n });\n\n validateAgentCard(card);\n return card;\n}\n\nfunction normalizeSecuritySchemes(schemes: A2AAgentCardOverrides['securitySchemes']): Record<string, SecurityScheme> {\n return Object.fromEntries(\n Object.entries(schemes ?? {}).map(([name, value]) => {\n const candidate = value as SecurityScheme & {\n type?: string;\n description?: string;\n scheme?: string | SecurityScheme['scheme'];\n bearerFormat?: string;\n };\n if (candidate.scheme && typeof candidate.scheme === 'object' && '$case' in candidate.scheme) {\n return [name, value as SecurityScheme];\n }\n const legacy = value as LegacySecurityScheme;\n switch (legacy.type) {\n case 'apiKey':\n return [\n name,\n {\n scheme: {\n $case: 'apiKeySecurityScheme',\n value: { description: legacy.description ?? '', location: legacy.in, name: legacy.name },\n },\n } satisfies SecurityScheme,\n ];\n case 'http':\n return [\n name,\n {\n scheme: {\n $case: 'httpAuthSecurityScheme',\n value: {\n description: legacy.description ?? '',\n scheme: legacy.scheme,\n bearerFormat: legacy.bearerFormat ?? '',\n },\n },\n } satisfies SecurityScheme,\n ];\n case 'oauth2':\n return [\n name,\n {\n scheme: {\n $case: 'oauth2SecurityScheme',\n value: {\n description: legacy.description ?? '',\n oauth2MetadataUrl: legacy.oauth2MetadataUrl ?? '',\n flows: normalizeLegacyOAuthFlows(legacy.flows),\n },\n },\n } satisfies SecurityScheme,\n ];\n case 'openIdConnect':\n return [\n name,\n {\n scheme: {\n $case: 'openIdConnectSecurityScheme',\n value: {\n description: legacy.description ?? '',\n openIdConnectUrl: legacy.openIdConnectUrl,\n },\n },\n } satisfies SecurityScheme,\n ];\n case 'mutualTLS':\n return [\n name,\n {\n scheme: {\n $case: 'mtlsSecurityScheme',\n value: { description: legacy.description ?? '' },\n },\n } satisfies SecurityScheme,\n ];\n }\n throw new Error(`createA2AAdapter: unsupported security scheme shape for \"${name}\"`);\n })\n );\n}\n\nfunction normalizeLegacyOAuthFlows(flows: Extract<LegacySecurityScheme, { type: 'oauth2' }>['flows']): any {\n const selected = flows.authorizationCode\n ? ['authorizationCode', flows.authorizationCode]\n : flows.clientCredentials\n ? ['clientCredentials', flows.clientCredentials]\n : flows.implicit\n ? ['implicit', flows.implicit]\n : flows.password\n ? ['password', flows.password]\n : undefined;\n if (!selected) return undefined;\n const [kind, flow] = selected as [string, NonNullable<(typeof flows)[keyof typeof flows]>];\n return {\n flow: {\n $case: kind,\n value: {\n authorizationUrl: flow.authorizationUrl ?? '',\n tokenUrl: flow.tokenUrl ?? '',\n refreshUrl: flow.refreshUrl ?? '',\n scopes: flow.scopes,\n ...(kind === 'authorizationCode' && { pkceRequired: false }),\n },\n },\n };\n}\n\n/**\n * Fail loud at adapter construction when the merged card misses\n * A2A-required fields. The SDK would reject the discovery response\n * at runtime anyway — better to catch it at boot so the agent never\n * binds a port with an unserviceable card.\n */\nfunction validateAgentCard(card: AgentCard): void {\n const missing: string[] = [];\n if (!card.name) missing.push('name');\n if (!card.description) missing.push('description');\n if (!card.supportedInterfaces?.[0]?.url) missing.push('supportedInterfaces[0].url');\n if (!card.version) missing.push('version');\n if (card.supportedInterfaces?.[0]?.protocolVersion !== DEFAULT_PROTOCOL_VERSION) missing.push('protocolVersion=1.0');\n if (!card.capabilities) missing.push('capabilities');\n if (!Array.isArray(card.defaultInputModes) || card.defaultInputModes.length === 0) {\n missing.push('defaultInputModes');\n }\n if (!Array.isArray(card.defaultOutputModes) || card.defaultOutputModes.length === 0) {\n missing.push('defaultOutputModes');\n }\n if (!Array.isArray(card.skills)) missing.push('skills');\n if (missing.length > 0) {\n throw new Error(\n `createA2AAdapter: agent card is missing required fields — ${missing.join(', ')}. ` +\n `Supply them via options.agentCard so A2A discovery doesn't fail at runtime.`\n );\n }\n if (Array.isArray(card.skills) && card.skills.length === 0) {\n throw new Error(\n 'createA2AAdapter: agent card has no skills — register AdCP handlers on the server (or supply options.agentCard.skills) before creating the adapter.'\n );\n }\n}\n\n// ---------------------------------------------------------------------------\n// Public entry point\n// ---------------------------------------------------------------------------\n\nconst DEFAULT_LOGGER: AdcpLogger = {\n debug: (m, d) => console.debug(m, d ?? ''),\n info: (m, d) => console.info(m, d ?? ''),\n warn: (m, d) => console.warn(m, d ?? ''),\n error: (m, d) => console.error(m, d ?? ''),\n};\n\n/**\n * Create an A2A transport adapter around an `AdcpServer`.\n *\n * @example\n * ```ts\n * const adcp = createAdcpServer({ mediaBuy: { getProducts: async () => ({ products: [] }) } });\n * const a2a = createA2AAdapter({\n * server: adcp,\n * agentCard: {\n * name: 'Acme SSP',\n * description: 'Guaranteed + non-guaranteed display inventory',\n * url: 'https://ssp.acme.com/a2a',\n * version: '1.0.0',\n * provider: { organization: 'Acme', url: 'https://acme.com' },\n * securitySchemes: { bearer: { type: 'http', scheme: 'bearer' } },\n * },\n * async authenticate(req) {\n * const token = extractBearer(req);\n * return token ? { token, clientId: 'buyer_123', scopes: [] } : null;\n * },\n * });\n *\n * app.use('/a2a', a2a.jsonRpcHandler);\n * app.use('/.well-known/agent-card.json', a2a.agentCardHandler);\n * ```\n *\n * @preview — see the module docstring.\n */\nexport function createA2AAdapter(options: A2AAdapterOptions): A2AAdapter {\n const logger = options.logger ?? DEFAULT_LOGGER;\n const card = buildAgentCard(options.server, options.agentCard);\n const handlerCard = structuredClone(card);\n if (handlerCard.capabilities?.extensions) {\n handlerCard.capabilities.extensions = handlerCard.capabilities.extensions.map(extension =>\n extension.uri === ADCP_A2A_EXTENSION ? { ...extension, required: false } : extension\n );\n }\n const development = process.env.NODE_ENV === 'test' || process.env.NODE_ENV === 'development';\n if (!options.taskStore && !development) {\n throw new Error(\n 'createA2AAdapter: production requires a bounded durable taskStore; ' +\n 'the SDK in-memory store is available only under NODE_ENV=test or NODE_ENV=development'\n );\n }\n const taskStore = new RedactingA2ATaskStore(options.taskStore ?? new SdkInMemoryTaskStore());\n const executor = new AdcpA2AAgentExecutor(options.server, logger);\n const eventBusManager = new DefaultExecutionEventBusManager();\n // The SDK enforces required extensions before AgentExecutor receives the\n // negotiated version. Keep its internal card permissive so 0.3 callers can\n // interoperate, then enforce the required AdCP extension for 1.0 in execute().\n const requestHandler = new DefaultRequestHandler(handlerCard, taskStore, executor, eventBusManager);\n\n const userBuilder = async (req: Request): Promise<User> => {\n if (!options.authenticate) return buildAnonymousUser();\n const authInfo = await options.authenticate(req);\n if (authInfo == null) {\n // Throwing an A2AError with an authentication code would give the\n // SDK's JSON-RPC envelope the right shape, but the SDK keeps\n // `A2AError` internal — surfacing as a thrown Error yields a\n // generic -32000 server error, which is still closer to the\n // right signal than silently continuing anonymously. Most\n // deployments should reject before the UserBuilder via upstream\n // middleware (e.g. `express-jwt`); auth via the UserBuilder is\n // the fallback path.\n throw new Error('A2A authentication failed');\n }\n return buildAuthenticatedUser(authInfo);\n };\n\n const legacyCompat = { enabled: true } as const;\n const jsonRpc = jsonRpcHandler({ requestHandler, userBuilder, legacyCompat });\n const nativeAgentCardMiddleware = agentCardHandler({ agentCardProvider: async () => card });\n const legacyAgentCardMiddleware = agentCardHandler({ agentCardProvider: async () => handlerCard, legacyCompat });\n const agentCardMiddleware: RequestHandler = (req, res, next) => {\n const requestedVersion = req.header('A2A-Version');\n return requestedVersion && !requestedVersion.startsWith('0.')\n ? nativeAgentCardMiddleware(req, res, next)\n : legacyAgentCardMiddleware(req, res, next);\n };\n\n // Derive the default basePath from the agent-card URL's pathname so\n // `mount(app)` \"just works\" for the common case where the URL the\n // seller advertised and the URL their app serves are aligned.\n // Falls back to `/a2a` when the URL has no path (empty or `/`).\n const defaultBasePath = (() => {\n try {\n const parsed = new URL(card.supportedInterfaces[0]!.url);\n const pathname = parsed.pathname.replace(/\\/+$/, '');\n return pathname.length > 0 ? pathname : '/a2a';\n } catch {\n // `agentCard.url` might be a relative path or otherwise unparseable\n // — fall back to the conventional A2A mount point.\n return '/a2a';\n }\n })();\n\n const mount = (app: ExpressAppLike, mountOptions: A2AMountOptions = {}): void => {\n const basePath = mountOptions.basePath ?? defaultBasePath;\n const wellKnownAtRoot = mountOptions.wellKnownAtRoot ?? true;\n // A2A SDK clients derive `${agentCard.url}/.well-known/agent-card.json`\n // for discovery, so mount there first.\n app.use(`${basePath}/.well-known/agent-card.json`, agentCardMiddleware);\n if (wellKnownAtRoot) {\n // Origin-root is where simple \"what agent lives at this host?\"\n // probes look. Serving both locations matches what deployments\n // already hand-roll; the helper just bakes it in.\n app.use('/.well-known/agent-card.json', agentCardMiddleware);\n }\n app.use(basePath, jsonRpc);\n };\n\n return {\n jsonRpcHandler: jsonRpc,\n agentCardHandler: agentCardMiddleware,\n async getAgentCard() {\n return card;\n },\n mount,\n };\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"create-adcp-server.d.ts","sourceRoot":"","sources":["../../../src/lib/server/create-adcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-adcp-server.d.ts","sourceRoot":"","sources":["../../../src/lib/server/create-adcp-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,YAAY,CAAC;AAWpB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAC;AACnG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE1E,OAAO,EASL,KAAK,UAAU,EAEhB,MAAM,eAAe,CAAC;AACvB,OAAO,EAIL,KAAK,yBAAyB,EAC/B,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3D,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAIpF,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE/E,OAAO,EAwBL,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AAUrB,OAAO,KAAK,EACV,8BAA8B,EAC9B,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AA+BrE,OAAO,EAA+C,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACnG,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAqCL,KAAK,oBAAoB,EAE1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAI5D,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,gCAAgC,EAChC,uCAAuC,EACvC,0BAA0B,EAC1B,sBAAsB,EACtB,yCAAyC,EACzC,gCAAgC,EAChC,6BAA6B,EAC7B,0BAA0B,EAC1B,gCAAgC,EAChC,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,iCAAiC,EACjC,wBAAwB,EACxB,6BAA6B,EAC7B,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,+BAA+B,EAC/B,+BAA+B,EAC/B,4BAA4B,EAC5B,8BAA8B,EAC9B,+BAA+B,EAC/B,iCAAiC,EACjC,iCAAiC,EACjC,8BAA8B,EAC9B,gCAAgC,EAChC,iCAAiC,EACjC,iCAAiC,EACjC,gCAAgC,EAChC,mCAAmC,EACnC,mCAAmC,EACnC,6BAA6B,EAC7B,oCAAoC,EACpC,iCAAiC,EACjC,gCAAgC,EAChC,sBAAsB,EACtB,4BAA4B,EAC5B,8BAA8B,EAC9B,iCAAiC,EACjC,6BAA6B,EAC7B,0BAA0B,EAC1B,8BAA8B,EAC9B,0BAA0B,EAC1B,+BAA+B,EAC/B,4BAA4B,EAC5B,6BAA6B,EAC7B,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EACV,qBAAqB,EACrB,4BAA4B,EAC5B,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,oCAAoC,EACpC,oBAAoB,EACpB,2BAA2B,EAC3B,wBAAwB,EACxB,iCAAiC,EACjC,kCAAkC,EAClC,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,2BAA2B,EAC3B,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC3B,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,yBAAyB,EACzB,2BAA2B,EAC3B,4BAA4B,EAC5B,iBAAiB,EACjB,uBAAuB,EACvB,yBAAyB,EACzB,4BAA4B,EAC5B,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,2BAA2B,EAC3B,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,EAChB,cAAc,EACd,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,wBAAwB,EACxB,+BAA+B,EAC/B,4BAA4B,EAK7B,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAgB,gBAAgB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACvH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,6BAA6B,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC5F,OAAO,KAAK,EAAE,qBAAqB,IAAI,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAY5G,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC9D;AAwCD,yEAAyE;AACzE,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc,CAAC,QAAQ,GAAG,OAAO;IAChD,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,sGAAsG;IACtG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,KAAK,EAAE,cAAc,CAAC;IACtB;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,iFAAiF;IACjF,uBAAuB,CAAC,EAAE,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAC5D,2FAA2F;IAC3F,mBAAmB,CAAC,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACpD;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACzE;AAED,kGAAkG;AAClG,MAAM,WAAW,iBAAiB,CAAC,QAAQ,GAAG,OAAO;IACnD,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,mFAAmF;IACnF,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC,kCAAkC;IAClC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACtC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC3C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,GAAG,OAAO,EAAE,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAM,CAO3F;AAMD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE;QACb,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;QAClD,MAAM,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAC5C,QAAQ,EAAE,oBAAoB,CAAC;KAChC,CAAC;IACF,iBAAiB,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;QACtD,MAAM,EAAE,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAChD,QAAQ,EAAE,wBAAwB,CAAC;KACpC,CAAC;IACF,gBAAgB,EAAE;QAChB,MAAM,EAAE,sBAAsB,CAAC;QAC/B,MAAM,EAAE,uBAAuB,CAAC;QAChC,QAAQ,EAAE,uBAAuB,CAAC;KACnC,CAAC;IACF,iBAAiB,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;QACtD,MAAM,EAAE,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAChD,QAAQ,EAAE,wBAAwB,CAAC;KACpC,CAAC;IACF,YAAY,EAAE;QACZ,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;QACjD,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC3C,QAAQ,EAAE,mBAAmB,CAAC;KAC/B,CAAC;IACF,eAAe,EAAE;QACf,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;QACpD,MAAM,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAC;QAC9C,QAAQ,EAAE,sBAAsB,CAAC;KAClC,CAAC;IACF,iBAAiB,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;QACrD,MAAM,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;QAC/C,QAAQ,EAAE,uBAAuB,CAAC;KACnC,CAAC;IACF,YAAY,EAAE;QACZ,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;QACjD,MAAM,EAAE,6BAA6B,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC1E,QAAQ,EAAE,mBAAmB,CAAC;KAC/B,CAAC;IACF,gBAAgB,EAAE;QAChB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;QACpD,MAAM,EAAE,2BAA2B,CAAC;QACpC,QAAQ,EAAE,sBAAsB,CAAC;KAClC,CAAC;IACF,gBAAgB,EAAE;QAChB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;QACpD,MAAM,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;QAC7C,QAAQ,EAAE,sBAAsB,CAAC;KAClC,CAAC;IACF,cAAc,EAAE;QACd,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;QAClD,MAAM,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAC5C,QAAQ,EAAE,oBAAoB,CAAC;KAChC,CAAC;IACF,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;QACzD,MAAM,EAAE,aAAa,CAAC,2BAA2B,CAAC,CAAC;QACnD,QAAQ,EAAE,2BAA2B,CAAC;KACvC,CAAC;IACF,4BAA4B,EAAE;QAC5B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,uCAAuC,CAAC,CAAC;QAChE,MAAM,EAAE,aAAa,CAAC,iCAAiC,CAAC,CAAC;QACzD,QAAQ,EAAE,kCAAkC,CAAC;KAC9C,CAAC;IACF,eAAe,EAAE;QACf,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACnD,MAAM,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;QAC7C,QAAQ,EAAE,qBAAqB,CAAC;KACjC,CAAC;IACF,UAAU,EAAE;QACV,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;QAC/C,MAAM,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;QACzC,QAAQ,EAAE,iBAAiB,CAAC;KAC7B,CAAC;IACF,+BAA+B,EAAE;QAC/B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yCAAyC,CAAC,CAAC;QAClE,MAAM,EAAE,aAAa,CAAC,oCAAoC,CAAC,CAAC;QAC5D,QAAQ,EAAE,oCAAoC,CAAC;KAChD,CAAC;IACF,qBAAqB,EAAE;QACrB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;QACzD,MAAM,EAAE,aAAa,CAAC,2BAA2B,CAAC,CAAC;QACnD,QAAQ,EAAE,2BAA2B,CAAC;KACvC,CAAC;IACF,iBAAiB,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;QACtD,MAAM,EAAE,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAChD,QAAQ,EAAE,wBAAwB,CAAC;KACpC,CAAC;IACF,cAAc,EAAE;QACd,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACnD,MAAM,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAAG,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACvF,QAAQ,EAAE,qBAAqB,CAAC;KACjC,CAAC;IACF,gBAAgB,EAAE;QAChB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;QACrD,MAAM,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;QAC/C,QAAQ,EAAE,uBAAuB,CAAC;KACnC,CAAC;IACF,qBAAqB,EAAE;QACrB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;QACzD,MAAM,EAAE,aAAa,CAAC,2BAA2B,CAAC,CAAC;QACnD,QAAQ,EAAE,2BAA2B,CAAC;KACvC,CAAC;IACF,cAAc,EAAE;QACd,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACnD,MAAM,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;QAC7C,QAAQ,EAAE,qBAAqB,CAAC;KACjC,CAAC;IACF,cAAc,EAAE;QACd,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACnD,MAAM,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC;QAChF,QAAQ,EAAE,qBAAqB,CAAC;KACjC,CAAC;IACF,WAAW,EAAE;QACX,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;QAChD,MAAM,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;QAC1C,QAAQ,EAAE,kBAAkB,CAAC;KAC9B,CAAC;IACF,eAAe,EAAE;QACf,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;QACpD,MAAM,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;QAC7C,QAAQ,EAAE,sBAAsB,CAAC;KAClC,CAAC;IACF,aAAa,EAAE;QACb,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;QAClD,MAAM,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAC5C,QAAQ,EAAE,oBAAoB,CAAC;KAChC,CAAC;IACF,aAAa,EAAE;QACb,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;QAClD,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC3C,QAAQ,EAAE,oBAAoB,CAAC;KAChC,CAAC;IACF,eAAe,EAAE;QACf,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;QACpD,MAAM,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;QAC7C,QAAQ,EAAE,sBAAsB,CAAC;KAClC,CAAC;IACF,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;QAC1D,MAAM,EAAE,aAAa,CAAC,2BAA2B,CAAC,CAAC;QACnD,QAAQ,EAAE,4BAA4B,CAAC;KACxC,CAAC;IACF,YAAY,EAAE;QACZ,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;QACjD,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC3C,QAAQ,EAAE,mBAAmB,CAAC;KAC/B,CAAC;IACF,kBAAkB,EAAE;QAClB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;QACtD,MAAM,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;QAC/C,QAAQ,EAAE,wBAAwB,CAAC;KACpC,CAAC;IACF,SAAS,EAAE;QACT,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;QAC9C,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;QACvC,QAAQ,EAAE,gBAAgB,CAAC;KAC5B,CAAC;IACF,cAAc,EAAE;QACd,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACnD,MAAM,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAC5C,QAAQ,EAAE,qBAAqB,CAAC;KACjC,CAAC;IACF,aAAa,EAAE;QACb,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;QAClD,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC3C,QAAQ,EAAE,oBAAoB,CAAC;KAChC,CAAC;IACF,oBAAoB,EAAE;QACpB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;QACxD,MAAM,EAAE,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAClD,QAAQ,EAAE,0BAA0B,CAAC;KACtC,CAAC;IACF,oBAAoB,EAAE;QACpB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;QACxD,MAAM,EAAE,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAClD,QAAQ,EAAE,0BAA0B,CAAC;KACtC,CAAC;IACF,iBAAiB,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;QACrD,MAAM,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;QAC/C,QAAQ,EAAE,uBAAuB,CAAC;KACnC,CAAC;IACF,mBAAmB,EAAE;QACnB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;QACvD,MAAM,EAAE,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACjD,QAAQ,EAAE,yBAAyB,CAAC;KACrC,CAAC;IACF,oBAAoB,EAAE;QACpB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;QACxD,MAAM,EAAE,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAClD,QAAQ,EAAE,0BAA0B,CAAC;KACtC,CAAC;IACF,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;QAC1D,MAAM,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;QACpD,QAAQ,EAAE,4BAA4B,CAAC;KACxC,CAAC;IACF,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;QAC1D,MAAM,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;QACpD,QAAQ,EAAE,4BAA4B,CAAC;KACxC,CAAC;IACF,mBAAmB,EAAE;QACnB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;QACvD,MAAM,EAAE,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACjD,QAAQ,EAAE,yBAAyB,CAAC;KACrC,CAAC;IACF,qBAAqB,EAAE;QACrB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;QACzD,MAAM,EAAE,aAAa,CAAC,2BAA2B,CAAC,CAAC;QACnD,QAAQ,EAAE,2BAA2B,CAAC;KACvC,CAAC;IACF,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;QAC1D,MAAM,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;QACpD,QAAQ,EAAE,4BAA4B,CAAC;KACxC,CAAC;IACF,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;QAC1D,MAAM,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;QACpD,QAAQ,EAAE,4BAA4B,CAAC;KACxC,CAAC;IACF,qBAAqB,EAAE;QACrB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;QACzD,MAAM,EAAE,aAAa,CAAC,2BAA2B,CAAC,CAAC;QACnD,QAAQ,EAAE,2BAA2B,CAAC;KACvC,CAAC;IACF,wBAAwB,EAAE;QACxB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;QAC5D,MAAM,EAAE,aAAa,CAAC,8BAA8B,CAAC,CAAC;QACtD,QAAQ,EAAE,8BAA8B,CAAC;KAC1C,CAAC;IACF,wBAAwB,EAAE;QACxB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;QAC5D,MAAM,EAAE,aAAa,CAAC,8BAA8B,CAAC,CAAC;QACtD,QAAQ,EAAE,8BAA8B,CAAC;KAC1C,CAAC;IACF,iBAAiB,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;QACtD,MAAM,EAAE,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAChD,QAAQ,EAAE,wBAAwB,CAAC;KACpC,CAAC;IACF,yBAAyB,EAAE;QACzB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;QAC7D,MAAM,EAAE,aAAa,CAAC,+BAA+B,CAAC,CAAC;QACvD,QAAQ,EAAE,+BAA+B,CAAC;KAC3C,CAAC;IACF,uBAAuB,EAAE;QACvB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;QAC1D,MAAM,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;QACpD,QAAQ,EAAE,4BAA4B,CAAC;KACxC,CAAC;IACF,qBAAqB,EAAE;QACrB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;QACzD,MAAM,EAAE,aAAa,CAAC,2BAA2B,CAAC,CAAC;QACnD,QAAQ,EAAE,2BAA2B,CAAC;KACvC,CAAC;IACF,UAAU,EAAE;QACV,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;QAC/C,MAAM,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;QACzC,QAAQ,EAAE,iBAAiB,CAAC;KAC7B,CAAC;IACF,gBAAgB,EAAE;QAChB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;QACrD,MAAM,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;QAC/C,QAAQ,EAAE,uBAAuB,CAAC;KACnC,CAAC;IACF,mBAAmB,EAAE;QACnB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;QACvD,MAAM,EAAE,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACjD,QAAQ,EAAE,yBAAyB,CAAC;KACrC,CAAC;IACF,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;QAC1D,MAAM,EAAE,aAAa,CAAC,4BAA4B,CAAC,CAAC;QACpD,QAAQ,EAAE,4BAA4B,CAAC;KACxC,CAAC;IACF,mBAAmB,EAAE;QACnB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;QACtD,MAAM,EAAE,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAChD,QAAQ,EAAE,wBAAwB,CAAC;KACpC,CAAC;IACF,eAAe,EAAE;QACf,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACnD,MAAM,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;QAC7C,QAAQ,EAAE,qBAAqB,CAAC;KACjC,CAAC;IACF,mBAAmB,EAAE;QACnB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;QACvD,MAAM,EAAE,aAAa,CAAC,yBAAyB,CAAC,CAAC;QACjD,QAAQ,EAAE,yBAAyB,CAAC;KACrC,CAAC;IACF,eAAe,EAAE;QACf,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACnD,MAAM,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;QAC7C,QAAQ,EAAE,qBAAqB,CAAC;KACjC,CAAC;IACF,oBAAoB,EAAE;QACpB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;QACxD,MAAM,EAAE,aAAa,CAAC,0BAA0B,CAAC,CAAC;QAClD,QAAQ,EAAE,0BAA0B,CAAC;KACtC,CAAC;IAEF,kBAAkB,EAAE;QAClB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;QACtD,MAAM,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAC;QAC/C,QAAQ,EAAE,uBAAuB,CAAC;KACnC,CAAC;IACF,UAAU,EAAE;QACV,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;QAC/C,MAAM,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;QACxC,QAAQ,EAAE,gBAAgB,CAAC;KAC5B,CAAC;IACF,cAAc,EAAE;QACd,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;QACnD,MAAM,EACF,aAAa,CAAC,qBAAqB,CAAC,GACpC,aAAa,CAAC,4BAA4B,CAAC,GAC3C,aAAa,CAAC,qBAAqB,CAAC,CAAC;QACzC,QAAQ,EAAE,qBAAqB,GAAG,4BAA4B,GAAG,qBAAqB,CAAC;KACxF,CAAC;IACF,aAAa,EAAE;QACb,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;QAClD,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC3C,QAAQ,EAAE,oBAAoB,CAAC;KAChC,CAAC;CACH;AAED,MAAM,MAAM,kBAAkB,GAAG,MAAM,WAAW,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,0BAA2B,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACzE,wEAAwE;IACxE,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,2EAA2E;IAC3E,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAMD;;;;;;;;;;GAUG;AACH,KAAK,aAAa,CAAC,CAAC,SAAS,kBAAkB,EAAE,QAAQ,IAAI,CAC3D,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAChC,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,KAC1B,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,eAAe,CAAC,CAAC;AAEtF,MAAM,WAAW,gBAAgB,CAAC,QAAQ,GAAG,OAAO;IAClD,WAAW,CAAC,EAAE,aAAa,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACtD,YAAY,CAAC,EAAE,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IACxD,gBAAgB,CAAC,EAAE,aAAa,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAChE,gBAAgB,CAAC,EAAE,aAAa,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAChE,WAAW,CAAC,EAAE,aAAa,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACtD,cAAc,CAAC,EAAE,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;IAC5D,eAAe,CAAC,EAAE,aAAa,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAC/D,cAAc,CAAC,EAAE,aAAa,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC7D,cAAc,CAAC,EAAE,aAAa,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC7D,YAAY,CAAC,EAAE,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IACzD,mBAAmB,CAAC,EAAE,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IACxE,0BAA0B,CAAC,EAAE,aAAa,CAAC,8BAA8B,EAAE,QAAQ,CAAC,CAAC;IACrF,mBAAmB,CAAC,EAAE,aAAa,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;IACvE,aAAa,CAAC,EAAE,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;CAC3D;AAED,6DAA6D;AAC7D,MAAM,WAAW,2BAA2B,CAAC,QAAQ,GAAG,OAAO;IAC7D,gFAAgF;IAChF,YAAY,EAAE,8BAA8B,CAAC;IAC7C,mFAAmF;IACnF,YAAY,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,KAAK,YAAY,CAAC,uBAAuB,CAAC,CAAC;IACvF,eAAe,EAAE,aAAa,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;CAC9D;AAED,MAAM,WAAW,qBAAqB,CAAC,QAAQ,GAAG,OAAO;IACvD,gBAAgB,CAAC,EAAE,aAAa,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IACjE,QAAQ,CAAC,EAAE,aAAa,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAChD,aAAa,CAAC,EAAE,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1D,YAAY,CAAC,EAAE,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,eAAe,CAAC,QAAQ,GAAG,OAAO;IACjD,UAAU,CAAC,EAAE,aAAa,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACpD,cAAc,CAAC,EAAE,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,gBAAgB,CAAC,QAAQ,GAAG,OAAO;IAClD,mBAAmB,CAAC,EAAE,aAAa,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;IACvE,gBAAgB,CAAC,EAAE,aAAa,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAChE,aAAa,CAAC,EAAE,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1D,eAAe,CAAC,EAAE,aAAa,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC9D,aAAa,CAAC,EAAE,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1D,mBAAmB,CAAC,EAAE,aAAa,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;CACxE;AAED,MAAM,WAAW,kBAAkB,CAAC,QAAQ,GAAG,OAAO;IACpD,kBAAkB,CAAC,EAAE,aAAa,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IACrE,kBAAkB,CAAC,EAAE,aAAa,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IACrE,eAAe,CAAC,EAAE,aAAa,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAC/D,iBAAiB,CAAC,EAAE,aAAa,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IACnE,kBAAkB,CAAC,EAAE,aAAa,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;IACrE,oBAAoB,CAAC,EAAE,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IACzE,oBAAoB,CAAC,EAAE,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IACzE,iBAAiB,CAAC,EAAE,aAAa,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IACnE,mBAAmB,CAAC,EAAE,aAAa,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;IACvE,oBAAoB,CAAC,EAAE,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IACzE,oBAAoB,CAAC,EAAE,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IACzE,mBAAmB,CAAC,EAAE,aAAa,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;IACvE,sBAAsB,CAAC,EAAE,aAAa,CAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC;IAC7E,sBAAsB,CAAC,EAAE,aAAa,CAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC;IAC7E,gBAAgB,CAAC,EAAE,aAAa,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAChE,uBAAuB,CAAC,EAAE,aAAa,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAC;IAC/E,oBAAoB,CAAC,EAAE,aAAa,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC;IAC1E,mBAAmB,CAAC,EAAE,aAAa,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;IACvE,SAAS,CAAC,EAAE,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAClD,eAAe,CAAC,EAAE,aAAa,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC9D,iBAAiB,CAAC,EAAE,aAAa,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IACnE,+EAA+E;IAC/E,gCAAgC,CAAC,EAAE,CACjC,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,EAC7B,MAAM,EAAE,WAAW,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC,KACpD,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxD,oBAAoB,CAAC,EAAE,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IACzE,gBAAgB,CAAC,EAAE,aAAa,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;CACnE;AAED,MAAM,WAAW,gBAAgB,CAAC,QAAQ,GAAG,OAAO;IAClD,qFAAqF;IACrF,YAAY,CAAC,EAAE,CACb,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,EAC7B,MAAM,EAAE,WAAW,CAAC,iCAAiC,CAAC,CAAC,QAAQ,CAAC,KAC7D,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxD,4BAA4B,CAAC,EAAE,aAAa,CAAC,iCAAiC,EAAE,QAAQ,CAAC,CAAC;CAC3F;AAED,MAAM,WAAW,eAAe,CAAC,QAAQ,GAAG,OAAO;IACjD,YAAY,CAAC,EAAE,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IACxD,YAAY,CAAC,EAAE,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IACxD,cAAc,CAAC,EAAE,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;IAC5D,oBAAoB,CAAC,EAAE,aAAa,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;IACzE,WAAW,CAAC,EAAE,aAAa,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,6BAA6B,CAAC,QAAQ,GAAG,OAAO;IAC/D,WAAW,CAAC,EAAE,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,aAAa,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IACjE,WAAW,CAAC,EAAE,aAAa,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;IACzD,gBAAgB,CAAC,EAAE,aAAa,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;CACpE;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,mBAAmB,CAAC,QAAQ,GAAG,OAAO;IACrD,gBAAgB,CAAC,EAAE,aAAa,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IACjE,SAAS,CAAC,EAAE,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAClD,aAAa,CAAC,EAAE,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAC1D,YAAY,CAAC,EAAE,aAAa,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;CACzD;AAMD,MAAM,WAAW,sBAAsB;IACrC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACzC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;OAIG;IACH,GAAG,CAAC,EAAE,WAAW,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,WAAW,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC9E;;;;;OAKG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC,2BAA2B,CAAC,aAAa,CAAC,CAAC,CAAC;IACtE;;;;OAIG;IACH,WAAW,CAAC,EAAE;QACZ,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,sEAAsE;IACtE,kBAAkB,CAAC,EAAE,WAAW,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC5F,SAAS,CAAC,EAAE;QACV,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,gBAAgB,CAAC,EAAE,YAAY,EAAE,CAAC;QAClC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;KAC/B,CAAC;IACF;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,EAAE,yBAAyB,CAAC;CACvC;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,yBAAyB;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAChF,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9E,UAAU,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACpF,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC1E,sBAAsB,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC5G,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACtF,qBAAqB,CAAC,EAAE,2BAA2B,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC;IACpF,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9E,kBAAkB,CAAC,EAAE,2BAA2B,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC;IAC9E,eAAe,CAAC,EAAE,2BAA2B,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;IACxE,QAAQ,CAAC,EAAE,2BAA2B,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAC1D,eAAe,CAAC,EAAE,2BAA2B,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC;CACzE;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,WAAW,oBAAoB;IACnC,6CAA6C;IAC7C,IAAI,EAAE,YAAY,CAAC;IACnB,8EAA8E;IAC9E,WAAW,EAAE,WAAW,CAAC;IACzB,wEAAwE;IACxE,eAAe,EAAE,eAAe,CAAC;IACjC;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;;OAGG;IACH,6BAA6B,CAAC,EAAE,MAAM,EAAE,CAAC;IACzC,sEAAsE;IACtE,qBAAqB,CAAC,EAAE,mBAAmB,CAAC;IAC5C;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACzD;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,kBAAkB,EAAE,cAAc,KAAK,aAAa,CAAC;CACtF;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,EAAE,OAAO,MAAgD,CAAC;AAEzF;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,EAAE,OAAO,MAAyD,CAAC;AAE5G;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,mFAAmF;IACnF,SAAS,EAAE,OAAO,CAAC;IACnB,yEAAyE;IACzE,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mEAAmE;IACnE,mBAAmB,EAAE,OAAO,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,EAAE,IAAI,GAAG,sBAAsB,CAAC;CACzC;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,OAAO,MAAuD,CAAC;AAExG;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,EAAE,OAAO,MAAkD,CAAC;AAE7F;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,OAAO,MAAwD,CAAC;AAEzG;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;;OAOG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAErC;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;CAC7B;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,MAAM,CAAC;AAElD;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAC7B,GAAG,EAAE,OAAO,MAAM,EAAE,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAC1D,GAAG,EAAE,OAAO,MAAM,EAAE,cAAc,KAC/B,OAAO,CAAC,OAAO,CAAC,CAAC;AAMtB,uDAAuD;AACvD,MAAM,WAAW,YAAY;IAC3B,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2FAA2F;IAC3F,UAAU,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;CACrC;AAED,kEAAkE;AAClE,MAAM,WAAW,UAAU;IACzB,EAAE,CAAC,EAAE,YAAY,CAAC;CACnB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,ogBA0B7B,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,WAAW,GAAG,KAAK,CAAC;AAE9D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,oBAAoB,CACnC,SAAS,SAAS,SAAS,GAAG,iBAAiB,GAAG,SAAS,GAAG,SAAS,EACvE,UAAU,SAAS,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS;IAExE,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,0FAA0F;IAC1F,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,oEAAoE;IACpE,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;;OAIG;IACH,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;CAClC;AAMD;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,cAAc,GAAG,IAAI,CAC/B,qBAAqB,EACnB,WAAW,GACX,gBAAgB,GAChB,SAAS,GACT,eAAe,GACf,qBAAqB,GACrB,6BAA6B,GAC7B,kBAAkB,GAClB,wBAAwB,GACxB,OAAO,GACP,WAAW,GACX,KAAK,CACR,GAAG;IACF,sGAAsG;IACtG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,SAAS,CAAC,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAC/C,wDAAwD;IACxD,eAAe,CAAC,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;CAC5D,CAAC;AAEF,MAAM,WAAW,gBAAgB,CAAC,QAAQ,GAAG,OAAO;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;;;;OAaG;IACH,cAAc,CAAC,EAAE,kBAAkB,CAAC;IAYpC;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,CAAC,EAAE,WAAW,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAE1C;;;;;;;;;;;;;;;;;;OAkBG;IACH,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,qBAAqB,KAAK,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAEjG;;;;;;;;;;;;;;OAcG;IACH,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAElF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;IAEnC;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,QAAQ,CAAC,KAAK,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE3G;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,yDAAyD;IACzD,MAAM,CAAC,EAAE,UAAU,CAAC;IAEpB;;;OAGG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;IAE5B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAG5B,QAAQ,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACtC,mBAAmB,CAAC,EAAE,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IAC5D,OAAO,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC1C,QAAQ,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IACrC,aAAa,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAChD,qBAAqB,CAAC,EAAE,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IAChE,WAAW,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAE5C,wEAAwE;IACxE,YAAY,CAAC,EAAE,sBAAsB,CAAC;IACtC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,WAAW,CAAC,EAAE,gBAAgB,GAAG,UAAU,CAAC;IAC5C;;;;;;;;;;;;OAYG;IACH,2BAA2B,CAAC,EAAE,CAC5B,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,EAC7B,MAAM,EAAE,0BAA0B,EAClC,QAAQ,EAAE,kBAAkB,KACzB,MAAM,GAAG,SAAS,CAAC;IACxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkDG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,cAAc,KAAK,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IACpF;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,IAAI,CAAC;IACvD;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,EAAE,oBAAoB,CAAC;IAEtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,UAAU,CAAC,EAAE;QACX,QAAQ,CAAC,EAAE,OAAO,4BAA4B,EAAE,cAAc,CAAC;QAC/D,SAAS,CAAC,EAAE,OAAO,4BAA4B,EAAE,cAAc,CAAC;KACjE,CAAC;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAE7D;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAC;IAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmFG;IACH,cAAc,CAAC,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAC;CACjD;AAwHD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,WAAW,YAAY;IAC3B,oFAAoF;IACpF,QAAQ,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,YAAY,EAAE,MAAM,CAAC;CACtB;AAuhED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,GAAG,OAAO,EAAE,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC,GAAG,UAAU,CA6vHnG"}