@amqp-contract/contract 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -99,7 +99,7 @@ const contract = defineContract({
99
99
  });
100
100
 
101
101
  // Server handler returns the response value, not void:
102
- // handlers: { calculate: ({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync() }
102
+ // handlers: { calculate: ({ payload }) => OkAsync({ sum: payload.a + payload.b }) }
103
103
  //
104
104
  // Client invokes with a required timeout:
105
105
  // const result = await client.call("calculate", { a: 1, b: 2 }, { timeoutMs: 5_000 });
package/dist/index.cjs CHANGED
@@ -1,4 +1,41 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/builder/validate.ts
3
+ /**
4
+ * Define-time structural validation shared by the builders.
5
+ *
6
+ * The type system already rejects wrong shapes for TypeScript callers, but a
7
+ * JavaScript caller (or a cast) can pass misspelled option keys that were
8
+ * previously ignored silently — a typo like `durabel: false` produced a
9
+ * durable queue with no warning. Per the org DNA ("typo = define-time
10
+ * failure", mirroring temporal-contract's contract-shape validation), the
11
+ * builders now throw at definition time with an actionable message.
12
+ *
13
+ * All helpers use the `_internal_` prefix: exported for use across the
14
+ * builder modules, no semver guarantee.
15
+ */
16
+ /** Throw unless `name` is a non-empty string (AMQP names must not be blank). */
17
+ function _internal_assertNonEmptyName(kind, name) {
18
+ if (typeof name !== "string" || name.length === 0) throw new Error(`${kind} name must be a non-empty string, got ${JSON.stringify(name)}`);
19
+ }
20
+ /**
21
+ * Throw when an options bag carries keys outside the allowed set. Lists both
22
+ * the offending keys and the allowed ones so a typo is a one-glance fix.
23
+ */
24
+ function _internal_assertKnownKeys(kind, name, bag, allowed) {
25
+ if (bag === void 0) return;
26
+ const unknown = Object.keys(bag).filter((key) => !allowed.includes(key));
27
+ if (unknown.length > 0) throw new Error(`Unknown option${unknown.length > 1 ? "s" : ""} ${unknown.map((k) => `"${k}"`).join(", ")} on ${kind} "${name}". Allowed options: ${allowed.join(", ")}.`);
28
+ }
29
+ /**
30
+ * Duck-check that a value implements Standard Schema v1 (has a `~standard`
31
+ * object with a `validate` function) — catches passing a plain object or a
32
+ * schema from an incompatible library where a payload schema is expected.
33
+ */
34
+ function _internal_assertStandardSchema(kind, schema) {
35
+ const standard = (typeof schema === "object" || typeof schema === "function") && schema !== null ? schema["~standard"] : void 0;
36
+ if (typeof (typeof standard === "object" && standard !== null ? standard["validate"] : void 0) !== "function") throw new Error(`${kind} must be a Standard Schema v1 (an object exposing "~standard".validate) — got a value without one. Zod, Valibot, and ArkType schemas all qualify.`);
37
+ }
38
+ //#endregion
2
39
  //#region src/builder/exchange.ts
3
40
  /**
4
41
  * Define an AMQP exchange.
@@ -18,9 +55,24 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
18
55
  * @internal
19
56
  */
