@agentguard-run/spend 0.15.9 → 0.15.11

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/dist/index.js CHANGED
@@ -22,8 +22,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
22
22
  };
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
24
  exports.receiptSchemaVersion = exports.isReceiptV3 = exports.assertReceiptV3 = exports.isOpenRouterHost = exports.clearManagedOpenRouterKeyCache = exports.fetchManagedOpenRouterKey = exports.modelCostFromOpenRouter = exports.persistOverrides = exports.syncPricingIntoCostTable = exports.getCachedCatalog = exports.fetchCatalog = exports.recordTelemetryEvent = exports.resetTelemetryInstallId = exports.disableTelemetry = exports.enableTelemetry = exports.telemetryStatus = exports.licenseKeyFingerprint = exports.clearConfiguredLicenseKey = exports.writeConfiguredLicenseKey = exports.readConfiguredLicenseKey = exports.validateAndRegisterLicense = exports.validateLicenseKey = exports.AgentGuardLicenseRequiredError = exports.NdjsonDecisionLogStore = exports.InMemorySpendStore = exports.InMemoryDecisionLogStore = exports.GENESIS_PREVIOUS_HASH = exports.detectSequenceGaps = exports.verifyChain = exports.verifyEntry = exports.signDecision = exports.computeSignerFingerprint = exports.computeEntryHash = exports.sha256Hex = exports.canonicalJson = exports.BUILT_IN_KEYWORD_WATCHLISTS = exports.findCustomKeywordWatchlists = exports.enforcePolicyLicenseGates = exports.adjustPolicyWindowSpend = exports.buildScopeKey = exports.evaluatePolicy = exports.knownModelCosts = exports.persistCostOverrides = exports.loadPersistedCostOverrides = exports.listCostOverrides = exports.inferProvider = exports.computeCallCents = exports.clearCostOverrides = exports.setCostOverride = exports.getModelCost = void 0;
25
- exports.resolveLocale = exports.TRANSLATIONS = exports.SUPPORTED_LOCALES = exports.DEFAULT_LOCALE = exports.defaultKey = exports.recommend = exports.withSpendGuardBedrock = exports.withSpendGuardAnthropic = exports.AgentGuardBlockedError = exports.withSpendGuard = exports.SpendGuard = exports.writeAdvisorOutputs = exports.createAdvisorSessionLogger = exports.resolveAdvisorApiKey = exports.createAdvisorClient = exports.projectedSavings = exports.buildPolicyFromProfile = exports.buildBusinessProfile = exports.AdvisorConversation = exports.AgentGuardWorkflowStateError = exports.AgentGuardDurationCapError = exports.AgentGuardChainCorruptError = exports.AgentGuardBudgetCapError = exports.validateReceiptChain = exports.computeChainHash = exports.WorkflowContext = exports.workflow = exports.verifyConsentReceipt = exports.enforceCompliance = exports.AgentGuardConsentRequiredError = exports.AgentGuardComplianceError = exports.isForeignOriginModel = exports.inferCompliance = exports.inferHosting = exports.inferModelIdentity = exports.inferProviderRoute = exports.PROVIDER_REGISTRY = exports.captureProvenance = exports.verifyReceiptDag = exports.verifyInclusion = exports.signDagNode = exports.msgHashForDecision = exports.merkleRoot = exports.merkleInclusionProof = exports.gateCapability = exports.deriveTrustScore = exports.deriveCapability = exports.dagEnvelopeFromEntries = exports.computeDagEntryHash = exports.compressReceiptDag = void 0;
26
- exports.formatLineage = exports.workloadProvenance = exports.buildSampleVerifierHtml = exports.SAMPLE_FLOWS = exports.isSampleFlow = exports.buildSampleReceipt = exports.anchorDir = exports.anchorProofPath = exports.anchorIndexPath = exports.findAnchorForHead = exports.readAnchorIndexAt = exports.readAnchorIndex = exports.writeAnchorProof = exports.defaultOtsLib = exports.DEFAULT_OTS_CALENDARS = exports.OpenTimestampsAnchor = exports.merkleRootHex = exports.chainHeadDigestHex = exports.createAnchorFromEnv = exports.createAnchor = exports.BONUS_THRESHOLD_PCT = exports.DEFAULT_FREE_LIMIT = exports.bonusMessage = exports.readFreeTierState = exports.maybeGrantFirstTimeBonus = exports.getMonthlyUsage = exports.centsToUsd = exports.decisionCents = exports.classifyOrigin = exports.aggregateLedger = exports.PATENT_NOTICE = exports.agentguard = exports.AGENTGUARD_SPEND_VERSION = exports.formatBlockedTrace = exports.t = void 0;
25
+ exports.SUPPORTED_LOCALES = exports.DEFAULT_LOCALE = exports.RoutingExhaustedError = exports.createRouter = exports.defaultKey = exports.recommend = exports.withSpendGuardBedrock = exports.withSpendGuardAnthropic = exports.AgentGuardBlockedError = exports.withSpendGuard = exports.SpendGuard = exports.writeAdvisorOutputs = exports.createAdvisorSessionLogger = exports.resolveAdvisorApiKey = exports.createAdvisorClient = exports.projectedSavings = exports.buildPolicyFromProfile = exports.buildBusinessProfile = exports.AdvisorConversation = exports.AgentGuardWorkflowStateError = exports.AgentGuardDurationCapError = exports.AgentGuardChainCorruptError = exports.AgentGuardBudgetCapError = exports.validateReceiptChain = exports.computeChainHash = exports.WorkflowContext = exports.workflow = exports.verifyConsentReceipt = exports.enforceCompliance = exports.AgentGuardConsentRequiredError = exports.AgentGuardComplianceError = exports.isForeignOriginModel = exports.inferCompliance = exports.inferHosting = exports.inferModelIdentity = exports.inferProviderRoute = exports.PROVIDER_REGISTRY = exports.captureProvenance = exports.verifyReceiptDag = exports.verifyInclusion = exports.signDagNode = exports.msgHashForDecision = exports.merkleRoot = exports.merkleInclusionProof = exports.gateCapability = exports.deriveTrustScore = exports.deriveCapability = exports.dagEnvelopeFromEntries = exports.computeDagEntryHash = exports.compressReceiptDag = void 0;
26
+ exports.formatLineage = exports.workloadProvenance = exports.buildSampleVerifierHtml = exports.SAMPLE_FLOWS = exports.isSampleFlow = exports.buildSampleReceipt = exports.anchorDir = exports.anchorProofPath = exports.anchorIndexPath = exports.findAnchorForHead = exports.readAnchorIndexAt = exports.readAnchorIndex = exports.writeAnchorProof = exports.defaultOtsLib = exports.DEFAULT_OTS_CALENDARS = exports.OpenTimestampsAnchor = exports.merkleRootHex = exports.chainHeadDigestHex = exports.createAnchorFromEnv = exports.createAnchor = exports.BONUS_THRESHOLD_PCT = exports.DEFAULT_FREE_LIMIT = exports.bonusMessage = exports.readFreeTierState = exports.maybeGrantFirstTimeBonus = exports.getMonthlyUsage = exports.centsToUsd = exports.decisionCents = exports.classifyOrigin = exports.aggregateLedger = exports.PATENT_NOTICE = exports.agentguard = exports.AGENTGUARD_SPEND_VERSION = exports.formatBlockedTrace = exports.t = exports.resolveLocale = exports.TRANSLATIONS = void 0;
27
27
  const context_1 = require("./workflow/context");
