@aifinpay/agent 2.0.0-rc.8 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/PAYMENT_RECEIPTS.md +114 -0
- package/README.md +85 -28
- package/dist/agent.d.ts +8 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +50 -17
- package/dist/agent.js.map +1 -1
- package/dist/agentHistory.d.ts +55 -0
- package/dist/agentHistory.d.ts.map +1 -0
- package/dist/agentHistory.js +145 -0
- package/dist/agentHistory.js.map +1 -0
- package/dist/agentPassport.d.ts +71 -7
- package/dist/agentPassport.d.ts.map +1 -1
- package/dist/agentPassport.js +135 -27
- package/dist/agentPassport.js.map +1 -1
- package/dist/aifp1.d.ts +94 -5
- package/dist/aifp1.d.ts.map +1 -1
- package/dist/aifp1.js +370 -114
- package/dist/aifp1.js.map +1 -1
- package/dist/apiUrl.d.ts +3 -0
- package/dist/apiUrl.d.ts.map +1 -0
- package/dist/apiUrl.js +8 -0
- package/dist/apiUrl.js.map +1 -0
- package/dist/chains.d.ts +7 -0
- package/dist/chains.d.ts.map +1 -1
- package/dist/chains.js +19 -1
- package/dist/chains.js.map +1 -1
- package/dist/crossChain.d.ts +1 -0
- package/dist/crossChain.d.ts.map +1 -1
- package/dist/crossChain.js +87 -5
- package/dist/crossChain.js.map +1 -1
- package/dist/crypto.d.ts.map +1 -1
- package/dist/crypto.js.map +1 -1
- package/dist/deploymentResolver.d.ts +95 -0
- package/dist/deploymentResolver.d.ts.map +1 -0
- package/dist/deploymentResolver.js +169 -0
- package/dist/deploymentResolver.js.map +1 -0
- package/dist/errors.d.ts +17 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +14 -0
- package/dist/errors.js.map +1 -1
- package/dist/facilitators/aifinpay.d.ts +4 -5
- package/dist/facilitators/aifinpay.d.ts.map +1 -1
- package/dist/facilitators/aifinpay.js +50 -21
- package/dist/facilitators/aifinpay.js.map +1 -1
- package/dist/facilitators/base.d.ts +12 -1
- package/dist/facilitators/base.d.ts.map +1 -1
- package/dist/facilitators/coinbase.d.ts.map +1 -1
- package/dist/facilitators/coinbase.js +3 -7
- package/dist/facilitators/coinbase.js.map +1 -1
- package/dist/facilitators/detect.d.ts.map +1 -1
- package/dist/facilitators/detect.js +2 -7
- package/dist/facilitators/detect.js.map +1 -1
- package/dist/facilitators/standard-x402.d.ts.map +1 -1
- package/dist/facilitators/standard-x402.js +40 -30
- package/dist/facilitators/standard-x402.js.map +1 -1
- package/dist/generated/solanaV14Deployments.generated.d.ts +25 -0
- package/dist/generated/solanaV14Deployments.generated.d.ts.map +1 -0
- package/dist/generated/solanaV14Deployments.generated.js +39 -0
- package/dist/generated/solanaV14Deployments.generated.js.map +1 -0
- package/dist/generated/splitterRoutes.generated.d.ts +24 -0
- package/dist/generated/splitterRoutes.generated.d.ts.map +1 -0
- package/dist/generated/splitterRoutes.generated.js +453 -0
- package/dist/generated/splitterRoutes.generated.js.map +1 -0
- package/dist/generated/v14Deployments.generated.d.ts +49 -0
- package/dist/generated/v14Deployments.generated.d.ts.map +1 -0
- package/dist/generated/v14Deployments.generated.js +415 -0
- package/dist/generated/v14Deployments.generated.js.map +1 -0
- package/dist/index.d.ts +27 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -7
- package/dist/index.js.map +1 -1
- package/dist/localIdentity.d.ts +17 -0
- package/dist/localIdentity.d.ts.map +1 -0
- package/dist/localIdentity.js +95 -0
- package/dist/localIdentity.js.map +1 -0
- package/dist/settlement.d.ts +35 -5
- package/dist/settlement.d.ts.map +1 -1
- package/dist/settlement.js +232 -76
- package/dist/settlement.js.map +1 -1
- package/dist/settlementHttp.d.ts +10 -0
- package/dist/settlementHttp.d.ts.map +1 -0
- package/dist/settlementHttp.js +78 -0
- package/dist/settlementHttp.js.map +1 -0
- package/dist/settlementV14.d.ts +10 -9
- package/dist/settlementV14.d.ts.map +1 -1
- package/dist/settlementV14.js +43 -55
- package/dist/settlementV14.js.map +1 -1
- package/dist/solanaDeploymentResolver.d.ts +98 -0
- package/dist/solanaDeploymentResolver.d.ts.map +1 -0
- package/dist/solanaDeploymentResolver.js +162 -0
- package/dist/solanaDeploymentResolver.js.map +1 -0
- package/dist/solanaV14Deployments.generated.d.ts +25 -0
- package/dist/solanaV14Deployments.generated.d.ts.map +1 -0
- package/dist/solanaV14Deployments.generated.js +39 -0
- package/dist/solanaV14Deployments.generated.js.map +1 -0
- package/dist/spendLedger.d.ts.map +1 -1
- package/dist/spendLedger.js +1 -3
- package/dist/spendLedger.js.map +1 -1
- package/dist/splitterRoutes.d.ts +11 -4
- package/dist/splitterRoutes.d.ts.map +1 -1
- package/dist/splitterRoutes.generated.d.ts +11 -9
- package/dist/splitterRoutes.generated.d.ts.map +1 -1
- package/dist/splitterRoutes.generated.js +72 -18
- package/dist/splitterRoutes.generated.js.map +1 -1
- package/dist/splitterRoutes.js +7 -5
- package/dist/splitterRoutes.js.map +1 -1
- package/dist/unifiedAgent.d.ts +97 -29
- package/dist/unifiedAgent.d.ts.map +1 -1
- package/dist/unifiedAgent.js +232 -349
- package/dist/unifiedAgent.js.map +1 -1
- package/dist/v14Deployments.generated.d.ts +49 -0
- package/dist/v14Deployments.generated.d.ts.map +1 -0
- package/dist/v14Deployments.generated.js +413 -0
- package/dist/v14Deployments.generated.js.map +1 -0
- package/dist/wallet.d.ts.map +1 -1
- package/dist/wallet.js +2 -2
- package/dist/wallet.js.map +1 -1
- package/package.json +27 -6
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -127
- package/dist/cli.js.map +0 -1
package/dist/aifp1.d.ts
CHANGED
|
@@ -13,13 +13,30 @@ export declare class Aifp1SettlementUnsupportedError extends Aifp1Error {
|
|
|
13
13
|
* Carries the tx hash because that is the only thing standing between the
|
|
14
14
|
* caller and a lost payment: the quote is still settleable through
|
|
15
15
|
* `POST /v1/pay` by hand with the same Idempotency-Key, and without the hash
|
|
16
|
-
* in the error there is nothing to retry with.
|
|
16
|
+
* in the error there is nothing to retry with. `recovery` additionally preserves
|
|
17
|
+
* the quote nonce and issuer domain needed to sign a fresh receipt claim.
|
|
17
18
|
*/
|
|
18
19
|
export declare class Aifp1PayError extends Aifp1Error {
|
|
19
20
|
readonly txRef?: string | undefined;
|
|
20
21
|
readonly quoteId?: string | undefined;
|
|
21
|
-
|
|
22
|
+
readonly recovery?: Aifp1PaymentRecovery | undefined;
|
|
23
|
+
constructor(msg: string, txRef?: string | undefined, quoteId?: string | undefined, recovery?: Aifp1PaymentRecovery | undefined);
|
|
22
24
|
}
|
|
25
|
+
/** Public settlement context; contains no private key or authorization signature. */
|
|
26
|
+
export interface Aifp1PaymentRecovery {
|
|
27
|
+
apiBaseUrl: string;
|
|
28
|
+
quote: Aifp1Quote;
|
|
29
|
+
txRef: `0x${string}`;
|
|
30
|
+
asset: string;
|
|
31
|
+
paymentIssuer?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface Aifp1PaymentSigner {
|
|
34
|
+
payerAddress: string;
|
|
35
|
+
signPaymentAuthorization(message: string): Promise<string>;
|
|
36
|
+
fetchImpl?: typeof fetch;
|
|
37
|
+
}
|
|
38
|
+
/** Recover an already settled Polygon payment. Never sends an on-chain transaction. */
|
|
39
|
+
export declare function recoverAifp1Payment(recovery: Aifp1PaymentRecovery, signer: Aifp1PaymentSigner, options?: Pick<Aifp1FetchOptions, "settlementConfirmMs" | "apiTimeoutMs" | "paymentIssuer">): Promise<Aifp1PayResult>;
|
|
23
40
|
/** The gateway rejected a receipt we believed covered the request. */
|
|
24
41
|
export declare class Aifp1ReceiptRejectedError extends Aifp1Error {
|
|
25
42
|
}
|
|
@@ -42,6 +59,13 @@ export interface Aifp1Challenge {
|
|
|
42
59
|
/** POST /v1/quote 200 body — routes/aifp.js (`used` is stripped server-side). */
|
|
43
60
|
export interface Aifp1Quote {
|
|
44
61
|
quote_id: string;
|
|
62
|
+
payer?: string;
|
|
63
|
+
network_mode?: "live" | "test";
|
|
64
|
+
payment_authorization?: {
|
|
65
|
+
scheme: "wallet-signature-v1";
|
|
66
|
+
domain: string;
|
|
67
|
+
max_age_seconds: number;
|
|
68
|
+
};
|
|
45
69
|
merchant_id: string;
|
|
46
70
|
resource: string;
|
|
47
71
|
scope: Aifp1Scope;
|
|
@@ -55,6 +79,24 @@ export interface Aifp1Quote {
|
|
|
55
79
|
accepted_assets: string[];
|
|
56
80
|
accepted_chains: string[];
|
|
57
81
|
pay_to: Record<string, string>;
|
|
82
|
+
/** The target and calldata the receipt verifier expects for this quote. */
|
|
83
|
+
settlement_call?: {
|
|
84
|
+
chain: string;
|
|
85
|
+
contract: string;
|
|
86
|
+
splitter_version: string;
|
|
87
|
+
asset: string;
|
|
88
|
+
function: string;
|
|
89
|
+
arg_encoding: string;
|
|
90
|
+
value_wei: string;
|
|
91
|
+
args: {
|
|
92
|
+
payment_id: string;
|
|
93
|
+
merchant: string;
|
|
94
|
+
gross_amount: string;
|
|
95
|
+
ip_creator: string;
|
|
96
|
+
valid_until: number;
|
|
97
|
+
order_id: string;
|
|
98
|
+
};
|
|
99
|
+
};
|
|
58
100
|
/** Native Polygon v1.3 gross settlement, when enabled by backend readiness. */
|
|
59
101
|
native_settlement?: {
|
|
60
102
|
asset: string;
|
|
@@ -67,7 +109,7 @@ export interface Aifp1Quote {
|
|
|
67
109
|
merchant_wei: string;
|
|
68
110
|
treasury_wei: string;
|
|
69
111
|
creator_wei: string;
|
|
70
|
-
valid_until?: string;
|
|
112
|
+
valid_until?: number | string;
|
|
71
113
|
settlement_semantics?: "gross-inclusive";
|
|
72
114
|
};
|
|
73
115
|
settlement: {
|
|
@@ -78,7 +120,13 @@ export interface Aifp1Quote {
|
|
|
78
120
|
merchant_units: string;
|
|
79
121
|
protocol_fee_units: string;
|
|
80
122
|
creator_units: string;
|
|
81
|
-
|
|
123
|
+
/** Canonical form, or the backend's retained legacy breakdown (not an extra fee). */
|
|
124
|
+
fee_on_top: false | {
|
|
125
|
+
provider: string;
|
|
126
|
+
treasury: string;
|
|
127
|
+
creator: string;
|
|
128
|
+
};
|
|
129
|
+
settlement_semantics?: "gross-inclusive";
|
|
82
130
|
};
|
|
83
131
|
nonce: string;
|
|
84
132
|
expires_at: string;
|
|
@@ -166,7 +214,7 @@ export declare function prefixHint(path: string): string;
|
|
|
166
214
|
* treated as "allow all", because that is the shape a config bug takes.
|
|
167
215
|
*/
|
|
168
216
|
export declare const DEFAULT_GATEWAY_ORIGINS: readonly ["https://gateway.aifinpay.io"];
|
|
169
|
-
export declare function parseGatewayUrl(url: string, allowedOrigins?: readonly string[]): {
|
|
217
|
+
export declare function parseGatewayUrl(url: string, allowedOrigins?: readonly string[], resourcePathMode?: "gateway" | "direct"): {
|
|
170
218
|
site: string;
|
|
171
219
|
slug: string;
|
|
172
220
|
restPath: string;
|
|
@@ -271,9 +319,23 @@ export declare class Aifp1ReceiptCache {
|
|
|
271
319
|
evict(entry: Aifp1CachedReceipt): void;
|
|
272
320
|
/** Everything we still hold, expired entries dropped. Plain data, copyable. */
|
|
273
321
|
list(): Aifp1CachedReceipt[];
|
|
322
|
+
/**
|
|
323
|
+
* Redacted view for dashboards and MCP tools: everything except the bearer
|
|
324
|
+
* `jwt` (a credential — only the paying agent holds it). Safe to log.
|
|
325
|
+
*/
|
|
326
|
+
summary(): Omit<Aifp1CachedReceipt, "jwt">[];
|
|
274
327
|
get size(): number;
|
|
275
328
|
}
|
|
276
329
|
export interface Aifp1FetchOptions {
|
|
330
|
+
/** Reviewed v1.3 deployment pin, supplied independently of the quote server.
|
|
331
|
+
* The receipt flow currently verifies Polygon native settlements only. */
|
|
332
|
+
settlementPin?: import("./settlement.js").TrustedSettlementRoutePin;
|
|
333
|
+
/** Independent native/USD observation from the caller's trusted price source,
|
|
334
|
+
* never copied from the payment quote. Required with settlementPin; <=60s old. */
|
|
335
|
+
nativeUsdPrice?: {
|
|
336
|
+
usd: number;
|
|
337
|
+
observedAtMs: number;
|
|
338
|
+
};
|
|
277
339
|
/**
|
|
278
340
|
* How wide a batch to buy. Default "prefix" — see the comment on
|
|
279
341
|
* resolveScope() for why the default is not "exact".
|
|
@@ -288,14 +350,26 @@ export interface Aifp1FetchOptions {
|
|
|
288
350
|
* the tiers move.
|
|
289
351
|
*/
|
|
290
352
|
units?: number;
|
|
353
|
+
/** Maximum quoted batch cost in USD; only tightens the agent's budget caps. */
|
|
354
|
+
maxAmountUsd?: number;
|
|
291
355
|
/** Where /v1/quote and /v1/pay live. Default https://api.aifinpay.io */
|
|
292
356
|
apiBaseUrl?: string;
|
|
357
|
+
/** Per-API request deadline, including the body. Default 15 seconds. */
|
|
358
|
+
apiTimeoutMs?: number;
|
|
359
|
+
/** Independently configured receipt issuer. Defaults to https://api.aifinpay.io. */
|
|
360
|
+
paymentIssuer?: string;
|
|
293
361
|
/**
|
|
294
362
|
* Gateway origins this client will settle against. Defaults to
|
|
295
363
|
* DEFAULT_GATEWAY_ORIGINS — set it only for a self-hosted gateway, and
|
|
296
364
|
* never to a host you do not control the paywall of.
|
|
297
365
|
*/
|
|
298
366
|
gatewayOrigins?: readonly string[];
|
|
367
|
+
/**
|
|
368
|
+
* "gateway" strips the hosted merchant slug (default). "direct" uses the
|
|
369
|
+
* full URL pathname and probes for the merchant before reusing a receipt.
|
|
370
|
+
* Direct origins must still be explicitly trusted through gatewayOrigins.
|
|
371
|
+
*/
|
|
372
|
+
resourcePathMode?: "gateway" | "direct";
|
|
299
373
|
/** Value for the AIFP-Agent-Id header; defaults to the agent's EVM address. */
|
|
300
374
|
agentId?: string;
|
|
301
375
|
/** How long to keep retrying /v1/pay while the chain catches up (AIFP-425). */
|
|
@@ -313,6 +387,9 @@ export interface Aifp1Deps {
|
|
|
313
387
|
cache: Aifp1ReceiptCache;
|
|
314
388
|
/** AIFP-Agent-Id / agent_id — a 0x address, or agent policies cannot key on it. */
|
|
315
389
|
agentId: string;
|
|
390
|
+
/** Actual settlement wallet, independent of any display/agent identifier. */
|
|
391
|
+
payerAddress: string;
|
|
392
|
+
signPaymentAuthorization(message: string): Promise<string>;
|
|
316
393
|
/**
|
|
317
394
|
* Settle one canonical v1.3 gross amount, returning a hash whose transaction
|
|
318
395
|
* was included AND succeeded. Implementations must independently verify the
|
|
@@ -348,4 +425,16 @@ export interface Aifp1Deps {
|
|
|
348
425
|
* already has.
|
|
349
426
|
*/
|
|
350
427
|
export declare function aifp1Fetch(deps: Aifp1Deps, url: string, init?: RequestInit, opts?: Aifp1FetchOptions): Promise<Response | null>;
|
|
428
|
+
/** Fixed, domain-separated receipt claim; sign with the wallet that settled. */
|
|
429
|
+
export declare function paymentAuthorizationMessage(p: {
|
|
430
|
+
quote: Aifp1Quote;
|
|
431
|
+
apiBase: string;
|
|
432
|
+
chain: string;
|
|
433
|
+
txRef: string;
|
|
434
|
+
asset: string;
|
|
435
|
+
idempotencyKey: string;
|
|
436
|
+
payer: string;
|
|
437
|
+
expiresAt: number;
|
|
438
|
+
issuer?: string;
|
|
439
|
+
}): string;
|
|
351
440
|
//# sourceMappingURL=aifp1.d.ts.map
|
package/dist/aifp1.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aifp1.d.ts","sourceRoot":"","sources":["../src/aifp1.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aifp1.d.ts","sourceRoot":"","sources":["../src/aifp1.ts"],"names":[],"mappings":"AAqCA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAW5C,qBAAa,UAAW,SAAQ,aAAa;CAAG;AAEhD,oEAAoE;AACpE,qBAAa,eAAgB,SAAQ,UAAU;CAAG;AAElD,sEAAsE;AACtE,qBAAa,+BAAgC,SAAQ,UAAU;CAAG;AAElE;;;;;;;;GAQG;AACH,qBAAa,aAAc,SAAQ,UAAU;aAGzB,KAAK,CAAC,EAAE,MAAM;aACd,OAAO,CAAC,EAAE,MAAM;aAChB,QAAQ,CAAC,EAAE,oBAAoB;gBAH/C,GAAG,EAAE,MAAM,EACK,KAAK,CAAC,EAAE,MAAM,YAAA,EACd,OAAO,CAAC,EAAE,MAAM,YAAA,EAChB,QAAQ,CAAC,EAAE,oBAAoB,YAAA;CAIlD;AAED,qFAAqF;AACrF,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,KAAK,MAAM,EAAE,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAED,uFAAuF;AACvF,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,oBAAoB,EAC9B,MAAM,EAAE,kBAAkB,EAC1B,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,qBAAqB,GAAG,cAAc,GAAG,eAAe,CAAM,GAC9F,OAAO,CAAC,cAAc,CAAC,CASzB;AAED,sEAAsE;AACtE,qBAAa,yBAA0B,SAAQ,UAAU;CAAG;AAI5D,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEzD,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACjD;AAED,iFAAiF;AACjF,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE;QACtB,MAAM,EAAE,qBAAqB,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC;QACf,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,2EAA2E;IAC3E,eAAe,CAAC,EAAE;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,EAAE,MAAM,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE;YACJ,UAAU,EAAE,MAAM,CAAC;YACnB,QAAQ,EAAE,MAAM,CAAC;YACjB,YAAY,EAAE,MAAM,CAAC;YACrB,UAAU,EAAE,MAAM,CAAC;YACnB,WAAW,EAAE,MAAM,CAAC;YACpB,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,CAAC;IACF,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAC9B,oBAAoB,CAAC,EAAE,iBAAiB,CAAC;KAC1C,CAAC;IACF,UAAU,EAAE;QACV,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,qFAAqF;QACrF,UAAU,EAAE,KAAK,GAAG;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5E,oBAAoB,CAAC,EAAE,iBAAiB,CAAC;KAC1C,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,YAAY;IAC3B,0FAA0F;IAC1F,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,sEAAsE;IACtE,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB;yEACqE;IACrE,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,UAAU,GAAG,YAAY,CAwCzD;AAWD,8CAA8C;AAC9C,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAUD,wCAAwC;AACxC,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAU9F;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK/C;AAED;;;;;;;;GAQG;AACH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,0CAA2C,CAAC;AAEhF,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,cAAc,GAAE,SAAS,MAAM,EAA4B,EAC3D,gBAAgB,GAAE,SAAS,GAAG,QAAoB,GACjD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAiClD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAStD;AAID;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAG7G;AAID,MAAM,WAAW,kBAAkB;IACjC,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAYD;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IAEpD;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAEhE,0EAA0E;IACpE,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC;IAe5E;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAYzF,GAAG,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAIpC,iFAAiF;IACjF,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAItE,KAAK,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAKtC,+EAA+E;IAC/E,IAAI,IAAI,kBAAkB,EAAE;IAK5B;;;OAGG;IACH,OAAO,IAAI,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE;IAI5C,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF;AAID,MAAM,WAAW,iBAAiB;IAChC;8EAC0E;IAC1E,aAAa,CAAC,EAAE,OAAO,iBAAiB,EAAE,yBAAyB,CAAC;IACpE;sFACkF;IAClF,cAAc,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD;;;OAGG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACxC,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAqBD,kEAAkE;AAClE,wBAAgB,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,qBAAqB,CAAC,GAAG,MAAM,CAI9F;AA6CD;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,OAAO,KAAK,CAAC;IACxB,KAAK,EAAE,iBAAiB,CAAC;IACzB,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3D;;;;OAIG;IACH,MAAM,CAAC,CAAC,EAAE;QACR,cAAc,EAAE,KAAK,MAAM,EAAE,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;IAC3B,wEAAwE;IACxE,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACnC,+EAA+E;IAC/E,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,CAAC;IAC3D,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,CAAC,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAClG;AA4DD;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,SAAS,EACf,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,WAAgB,EACtB,IAAI,GAAE,iBAAsB,GAC3B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CA2c1B;AA2JD,gFAAgF;AAChF,wBAAgB,2BAA2B,CAAC,CAAC,EAAE;IAC7C,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,MAAM,CAeT"}
|