20
57
  function defineExchange(name, options) {
58
+ _internal_assertNonEmptyName("Exchange", name);
59
+ _internal_assertKnownKeys("exchange", name, options, [
60
+ "type",
61
+ "durable",
62
+ "autoDelete",
63
+ "internal",
64
+ "arguments"
65
+ ]);
66
+ const type = options?.type ?? "topic";
67
+ if (![
68
+ "topic",
69
+ "direct",
70
+ "fanout",
71
+ "headers"
72
+ ].includes(type)) throw new Error(`Unknown exchange type "${String(type)}" for exchange "${name}". Allowed types: topic, direct, fanout, headers.`);
21
73
  return {
22
74
  name,
23
- type: options?.type ?? "topic",
75
+ type,
24
76
  durable: true,
25
77
  ...options
26
78
  };
@@ -63,6 +115,13 @@ function defineExchange(name, options) {
63
115
  * ```
64
116
  */
65
117
  function defineMessage(payload, options) {
118
+ _internal_assertStandardSchema("Message payload schema", payload);
119
+ _internal_assertKnownKeys("message", "(anonymous)", options, [
120
+ "headers",
121
+ "summary",
122
+ "description"
123
+ ]);
124
+ if (options?.headers !== void 0) _internal_assertStandardSchema("Message headers schema", options.headers);
66
125
  return {
67
126
  payload,
68
127
  ...options
@@ -335,6 +394,29 @@ function resolveTtlBackoffOptions(queueName, options) {
335
394
  };
336
395
  }
337
396
  function defineQueue(name, options) {
397
+ _internal_assertNonEmptyName("Queue", name);
398
+ _internal_assertKnownKeys("queue", name, options, [
399
+ "type",
400
+ "durable",
401
+ "exclusive",
402
+ "autoDelete",
403
+ "maxPriority",
404
+ "deadLetter",
405
+ "retry",
406
+ "arguments"
407
+ ]);
408
+ if (options?.deadLetter !== void 0) _internal_assertKnownKeys("queue deadLetter config of", name, options.deadLetter, ["exchange", "routingKey"]);
409
+ if (options?.retry !== void 0) _internal_assertKnownKeys("queue retry config of", name, options.retry, [
410
+ "mode",
411
+ "maxRetries",
412
+ "initialDelayMs",
413
+ "maxDelayMs",
414
+ "backoffMultiplier",
415
+ "jitter",
416
+ "waitQueueName",
417
+ "waitExchangeName",
418
+ "retryExchangeName"
419
+ ]);
338
420
  const opts = options ?? {};
339
421
  const type = opts.type ?? "quorum";
340
422
  const durable = opts.durable ?? true;
@@ -872,34 +954,83 @@ function defineContract(definition) {
872
954
  * (server side) and outgoing requests (client side).
873
955
  * @param messages.response - Schema validated against handler return values
874
956
  * (server side) and incoming replies (client side).
957
+ * @param messages.errors - Optional typed error map: error code → message
958
+ * definition for the error's `data` payload. Declared errors widen the
959
+ * handler's `Err` channel (return `Err(rpcError(code, data))`) and the
960
+ * client's `call()` error union; error data is schema-validated on both
961
+ * sides. Business errors are replied and acked — never retried.
875
962
  *
876
963
  * @example
877
964
  * ```typescript
878
965
  * import { defineQueue, defineMessage, defineRpc, defineContract } from '@amqp-contract/contract';
879
966
  * import { z } from 'zod';
880
967
  *
881
- * const calculate = defineRpc(defineQueue('rpc.calculate'), {
882
- * request: defineMessage(z.object({ a: z.number(), b: z.number() })),
883
- * response: defineMessage(z.object({ sum: z.number() })),
968
+ * const getOrder = defineRpc(defineQueue('rpc.get-order'), {
969
+ * request: defineMessage(z.object({ orderId: z.string() })),
970
+ * response: defineMessage(z.object({ orderId: z.string(), status: z.string() })),
971
+ * errors: {
972
+ * ORDER_NOT_FOUND: defineMessage(z.object({ orderId: z.string() })),
973
+ * },
884
974
  * });
885
975
  *
886
- * const contract = defineContract({ rpcs: { calculate } });
887
- *
888
- * // Server (worker): handler returns the typed response
889
- * // handlers: { calculate: ({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync() }
976
+ * const contract = defineContract({ rpcs: { getOrder } });
890
977
  *
891
- * // Client: typed call with required timeout
892
- * // const result = await client.call('calculate', { a: 1, b: 2 }, { timeoutMs: 5_000 });
978
+ * // Server (worker): return the response, or a declared typed error
979
+ * // handlers: {
980
+ * // getOrder: ({ payload }) =>
981
+ * // orders.has(payload.orderId)
982
+ * // ? OkAsync(orders.get(payload.orderId))
983
+ * // : ErrAsync(rpcError('ORDER_NOT_FOUND', { orderId: payload.orderId })),
984
+ * // }
985
+ *
986
+ * // Client: typed call — the error union includes RpcError<'ORDER_NOT_FOUND', { orderId: string }>
987
+ * // const result = await client.call('getOrder', { orderId: '42' }, { timeoutMs: 5_000 });
988
+ * // if (result.isErr() && isRpcError(result.error)) console.log(result.error.code);
893
989
  * ```
894
990
  */
895
991
  function defineRpc(queue, messages) {
992
+ _internal_assertKnownKeys("RPC", "(anonymous)", messages, [
993
+ "request",
994
+ "response",
995
+ "errors"
996
+ ]);
997
+ _internal_assertStandardSchema("RPC request payload schema", messages.request?.payload);
998
+ _internal_assertStandardSchema("RPC response payload schema", messages.response?.payload);
999
+ if (messages.errors !== void 0) for (const [code, definition] of Object.entries(messages.errors)) _internal_assertStandardSchema(`RPC error "${code}" data schema`, definition?.payload);
896
1000
  return {
897
1001
  queue,
898
1002
  request: messages.request,
899
- response: messages.response
1003
+ response: messages.response,
1004
+ ...messages.errors !== void 0 && { errors: messages.errors }
900
1005
  };
901
1006
  }
902
1007
  //#endregion
1008
+ //#region src/issues.ts
1009
+ /**
1010
+ * Render a single Standard Schema issue as `path.to.field: message` (or just
1011
+ * the message for root-level issues). Path segments may be raw property keys
1012
+ * or `{ key }` objects per the Standard Schema spec; both are handled.
1013
+ *
1014
+ * Single source of truth for issue rendering across the client and worker —
1015
+ * mirrors temporal-contract's shared formatter (org DNA).
1016
+ */
1017
+ function formatIssue(issue) {
1018
+ const path = (issue.path ?? []).map((segment) => typeof segment === "object" && segment !== null && "key" in segment ? String(segment.key) : String(segment)).join(".");
1019
+ return path.length > 0 ? `${path}: ${issue.message}` : issue.message;
1020
+ }
1021
+ /**
1022
+ * Render a list of Standard Schema issues as a single human-readable line:
1023
+ * the first `limit` issues joined with `; `, plus a `(+N more)` suffix when
1024
+ * truncated. Empty input renders as `"no issues"` (defensive — validation
1025
+ * failures always carry at least one issue).
1026
+ */
1027
+ function summarizeIssues(issues, limit = 3) {
1028
+ if (issues.length === 0) return "no issues";
1029
+ const shown = issues.slice(0, limit).map(formatIssue).join("; ");
1030
+ const hidden = issues.length - limit;
1031
+ return hidden > 0 ? `${shown} (+${hidden} more)` : shown;
1032
+ }
1033
+ //#endregion
903
1034
  exports.defineCommandConsumer = defineCommandConsumer;
904
1035
  exports.defineCommandPublisher = defineCommandPublisher;
905
1036
  exports.defineConsumer = defineConsumer;
@@ -915,8 +1046,10 @@ exports.defineQueueBinding = defineQueueBinding;
915
1046
  exports.defineRpc = defineRpc;
916
1047
  exports.extractConsumer = extractConsumer;
917
1048
  exports.extractQueue = extractQueue;
1049
+ exports.formatIssue = formatIssue;
918
1050
  exports.isBridgedPublisherConfig = isBridgedPublisherConfig;
919
1051
  exports.isCommandConsumerConfig = isCommandConsumerConfig;
920
1052
  exports.isEventConsumerResult = isEventConsumerResult;
921
1053
  exports.isEventPublisherConfig = isEventPublisherConfig;
922
1054
  exports.isQueueWithTtlBackoffInfrastructure = isQueueWithTtlBackoffInfrastructure;
1055
+ exports.summarizeIssues = summarizeIssues;
package/dist/index.d.cts CHANGED
@@ -867,6 +867,18 @@ type BridgedPublisherConfigBase = {
867
867
  bridgeExchange: ExchangeDefinition;
868
868
  targetExchange: ExchangeDefinition;
869
869
  };
870
+ /**
871
+ * Typed error map for an RPC: error code → message definition validating the
872
+ * error's `data` payload.
873
+ *
874
+ * Reuses {@link MessageDefinition} so error data gets the same Standard Schema
875
+ * validation and AsyncAPI metadata (`summary` / `description`) as request and
876
+ * response payloads. The `headers` slot of an error's message definition is
877
+ * ignored — error replies carry the code in a fixed AMQP header instead.
878
+ *
879
+ * @see defineRpc for declaring errors on an RPC
880
+ */
881
+ type RpcErrorMap = Record<string, MessageDefinition>;
870
882
  /**
871
883
  * Definition of an RPC operation: a request/response pair flowing over a
872
884
  * request queue with replies routed back via direct reply-to.
@@ -879,13 +891,21 @@ type BridgedPublisherConfigBase = {
879
891
  * @template TRequestMessage - The request message definition
880
892
  * @template TResponseMessage - The response message definition
881
893
  * @template TQueue - The request queue entry
894
+ * @template TErrors - The typed error map (undefined when the RPC declares none)
882
895
  *
883
896
  * @see defineRpc for creating RPC definitions
884
897
  */
885
- type RpcDefinition<TRequestMessage extends MessageDefinition = MessageDefinition, TResponseMessage extends MessageDefinition = MessageDefinition, TQueue extends QueueEntry = QueueEntry> = {
898
+ type RpcDefinition<TRequestMessage extends MessageDefinition = MessageDefinition, TResponseMessage extends MessageDefinition = MessageDefinition, TQueue extends QueueEntry = QueueEntry, TErrors extends RpcErrorMap | undefined = RpcErrorMap | undefined> = {
886
899
  /** The queue that receives RPC requests. Replies are routed back via direct reply-to. */queue: TQueue; /** Schema for the request payload (validated on both publish and consume). */
887
900
  request: TRequestMessage; /** Schema for the response payload (validated on both worker reply and client receive). */
888
901
  response: TResponseMessage;
902
+ /**
903
+ * Typed business errors the handler may return via `Err(rpcError(code, data))`.
904
+ * Error data is validated against the declared schema on the worker before
905
+ * the error reply is published, and re-validated on the client when it
906
+ * arrives. Business errors are replied and acked — never retried.
907
+ */
908
+ errors?: TErrors;
889
909
  };
890
910
  /**
891
911
  * Complete AMQP contract definition (output type).
@@ -2616,30 +2636,45 @@ declare function isBridgedPublisherConfig(value: unknown): value is BridgedPubli
2616
2636
  * (server side) and outgoing requests (client side).
2617
2637
  * @param messages.response - Schema validated against handler return values
2618
2638
  * (server side) and incoming replies (client side).
2639
+ * @param messages.errors - Optional typed error map: error code → message
2640
+ * definition for the error's `data` payload. Declared errors widen the
2641
+ * handler's `Err` channel (return `Err(rpcError(code, data))`) and the
2642
+ * client's `call()` error union; error data is schema-validated on both
2643
+ * sides. Business errors are replied and acked — never retried.
2619
2644
  *
2620
2645
  * @example
2621
2646
  * ```typescript
2622
2647
  * import { defineQueue, defineMessage, defineRpc, defineContract } from '@amqp-contract/contract';
2623
2648
  * import { z } from 'zod';
2624
2649
  *
2625
- * const calculate = defineRpc(defineQueue('rpc.calculate'), {
2626
- * request: defineMessage(z.object({ a: z.number(), b: z.number() })),
2627
- * response: defineMessage(z.object({ sum: z.number() })),
2650
+ * const getOrder = defineRpc(defineQueue('rpc.get-order'), {
2651
+ * request: defineMessage(z.object({ orderId: z.string() })),
2652
+ * response: defineMessage(z.object({ orderId: z.string(), status: z.string() })),
2653
+ * errors: {
2654
+ * ORDER_NOT_FOUND: defineMessage(z.object({ orderId: z.string() })),
2655
+ * },
2628
2656
  * });
2629
2657
  *
2630
- * const contract = defineContract({ rpcs: { calculate } });
2631
- *
2632
- * // Server (worker): handler returns the typed response
2633
- * // handlers: { calculate: ({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync() }
2658
+ * const contract = defineContract({ rpcs: { getOrder } });
2634
2659
  *
2635
- * // Client: typed call with required timeout
2636
- * // const result = await client.call('calculate', { a: 1, b: 2 }, { timeoutMs: 5_000 });
2660
+ * // Server (worker): return the response, or a declared typed error
2661
+ * // handlers: {
2662
+ * // getOrder: ({ payload }) =>
2663
+ * // orders.has(payload.orderId)
2664
+ * // ? OkAsync(orders.get(payload.orderId))
2665
+ * // : ErrAsync(rpcError('ORDER_NOT_FOUND', { orderId: payload.orderId })),
2666
+ * // }
2667
+ *
2668
+ * // Client: typed call — the error union includes RpcError<'ORDER_NOT_FOUND', { orderId: string }>
2669
+ * // const result = await client.call('getOrder', { orderId: '42' }, { timeoutMs: 5_000 });
2670
+ * // if (result.isErr() && isRpcError(result.error)) console.log(result.error.code);
2637
2671
  * ```
2638
2672
  */
2639
- declare function defineRpc<TRequestMessage extends MessageDefinition, TResponseMessage extends MessageDefinition, TQueue extends QueueEntry>(queue: TQueue, messages: {
2673
+ declare function defineRpc<TRequestMessage extends MessageDefinition, TResponseMessage extends MessageDefinition, TQueue extends QueueEntry, TErrors extends RpcErrorMap | undefined = undefined>(queue: TQueue, messages: {
2640
2674
  request: TRequestMessage;
2641
2675
  response: TResponseMessage;
2642
- }): RpcDefinition<TRequestMessage, TResponseMessage, TQueue>;
2676
+ errors?: TErrors;
2677
+ }): RpcDefinition<TRequestMessage, TResponseMessage, TQueue, TErrors>;
2643
2678
  //#endregion
2644
2679
  //#region src/builder/ttl-backoff.d.ts
2645
2680
  /**
@@ -2676,5 +2711,23 @@ declare function defineRpc<TRequestMessage extends MessageDefinition, TResponseM
2676
2711
  */
2677
2712
  declare function isQueueWithTtlBackoffInfrastructure(entry: QueueEntry): entry is QueueWithTtlBackoffInfrastructure;
2678
2713
  //#endregion
2679
- export { type AnySchema, type BaseExchangeDefinition, type BindingDefinition, type BindingPattern, type BridgedPublisherConfig, type BridgedPublisherConfigBase, type ClassicQueueDefinition, type ClassicQueueOptions, type CommandConsumerConfig, type CommandConsumerConfigBase, type CompressionAlgorithm, type ConsumerDefinition, type ConsumerEntry, type ContractDefinition, type ContractDefinitionInput, type ContractOutput, type DeadLetterConfig, type DefineQueueOptions, type DirectExchangeDefinition, type EventConsumerResult, type EventConsumerResultBase, type EventPublisherConfig, type EventPublisherConfigBase, type ExchangeBindingDefinition, type ExchangeDefinition, type FanoutExchangeDefinition, type HeadersExchangeDefinition, type ImmediateRequeueRetryOptions, type InferConsumerNames, type InferPublisherNames, type InferRpcNames, type MatchingRoutingKey, type MessageDefinition, type PublisherDefinition, type PublisherEntry, type QueueBindingDefinition, type QueueDefinition, type QueueEntry, type QueueType, type QueueWithTtlBackoffInfrastructure, type QuorumQueueDefinition, type QuorumQueueOptions, type ResolvedImmediateRequeueRetryOptions, type ResolvedRetryOptions, type ResolvedTtlBackoffRetryOptions, type RoutingKey, type RpcDefinition, type TopicExchangeDefinition, type TtlBackoffRetryOptions, defineCommandConsumer, defineCommandPublisher, defineConsumer, defineContract, defineEventConsumer, defineEventPublisher, defineExchange, defineExchangeBinding, defineMessage, definePublisher, defineQueue, defineQueueBinding, defineRpc, extractConsumer, extractQueue, isBridgedPublisherConfig, isCommandConsumerConfig, isEventConsumerResult, isEventPublisherConfig, isQueueWithTtlBackoffInfrastructure };
2714
+ //#region src/issues.d.ts
2715
+ /**
2716
+ * Render a single Standard Schema issue as `path.to.field: message` (or just
2717
+ * the message for root-level issues). Path segments may be raw property keys
2718
+ * or `{ key }` objects per the Standard Schema spec; both are handled.
2719
+ *
2720
+ * Single source of truth for issue rendering across the client and worker —
2721
+ * mirrors temporal-contract's shared formatter (org DNA).
2722
+ */
2723
+ declare function formatIssue(issue: StandardSchemaV1.Issue): string;
2724
+ /**
2725
+ * Render a list of Standard Schema issues as a single human-readable line:
2726
+ * the first `limit` issues joined with `; `, plus a `(+N more)` suffix when
2727
+ * truncated. Empty input renders as `"no issues"` (defensive — validation
2728
+ * failures always carry at least one issue).
2729
+ */
2730
+ declare function summarizeIssues(issues: readonly StandardSchemaV1.Issue[], limit?: number): string;
2731
+ //#endregion
2732
+ export { type AnySchema, type BaseExchangeDefinition, type BindingDefinition, type BindingPattern, type BridgedPublisherConfig, type BridgedPublisherConfigBase, type ClassicQueueDefinition, type ClassicQueueOptions, type CommandConsumerConfig, type CommandConsumerConfigBase, type CompressionAlgorithm, type ConsumerDefinition, type ConsumerEntry, type ContractDefinition, type ContractDefinitionInput, type ContractOutput, type DeadLetterConfig, type DefineQueueOptions, type DirectExchangeDefinition, type EventConsumerResult, type EventConsumerResultBase, type EventPublisherConfig, type EventPublisherConfigBase, type ExchangeBindingDefinition, type ExchangeDefinition, type FanoutExchangeDefinition, type HeadersExchangeDefinition, type ImmediateRequeueRetryOptions, type InferConsumerNames, type InferPublisherNames, type InferRpcNames, type MatchingRoutingKey, type MessageDefinition, type PublisherDefinition, type PublisherEntry, type QueueBindingDefinition, type QueueDefinition, type QueueEntry, type QueueType, type QueueWithTtlBackoffInfrastructure, type QuorumQueueDefinition, type QuorumQueueOptions, type ResolvedImmediateRequeueRetryOptions, type ResolvedRetryOptions, type ResolvedTtlBackoffRetryOptions, type RoutingKey, type RpcDefinition, type RpcErrorMap, type TopicExchangeDefinition, type TtlBackoffRetryOptions, defineCommandConsumer, defineCommandPublisher, defineConsumer, defineContract, defineEventConsumer, defineEventPublisher, defineExchange, defineExchangeBinding, defineMessage, definePublisher, defineQueue, defineQueueBinding, defineRpc, extractConsumer, extractQueue, formatIssue, isBridgedPublisherConfig, isCommandConsumerConfig, isEventConsumerResult, isEventPublisherConfig, isQueueWithTtlBackoffInfrastructure, summarizeIssues };
2680
2733
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/types.ts","../src/builder/exchange.ts","../src/builder/message.ts","../src/builder/queue.ts","../src/builder/queue-utils.ts","../src/builder/binding.ts","../src/builder/publisher.ts","../src/builder/consumer.ts","../src/builder/contract.ts","../src/builder/routing-types.ts","../src/builder/event.ts","../src/builder/command.ts","../src/builder/rpc.ts","../src/builder/ttl-backoff.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/types.ts","../src/builder/exchange.ts","../src/builder/message.ts","../src/builder/queue.ts","../src/builder/queue-utils.ts","../src/builder/binding.ts","../src/builder/publisher.ts","../src/builder/consumer.ts","../src/builder/contract.ts","../src/builder/routing-types.ts","../src/builder/event.ts","../src/builder/command.ts","../src/builder/rpc.ts","../src/builder/ttl-backoff.ts","../src/issues.ts"],"mappings":";;;;;AAWA;;;;AAAwC;AAexC;;KAfY,SAAA,GAAY,gBAAgB;;;;;;;;;;KAe5B,sBAAA;EA6CO;AAAA;AAgBnB;EAzDE,IAAA;;;AAmEU;AAOZ;;EApEE,UAAA;EAwEI;AAAA;AAWN;;EA9EE,cAAA;EA8EyB;;;;EAzEzB,UAAA;EAyEyB;;;;EApEzB,iBAAA;EA8EU;;;;EAzEV,MAAA;EA2EA;;;;EAtEA,aAAA;EA2EA;;;;EAtEA,gBAAA;EAmFU;;;;EA9EV,iBAAA;AAAA;;;;;;;;;;;;AAiGgC;AA8BlC;KA/GY,4BAAA;;;AA+GoB;EA3G9B,IAAA;EAuImB;;;AAAA;AAAwB;EAjI3C,UAAU;AAAA;;;;;KAOA,gBAAA;EAmIV;;;EA/HA,IAAI;AAAA;;;AAgKc;AA0BpB;;;;;KA/KY,YAAA,GAAe,gBAAA,GAAmB,4BAAA,GAA+B,sBAAA;;;;;;AA0MhE;AAoBb;;KApNY,8BAAA;EACV,IAAA;EACA,UAAA;EACA,cAAA;EACA,UAAA;EACA,iBAAA;EACA,MAAA;EACA,aAAA;EACA,gBAAA;EACA,iBAAA;AAAA;;;;AAgPuE;AAKzE;;;;KA1OY,oCAAA;EACV,IAAA;EACA,UAAU;AAAA;;;;;;;;;;AA0O2C;AAQvD;KApOY,oBAAA,GACR,gBAAA,GACA,oCAAA,GACA,8BAAA;;;;;;;;;;;;AA4PgB;AAoBpB;;;;;;;;;AAEQ;AAgBR;;;;;;KApQY,oBAAA;;;AAsQJ;AAgBR;;;;;;;;;AAEQ;AAgBR;;;;;;;;;AAEQ;AAQR;;;KAtRY,SAAA;;;;KAKP,gBAAA;EAoRD;;;EAhRF,UAAA,GAAa,gBAAA;EAiRc;;;;;;;;;;;AAAM;AASnC;;;;;;;;AAWY;AAMZ;;;;;EA/QE,KAAA,GAAQ,YAAA;EA4SI;;;EAvSZ,SAAA,GAAY,MAAA;AAAA;;;;;;;;;AAuSM;AAQpB;;;;;;;;;;;;;AA2Ba;KAhTD,kBAAA,GAAqB,gBAAgB;EAyTf;;;EArThC,IAAA;EAqTkE;;;EAhTlE,OAAA;EA+TA;;;;EAzTA,SAAA;EAgVU;;;;EA1UV,UAAA;EA4UyB;;;;EAtUzB,WAAA;AAAA;;;;;AAsU8B;AA0DhC;;;;;;;;;;;;KA5WY,mBAAA,GAAsB,gBAAgB;EAiXhD;;;EA7WA,IAAA;EAuXA;;;;EAjXA,OAAA;EA2Xe;;;;EArXf,SAAA;EA+XyC;AAAA;AAQ3C;EAlYE,UAAA;EAkYoB;;;;EA5XpB,WAAA;AAAA;;;;;;;;KAUU,kBAAA,GAAqB,kBAAA,GAAqB,mBAAmB;AAyXzE;;;AAAA,KApXY,wCAAA,cACG,kBAAA,GAAqB,kBAAA,IAChC,kBAAA;EAAuB,UAAA;IAAc,QAAA,EAAU,IAAA;EAAA;AAAA;;;;;;;KAQvC,sBAAA;EA6WG;;;EAzWb,IAAA,EAAM,KAAA;EA0WsB;AAAA;AAS9B;;EA7WE,OAAA;EA8WiB;;;EAzWjB,UAAA;EA2WqB;;;;EArWrB,QAAA;EAkXkB;;;;EA5WlB,SAAA,GAAY,MAAM;AAAA;;;;;;;;;;;AAwXP;AAUb;;;;;;KA9WY,uBAAA,kCACV,sBAAsB,CAAC,KAAA;EACrB,IAAA;AAAA;;;;;;;;;;;;;;KAgBQ,wBAAA,kCACV,sBAAsB,CAAC,KAAA;EACrB,IAAA;AAAA;AAqXY;AAqBhB;;;;;;;;;;;;AArBgB,KArWJ,wBAAA,kCACV,sBAAsB,CAAC,KAAA;EACrB,IAAA;AAAA;;;;;;;;;;;AAiZY;AAWhB;;KA5YY,yBAAA,kCACV,sBAAsB,CAAC,KAAA;EACrB,IAAA;AAAA;AAgaJ;;;;;AAAA,KAxZY,kBAAA,kCACR,uBAAA,CAAwB,KAAA,IACxB,wBAAA,CAAyB,KAAA,IACzB,wBAAA,CAAyB,KAAA,IACzB,yBAAA,CAA0B,KAAA;;;;;;;;KASlB,gBAAA;EA2YyD;;;;EAtYnE,QAAA,EAAU,kBAAkB;EA4Ya;;;;EAtYzC,UAAA;AAAA;;AAiZc;AAsBhB;KAjaY,mBAAA;EAiakB;;;EA7Z5B,IAAA,EAAM,KAAA;EAkaG;;;;;;EA1ZT,UAAA,GAAa,gBAAA;EAuZN;;;;EAjZP,KAAA,EAAO,oBAAA;EAmaG;;;;;;;;;EAxZV,SAAA,GAAY,MAAA;AAAA;;;;;;KAQF,qBAAA,kCAAuD,mBAAmB,CAAC,KAAA;EAqZnE;AAWpB;;EA5ZE,IAAA;EA8ZU;;;EAzZV,OAAA;EA6ZS;;;;EAvZT,SAAA;EAmZU;;;;EA7YV,UAAA;EAgZA;;;;EA1YA,WAAA;AAAA;AA4YU;AAWZ;;;;;AAXY,KAnYA,sBAAA,kCAAwD,mBAAmB,CAAC,KAAA;EAmZ/E;;;EA/YP,IAAA;EAiZkC;;;EA5YlC,OAAA;EAwYA;;;;EAlYA,SAAA;EAoYO;;;EA/XP,UAAA;EAiYgB;;AAAkB;AAWpC;EAtYE,WAAA;AAAA;;;;;;;;;;KAYU,eAAA,kCACR,qBAAA,CAAsB,KAAA,IACtB,sBAAA,CAAuB,KAAA;;;;;;;;;;;;;;;;;;;;AA+aT;AAoClB;;;;KAzZY,iCAAA;EAuac;;;;EAlaxB,OAAA;EA+aa;;;EA1ab,KAAA,EAAO,eAAA,CAAgB,KAAA;EA4bhB;;;EAvbP,SAAA,EAAW,eAAA;EA+YC;;;EA1YZ,YAAA,EAAc,yBAAA;EAmZU;;;EA9YxB,aAAA,EAAe,yBAAA;EA2Zf;;;EAtZA,gBAAA,EAAkB,sBAAA;EA6ZN;;;EAxZZ,iBAAA,EAAmB,sBAAA;AAAA;;AAmagB;AAWrC;;;KAtaY,UAAA,kCACR,eAAA,CAAgB,KAAA,IAChB,iCAAA,CAAkC,KAAA;;;;KAK1B,gCAAA,6CAEG,kBAAA,GAAqB,kBAAA,IAChC,UAAA,CAAW,KAAA;EACb,UAAA;IAAc,QAAA,EAAU,IAAA;EAAA;AAAA;AA8ZI;AAU9B;;;;;AAV8B,KArZlB,iBAAA,kBACO,SAAA,GAAY,SAAA,mBACZ,gBAAA,CAAiB,MAAA,iCAC9B,gBAAA,CAAiB,MAAA;EA+ZM;;;;EAxZ3B,OAAA,EAAS,QAAA;EAwZkB;AAAA;AA0B7B;;EA5aE,OAAA,GAAU,QAAA;EAobkB;;;;EA9a5B,OAAA;EA+bO;;;;EAzbP,WAAA;AAAA;;;;;;;;KAUU,sBAAA;EA0bP,mEAxbH,IAAA,WAwb2B;EArb3B,KAAA,EAAO,eAAA;EAqbiD;;;;EA/axD,SAAA,GAAY,MAAA;AAAA;EAmbR,uDA/aA,QAAA,EAAU,wBAAA,GAA2B,uBAAA;EAgbnC;;;;;EA1aF,UAAA;AAAA;EAsaF,yDAlaE,QAAA,EAAU,wBAAA,GAA2B,yBAAA,EAma7B;EAjaR,UAAA;AAAA;;;;AAoaG;AAUT;;;;;;;;;;;;;KAzZY,yBAAA;EA+Zc,uEA7ZxB,IAAA,cA8ZQ;EA3ZR,WAAA,EAAa,kBAAA;EA2ZU;;;EAtZvB,SAAA,GAAY,MAAA;AAAA;EAgZsC,8DA5Y9C,MAAA,EAAQ,wBAAA,GAA2B,uBAAA;EA6YnB;;;;EAxYhB,UAAA;AAAA;EA2YE,gEAvYF,MAAA,EAAQ,wBAAA,GAA2B,yBAAA,EAuYN;EArY7B,UAAA;AAAA;;;AAuYmB;AAOzB;;;;KAnYY,iBAAA,GAAoB,sBAAA,GAAyB,yBAAyB;;;;;;;;;;;;;;;;;;;;;KAsBtE,mBAAA,kBAAqC,iBAAA,GAAoB,iBAAA;EAkXF,0DAhXjE,OAAA,EAAS,QAAA;AAAA;EAiXF,uDA7WH,QAAA,EAAU,wBAAA,GAA2B,uBAAA;EAqXlB;;;;EAhXnB,UAAA;AAAA;EAkXF,yDA9WE,QAAA,EAAU,wBAAA,GAA2B,yBAAA,EA+WrC;EA7WA,UAAA;AAAA;;;;;;;;;;;;;;;;AA+WG;AAAA;;KAzVG,kBAAA,kBAAoC,iBAAA,GAAoB,iBAAA;EAgW7B,yCA9VrC,KAAA,EAAO,UAAA,EA8VyD;EA3VhE,OAAA,EAAS,QAAA;AAAA;;;;;;;;;KAeC,wBAAA;EACV,OAAA;EACA,QAAA,EAAU,kBAAA;EACV,OAAA,EAAS,iBAAA;EACT,UAAA;EACA,SAAA,GAAY,MAAA;AAAA;;;;;;;;;KAWF,yBAAA;EACV,OAAA;EACA,QAAA,EAAU,kBAAA;EACV,OAAA,EAAS,sBAAA;EACT,QAAA,EAAU,kBAAA;EACV,KAAA,EAAO,UAAA;EACP,OAAA,EAAS,iBAAA;EACT,UAAA;AAAA;;;;AAkUK;AAAA;;;;KAvTK,uBAAA;EACV,OAAA;EACA,QAAA,EAAU,kBAAA;EACV,OAAA,EAAS,sBAAA;EACT,QAAA,EAAU,kBAAA;EACV,KAAA,EAAO,UAAA;EACP,eAAA,EAAiB,yBAAA;EACjB,cAAA,EAAgB,kBAAA;AAAA;;;;;AAyTqB;AAAA;;;KA9S3B,0BAAA;EACV,OAAA;EACA,SAAA,EAAW,mBAAA;EACX,eAAA,EAAiB,yBAAA;EACjB,cAAA,EAAgB,kBAAA;EAChB,cAAA,EAAgB,kBAAA;AAAA;;;;;;;;;;;;KAcN,WAAA,GAAc,MAAM,SAAS,iBAAA;;;;;AAsSW;AAAA;;;;;;;;;;;KApRxC,aAAA,yBACc,iBAAA,GAAoB,iBAAA,2BACnB,iBAAA,GAAoB,iBAAA,iBAC9B,UAAA,GAAa,UAAA,kBACZ,WAAA,eAA0B,WAAA;EAyRtC,yFAtRJ,KAAA,EAAO,MAAA,EAuRwC;EArR/C,OAAA,EAAS,eAAA,EAqRkD;EAnR3D,QAAA,EAAU,gBAAA;EAoR6B;;;;;;EA7QvC,MAAA,GAAS,OAAA;AAAA;;;;;;;;;;;;;;;;;AA6Q+B;AAAA;;;;;;;;;;;;;AAQqC;AAAA;;KAjPnE,kBAAA;EAuPmE;;;;EAlP7E,SAAA,GAAY,MAAA,SAAe,kBAAA;EAmPD;;;;;;;EA1O1B,MAAA,GAAS,MAAA,SAAe,UAAA;EA4OwD;;;;EAtOhF,QAAA,GAAW,MAAA,SAAe,iBAAA;EAoOd;;;;;EA7NZ,UAAA,GAAa,MAAA,SAAe,mBAAA;EA+Na;;;;;EAxNzC,SAAA,GAAY,MAAA,SAAe,kBAAA;EA+NxB;;;;;;;;;EApNH,IAAA,GAAO,MAAA,SAAe,aAAA;AAAA;;;;;;;;;KAWZ,cAAA,GACR,mBAAA,GACA,wBAAA,GACA,0BAAA;;;;;;;;;KAUQ,aAAA,GACR,kBAAA,GACA,uBAAA,GACA,yBAAA;AA4L2C;;;;;;;;;;;;;;;;;;;;;;;;AAAA,KAlKnC,uBAAA;EA4KyB;;;AAAY;AAAA;;;EApK/C,UAAA,GAAa,MAAA,SAAe,cAAA;EA2K4B;;;;;;;;EAjKxD,SAAA,GAAY,MAAA,SAAe,aAAA;EAsKpB;;;;;EA/JP,IAAA,GAAO,MAAA,SAAe,aAAA;AAAA;;;;;KAWnB,wBAAA,WAAmC,cAAA,IAAkB,CAAA,SAAU,0BAAA,GAChE,CAAA,qBACA,CAAA,SAAU,wBAAA,GACR,CAAA,eACA,CAAA,SAAU,mBAAA,GACR,CAAA;;;AA+IC;AAAA;;;;KArIG,qBAAA,WAAgC,UAAA,IAC1C,CAAA,SAAU,iCAAA,gBACN,eAAA,CAAgB,KAAA,IAChB,CAAA,SAAU,eAAA,gBACR,eAAA,CAAgB,KAAA,IAChB,CAAA,SAAU,UAAA,gBACR,eAAA,CAAgB,KAAA,IAChB,eAAA;;;;;;KAOE,mBAAA,WAA8B,UAAA,IAAc,CAAA;EACtD,UAAA;IAAc,QAAA,kBAA0B,kBAAA;EAAA;AAAA,IAEtC,CAAA,GACA,CAAA,SAAU,iCAAA,GACR,CAAA;EAAqB,UAAA;IAAc,QAAA,kBAA0B,kBAAA;EAAA;AAAA,IAC3D,CAAA;;AAyHyD;AAAA;;KAjH5D,oBAAA,WAA+B,aAAA,IAAiB,CAAA,SAAU,uBAAA,GAC3D,CAAA,YACA,CAAA,SAAU,yBAAA,GACR,CAAA,YACA,CAAA,SAAU,kBAAA,GACR,CAAA;;;;;KAOH,uBAAA,WAAkC,aAAA,IAAiB,CAAA,SAAU,uBAAA,GAC9D,CAAA,eACA,CAAA,SAAU,yBAAA,GACR,CAAA;;;;;KAOD,sBAAA,WAAiC,aAAA,IAAiB,CAAA,SAAU,uBAAA,GAC7D,CAAA,cACA,CAAA,SAAU,yBAAA,GACR,CAAA;;;;;KAOD,UAAA,WAAqB,aAAA,IAAiB,CAAA,SAAU,uBAAA,UAEjD,CAAA,SAAU,yBAAA;;;;;KAQT,8BAAA,qBAAmD,MAAA,SAAe,cAAA,mBACzD,WAAA,IAAe,wBAAA,CACzB,WAAA,CAAY,CAAA,aACF,wBAAA,CAAyB,WAAA,CAAY,CAAA;;;;;KAO9C,6BAAA,oBAAiD,MAAA,SAAe,aAAA,mBACvD,UAAA,IAAc,uBAAA,CAAwB,UAAA,CAAW,CAAA,WAAY,kBAAA,GACrE,uBAAA,CAAwB,UAAA,CAAW,CAAA,qBAC3B,uBAAA,CAAwB,UAAA,CAAW,CAAA,WAAY,kBAAA,GACvD,uBAAA,CAAwB,UAAA,CAAW,CAAA;;;;;KAQpC,yBAAA,WAAoC,aAAA,IAAiB,mBAAA,CAAoB,CAAA;;;;;KAMzE,uCAAA,oBAA2D,MAAA,SAAe,aAAA,mBACjE,UAAA,IAAc,yBAAA,CAA0B,UAAA,CAAW,CAAA,2BAE3D,yBAAA,CAA0B,UAAA,CAAW,CAAA,aAAc,yBAAA,CAA0B,UAAA,CAAW,CAAA;;AAuDrF;AAAA;;KAhDJ,0BAAA,oBAA8C,MAAA,SAAe,aAAA,mBACpD,UAAA,IAAc,qBAAA,CACxB,oBAAA,CAAqB,UAAA,CAAW,CAAA,cACtB,oBAAA,CAAqB,UAAA,CAAW,CAAA;;;;;KAOzC,4BAAA,oBAAgD,MAAA,SAAe,aAAA,mBACtD,UAAA,IAAc,UAAA,CAAW,UAAA,CAAW,CAAA,qBACzC,CAAA,6BACK,sBAAA,CAAuB,UAAA,CAAW,CAAA;;;;;KAO3C,yBAAA,WAAoC,aAAA,IAAiB,CAAA,SAAU,uBAAA,GAChE,CAAA,eACA,CAAA,SAAU,yBAAA,GACR,CAAA,eACA,CAAA,SAAU,kBAAA,GACR,CAAA;;;;AA+B4D;KAxB/D,0BAAA,oBAA8C,MAAA,SAAe,aAAA,mBACpD,UAAA,GAAa,yBAAA,CAA0B,UAAA,CAAW,CAAA;;;;;KAO3D,0BAAA,WAAqC,cAAA,IAAkB,CAAA,SAAU,0BAAA,GAClE,CAAA,gBACA,CAAA,SAAU,wBAAA,GACR,mBAAA,CAAoB,CAAA,gBACjB,CAAA,qBAAsB,wBAAA,GAA2B,uBAAA;EAC5C,QAAA,EAAU,CAAA;EAAe,UAAA,EAAY,CAAA;AAAA;EACrC,QAAA,EAAU,CAAA;EAAe,UAAA;AAAA,KACjC,CAAA,SAAU,mBAAA,GACR,CAAA;;;;;KAOH,2BAAA,qBAAgD,MAAA,SAAe,cAAA,mBACtD,WAAA,GAAc,0BAAA,CAA2B,WAAA,CAAY,CAAA;;;;;KAO9D,iCAAA,WAA4C,aAAA,IAAiB,CAAA,SAAU,uBAAA,GACxE,CAAA,2BAA4B,kBAAA,GAC1B,CAAA;;;;;KAQD,mCAAA,oBAAuD,MAAA,SAAe,aAAA,mBAC7D,UAAA,IAAc,iCAAA,CAAkC,UAAA,CAAW,CAAA,2BAEnE,iCAAA,CAAkC,UAAA,CAAW,CAAA,aAAc,iCAAA,CAC7D,UAAA,CAAW,CAAA;;;;;KAQV,kCAAA,WAA6C,cAAA,IAChD,CAAA,SAAU,0BAAA,GAA6B,CAAA;;;;;KAMpC,oCAAA,qBAAyD,MAAA,SAAe,cAAA,mBAC/D,WAAA,IAAe,kCAAA,CAAmC,WAAA,CAAY,CAAA,2BAEtE,kCAAA,CACE,WAAA,CAAY,CAAA,aACF,kCAAA,CAAmC,WAAA,CAAY,CAAA;;;;;KAO5D,0BAAA,WAAqC,aAAA,IAAiB,CAAA,SAAU,uBAAA,GACjE,CAAA,4BAA6B,yBAAA;;;AA5BjB;AAAA;KAqCX,8BAAA,WAAyC,aAAA,IAAiB,CAAA,SAAU,uBAAA,GACrE,CAAA,4BAA6B,yBAAA,GAC3B,CAAA;;;;;KAQD,oCAAA,oBAAwD,MAAA,SAAe,aAAA,mBAC9D,UAAA,IAAc,0BAAA,CAA2B,UAAA,CAAW,CAAA,qBACzD,CAAA,qCACK,8BAAA,CAA+B,UAAA,CAAW,CAAA;;;;;KAOnD,2BAAA,WAAsC,cAAA,IAAkB,CAAA,SAAU,0BAAA;;AAhD7B;AAAA;;KAwDrC,+BAAA,WAA0C,cAAA,IAC7C,CAAA,SAAU,0BAAA,GAA6B,CAAA;;;;;KAMpC,qCAAA,qBAA0D,MAAA,SAAe,cAAA,mBAChE,WAAA,IAAe,2BAAA,CAA4B,WAAA,CAAY,CAAA,qBAC5D,CAAA,qCACK,+BAAA,CAAgC,WAAA,CAAY,CAAA;;;;;KAOrD,qBAAA,eAAoC,MAAA,SAAe,aAAA,mBAC1C,KAAA,IAAS,qBAAA,CAAsB,KAAA,CAAM,CAAA,sBAAuB,KAAA,CAAM,CAAA;;;;;KAO3E,kCAAA,eAAiD,MAAA,SAAe,aAAA,mBACvD,KAAA,IAAS,mBAAA,CAAoB,KAAA,CAAM,CAAA,oCAE3C,mBAAA,CAAoB,KAAA,CAAM,CAAA,sBAAuB,mBAAA,CAAoB,KAAA,CAAM,CAAA;;;;;;;;;AAzEf;AAAA;KAsFtD,cAAA,mBAAiC,uBAAA;EAC3C,SAAA,GAAY,SAAA,uBAAgC,MAAA,SAAe,cAAA,IACvD,8BAAA,CAA+B,SAAA,yBAEhC,SAAA,sBAA+B,MAAA,SAAe,aAAA,IAC3C,6BAAA,CAA8B,SAAA,wBAEjC,SAAA,sBAA+B,MAAA,SAAe,aAAA,IAC3C,uCAAA,CAAwC,SAAA,wBAE3C,SAAA,sBAA+B,MAAA,SAAe,aAAA,IAC3C,mCAAA,CAAoC,SAAA,wBAEvC,SAAA,uBAAgC,MAAA,SAAe,cAAA,IAC5C,oCAAA,CAAqC,SAAA,yBAExC,SAAA,iBAA0B,MAAA,SAAe,aAAA,IACtC,kCAAA,CAAmC,SAAA;EAEzC,MAAA,GAAS,SAAA,sBAA+B,MAAA,SAAe,aAAA,IACnD,0BAAA,CAA2B,SAAA,wBAE5B,SAAA,iBAA0B,MAAA,SAAe,aAAA,IACtC,qBAAA,CAAsB,SAAA;EAE5B,QAAA,GAAW,SAAA,sBAA+B,MAAA,SAAe,aAAA,IACrD,4BAAA,CAA6B,SAAA,wBAE9B,SAAA,sBAA+B,MAAA,SAAe,aAAA,IAC3C,oCAAA,CAAqC,SAAA,wBAExC,SAAA,uBAAgC,MAAA,SAAe,cAAA,IAC5C,qCAAA,CAAsC,SAAA;EAE5C,UAAA,EAAY,SAAA,uBAAgC,MAAA,SAAe,cAAA,IACvD,2BAAA,CAA4B,SAAA;EAEhC,SAAA,EAAW,SAAA,sBAA+B,MAAA,SAAe,aAAA,IACrD,0BAAA,CAA2B,SAAA;EAE/B,IAAA,EAAM,SAAA,iBAA0B,MAAA,SAAe,aAAA,IAAiB,SAAA;AAAA;;;;;;;;;AAtHR;AAAA;;;;;;KAwI9C,mBAAA,mBAAsC,kBAAA,IAChD,SAAA,uBAAgC,MAAA,0BAAgC,SAAA;;;;;;;;;;;;;AA9H3D;AAAA;;KA+IK,kBAAA,mBAAqC,kBAAA,IAC/C,SAAA,sBAA+B,MAAA,0BAAgC,SAAA;;;;;;;;;;KAWrD,aAAA,mBAAgC,kBAAA,IAC1C,SAAA,iBAA0B,MAAA,SAAe,aAAA,UAAuB,SAAA;;;;;AAhmDlE;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;iBCrDgB,cAAA,uBACd,IAAA,EAAM,KAAA,EACN,OAAA;EAAY,IAAA;AAAA,IAAmB,IAAA,CAAK,sBAAA,qBACnC,uBAAA,CAAwB,KAAA;ADmE3B;;;;AAIM;AAWN;;;;;;;;;;;;AAAmG;AAUnG;;AAzBA,iBC7CgB,cAAA,uBACd,IAAA,EAAM,KAAA,EACN,OAAA;EAAW,IAAA;AAAA,IAAmB,IAAA,CAAK,sBAAA,qBAClC,wBAAA,CAAyB,KAAA;;;;;;;;;;AD4ET;AAWnB;;;;AAEY;AAcZ;;;;;iBCjFgB,cAAA,uBACd,IAAA,EAAM,KAAA,EACN,OAAA;EAAW,IAAA;AAAA,IAAmB,IAAA,CAAK,sBAAA,qBAClC,wBAAA,CAAyB,KAAA;;;;;ADiFM;AA8BlC;;;;AAAgC;AA4BhC;;;;AAAqB;AAAwB;;;;;iBCrH7B,cAAA,uBACd,IAAA,EAAM,KAAA,EACN,OAAA;EAAW,IAAA;AAAA,IAAoB,IAAA,CAAK,sBAAA,qBACnC,yBAAA,CAA0B,KAAA;;;;ADrG7B;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;;;AAUY;AAOZ;;;;AAIM;AAWN;;;;iBEhFgB,aAAA,kBACG,iBAAA,8BACA,gBAAA,CAAiB,MAAA,4CAElC,OAAA,EAAS,QAAA,EACT,OAAA;EACE,OAAA,GAAU,QAAA;EACV,OAAA;EACA,WAAA;AAAA,IAED,iBAAA,CAAkB,QAAA,EAAU,QAAA;;;;;AFtC/B;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;;;AAUY;AAOZ;;;;AAIM;AAWN;;;;;;;;;;;;AAAmG;AAUnG;;;;;;;;;;;;;;AASmB;AAWnB;;iBGpCgB,WAAA,oCAA+C,kBAAA,EAC7D,IAAA,EAAM,KAAA,EACN,OAAA,EAAS,wCAAA,CAAyC,IAAA,IACjD,gCAAA,CAAiC,KAAA,EAAO,IAAA;AAAA,iBAE3B,WAAA,uBACd,IAAA,EAAM,KAAA,EACN,OAAA,GAAU,kBAAA,GACT,UAAA,CAAW,KAAA;;;;;AH9Gd;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;;;AAUY;AAOZ;;;;AAIM;AAWN;;;;;;;;;;;;AAAmG;iBI5DnF,YAAA,WAAuB,UAAA,EAAY,KAAA,EAAO,CAAA,GAAI,qBAAA,CAAsB,CAAA;;;;;AJhDpF;;;;AAAwC;AAexC;;;;;;;;;;;;;iBKMgB,kBAAA,CACd,KAAA,EAAO,UAAA,EACP,QAAA,EAAU,wBAAA,GAA2B,yBAAA,EACrC,OAAA,GAAU,IAAA,CACR,OAAA,CACE,sBAAA;EACE,QAAA,EAAU,wBAAA,GAA2B,yBAAA;AAAA,oDAI1C,OAAA,CACD,sBAAA;EACE,QAAA,EAAU,wBAAA,GAA2B,yBAAA;AAAA;;ALqD7B;AAOZ;;;;AAIM;AAWN;;;;;;;;;;;;AAAmG;AAUnG;;;;;;;;;;;;;;iBKhDgB,kBAAA,CACd,KAAA,EAAO,UAAA,EACP,QAAA,EAAU,wBAAA,GAA2B,uBAAA,EACrC,OAAA,EAAS,IAAA,CACP,OAAA,CACE,sBAAA;EACE,QAAA,EAAU,wBAAA,GAA2B,uBAAA;AAAA,qCAI1C,OAAA,CACD,sBAAA;EACE,QAAA,EAAU,wBAAA,GAA2B,uBAAA;AAAA;;;;;AL2EP;AA8BlC;;;;AAAgC;AA4BhC;;;;AAAqB;AAAwB;;;;;;iBKlD7B,qBAAA,CACd,WAAA,EAAa,kBAAA,EACb,MAAA,EAAQ,wBAAA,GAA2B,yBAAA,EACnC,OAAA,GAAU,IAAA,CACR,OAAA,CACE,yBAAA;EACE,MAAA,EAAQ,wBAAA,GAA2B,yBAAA;AAAA,wDAIxC,OAAA,CACD,yBAAA;EACE,MAAA,EAAQ,wBAAA,GAA2B,yBAAA;AAAA;;;;;ALgFnB;AA0BpB;;;;;;;;;;;AA2Ba;AAoBb;;;;;;;iBK9HgB,qBAAA,CACd,WAAA,EAAa,kBAAA,EACb,MAAA,EAAQ,wBAAA,GAA2B,uBAAA,EACnC,OAAA,EAAS,IAAA,CACP,OAAA,CACE,yBAAA;EACE,MAAA,EAAQ,wBAAA,GAA2B,uBAAA;AAAA,yCAIxC,OAAA,CACD,yBAAA;EACE,MAAA,EAAQ,wBAAA,GAA2B,uBAAA;AAAA;;;;;ALxNvC;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;;;AAUY;AAOZ;;;;AAIM;AAWN;;;;;;;;;;;;AAAmG;AAUnG;iBMzEgB,eAAA,kBAAiC,iBAAA,EAC/C,QAAA,EAAU,wBAAA,GAA2B,yBAAA,EACrC,OAAA,EAAS,QAAA,EACT,OAAA,GAAU,IAAA,CACR,OAAA,CACE,mBAAA,CAAoB,QAAA;EAClB,QAAA,EAAU,wBAAA,GAA2B,yBAAA;AAAA,6CAI1C,OAAA,CACD,mBAAA,CAAoB,QAAA;EAClB,QAAA,EAAU,wBAAA,GAA2B,yBAAA;AAAA;;;;;;;;;ANsEtB;AAWnB;;;;AAEY;AAcZ;;;;;;;;;;;;AAGkC;AA8BlC;;;;AAAgC;AA4BhC;;;;AAAqB;AAAwB;;;;;;;;;;;;;;iBMxG7B,eAAA,kBAAiC,iBAAA,EAC/C,QAAA,EAAU,wBAAA,GAA2B,uBAAA,EACrC,OAAA,EAAS,QAAA,EACT,OAAA,EAAS,IAAA,CACP,OAAA,CACE,mBAAA,CAAoB,QAAA;EAClB,QAAA,EAAU,wBAAA,GAA2B,uBAAA;AAAA,8BAI1C,OAAA,CACD,mBAAA,CAAoB,QAAA;EAClB,QAAA,EAAU,wBAAA,GAA2B,uBAAA;AAAA;;;;;AN3HzC;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;;;AAUY;AAOZ;;;iBOnDgB,eAAA,CAAgB,KAAA,EAAO,aAAA,GAAgB,kBAAkB;APuDnE;AAWN;;;;;;;;;;;;AAAmG;AAUnG;;;;;;;;;;;;;;AASmB;AAWnB;;;;AAEY;AAcZ;;;;;;;;;;;;AAGkC;AA8BlC;;;;AAAgC;AA4BhC;;;;AAAqB;AAAwB;AAtHvC,iBOWU,cAAA,kBAAgC,iBAAA,EAC9C,KAAA,EAAO,UAAA,EACP,OAAA,EAAS,QAAA,EACT,OAAA,GAAU,IAAA,CAAK,kBAAA,CAAmB,QAAA,0BACjC,kBAAA,CAAmB,QAAA;;;;;APhHtB;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;;;AAUY;AAOZ;;;;AAIM;AAWN;;;;;;;;;;;;AAAmG;AAUnG;;;;;;;;;;;;;;AASmB;AAWnB;;;;AAEY;iBQhBI,cAAA,mBAAiC,uBAAA,EAC/C,UAAA,EAAY,SAAA,GACX,cAAA,CAAe,SAAA;;;;;;AR9HlB;;;;AAAwC;AAexC;;;;;;;;;;;;KSFY,UAAA,qBAA+B,CAAA,sBAEvC,CAAA,iEAEE,CAAA;;AT2Ca;AAgBnB;;;;AAUY;AAOZ;;;;AAIM;AAWN;;;;;;;;;KSpEY,cAAA,qBAAmC,CAAA,sBAAuB,CAAC;;;AToE4B;AAUnG;;KSvEK,gBAAA,mDACH,cAAA,CAAe,GAAA,EAAK,WAAA,wBAEhB,GAAA,wCACE,gBAAA,CAAiB,OAAA,EAAS,WAAA;;;;;;;;KAU7B,cAAA,+CAGD,OAAA,uDACA,WAAA,eACE,gBAAA,CAAiB,GAAA,EAAK,WAAA,IACtB,GAAA,+CACE,WAAA,eACE,cAAA,CAAe,OAAA,EAAS,WAAA,IACxB,WAAA,SAAoB,OAAA,GAClB,cAAA,CAAe,OAAA,EAAS,WAAA,oBAGhC,OAAA,sBAEE,OAAA,eACE,GAAA,gDAGA,OAAA,SAAgB,GAAA;;;;AT+CL;AAWnB;;;;AAEY;AAcZ;;;;;;;;;KSpDY,kBAAA,+CACV,UAAA,CAAW,GAAA,0BAEP,cAAA,CAAe,OAAA,0BAEb,cAAA,CAAe,GAAA,EAAK,OAAA,iBAClB,GAAA;;;;AT5GV;;;;AAAwC;AAexC;;;;;KUCY,oBAAA,kBACO,iBAAA,oBACC,kBAAA;EVYlB,kEURA,OAAA,0BVkBA;EUhBA,QAAA,EAAU,SAAA,EV0BV;EUxBA,OAAA,EAAS,QAAA,EVkCT;EUhCA,UAAA,EAAY,WAAA,EVgCK;EU9BjB,SAAA,GAAY,MAAA;AAAA;;;AVwDF;AAOZ;;;;AAIM;AAWN;KUlEY,mBAAA,kBACO,iBAAA,oBACC,kBAAA,GAAqB,kBAAA,iBACxB,UAAA,GAAa,UAAA,2BACH,yBAAA,eACrB,yBAAA,sCAEoB,kBAAA,eAAiC,kBAAA;mEAGzD,OAAA,yBVwD4C;EUtD5C,QAAA,EAAU,kBAAA,CAAmB,QAAA,GVsDoE;EUpDjG,OAAA,EAAS,sBAAA,EVoDgB;EUlDzB,QAAA,EAAU,SAAA,EVkDiE;EUhD3E,KAAA,EAAO,MAAA,EVgD0F;EU9CjG,eAAA,EAAiB,gBAAA,EVwDuB;EUtDxC,cAAA,EAAgB,eAAA;AAAA;;;;;;;;;;;AV+DC;AAWnB;;;;AAEY;AAcZ;;;;;;;;;;;;AAGkC;AA8BlC;iBU1FgB,oBAAA,kBACG,iBAAA,oBACC,wBAAA,EAElB,QAAA,EAAU,SAAA,EACV,OAAA,EAAS,QAAA,EACT,OAAA;EACE,SAAA,GAAY,MAAA;AAAA,IAEb,oBAAA,CAAqB,QAAA,EAAU,SAAA;AViFF;AA4BhC;;;;AAAqB;AAAwB;;;;;;;;;;;;;;;AA0CzB;AA0BpB;;;;;;;;AAhGgC,iBUjDhB,oBAAA,kBACG,iBAAA,oBACC,yBAAA,EAElB,QAAA,EAAU,SAAA,EACV,OAAA,EAAS,QAAA,EACT,OAAA;EACE,SAAA,GAAY,MAAA;AAAA,IAEb,oBAAA,CAAqB,QAAA,EAAU,SAAA;AVmKrB;AAoBb;;;;;;;;;;;AA2Ba;AAUb;;;;AAAyE;AAKzE;;;;;AA9Da,iBU1IG,oBAAA,kBACG,iBAAA,gDAEC,wBAAA,EAElB,QAAA,EAAU,SAAA,EACV,OAAA,EAAS,QAAA,EACT,OAAA;EACE,UAAA,EAAY,UAAA,CAAW,WAAA;EACvB,SAAA,GAAY,MAAA;AAAA,IAEb,oBAAA,CAAqB,QAAA,EAAU,SAAA,EAAW,WAAA;;;;;;;;;AV+LU;AAQvD;;;;;;;;;;;;;AA2BoB;AAoBpB;;;;;;;;;AAEQ;AAgBR;iBUpOgB,oBAAA,kBACG,iBAAA,gDAEC,uBAAA,EAElB,QAAA,EAAU,SAAA,EACV,OAAA,EAAS,QAAA,EACT,OAAA;EACE,UAAA,EAAY,UAAA,CAAW,WAAA;EACvB,SAAA,GAAY,MAAA;AAAA,IAEb,oBAAA,CAAqB,QAAA,EAAU,SAAA,EAAW,WAAA;;;;;AV2NrC;AAgBR;;;;;;;;iBUlMgB,mBAAA,kBACG,iBAAA,oBACC,wBAAA,sBACE,UAAA,0BACI,wBAAA,EAExB,cAAA,EAAgB,oBAAA,CAAqB,QAAA,EAAU,SAAA,cAC/C,KAAA,EAAO,WAAA,EACP,OAAA;EACE,cAAA,EAAgB,eAAA;EAChB,SAAA,GAAY,MAAA;AAAA,IAEb,mBAAA,CACD,QAAA,EACA,SAAA,EACA,WAAA,EACA,yBAAA,EACA,eAAA;;;;;;;;AVqMM;AAQR;;;;;iBU7LgB,mBAAA,kBACG,iBAAA,oBACC,yBAAA,sBACE,UAAA,0BACI,yBAAA,EAExB,cAAA,EAAgB,oBAAA,CAAqB,QAAA,EAAU,SAAA,cAC/C,KAAA,EAAO,WAAA,EACP,OAAA;EACE,cAAA,EAAgB,eAAA;EAChB,SAAA,GAAY,MAAA;AAAA,IAEb,mBAAA,CACD,QAAA,EACA,SAAA,EACA,WAAA,EACA,yBAAA,EACA,eAAA;;;;;;;;;;;iBAac,mBAAA,kBACG,iBAAA,gDAEC,wBAAA,sBACE,UAAA,0BACI,wBAAA,GAA2B,uBAAA,EAEnD,cAAA,EAAgB,oBAAA,CAAqB,QAAA,EAAU,SAAA,EAAW,WAAA,GAC1D,KAAA,EAAO,WAAA,EACP,OAAA;EACE,cAAA,EAAgB,eAAA;EAChB,SAAA,GAAY,MAAA;AAAA,IAEb,mBAAA,CACD,QAAA,EACA,SAAA,EACA,WAAA,EACA,yBAAA,EACA,eAAA;AViJiC;AASnC;;;;;;;;AAWY;AAMZ;AA1BmC,iBUnInB,mBAAA,kBACG,iBAAA,gDAEC,uBAAA,sBACE,UAAA,0BACI,wBAAA,GAA2B,uBAAA,uCACd,WAAA,EAErC,cAAA,EAAgB,oBAAA,CAAqB,QAAA,EAAU,SAAA,EAAW,WAAA,GAC1D,KAAA,EAAO,WAAA,EACP,OAAA;EACE,cAAA,EAAgB,eAAA;EAChB,UAAA,GAAa,cAAA,CAAe,mBAAA;EAC5B,SAAA,GAAY,MAAA;AAAA,IAEb,mBAAA,CACD,QAAA,EACA,SAAA,EACA,WAAA,EACA,yBAAA,EACA,eAAA;;;;;;;;;;;;;;AVsKkB;AAQpB;iBU5JgB,mBAAA,kBACG,iBAAA,oBACC,wBAAA,sBACE,UAAA,EAEpB,cAAA,EAAgB,oBAAA,CAAqB,QAAA,EAAU,SAAA,cAC/C,KAAA,EAAO,WAAA,EACP,OAAA;EACE,SAAA,GAAY,MAAA;AAAA,IAEb,mBAAA,CAAoB,QAAA,EAAU,SAAA,EAAW,WAAA;;;;;;;;;;AV6K/B;AASb;;;;;iBUrKgB,mBAAA,kBACG,iBAAA,oBACC,yBAAA,sBACE,UAAA,EAEpB,cAAA,EAAgB,oBAAA,CAAqB,QAAA,EAAU,SAAA,cAC/C,KAAA,EAAO,WAAA,EACP,OAAA;EACE,SAAA,GAAY,MAAA;AAAA,IAEb,mBAAA,CAAoB,QAAA,EAAU,SAAA,EAAW,WAAA;;;;;;AVqL/B;AAYb;;;iBUtLgB,mBAAA,kBACG,iBAAA,gDAEC,wBAAA,sBACE,UAAA,EAEpB,cAAA,EAAgB,oBAAA,CAAqB,QAAA,EAAU,SAAA,EAAW,WAAA,GAC1D,KAAA,EAAO,WAAA,EACP,OAAA;EACE,SAAA,GAAY,MAAA;AAAA,IAEb,mBAAA,CAAoB,QAAA,EAAU,SAAA,EAAW,WAAA;;;;;;;;;;AV6KZ;AA0DhC;;;;;;;;;;;;;;;;;;iBUzMgB,mBAAA,kBACG,iBAAA,gDAEC,uBAAA,sBACE,UAAA,uCACiB,WAAA,EAErC,cAAA,EAAgB,oBAAA,CAAqB,QAAA,EAAU,SAAA,EAAW,WAAA,GAC1D,KAAA,EAAO,WAAA,EACP,OAAA;EACE,UAAA,GAAa,cAAA,CAAe,mBAAA;EAC5B,SAAA,GAAY,MAAA;AAAA,IAEb,mBAAA,CAAoB,QAAA,EAAU,SAAA,EAAW,WAAA;;;;;;;iBAiF5B,sBAAA,CACd,KAAA,YACC,KAAA,IAAS,oBAAA,CAAqB,iBAAA,EAAmB,kBAAA;AVoJpD;;;;;;AAAA,iBUrIgB,qBAAA,CACd,KAAA,YACC,KAAA,IAAS,mBAAmB,CAAC,iBAAA;;;;AV9lBhC;;;;AAAwC;AAexC;;;;KWEY,qBAAA,kBACO,iBAAA,oBACC,kBAAA,qEAEH,UAAA,GAAa,UAAA;EXI5B,kEWDA,OAAA,2BXWA;EWTA,QAAA,EAAU,kBAAA,CAAmB,QAAA,GXmB7B;EWjBA,OAAA,EAAS,sBAAA,EX2BT;EWzBA,QAAA,EAAU,SAAA,EX8BO;EW5BjB,KAAA,EAAO,MAAA,EX4CG;EW1CV,OAAA,EAAS,QAAA;EAET,UAAA,EAAY,WAAA;AAAA;AXyDd;;;;AAIM;AAWN;;;;;AAfA,KW5CY,sBAAA,kBACO,iBAAA,0BACO,kBAAA,0BACA,kBAAA;EXwDyE,mEWrDjG,OAAA,4BXqDyB;EWnDzB,SAAA,EAAW,mBAAA,CAAoB,QAAA,GXmD4C;EWjD3E,eAAA,EAAiB,yBAAA,EXiDgF;EW/CjG,cAAA,EAAgB,eAAA,EXyDwB;EWvDxC,cAAA,EAAgB,eAAA;AAAA;;;;;;;;;;;AXgEC;AAWnB;;;;AAEY;AAcZ;;;;;;;;;iBW/DgB,qBAAA,kBACG,iBAAA,sBACG,UAAA,oBACF,wBAAA,EAElB,KAAA,EAAO,WAAA,EACP,QAAA,EAAU,SAAA,EACV,OAAA,EAAS,QAAA,EACT,OAAA;EACE,SAAA,GAAY,MAAA;AAAA,IAEb,qBAAA,CAAsB,QAAA,EAAU,SAAA,aAAsB,WAAA;AXuDvB;AA8BlC;;;;AAAgC;AA4BhC;;;;AAAqB;AAAwB;;;;;;;;;;;;;;AA1DX,iBW5BlB,qBAAA,kBACG,iBAAA,sBACG,UAAA,oBACF,yBAAA,EAElB,KAAA,EAAO,WAAA,EACP,QAAA,EAAU,SAAA,EACV,OAAA,EAAS,QAAA,EACT,OAAA;EACE,SAAA,GAAY,MAAA;AAAA,IAEb,qBAAA,CAAsB,QAAA,EAAU,SAAA,aAAsB,WAAA;;;;;;;;;;;AX0K5C;AAoBb;;;;;;;;;;;AA2Ba;AAUb;;;iBWvMgB,qBAAA,kBACG,iBAAA,kDAEG,UAAA,oBACF,wBAAA,EAElB,KAAA,EAAO,WAAA,EACP,QAAA,EAAU,SAAA,EACV,OAAA,EAAS,QAAA,EACT,OAAA;EACE,UAAA,EAAY,UAAA,CAAW,WAAA;EACvB,SAAA,GAAY,MAAA;AAAA,IAEb,qBAAA,CAAsB,QAAA,EAAU,SAAA,EAAW,WAAA,EAAa,WAAA;;;;;;;;;;;;;;;;AXiMJ;AAQvD;;;;;;;;;;;;;AA2BoB;AAoBpB;;;iBWrNgB,qBAAA,kBACG,iBAAA,kDAEG,UAAA,oBACF,uBAAA,EAElB,KAAA,EAAO,WAAA,EACP,QAAA,EAAU,SAAA,EACV,OAAA,EAAS,QAAA,EACT,OAAA;EACE,UAAA,EAAY,cAAA,CAAe,WAAA;EAC3B,SAAA,GAAY,MAAA;AAAA,IAEb,qBAAA,CAAsB,QAAA,EAAU,SAAA,EAAW,WAAA,EAAa,WAAA;;;AX0MnD;AAgBR;;;;;iBWrLgB,sBAAA,kBACG,iBAAA,oBACC,wBAAA,0BACM,wBAAA,EAExB,eAAA,EAAiB,qBAAA,CAAsB,QAAA,EAAU,SAAA,cACjD,OAAA;EACE,cAAA,EAAgB,eAAA;AAAA,IAEjB,sBAAA,CAAuB,QAAA,EAAU,eAAA,EAAiB,SAAA;;AX8K7C;AAgBR;;;;;;iBWpLgB,sBAAA,kBACG,iBAAA,oBACC,yBAAA,0BACM,yBAAA,EAExB,eAAA,EAAiB,qBAAA,CAAsB,QAAA,EAAU,SAAA,cACjD,OAAA;EACE,cAAA,EAAgB,eAAA;AAAA,IAEjB,sBAAA,CAAuB,QAAA,EAAU,eAAA,EAAiB,SAAA;AX6K7C;AAgBR;;;;;;;AAhBQ,iBWnKQ,sBAAA,kBACG,iBAAA,gDAEC,wBAAA,0BACM,wBAAA,GAA2B,uBAAA,EAEnD,eAAA,EAAiB,qBAAA,CAAsB,QAAA,EAAU,SAAA,EAAW,WAAA,GAC5D,OAAA;EACE,cAAA,EAAgB,eAAA;AAAA,IAEjB,sBAAA,CAAuB,QAAA,EAAU,eAAA,EAAiB,SAAA;AXmLrD;;;;;;;;;AAAA,iBWxKgB,sBAAA,kBACG,iBAAA,gDAEC,uBAAA,0BACM,wBAAA,GAA2B,uBAAA,wCACb,WAAA,EAEtC,eAAA,EAAiB,qBAAA,CAAsB,QAAA,EAAU,SAAA,EAAW,WAAA,GAC5D,OAAA;EACE,cAAA,EAAgB,eAAA;EAChB,UAAA,GAAa,UAAA,CAAW,oBAAA;AAAA,IAEzB,sBAAA,CAAuB,QAAA,EAAU,eAAA,EAAiB,SAAA;;;;;;;;;;;AXgKlB;AASnC;iBW3JgB,sBAAA,kBAAwC,iBAAA,EACtD,eAAA,EAAiB,qBAAA,CAAsB,QAAA,EAAU,wBAAA;EAC9C,OAAA,EAAS,QAAA;EAAU,QAAA,EAAU,wBAAA;AAAA;;;;AXoKtB;AAMZ;;;;;;;;iBW5JgB,sBAAA,kBAAwC,iBAAA,EACtD,eAAA,EAAiB,qBAAA,CAAsB,QAAA,EAAU,yBAAA;EAC9C,OAAA,EAAS,QAAA;EAAU,QAAA,EAAU,yBAAA;AAAA;;;;;;;iBAQlB,sBAAA,kBACG,iBAAA,8BAGjB,eAAA,EAAiB,qBAAA,CAAsB,QAAA,EAAU,wBAAA,EAA0B,WAAA;EACxE,OAAA,EAAS,QAAA;EAAU,QAAA,EAAU,wBAAA;EAA0B,UAAA;AAAA;;;;;;;;;;;AX6M/C;AASb;;;;;;;;;;;;;iBW5LgB,sBAAA,kBACG,iBAAA,oEAEqB,WAAA,EAEtC,eAAA,EAAiB,qBAAA,CAAsB,QAAA,EAAU,uBAAA,EAAyB,WAAA,GAC1E,OAAA;EACE,UAAA,GAAa,UAAA,CAAW,oBAAA;AAAA;EAEvB,OAAA,EAAS,QAAA;EAAU,QAAA,EAAU,uBAAA;EAAyB,UAAA;AAAA;;;;;;;iBAoE3C,uBAAA,CACd,KAAA,YACC,KAAA,IAAS,qBAAA,CAAsB,iBAAA,EAAmB,kBAAA;;;AXqJrB;AA0DhC;;;iBWhMgB,wBAAA,CACd,KAAA,YACC,KAAA,IAAS,sBAAA,CAAuB,iBAAA,EAAmB,kBAAA,EAAoB,kBAAA;;;;;AXxf1E;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;;;AAUY;AAOZ;;;;AAIM;AAWN;;;;;;;;;;;;AAAmG;AAUnG;;;;;;;iBY1EgB,SAAA,yBACU,iBAAA,2BACC,iBAAA,iBACV,UAAA,kBACC,WAAA,0BAEhB,KAAA,EAAO,MAAA,EACP,QAAA;EAAY,OAAA,EAAS,eAAA;EAAiB,QAAA,EAAU,gBAAA;EAAkB,MAAA,GAAS,OAAA;AAAA,IAC1E,aAAA,CAAc,eAAA,EAAiB,gBAAA,EAAkB,MAAA,EAAQ,OAAA;;;;;AZpD5D;;;;AAAwC;AAexC;;;;;;;;;;;;;;AA6CmB;AAgBnB;;;;AAUY;AAOZ;;;;AAIM;iBalEU,mCAAA,CACd,KAAA,EAAO,UAAA,GACN,KAAA,IAAS,iCAAiC;;;;;AbjC7C;;;;AAAwC;AAexC;iBchBgB,WAAA,CAAY,KAAA,EAAO,gBAAA,CAAiB,KAAK;;;;;;;iBAiBzC,eAAA,CAAgB,MAAA,WAAiB,gBAAA,CAAiB,KAAK,IAAI,KAAA"}
package/dist/index.d.mts CHANGED
@@ -867,6 +867,18 @@ type BridgedPublisherConfigBase = {
867
867
  bridgeExchange: ExchangeDefinition;
868
868
  targetExchange: ExchangeDefinition;
869
869
  };
870
+ /**
871
+ * Typed error map for an RPC: error code → message definition validating the
872
+ * error's `data` payload.
873
+ *
874
+ * Reuses {@link MessageDefinition} so error data gets the same Standard Schema
875
+ * validation and AsyncAPI metadata (`summary` / `description`) as request and
876
+ * response payloads. The `headers` slot of an error's message definition is
877
+ * ignored — error replies carry the code in a fixed AMQP header instead.
878
+ *
879
+ * @see defineRpc for declaring errors on an RPC
880
+ */
881
+ type RpcErrorMap = Record<string, MessageDefinition>;
870
882
  /**
871
883
  * Definition of an RPC operation: a request/response pair flowing over a
872
884
  * request queue with replies routed back via direct reply-to.
@@ -879,13 +891,21 @@ type BridgedPublisherConfigBase = {
879
891
  * @template TRequestMessage - The request message definition
880
892
  * @template TResponseMessage - The response message definition
881
893
  * @template TQueue - The request queue entry
894
+ * @template TErrors - The typed error map (undefined when the RPC declares none)
882
895
  *
883
896
  * @see defineRpc for creating RPC definitions
884
897
  */
885
- type RpcDefinition<TRequestMessage extends MessageDefinition = MessageDefinition, TResponseMessage extends MessageDefinition = MessageDefinition, TQueue extends QueueEntry = QueueEntry> = {
898
+ type RpcDefinition<TRequestMessage extends MessageDefinition = MessageDefinition, TResponseMessage extends MessageDefinition = MessageDefinition, TQueue extends QueueEntry = QueueEntry, TErrors extends RpcErrorMap | undefined = RpcErrorMap | undefined> = {
886
899
  /** The queue that receives RPC requests. Replies are routed back via direct reply-to. */queue: TQueue; /** Schema for the request payload (validated on both publish and consume). */
887
900
  request: TRequestMessage; /** Schema for the response payload (validated on both worker reply and client receive). */
888
901
  response: TResponseMessage;
902
+ /**
903
+ * Typed business errors the handler may return via `Err(rpcError(code, data))`.
904
+ * Error data is validated against the declared schema on the worker before
905
+ * the error reply is published, and re-validated on the client when it
906
+ * arrives. Business errors are replied and acked — never retried.
907
+ */
908
+ errors?: TErrors;
889
909
  };
890
910
  /**
891
911
  * Complete AMQP contract definition (output type).
@@ -2616,30 +2636,45 @@ declare function isBridgedPublisherConfig(value: unknown): value is BridgedPubli
2616
2636
  * (server side) and outgoing requests (client side).
2617
2637
  * @param messages.response - Schema validated against handler return values
2618
2638
  * (server side) and incoming replies (client side).
2639
+ * @param messages.errors - Optional typed error map: error code → message
2640
+ * definition for the error's `data` payload. Declared errors widen the
2641
+ * handler's `Err` channel (return `Err(rpcError(code, data))`) and the
2642
+ * client's `call()` error union; error data is schema-validated on both
2643
+ * sides. Business errors are replied and acked — never retried.
2619
2644
  *
2620
2645
  * @example
2621
2646
  * ```typescript
2622
2647
  * import { defineQueue, defineMessage, defineRpc, defineContract } from '@amqp-contract/contract';
2623
2648
  * import { z } from 'zod';
2624
2649
  *
2625
- * const calculate = defineRpc(defineQueue('rpc.calculate'), {
2626
- * request: defineMessage(z.object({ a: z.number(), b: z.number() })),
2627
- * response: defineMessage(z.object({ sum: z.number() })),
2650
+ * const getOrder = defineRpc(defineQueue('rpc.get-order'), {
2651
+ * request: defineMessage(z.object({ orderId: z.string() })),
2652
+ * response: defineMessage(z.object({ orderId: z.string(), status: z.string() })),
2653
+ * errors: {
2654
+ * ORDER_NOT_FOUND: defineMessage(z.object({ orderId: z.string() })),
2655
+ * },
2628
2656
  * });
2629
2657
  *
2630
- * const contract = defineContract({ rpcs: { calculate } });
2631
- *
2632
- * // Server (worker): handler returns the typed response
2633
- * // handlers: { calculate: ({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync() }
2658
+ * const contract = defineContract({ rpcs: { getOrder } });
2634
2659
  *
2635
- * // Client: typed call with required timeout
2636
- * // const result = await client.call('calculate', { a: 1, b: 2 }, { timeoutMs: 5_000 });
2660
+ * // Server (worker): return the response, or a declared typed error
2661
+ * // handlers: {
2662
+ * // getOrder: ({ payload }) =>
2663
+ * // orders.has(payload.orderId)
2664
+ * // ? OkAsync(orders.get(payload.orderId))
2665
+ * // : ErrAsync(rpcError('ORDER_NOT_FOUND', { orderId: payload.orderId })),
2666
+ * // }
2667
+ *
2668
+ * // Client: typed call — the error union includes RpcError<'ORDER_NOT_FOUND', { orderId: string }>
2669
+ * // const result = await client.call('getOrder', { orderId: '42' }, { timeoutMs: 5_000 });
2670
+ * // if (result.isErr() && isRpcError(result.error)) console.log(result.error.code);
2637
2671
  * ```
2638
2672
  */
2639
- declare function defineRpc<TRequestMessage extends MessageDefinition, TResponseMessage extends MessageDefinition, TQueue extends QueueEntry>(queue: TQueue, messages: {
2673
+ declare function defineRpc<TRequestMessage extends MessageDefinition, TResponseMessage extends MessageDefinition, TQueue extends QueueEntry, TErrors extends RpcErrorMap | undefined = undefined>(queue: TQueue, messages: {
2640
2674
  request: TRequestMessage;
2641
2675
  response: TResponseMessage;
2642
- }): RpcDefinition<TRequestMessage, TResponseMessage, TQueue>;
2676
+ errors?: TErrors;
2677
+ }): RpcDefinition<TRequestMessage, TResponseMessage, TQueue, TErrors>;
2643
2678
  //#endregion
2644
2679
  //#region src/builder/ttl-backoff.d.ts
2645
2680
  /**
@@ -2676,5 +2711,23 @@ declare function defineRpc<TRequestMessage extends MessageDefinition, TResponseM
2676
2711
  */
2677
2712
  declare function isQueueWithTtlBackoffInfrastructure(entry: QueueEntry): entry is QueueWithTtlBackoffInfrastructure;
2678
2713
  //#endregion
2679
- export { type AnySchema, type BaseExchangeDefinition, type BindingDefinition, type BindingPattern, type BridgedPublisherConfig, type BridgedPublisherConfigBase, type ClassicQueueDefinition, type ClassicQueueOptions, type CommandConsumerConfig, type CommandConsumerConfigBase, type CompressionAlgorithm, type ConsumerDefinition, type ConsumerEntry, type ContractDefinition, type ContractDefinitionInput, type ContractOutput, type DeadLetterConfig, type DefineQueueOptions, type DirectExchangeDefinition, type EventConsumerResult, type EventConsumerResultBase, type EventPublisherConfig, type EventPublisherConfigBase, type ExchangeBindingDefinition, type ExchangeDefinition, type FanoutExchangeDefinition, type HeadersExchangeDefinition, type ImmediateRequeueRetryOptions, type InferConsumerNames, type InferPublisherNames, type InferRpcNames, type MatchingRoutingKey, type MessageDefinition, type PublisherDefinition, type PublisherEntry, type QueueBindingDefinition, type QueueDefinition, type QueueEntry, type QueueType, type QueueWithTtlBackoffInfrastructure, type QuorumQueueDefinition, type QuorumQueueOptions, type ResolvedImmediateRequeueRetryOptions, type ResolvedRetryOptions, type ResolvedTtlBackoffRetryOptions, type RoutingKey, type RpcDefinition, type TopicExchangeDefinition, type TtlBackoffRetryOptions, defineCommandConsumer, defineCommandPublisher, defineConsumer, defineContract, defineEventConsumer, defineEventPublisher, defineExchange, defineExchangeBinding, defineMessage, definePublisher, defineQueue, defineQueueBinding, defineRpc, extractConsumer, extractQueue, isBridgedPublisherConfig, isCommandConsumerConfig, isEventConsumerResult, isEventPublisherConfig, isQueueWithTtlBackoffInfrastructure };
2714
+ //#region src/issues.d.ts
2715
+ /**
2716
+ * Render a single Standard Schema issue as `path.to.field: message` (or just
2717
+ * the message for root-level issues). Path segments may be raw property keys
2718
+ * or `{ key }` objects per the Standard Schema spec; both are handled.
2719
+ *
2720
+ * Single source of truth for issue rendering across the client and worker —
2721
+ * mirrors temporal-contract's shared formatter (org DNA).
2722
+ */
2723
+ declare function formatIssue(issue: StandardSchemaV1.Issue): string;
2724
+ /**
2725
+ * Render a list of Standard Schema issues as a single human-readable line:
2726
+ * the first `limit` issues joined with `; `, plus a `(+N more)` suffix when
2727
+ * truncated. Empty input renders as `"no issues"` (defensive — validation
2728
+ * failures always carry at least one issue).
2729
+ */
2730
+ declare function summarizeIssues(issues: readonly StandardSchemaV1.Issue[], limit?: number): string;
2731
+ //#endregion
2732
+ export { type AnySchema, type BaseExchangeDefinition, type BindingDefinition, type BindingPattern, type BridgedPublisherConfig, type BridgedPublisherConfigBase, type ClassicQueueDefinition, type ClassicQueueOptions, type CommandConsumerConfig, type CommandConsumerConfigBase, type CompressionAlgorithm, type ConsumerDefinition, type ConsumerEntry, type ContractDefinition, type ContractDefinitionInput, type ContractOutput, type DeadLetterConfig, type DefineQueueOptions, type DirectExchangeDefinition, type EventConsumerResult, type EventConsumerResultBase, type EventPublisherConfig, type EventPublisherConfigBase, type ExchangeBindingDefinition, type ExchangeDefinition, type FanoutExchangeDefinition, type HeadersExchangeDefinition, type ImmediateRequeueRetryOptions, type InferConsumerNames, type InferPublisherNames, type InferRpcNames, type MatchingRoutingKey, type MessageDefinition, type PublisherDefinition, type PublisherEntry, type QueueBindingDefinition, type QueueDefinition, type QueueEntry, type QueueType, type QueueWithTtlBackoffInfrastructure, type QuorumQueueDefinition, type QuorumQueueOptions, type ResolvedImmediateRequeueRetryOptions, type ResolvedRetryOptions, type ResolvedTtlBackoffRetryOptions, type RoutingKey, type RpcDefinition, type RpcErrorMap, type TopicExchangeDefinition, type TtlBackoffRetryOptions, defineCommandConsumer, defineCommandPublisher, defineConsumer, defineContract, defineEventConsumer, defineEventPublisher, defineExchange, defineExchangeBinding, defineMessage, definePublisher, defineQueue, defineQueueBinding, defineRpc, extractConsumer, extractQueue, formatIssue, isBridgedPublisherConfig, isCommandConsumerConfig, isEventConsumerResult, isEventPublisherConfig, isQueueWithTtlBackoffInfrastructure, summarizeIssues };
2680
2733
  //# sourceMappingURL=index.d.mts.map