28
28
  // Cost table
29
29
  var cost_table_1 = require("./cost-table");
@@ -156,6 +156,9 @@ Object.defineProperty(exports, "withSpendGuardBedrock", { enumerable: true, get:
156
156
  var router_1 = require("./router");
157
157
  Object.defineProperty(exports, "recommend", { enumerable: true, get: function () { return router_1.recommend; } });
158
158
  Object.defineProperty(exports, "defaultKey", { enumerable: true, get: function () { return router_1.defaultKey; } });
159
+ var router_engine_1 = require("./router-engine");
160
+ Object.defineProperty(exports, "createRouter", { enumerable: true, get: function () { return router_engine_1.createRouter; } });
161
+ Object.defineProperty(exports, "RoutingExhaustedError", { enumerable: true, get: function () { return router_engine_1.RoutingExhaustedError; } });
159
162
  // Localization (en-US, es-419, pt-BR)
160
163
  var i18n_1 = require("./i18n");
161
164
  Object.defineProperty(exports, "DEFAULT_LOCALE", { enumerable: true, get: function () { return i18n_1.DEFAULT_LOCALE; } });
@@ -164,7 +167,7 @@ Object.defineProperty(exports, "TRANSLATIONS", { enumerable: true, get: function
164
167
  Object.defineProperty(exports, "resolveLocale", { enumerable: true, get: function () { return i18n_1.resolveLocale; } });
165
168
  Object.defineProperty(exports, "t", { enumerable: true, get: function () { return i18n_1.t; } });
166
169
  Object.defineProperty(exports, "formatBlockedTrace", { enumerable: true, get: function () { return i18n_1.formatBlockedTrace; } });
167
- exports.AGENTGUARD_SPEND_VERSION = '0.15.9';
170
+ exports.AGENTGUARD_SPEND_VERSION = '0.15.11';
168
171
  exports.agentguard = {
169
172
  workflow: context_1.workflow,
170
173
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,123 @@
1
+ /**
2
+ * AgentGuard Spend: spend-and-policy-aware model router.
3
+ *
4
+ * `createRouter(...)` composes the EXISTING pieces of this SDK into one call
5
+ * that:
6
+ * 1. selects a candidate model across providers by a routing policy
7
+ * (cost-first / explicit priority / capability-tag filter),
8
+ * 2. enforces the spend cap using the EXISTING enforcement path
9
+ * (`SpendGuard.decide` -> `evaluatePolicy`) — block / downgrade / allow,
10
+ * 3. executes via the candidate's provider client,
11
+ * 4. FAILS OVER to the next viable candidate on a provider error/timeout OR a
12
+ * cap breach (block) on the chosen model — this removes vendor lock-in,
13
+ * 5. signs a routing receipt that records the decision, hash-chained onto the
14
+ * SAME signed log as the enforcement decisions using the EXISTING Ed25519 +
15
+ * canonical-JSON receipt infra (`SpendGuard.recordRoutingReceipt`).
16
+ *
17
+ * ZERO DATA PLANE: prompts, completions and provider keys never leave the
18
+ * process, and the routing receipt is payload-minimized (provider + model +
19
+ * projected cost only — never content).
20
+ *
21
+ * Patent notice: Protected by U.S. patent-pending technology
22
+ * (App. Nos. 63/983,615; 63/983,621; 63/983,843; 63/984,626;
23
+ * 64/071,781; 64/071,789).
24
+ */
25
+ import { SpendGuard, type SpendGuardConfig } from './spend-guard';
26
+ import type { CapabilityTier, SignedDecisionLogEntry, SpendDecision, SpendPolicy, SpendScope } from './types';
27
+ /** A provider the router knows how to dispatch a call to. */
28
+ export type RouterProvider = 'openai' | 'anthropic' | 'bedrock' | 'openrouter';
29
+ /** One routable model on a concrete provider client. */
30
+ export interface RouterCandidate {
31
+ /** Provider family. Drives cost lookup, dispatch and receipt labeling. */
32
+ provider: RouterProvider;
33
+ /** Model id as passed to the provider. */
34
+ model: string;
35
+ /** The provider SDK client used to execute the call. */
36
+ client: any;
37
+ /** Optional capability tags for capability-filter routing (e.g. 'vision'). */
38
+ capabilities?: string[];
39
+ }
40
+ /** How the router chooses among candidates. */
41
+ export interface RouterPolicy {
42
+ /**
43
+ * - `cost`: cheapest capable candidate first (projected cents ascending).
44
+ * - `priority`: honor the given candidate order (explicit failover order).
45
+ * - `capability`: keep only candidates whose `capabilities` include
46
+ * `requireCapability`, then order cheapest-first.
47
+ */
48
+ mode: 'cost' | 'priority' | 'capability';
49
+ /** Required capability tag when `mode === 'capability'`. */
50
+ requireCapability?: string;
51
+ }
52
+ export interface CreateRouterConfig {
53
+ /** Ordered list of routable candidates across providers. */
54
+ candidates: RouterCandidate[];
55
+ /** Selection policy. Defaults to cost-first. */
56
+ policy?: RouterPolicy;
57
+ /** The spend policy enforced by the EXISTING enforcement path. */
58
+ spendPolicy: SpendPolicy;
59
+ /** Ed25519 signing keys for the receipt chain. Reused, not re-invented. */
60
+ signingKeys?: SpendGuardConfig['signingKeys'];
61
+ /** Decision log store shared by enforcement + routing receipts. */
62
+ logStore?: SpendGuardConfig['logStore'];
63
+ /** Spend state store. */
64
+ spendStore?: SpendGuardConfig['spendStore'];
65
+ /** Any remaining SpendGuard config (posture, license, locale, hooks, ...). */
66
+ guardConfig?: Omit<SpendGuardConfig, 'policy' | 'signingKeys' | 'logStore' | 'spendStore'>;
67
+ }
68
+ /** A single inference request routed across candidates. */
69
+ export interface RouterRequest {
70
+ /** Identity scope for enforcement. Defaults to the spend policy scope. */
71
+ scope?: SpendScope;
72
+ /** Provider-native messages (openai/anthropic style). Used for token estimate. */
73
+ messages?: unknown[];
74
+ /** Extra provider params merged into the call (max_tokens, temperature, ...). */
75
+ params?: Record<string, unknown>;
76
+ /** Explicit input token count. Overrides estimation from `messages`. */
77
+ inputTokens?: number;
78
+ /** Expected output token count. Falls back to params.max_tokens or 512. */
79
+ outputTokens?: number;
80
+ /** Capability tier claim forwarded to enforcement. */
81
+ capabilityClaim?: CapabilityTier;
82
+ /** Optional label for the call (metadata only). */
83
+ label?: string;
84
+ }
85
+ export type RouteReason = 'cost' | 'priority' | 'capability' | 'failover' | 'downgrade';
86
+ /** A candidate that was considered but not chosen, and why. */
87
+ export interface RouteFallback {
88
+ provider: RouterProvider;
89
+ model: string;
90
+ /** 'cap_breach' (blocked by spend cap) or 'provider_error'. */
91
+ reason: 'cap_breach' | 'provider_error';
92
+ detail?: string;
93
+ }
94
+ export interface RouteResult<T = unknown> {
95
+ /** The provider response from the winning candidate. */
96
+ response: T;
97
+ /** Chosen provider + model actually executed. */
98
+ chosen: {
99
+ provider: RouterProvider;
100
+ model: string;
101
+ };
102
+ /** Why this candidate won. */
103
+ reason: RouteReason;
104
+ /** Resolved cost in cents (settled from usage when available, else projected). */
105
+ resolvedCents: number;
106
+ /** Candidates skipped before the winner, with cause. */
107
+ fallbacks: RouteFallback[];
108
+ /** The winning enforcement decision (already signed onto the chain). */
109
+ decision: SpendDecision;
110
+ /** The signed routing receipt entry (null when signing keys are absent). */
111
+ routingReceipt: SignedDecisionLogEntry | null;
112
+ }
113
+ export declare class RoutingExhaustedError extends Error {
114
+ fallbacks: RouteFallback[];
115
+ constructor(fallbacks: RouteFallback[]);
116
+ }
117
+ export interface ModelRouter {
118
+ route<T = unknown>(request: RouterRequest): Promise<RouteResult<T>>;
119
+ /** The underlying SpendGuard (shared enforcement + signed chain). */
120
+ readonly guard: SpendGuard;
121
+ }
122
+ export declare function createRouter(config: CreateRouterConfig): ModelRouter;
123
+ //# sourceMappingURL=router-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router-engine.d.ts","sourceRoot":"","sources":["../src/router-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,246 @@
1
+ "use strict";
2
+ /**
3
+ * AgentGuard Spend: spend-and-policy-aware model router.
4
+ *
5
+ * `createRouter(...)` composes the EXISTING pieces of this SDK into one call
6
+ * that:
7
+ * 1. selects a candidate model across providers by a routing policy
8
+ * (cost-first / explicit priority / capability-tag filter),
9
+ * 2. enforces the spend cap using the EXISTING enforcement path
10
+ * (`SpendGuard.decide` -> `evaluatePolicy`) — block / downgrade / allow,
11
+ * 3. executes via the candidate's provider client,
12
+ * 4. FAILS OVER to the next viable candidate on a provider error/timeout OR a
13
+ * cap breach (block) on the chosen model — this removes vendor lock-in,
14
+ * 5. signs a routing receipt that records the decision, hash-chained onto the
15
+ * SAME signed log as the enforcement decisions using the EXISTING Ed25519 +
16
+ * canonical-JSON receipt infra (`SpendGuard.recordRoutingReceipt`).
17
+ *
18
+ * ZERO DATA PLANE: prompts, completions and provider keys never leave the
19
+ * process, and the routing receipt is payload-minimized (provider + model +
20
+ * projected cost only — never content).
21
+ *
22
+ * Patent notice: Protected by U.S. patent-pending technology
23
+ * (App. Nos. 63/983,615; 63/983,621; 63/983,843; 63/984,626;
24
+ * 64/071,781; 64/071,789).
25
+ */
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.RoutingExhaustedError = void 0;
28
+ exports.createRouter = createRouter;
29
+ const spend_guard_1 = require("./spend-guard");
30
+ const cost_table_1 = require("./cost-table");
31
+ class RoutingExhaustedError extends Error {
32
+ fallbacks;
33
+ constructor(fallbacks) {
34
+ super('agentguard router: every candidate was exhausted (' +
35
+ fallbacks.map((f) => `${f.provider}/${f.model}:${f.reason}`).join(', ') +
36
+ ')');
37
+ this.name = 'RoutingExhaustedError';
38
+ this.fallbacks = fallbacks;
39
+ }
40
+ }
41
+ exports.RoutingExhaustedError = RoutingExhaustedError;
42
+ const ROUTER_PROVIDER_TO_ENFORCEMENT = {
43
+ openai: 'openai',
44
+ openrouter: 'openai',
45
+ anthropic: 'anthropic',
46
+ bedrock: 'bedrock',
47
+ };
48
+ function createRouter(config) {
49
+ if (!Array.isArray(config.candidates) || config.candidates.length === 0) {
50
+ throw new Error('createRouter: at least one candidate is required');
51
+ }
52
+ const policy = config.policy ?? { mode: 'cost' };
53
+ const guard = new spend_guard_1.SpendGuard({
54
+ policy: config.spendPolicy,
55
+ ...(config.guardConfig ?? {}),
56
+ ...(config.signingKeys ? { signingKeys: config.signingKeys } : {}),
57
+ ...(config.logStore ? { logStore: config.logStore } : {}),
58
+ ...(config.spendStore ? { spendStore: config.spendStore } : {}),
59
+ });
60
+ async function route(request) {
61
+ const scope = request.scope ?? config.spendPolicy.scope;
62
+ const inputTokens = request.inputTokens ?? guard.estimateTokens(estimateText(request.messages));
63
+ const outputTokens = normalizeTokens(request.outputTokens ?? paramsMaxTokens(request.params), 512);
64
+ const ordered = selectCandidates(config.candidates, policy, inputTokens, outputTokens);
65
+ const considered = ordered.map((c) => ({
66
+ provider: c.provider,
67
+ model: c.model,
68
+ projectedCents: projectCents(c.model, inputTokens, outputTokens),
69
+ }));
70
+ const firstChoiceModel = ordered[0]?.model ?? request.params?.model ?? 'unknown';
71
+ const fallbacks = [];
72
+ for (let i = 0; i < ordered.length; i++) {
73
+ const candidate = ordered[i];
74
+ const call = buildCall(candidate, request, scope, inputTokens, outputTokens);
75
+ const { decision } = await guard.decide(call);
76
+ // (d) cap breach on the chosen model -> fail over to the next candidate.
77
+ if (decision.action === 'block') {
78
+ fallbacks.push({
79
+ provider: candidate.provider,
80
+ model: candidate.model,
81
+ reason: 'cap_breach',
82
+ detail: decision.reasons[0],
83
+ });
84
+ continue;
85
+ }
86
+ const executedModel = decision.action === 'downgrade' && decision.modelResolved !== decision.modelRequested
87
+ ? decision.modelResolved
88
+ : candidate.model;
89
+ let response;
90
+ try {
91
+ // (c) execute via the correct provider binding.
92
+ response = (await executeCandidate(candidate, executedModel, request));
93
+ }
94
+ catch (err) {
95
+ // (d) provider error/timeout -> fail over to the next candidate.
96
+ fallbacks.push({
97
+ provider: candidate.provider,
98
+ model: candidate.model,
99
+ reason: 'provider_error',
100
+ detail: errorDetail(err),
101
+ });
102
+ continue;
103
+ }
104
+ // (b) settle the true cost against the EXISTING spend window.
105
+ const resolvedCents = await settleUsage(guard, decision, response, executedModel, inputTokens, outputTokens);
106
+ const reason = resolveReason(policy, i, decision.action === 'downgrade');
107
+ // (e) sign a routing receipt onto the same chain via the existing infra.
108
+ const receiptPayload = {
109
+ policy: policy.mode,
110
+ ...(policy.requireCapability ? { requireCapability: policy.requireCapability } : {}),
111
+ candidates: considered,
112
+ chosen: { provider: candidate.provider, model: executedModel },
113
+ reason,
114
+ resolvedCents,
115
+ fallbacks,
116
+ enforcementDecisionId: decision.decisionId,
117
+ };
118
+ const { signed } = await guard.recordRoutingReceipt({
119
+ provider: ROUTER_PROVIDER_TO_ENFORCEMENT[candidate.provider],
120
+ modelRequested: firstChoiceModel,
121
+ modelResolved: executedModel,
122
+ projectedCents: resolvedCents,
123
+ reason,
124
+ routingReceipt: receiptPayload,
125
+ });
126
+ return {
127
+ response,
128
+ chosen: { provider: candidate.provider, model: executedModel },
129
+ reason,
130
+ resolvedCents,
131
+ fallbacks,
132
+ decision,
133
+ routingReceipt: signed,
134
+ };
135
+ }
136
+ throw new RoutingExhaustedError(fallbacks);
137
+ }
138
+ return { route, guard };
139
+ }
140
+ function selectCandidates(candidates, policy, inputTokens, outputTokens) {
141
+ let pool = candidates.slice();
142
+ if (policy.mode === 'capability') {
143
+ const tag = policy.requireCapability;
144
+ pool = pool.filter((c) => !tag || (c.capabilities ?? []).includes(tag));
145
+ }
146
+ if (policy.mode === 'priority') {
147
+ return pool; // honor the given order verbatim
148
+ }
149
+ // cost-first (also the tiebreaker within capability mode). Stable on ties by
150
+ // preserving original index order.
151
+ return pool
152
+ .map((candidate, index) => ({ candidate, index, cents: projectCents(candidate.model, inputTokens, outputTokens) }))
153
+ .sort((a, b) => a.cents - b.cents || a.index - b.index)
154
+ .map((entry) => entry.candidate);
155
+ }
156
+ function resolveReason(policy, winnerIndex, downgraded) {
157
+ if (downgraded)
158
+ return 'downgrade';
159
+ if (winnerIndex > 0)
160
+ return 'failover';
161
+ return policy.mode;
162
+ }
163
+ function buildCall(candidate, request, scope, inputTokens, outputTokens) {
164
+ return {
165
+ provider: ROUTER_PROVIDER_TO_ENFORCEMENT[candidate.provider],
166
+ model: candidate.model,
167
+ inputTokens,
168
+ outputTokens,
169
+ scope,
170
+ ...(request.capabilityClaim ? { capabilityClaim: request.capabilityClaim } : {}),
171
+ ...(request.label ? { label: request.label } : {}),
172
+ requestShape: { model: candidate.model, maxTokens: outputTokens, routedProvider: candidate.provider },
173
+ };
174
+ }
175
+ async function executeCandidate(candidate, model, request) {
176
+ const client = candidate.client;
177
+ const baseParams = { ...(request.params ?? {}) };
178
+ if (request.messages !== undefined && baseParams.messages === undefined) {
179
+ baseParams.messages = request.messages;
180
+ }
181
+ const params = { ...baseParams, model };
182
+ if ((candidate.provider === 'openai' || candidate.provider === 'openrouter') && client?.chat?.completions?.create) {
183
+ return client.chat.completions.create(params);
184
+ }
185
+ if (candidate.provider === 'anthropic' && client?.messages?.create) {
186
+ return client.messages.create(params);
187
+ }
188
+ if (candidate.provider === 'bedrock' && typeof client?.send === 'function') {
189
+ return client.send({
190
+ constructor: { name: 'InvokeModelCommand' },
191
+ input: { modelId: model, body: JSON.stringify(params) },
192
+ });
193
+ }
194
+ // Structural fallbacks so any minimal/mocked client still routes.
195
+ if (client?.chat?.completions?.create)
196
+ return client.chat.completions.create(params);
197
+ if (client?.messages?.create)
198
+ return client.messages.create(params);
199
+ if (typeof client?.create === 'function')
200
+ return client.create(params);
201
+ throw new Error(`router: candidate client for ${candidate.provider} exposes no known invoke method`);
202
+ }
203
+ async function settleUsage(guard, decision, response, executedModel, inputTokens, outputTokens) {
204
+ const usage = (0, spend_guard_1.extractUsage)(response);
205
+ if (usage) {
206
+ const settlement = await guard.settleStreamUsage(decision.decisionId, usage.inputTokens, usage.outputTokens, {
207
+ partial: false,
208
+ });
209
+ if (settlement && Number.isFinite(settlement.decision.actualCents)) {
210
+ return settlement.decision.actualCents;
211
+ }
212
+ const settled = (0, cost_table_1.computeCallCents)(executedModel, usage.inputTokens, usage.outputTokens);
213
+ if (settled !== null)
214
+ return settled;
215
+ }
216
+ return projectCents(executedModel, inputTokens, outputTokens);
217
+ }
218
+ function projectCents(model, inputTokens, outputTokens) {
219
+ const cents = (0, cost_table_1.computeCallCents)(model, inputTokens, outputTokens);
220
+ return cents === null ? Number.POSITIVE_INFINITY : cents;
221
+ }
222
+ function estimateText(messages) {
223
+ if (!Array.isArray(messages))
224
+ return '';
225
+ return messages
226
+ .map((message) => {
227
+ const content = message?.content;
228
+ if (typeof content === 'string')
229
+ return content;
230
+ return content == null ? '' : JSON.stringify(content);
231
+ })
232
+ .join('\n');
233
+ }
234
+ function paramsMaxTokens(params) {
235
+ const value = params?.max_tokens ?? params?.maxTokens ?? params?.max_completion_tokens;
236
+ return Number.isSafeInteger(value) && value >= 0 ? value : undefined;
237
+ }
238
+ function normalizeTokens(value, fallback) {
239
+ return Number.isSafeInteger(value) && value >= 0 ? value : fallback;
240
+ }
241
+ function errorDetail(err) {
242
+ if (err instanceof Error && err.message)
243
+ return err.message.slice(0, 160);
244
+ return 'provider_error';
245
+ }
246
+ //# sourceMappingURL=router-engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router-engine.js","sourceRoot":"","sources":["../src/router-engine.ts"],"names":[],"mappings":"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"}
package/dist/router.d.ts CHANGED
@@ -8,6 +8,7 @@
8
8
  * (App. Nos. 63/983,615; 63/983,621; 63/983,843; 63/984,626;
9
9
  * 64/071,781; 64/071,789).
10
10
  */
11
+ export { createRouter, RoutingExhaustedError, type ModelRouter, type CreateRouterConfig, type RouterCandidate, type RouterPolicy, type RouterProvider, type RouterRequest, type RouteResult, type RouteReason, type RouteFallback, } from './router-engine';
11
12
  export interface RouterCatalogModel {
12
13
  id: string;
13
14
  in_per_mtok: number;
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7C,eAAe,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,aAAa,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACnD,cAAc,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AA4lCD,wBAAgB,SAAS,CAAC,OAAO,GAAE,gBAAqB,GAAG,wBAAwB,CA+BlF;AAaD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAKrE"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,aAAa,GACnB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7C,eAAe,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,aAAa,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACnD,cAAc,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AA4lCD,wBAAgB,SAAS,CAAC,OAAO,GAAE,gBAAqB,GAAG,wBAAwB,CA+BlF;AAaD,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAKrE"}
package/dist/router.js CHANGED
@@ -10,9 +10,15 @@
10
10
  * 64/071,781; 64/071,789).
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.RoutingExhaustedError = exports.createRouter = void 0;
13
14
  exports.recommend = recommend;
14
15
  exports.defaultKey = defaultKey;
15
16
  const openrouter_catalog_1 = require("./openrouter-catalog");
17
+ // Spend-and-policy-aware model router (removes vendor risk). Re-exported here so
18
+ // the `./router` subpath exposes both the config recommender and the executor.
19
+ var router_engine_1 = require("./router-engine");
20
+ Object.defineProperty(exports, "createRouter", { enumerable: true, get: function () { return router_engine_1.createRouter; } });
21
+ Object.defineProperty(exports, "RoutingExhaustedError", { enumerable: true, get: function () { return router_engine_1.RoutingExhaustedError; } });
16
22
  const DEFAULTS = {
17
23
  "version": 2,
18
24
  "compliance_verticals": [
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;AAgpCH,8BA+BC;AAaD,gCAKC;AA/rCD,6DAAgF;AAoDhF,MAAM,QAAQ,GAAG;IACf,SAAS,EAAE,CAAC;IACZ,sBAAsB,EAAE;QACtB,KAAK;QACL,YAAY;QACZ,WAAW;QACX,YAAY;KACb;IACD,yBAAyB,EAAE;QACzB,WAAW;QACX,OAAO;QACP,aAAa;QACb,QAAQ;QACR,OAAO;QACP,WAAW;QACX,UAAU;QACV,YAAY;QACZ,QAAQ;KACT;IACD,UAAU,EAAE;QACV,gCAAgC,EAAE;YAChC,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,cAAc;YACtB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,gBAAgB;gBAChB,6BAA6B;gBAC7B,0BAA0B;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,mCAAmC,EAAE;YACnC,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,+BAA+B;YAC1C,MAAM,EAAE,cAAc;YACtB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,gBAAgB;gBAChB,6BAA6B;gBAC7B,0BAA0B;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,8BAA8B,EAAE;YAC9B,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,0BAA0B;YACrC,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,gCAAgC,EAAE;YAChC,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,8BAA8B,EAAE;YAC9B,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,0BAA0B;YACrC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,4BAA4B,EAAE;YAC5B,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,wBAAwB;YACnC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,0CAA0C,EAAE;YAC1C,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,sCAAsC;YACjD,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,4BAA4B,EAAE;YAC5B,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,wBAAwB;YACnC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,kCAAkC,EAAE;YAClC,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,8BAA8B;YACzC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,iCAAiC,EAAE;YACjC,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,6BAA6B;YACxC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,qCAAqC,EAAE;YACrC,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,iCAAiC;YAC5C,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,uCAAuC,EAAE;YACvC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,qBAAqB;YAC7B,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,mBAAmB;YAC/B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,kCAAkC;aACnC;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,gCAAgC,EAAE;YAChC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,qBAAqB;YAChC,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,qCAAqC,EAAE;YACrC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,0BAA0B;YACrC,MAAM,EAAE,iBAAiB;YACzB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,gBAAgB;gBAChB,6BAA6B;gBAC7B,0BAA0B;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,2CAA2C,EAAE;YAC3C,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,gCAAgC;YAC3C,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,4BAA4B,EAAE;YAC5B,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,iBAAiB;YAC5B,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,uCAAuC,EAAE;YACvC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,mCAAmC,EAAE;YACnC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,wBAAwB;YACnC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,qCAAqC,EAAE;YACrC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,0BAA0B;YACrC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,uCAAuC,EAAE;YACvC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,oCAAoC,EAAE;YACpC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,yBAAyB;YACpC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,oCAAoC,EAAE;YACpC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,0BAA0B;YACrC,MAAM,EAAE,cAAc;YACtB,QAAQ,EAAE,MAAM;YAChB,iBAAiB,EAAE,OAAO;YAC1B,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,gBAAgB;gBAChB,6BAA6B;gBAC7B,0BAA0B;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,QAAQ;SACnB;QACD,uCAAuC,EAAE;YACvC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,6BAA6B;YACxC,MAAM,EAAE,iBAAiB;YACzB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,gBAAgB;gBAChB,6BAA6B;gBAC7B,0BAA0B;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,QAAQ;SACnB;QACD,qCAAqC,EAAE;YACrC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,2BAA2B;YACtC,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,uCAAuC,EAAE;YACvC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,6BAA6B;YACxC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,sCAAsC,EAAE;YACtC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,mDAAmD,EAAE;YACnD,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,yCAAyC;YACpD,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,yCAAyC,EAAE;YACzC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,+BAA+B;YAC1C,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,2CAA2C,EAAE;YAC3C,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,iCAAiC;YAC5C,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,wCAAwC,EAAE;YACxC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,8BAA8B;YACzC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,gCAAgC,EAAE;YAChC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,sBAAsB;YACjC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,uBAAuB,EAAE;YACvB,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,aAAa;YACxB,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,4CAA4C,EAAE;YAC5C,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,iCAAiC;YAC5C,MAAM,EAAE,cAAc;YACtB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,gBAAgB;gBAChB,6BAA6B;gBAC7B,0BAA0B;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,8BAA8B,EAAE;YAC9B,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,mBAAmB;YAC9B,MAAM,EAAE,cAAc;YACtB,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,gBAAgB;gBAChB,6BAA6B;gBAC7B,0BAA0B;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,sCAAsC,EAAE;YACtC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,2BAA2B;YACtC,MAAM,EAAE,qBAAqB;YAC7B,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,mBAAmB;YAC/B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,kCAAkC;aACnC;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,QAAQ;SACnB;QACD,8CAA8C,EAAE;YAC9C,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,mCAAmC;YAC9C,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,QAAQ;YAC3B,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,SAAS;SACpB;QACD,qCAAqC,EAAE;YACrC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,0BAA0B;YACrC,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,QAAQ;YAC3B,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,SAAS;SACpB;QACD,0CAA0C,EAAE;YAC1C,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,+BAA+B;YAC1C,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,QAAQ;YAC3B,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,SAAS;SACpB;QACD,uCAAuC,EAAE;YACvC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,QAAQ;YAC3B,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,SAAS;SACpB;QACD,uCAAuC,EAAE;YACvC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,uCAAuC,EAAE;YACvC,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,4BAA4B;YACvC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,+BAA+B,EAAE;YAC/B,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,oBAAoB;YAC/B,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,0CAA0C,EAAE;YAC1C,UAAU,EAAE,YAAY;YACxB,SAAS,EAAE,+BAA+B;YAC1C,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE;gBACjB,IAAI;aACL;YACD,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,8BAA8B,EAAE;YAC9B,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,oBAAoB;YAC/B,MAAM,EAAE,qBAAqB;YAC7B,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,mBAAmB;YAC/B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,kCAAkC;aACnC;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,qCAAqC,EAAE;YACrC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,2BAA2B;YACtC,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,QAAQ;SACnB;QACD,4CAA4C,EAAE;YAC5C,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,kCAAkC;YAC7C,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,KAAK;YACf,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,QAAQ;SACnB;QACD,2CAA2C,EAAE;YAC3C,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,iCAAiC;YAC5C,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,QAAQ;SACnB;QACD,oCAAoC,EAAE;YACpC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,0BAA0B;YACrC,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,QAAQ;SACnB;QACD,mCAAmC,EAAE;YACnC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,yBAAyB;YACpC,MAAM,EAAE,sBAAsB;YAC9B,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,QAAQ;YAC3B,SAAS,EAAE,qBAAqB;YAChC,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE;gBAChB,qBAAqB;gBACrB,qBAAqB;gBACrB,mBAAmB;gBACnB,gBAAgB;aACjB;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,yBAAyB;YAC3C,QAAQ,EAAE,SAAS;SACpB;QACD,yCAAyC,EAAE;YACzC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,+BAA+B;YAC1C,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,gCAAgC,EAAE;YAChC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,sBAAsB;YACjC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,iBAAiB;YACnC,QAAQ,EAAE,SAAS;SACpB;QACD,qCAAqC,EAAE;YACrC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,2BAA2B;YACtC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;QACD,oCAAoC,EAAE;YACpC,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,0BAA0B;YACrC,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,QAAQ;YAClB,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,0CAA0C;YACrD,UAAU,EAAE,6BAA6B;YACzC,gBAAgB,EAAE;gBAChB,0CAA0C;gBAC1C,qBAAqB;gBACrB,mBAAmB;gBACnB,4BAA4B;gBAC5B,6BAA6B;aAC9B;YACD,iBAAiB,EAAE,EAAE;YACrB,gBAAgB,EAAE,mBAAmB;YACrC,QAAQ,EAAE,SAAS;SACpB;KACF;CACO,CAAC;AAEX,MAAM,cAAc,GAA6B;IAC/C,qBAAqB,EAAE,CAAC,kCAAkC,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,oBAAoB,CAAC;IAChI,QAAQ,EAAE,CAAC,0CAA0C,EAAE,mCAAmC,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,4BAA4B,CAAC;IACpM,sBAAsB,EAAE,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,gBAAgB,CAAC;IAC1I,cAAc,EAAE,CAAC,0BAA0B,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,4BAA4B,CAAC;IAClJ,iBAAiB,EAAE,CAAC,0CAA0C,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,gBAAgB,CAAC;IACnK,KAAK,EAAE,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,gBAAgB,EAAE,6BAA6B,CAAC;CAC7G,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,sBAAsB,CAAC,CAAC;AACpK,MAAM,aAAa,GAA2B,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,iBAAiB,EAAE,UAAU,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC;AAC1L,MAAM,iBAAiB,GAA2B,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,iBAAiB,EAAE,UAAU,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC;AAE1L,SAAgB,SAAS,CAAC,UAA4B,EAAE;IACtD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,qBAAqB,CAAC,IAAA,qCAAgB,GAAE,CAAC,IAAI,2BAA2B,EAAE,CAAC;IAC9G,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAChH,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACvF,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,iBAAiB,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACpH,MAAM,kBAAkB,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,kBAAkB,CAAC,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,SAAS,CAAC,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC;IACxI,MAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,CAAC,UAAU,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC;IACnJ,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvG,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACnI,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACnL,OAAO;QACL,QAAQ;QACR,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO;QACP,UAAU;QACV,MAAM,EAAE,aAAa;QACrB,aAAa;QACb,cAAc;QACd,OAAO;QACP,QAAQ;QACR,WAAW;QACX,cAAc,EAAE,OAAO,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,eAAe,CAAC;QAC5E,aAAa,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,KAAK,IAAI,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACvJ,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,GAAkB,EAAE,IAA4B;IACrE,MAAM,KAAK,GAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;IACrE,OAAO,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC1I,CAAC;AAED,SAAS,UAAU,CAAC,QAAgB,EAAE,OAAgB;IACpD,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAoD,CAAC;IAC3E,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7G,CAAC;AAED,SAAgB,UAAU,CAAC,QAAgB,EAAE,OAAgB;IAC3D,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzF,OAAO,KAAK,GAAG,GAAG,GAAG,UAAU,CAAC;AAClC,CAAC;AAED,SAAS,SAAS,CAAC,GAAa,EAAE,OAAwC,EAAE,GAAkB,EAAE,OAAe,EAAE,OAAe,EAAE,YAAY,GAAG,KAAK;IACpJ,MAAM,IAAI,GAAG,GAAG;SACb,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SAC5B,MAAM,CAAC,CAAC,KAAK,EAA+B,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC9D,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;SACvD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IACvD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;AAC7B,CAAC;AAED,SAAS,eAAe,CAAC,KAAyB,EAAE,GAAkB,EAAE,OAAe;IACrF,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IACpD,MAAM,QAAQ,GAAG,OAAO,KAAK,YAAY,IAAI,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChF,OAAO,CAAC,CAAC,QAAQ,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,UAAU,CAAC,KAAyB;IAC3C,OAAO,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,2EAA2E,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAC7H,CAAC;AAED,SAAS,OAAO,CAAC,KAAyB;IACxC,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAClE,IAAI,CAAC,KAAK,YAAY;QAAE,OAAO,YAAY,CAAC;IAC5C,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACjF,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB;IAC5C,OAAQ,QAAQ,CAAC,oBAA0C,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,IAAI,CAAC,KAAa;IACzB,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACtG,CAAC;AAED,SAAS,MAAM,CAAC,MAAiC;IAC/C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAiC;IAC9D,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAClC,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,GAAG;QACrD,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,CAAC,CAAC,GAAG,GAAG;QAC1D,OAAO,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,YAAY,EAAE,cAAc,IAAI,CAAC;QACxE,aAAa,EAAE,KAAK,CAAC,OAAO,CAAE,KAAK,CAAC,YAA2D,EAAE,gBAAgB,CAAC;YAChH,CAAC,CAAC,CAAE,KAAK,CAAC,YAAgD,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;YACpG,CAAC,CAAC,KAAK;QACT,MAAM,EAAE,CAAC,2EAA2E,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAuB;KAChL,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACnG,CAAC;AAED,SAAS,2BAA2B;IAClC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAoD,CAAC,EAAE,CAAC;QAC/F,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,IAAI,GAAG,CAAC,YAAY;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAChD,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,cAAc;YAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,qDAAqD,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,2EAA2E,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3U,CAAC;AAED,SAAS,aAAa,CAAC,EAAU;IAC/B,MAAM,KAAK,GAAqC;QAC9C,mBAAmB,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;QAChC,qBAAqB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACjC,mBAAmB,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9B,qBAAqB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;QACpC,gBAAgB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QAC5B,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QAC5B,gBAAgB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACxB,qBAAqB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACjC,4BAA4B,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACpC,6BAA6B,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QACtC,kCAAkC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAChD,mCAAmC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;QAChD,0BAA0B,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;QACvC,0CAA0C,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC;QACxD,wBAAwB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACtC,qBAAqB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QACnC,6BAA6B,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAC3C,sBAAsB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QAClC,oBAAoB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAClC,2BAA2B,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC;QACzC,sBAAsB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC;QACrC,2BAA2B,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;QACxC,4BAA4B,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;KAC7C,CAAC;IACF,OAAO,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}